+ All Categories
Home > Documents > Conformance Verification of Privacy Policies

Conformance Verification of Privacy Policies

Date post: 25-Feb-2016
Category:
Upload: edana
View: 38 times
Download: 5 times
Share this document with a friend
Description:
Conformance Verification of Privacy Policies. Xiang Fu Assistant Professor Department of Computer Science Hofstra University. Outline. Motivation PV Framework Privacy Properties in Temporal Logic Verification using Alloy Conclusion. Introduction. - PowerPoint PPT Presentation
Popular Tags:
23
Conformance Verification of Privacy Policies Xiang Fu Assistant Professor Department of Computer Science Hofstra University
Transcript
Page 1: Conformance Verification of Privacy Policies

Conformance Verification of Privacy PoliciesXiang Fu

Assistant ProfessorDepartment of Computer ScienceHofstra University

Page 2: Conformance Verification of Privacy Policies

Outline•Motivation•PV Framework•Privacy Properties in Temporal Logic•Verification using Alloy•Conclusion

Page 3: Conformance Verification of Privacy Policies

Introduction

Page 4: Conformance Verification of Privacy Policies

Web App: Consumer and Producerof INFORMATION

Web AppSSNCredit CardMedical RecordAddressShopping Preference

Online Marketin

gEmail

Identity Collection

SSN

BusinessPartners

Shopping Habits

Page 5: Conformance Verification of Privacy Policies

Privacy Verification Problem

Web App

Your SSN never be forwarde

d

CC destroyed

after transaction

Function as PROMISED?

Page 6: Conformance Verification of Privacy Policies

ChallengesBusiness

Procedures

DB Ops

Servlets

Servlets

P3P Privacy Policy

Model Checker

Page 7: Conformance Verification of Privacy Policies

PV Framework•Privacy Verification Framework

1. Servlet Control/Data Flow

2. Information Flow

3. Data Operations

Page 8: Conformance Verification of Privacy Policies

Data Model

•Entity

•Data Item

OperatorServletDatabaseBusiness OrganizationStakeholder

Atomic Real-Being

Countable Set

CC CardSSNMed RecordTransaction IDName

Primitive Type System

Flattened Model

Page 9: Conformance Verification of Privacy Policies

Example: Bookstore AppEntities

Page 10: Conformance Verification of Privacy Policies

Example: Bookstore AppData Types

Page 11: Conformance Verification of Privacy Policies

Actions•Know(e, d)

entity data

At any moment for any e and d, Know(e,d) is defined

Action: transition system expressed using first order on Know predicates

Page 12: Conformance Verification of Privacy Policies

Example: Charge Credit Card CCcc

)(know' )(know' Bank,ccDB,cc

Free var, input variable

)(know' )(know' : },{ x,dx,dDdBANKDBx

All entities All data

)know( )(know' )know( )(know' :}{

Bank,dBank,dDB,dDB,dccDd

Page 13: Conformance Verification of Privacy Policies

Modeling Privacy Policy•Typical Examples: P3P and EPAL•Defines:

▫(1) What to protect?▫(2) Who can receive it?▫(3) How long?

Page 14: Conformance Verification of Privacy Policies

P3P Example

Page 15: Conformance Verification of Privacy Policies

Temporal Logic for P3P•CTL-FO = CTL + First Order Quantifiers

Credit Card Info Regularly Purged from DB & is not leaked

)),know(:AF( )),know(AG( :CC dxExdDBd

for any credit card for any entities

Page 16: Conformance Verification of Privacy Policies

Verification•(1) Translate from PV to Alloy•(2) Translate CTL-FO to Alloy

Predicates•(3) Verification using Alloy

Page 17: Conformance Verification of Privacy Policies

Modeling World Schemamodule bookstore

//1. world schemaabstract sig Object {}abstract sig WA, Env, Data extends Object {}abstract sig Actions, Entities extends WA {}…

Web App.Set of All Data Items

Servlets

Page 18: Conformance Verification of Privacy Policies

Modeling System State•Model the transition relation

sig State{ know: (WA + Env) -> Data, prev: one State, actstate: Actions -> actionStatus}{ all x: Actions | some status: actionStatus |

x -> status in actstate}

Page 19: Conformance Verification of Privacy Policies

Modeling Actionpred pChargeCC[s,s’: State, d:CC]{ChargeCC->READY in s.actstate and

(s’.know = s.know + {DB->d} +

{Bank->d} &&s’.prev=s &&s’.actstate = s.actstate - ..

)}

Page 20: Conformance Verification of Privacy Policies

Modeling CTL-FO Formula

pred ef[s:State, d:Data]{some s’: State | (CEO->d in s’.know)&& s in s’.*prev

}

pred fa[s:State]{all d: Data | (DB->d in s.know) => ef[s,d]

}

assert AGProperty{all s: State | fa[s]

}

Page 21: Conformance Verification of Privacy Policies

Initial Experiments

State Clauses Constr. Time (ms)

Solver Time (ms)

5 431k 2203 78110 1928k 7984 626615 4504k 18782 4082820 - - -

20 Objects

Page 22: Conformance Verification of Privacy Policies

Conclusion•PV Framework for Reasoning about

Privacy•Verification Paradigm using Alloy•Problems …

Page 23: Conformance Verification of Privacy Policies

Future Directions•(1) Static Program Analysis •Path Transducer Model (Servlet)• Information Flow (Business Rules,

Access Right Policies)

•(2) Customized Relational Constraint Solvers


Recommended