Supporting User Privacy Preferences on Information Release in Open - - PDF document

supporting user privacy preferences on information
SMART_READER_LITE
LIVE PREVIEW

Supporting User Privacy Preferences on Information Release in Open - - PDF document

Supporting User Privacy Preferences on Information Release in Open Scenarios Claudio A. Ardagna 1 Sabrina De Capitani di Vimercati 1 Sara Foresti 1 Stefano Paraboschi 2 Pierangela Samarati 1 (1) DTI - Universit degli Studi di Milano (2) DIIMM -


slide-1
SLIDE 1

Supporting User Privacy Preferences on Information Release in Open Scenarios

Claudio A. Ardagna1 Sabrina De Capitani di Vimercati1 Sara Foresti1 Stefano Paraboschi2 Pierangela Samarati1

(1) DTI - Università degli Studi di Milano (2) DIIMM - Università degli Studi di Bergamo

W3C Workshop on Privacy and Data Usage Control

October 5, 2010 – Cambridge, MA, USA

c Pierangela Samarati 1/20

Starting scenario (1)

  • Open scenarios where clients interact with remote parties and

access remote resources

  • Depart from the assumption that clients are authenticated before

evaluating access requests

  • The policy at the server refers to credentials/properties that the

client must have (in contrast to client’s identity) = ⇒ Attribute-based/credential-based access control

c Pierangela Samarati 2/20

slide-2
SLIDE 2

Starting scenario (2)

  • Attribute-based access control requires re-thinking how access

control process works

  • Most proposals focus on the server side aspect of the problem
  • regulate how the server specifies policies
  • provide partial evaluation of the policy
  • define how to communicate policies to the client
  • they assume to adopt a symmetric approach at the client

c Pierangela Samarati 3/20

Motivation

Access-control based specifications do not fit well the problem at the client side + they allow users to specify whether some information can be or cannot be released − they do not allow users to express the fact that they might prefer to release some information over other when given choices = ⇒ Need to provide users with means to effectively regulate the release of their information

c Pierangela Samarati 4/20

slide-3
SLIDE 3

Goal of our work

Enable users to effectively regulate disclosure of their properties and credentials

  • identify requirements and concepts that need to be captured
  • organize of users properties and credentials in the user portfolio
  • enable users to specify how much she values the disclosure of

different components of the portfolio

  • provide possible technical approaches for supporting user’s

preferences

  • provide a basis for investigating user-friendly/user-understandable

approaches for regulating release of user’s properties

c Pierangela Samarati 5/20

Client portfolio modeling

  • The information of the client forms a client portfolio
  • Credential: certificate issued and signed by a third party
  • certifies a set of properties
  • has a type, an identifier, and an issuer
  • Declaration: property stored as a self-signed credential
  • Hierarchy of abstractions of credential types H (T ,isa)

(e.g., id_cardisaid, idisacredential)

c Pierangela Samarati 6/20

slide-4
SLIDE 4

Client portfolio – Properties

  • Credential-independent:

the value depends only

  • n the credential’s
  • wner (e.g., birth date)

Credential-dependent : the value depends on the certifying credential (e.g., credit card number)

!"#$%&'!"#$ (")!%&'()'(*+, *+,-!-./#0123 *./0*+,-!/./+, 122&-33!45

  • 4+.5!/6789:12

67"$-!+;*<:::<)==

c Pierangela Samarati 7/20

Client portfolio – Properties

  • Credential-independent:

the value depends only

  • n the credential’s
  • wner (e.g., birth date)
  • Credential-dependent:

the value depends on the certifying credential (e.g., credit card number)

!!"#$!"#$#%%&' !%#&'()!()* *%+!&#+',+'-.$ ",$-!/01)2345 "./0",$-!101.$ 122(-33!67 !!"#$!$8"#%%%'9

  • 4,.5!1:;<=%34

67%&-!.9->%%%>,""

c Pierangela Samarati 7/20

slide-5
SLIDE 5

Client portfolio – Credentials

  • Atomic: released as a

whole (e.g., X.509) non-atomic: properties can be selectively released, proof-of-possession can be certified (e.g., Idemix, U-Prove)

!"#$%&!"#$%&'(")#% !"$'!&%(")#% !"()!"#$%&'(")#% !!"#$!*+,+--./ !%#&'()!012 *%+!.+3/43/56, ",$-!7891:&'; "./0",$-!9896, 122(-33!<= !!"#$!,>*+---/?

  • 4,.5!9@A)"-&'

67%&-!6?5B---B4**

c Pierangela Samarati 8/20

Client portfolio – Credentials

  • Atomic: released as a

whole (e.g., X.509)

  • Non-atomic: properties

can be selectively released, proof-of-possession can be certified (e.g., Idemix, U-Prove)

!"#$%&!"#$%&'(")#% !"$'!&%(")#% '()*!%$"*)#)'&+, !"+,!"#$%&'(")#% !"-.)(/0(!%#(*&"$,-$ !!"#$!./0/1123 !%#&'()!456 *%+!2/738739:0 ",$-!;+<5=&'> "./0",$-!<+<:0 122(-33!?@ !!"#$!0A./1113B

  • 4,.5!<-C)"1&'

67%&-!:B9D111D8..

c Pierangela Samarati 8/20

slide-6
SLIDE 6

Disclosure

A disclosure is a subset

  • f

the client portfolio that satisfies:

  • certifiability: each

property is certified by a credential

  • atomicity: if a property of

an atomic credential is disclosed, all its properties are disclosed

!"#$%&!"#$%&'(")#% !"$'!&%(")#% '()*!%$"*)#)'&+, !"+,!"#$%&'(")#% !"-.)(/0(!%#(*&"$,-$ !!"#$!./0/1123 !%#&'()!456 *%+!2/738739:0 ",$-!;+<5=&'> "./0",$-!<+<:0 122(-33!?@ !!"#$!0A./1113B

  • 4,.5!<-C)"1&'

67%&-!:B9D111D8..

Does not satisfy atomicity!

c Pierangela Samarati 9/20

Disclosure

A disclosure is a subset

  • f

the client portfolio that satisfies:

  • certifiability: each

property is certified by a credential

  • atomicity: if a property of

an atomic credential is disclosed, all its properties are disclosed

!"#$%&!"#$%&'(")#% !"$'!&%(")#% '()*!%$"*)#)'&+, !"+,!"#$%&'(")#% !"-.)(/0(!%#(*&"$,-$ !!"#$!./0/1123 !%#&'()!456 *%+!2/738739:0 ",$-!;+<5=&'> "./0",$-!<+<:0 122(-33!?@ !!"#$!0A./1113B

  • 4,.5!<-C)"1&'

67%&-!:B9D111D8..

E

Does not satisfy atomicity!

c Pierangela Samarati 9/20

slide-7
SLIDE 7

Privacy preferences – Requirements

  • Clients may prefer to disclose some properties/credentials over
  • thers =

⇒ different portfolio elements have different sensitivity

  • Privacy preference specifications are needed to:
  • automatically regulate the disclosure of sensitive information
  • minimize the disclosure of sensitive information
  • A solution to express privacy preferences must support:
  • fine-grained control on sensitive information
  • specifications on the sensitivity of associations
  • constraints on the disclosure of information

c Pierangela Samarati 10/20

Portfolio sensitivity

  • Privacy preferences expressed as sensitivity labels
  • Sensitivity labels reflect how much a client values the disclosure of

credentials/properties in the portfolio

  • Sensitivity labels are characterized by:
  • partial order relationship
  • composition operator ⊕ for computing sensitivity of a set of

elements, can be based on

− additivity: the sensitivity of a combined disclosure is the sum of the sensitivities of the disclosed elements − maximum: the sensitivity of a combined disclosure is the upper bound of the sensitivities of the sensitivities of the disclosed elements

c Pierangela Samarati 11/20

slide-8
SLIDE 8

Sensitivity labels – Examples

  • Sensitivity labels as integer values
  • is the ≥ total order relationship
  • ⊕ is the sum + of values (additivity)

(e.g., λ(Name)=1, λ(DoB)=5, λ(Name)⊕λ(DoB)=6)

  • Sensitivity labels as multilevel security classifications
  • is the total order relationship on security classes
  • ⊕ is the least upper bound (maximum)

(e.g., λ(Name)=unclassified, λ(DoB)=secret, λ(Name)⊕λ(DoB)=secret) For this talk we assume sensitivity labels as integer values

c Pierangela Samarati 12/20

Sensitivity of properties and credentials

Specify how a client values information in her portfolio

  • λ(p): sensitivity of

property p individually taken

  • λ(c): sensitivity of the

existence of credential c

!"#$%&!"#$%&'(")#% !"$'!&%(")#% '()*!%$"*)#)'&+, !"+,!"#$%&'(")#% !"-.)(/0(!%#(*&"$,-$ !!"#$!./0/1123 !%#&'()!456 *%+!2/738739:0 ",$-!;+<5=&'> "./0",$-!<+<:0 122(-33!?@ !!"#$!0A./1113B

  • 4,.5!<-C)"1&'

67%&-!:B9D111D8.. !" !# !$ !% !& !" !# !# !' !"& !"# !( !$ !"

c Pierangela Samarati 13/20

slide-9
SLIDE 9

Sensitivity of associations

λ(A): sensitivity of an associ- ation A={pi,...,pj,ck,...,cn}, whose joint release carries: more information than the release of each element in A = ⇒ sensitive view less information than the release of each element in A = ⇒ dependency

!"#$%&!"#$%&'(")#% !"$'!&%(")#% '()*!%$"*)#)'&+, !"+,!"#$%&'(")#% !"-.)(/0(!%#(*&"$,-$ !!"#$!./0/1123 !%#&'()!456 *%+!2/738739:0 ",$-!;+<5=&'> "./0",$-!<+<:0 122(-33!?@ !!"#$!0A./1113B

  • 4,.5!<-C)"1&'

67%&-!:B9D111D8.. !" !# !$ !% !& !" !# !# !' !"& !"# !( !$ !"

c Pierangela Samarati 14/20

Sensitivity of associations

λ(A): sensitivity of an associ- ation A={pi,...,pj,ck,...,cn}, whose joint release carries:

  • more information than

the release of each element in A = ⇒ sensitive view less information than the release of each element in A = ⇒ dependency

!"#$%&!"#$%&'(")#% !"$'!&%(")#% '()*!%$"*)#)'&+, !"+,!"#$%&'(")#% !"-.)(/0(!%#(*&"$,-$ !!"#$!./0/1123 !%#&'()!456 *%+!2/738739:0 ",$-!;+<5=&'> "./0",$-!<+<:0 122(-33!?@ !!"#$!0A./1113B

  • 4,.5!<-C)"1&'

67%&-!:B9D111D8.. !" !# !$ !% !& !" !# !# !' !"& !"# !( !$ !" !!#

c Pierangela Samarati 14/20

slide-10
SLIDE 10

Sensitivity of associations

λ(A): sensitivity of an associ- ation A={pi,...,pj,ck,...,cn}, whose joint release carries:

  • more information than

the release of each element in A = ⇒ sensitive view

  • less information than the

release of each element in A = ⇒ dependency

!"#$%&!"#$%&'(")#% !"$'!&%(")#% '()*!%$"*)#)'&+, !"+,!"#$%&'(")#% !"-.)(/0(!%#(*&"$,-$ !!"#$!./0/1123 !%#&'()!456 *%+!2/738739:0 ",$-!;+<5=&'> "./0",$-!<+<:0 122(-33!?@ !!"#$!0A./1113B

  • 4,.5!<-C)"1&'

67%&-!:B9D111D8.. !" !# !$ !% !& !" !# !# !' !"& !"# !( !$ !" !!# !)'

c Pierangela Samarati 14/20

Disclosure constraints

Set A={pi,...,pj,ck,...,cn}

  • f elements whose release

must be controlled forbidden view: the release of A is prohibited disclosure limitation: at most n elements in A can be released

!"#$%&!"#$%&'(")#% !"$'!&%(")#% '()*!%$"*)#)'&+, !"+,!"#$%&'(")#% !"-.)(/0(!%#(*&"$,-$ !!"#$!./0/1123 !%#&'()!456 *%+!2/738739:0 ",$-!;+<5=&'> "./0",$-!<+<:0 122(-33!?@ !!"#$!0A./1113B

  • 4,.5!<-C)"1&'

67%&-!:B9D111D8.. !" !# !$ !% !& !" !# !# !' !"& !"# !( !$ !" !!# !)'

A disclosure is valid if no disclosure constraints is violated

c Pierangela Samarati 15/20

slide-11
SLIDE 11

Disclosure constraints

Set A={pi,...,pj,ck,...,cn}

  • f elements whose release

must be controlled

  • forbidden view: the

release of A is prohibited disclosure limitation: at most n elements in A can be released

!"#$%&!"#$%&'(")#% !"$'!&%(")#% '()*!%$"*)#)'&+, !"+,!"#$%&'(")#% !"-.)(/0(!%#(*&"$,-$ !!"#$!./0/1123 !%#&'()!456 *%+!2/738739:0 ",$-!;+<5=&'> .//(-00!?@ !!"#$!0A./1113B

  • 1,23!<-C)"1&'

45%&-!:B9D111D8.. "267",$-!<+<:0 !" !# !$ !% !& !" !# !# !' !"& !"# !( !$ !" !!# !)'

A disclosure is valid if no disclosure constraints is violated

c Pierangela Samarati 15/20

Disclosure constraints

Set A={pi,...,pj,ck,...,cn}

  • f elements whose release

must be controlled

  • forbidden view: the

release of A is prohibited

  • disclosure limitation: at

most n elements in A can be released

!"#$%&!"#$%&'(")#% !"$'!&%(")#% '()*!%$"*)#)'&+, !"+,!"#$%&'(")#% !"-.)(/0(!%#(*&"$,-$ !!"#$!./0/1123 !%#&'()!456 *%+!2/738739:0 ",$-!;+<5=&'> .//(-00!?@ !!"#$!0A./1113B

  • 1,23!<-C)"1&'

45%&-!:B9D111D8.. "267",$-!<+<:0 !" !# !$ !% !& !" !# !# !' !"& !"# !( !$ !" !!# !)' "

A disclosure is valid if no disclosure constraints is violated

c Pierangela Samarati 15/20

slide-12
SLIDE 12

Disclosure constraints

Set A={pi,...,pj,ck,...,cn}

  • f elements whose release

must be controlled

  • forbidden view: the

release of A is prohibited

  • disclosure limitation: at

most n elements in A can be released

!"#$%&!"#$%&'(")#% !"$'!&%(")#% '()*!%$"*)#)'&+, !"+,!"#$%&'(")#% !"-.)(/0(!%#(*&"$,-$ !!"#$!./0/1123 !%#&'()!456 *%+!2/738739:0 ",$-!;+<5=&'> .//(-00!?@ !!"#$!0A./1113B

  • 1,23!<-C)"1&'

45%&-!:B9D111D8.. "267",$-!<+<:0 !" !# !$ !% !& !" !# !# !' !"& !"# !( !$ !" !!# !)' "

A disclosure is valid if no disclosure constraint is violated

c Pierangela Samarati 15/20

Disclosure sensitivity

The sensitivity λ(D) of a dis- closure D is the sum of the sensitivity labels of released: properties credentials associations

!"#$%&!"#$%&'(")#% !"$'!&%(")#% '()*!%$"*)#)'&+, !"+,!"#$%&'(")#% !"-.)(/0(!%#(*&"$,-$ !!"#$!./0/1123 !%#&'()!456 *%+!2/738739:0 ",$-!;+<5=&'> .//(-00!?@ !!"#$!0A./1113B

  • 1,23!<-C)"1&'

45%&-!:B9D111D8.. "267",$-!<+<:0 !" !# !$ !% !& !" !# !# !' !"& !"# !( !$ !" !!# !)' "

λ(D) = 1+5+5+10+1+3+5 = 30

c Pierangela Samarati 16/20

slide-13
SLIDE 13

Disclosure sensitivity

The sensitivity λ(D) of a dis- closure D is the sum of the sensitivity labels of released:

  • properties

credentials associations

!"#$%&!"#$%&'(")#% !"$'!&%(")#% '()*!%$"*)#)'&+, !"+,!"#$%&'(")#% !"-.)(/0(!%#(*&"$,-$ !!"#$!./0/1123 !%#&'()!456 *%+!2/738739:0 ",$-!;+<5=&'> .//(-00!?@ !!"#$!0A./1113B

  • 1,23!<-C)"1&'

45%&-!:B9D111D8.. "267",$-!<+<:0 !" !# !$ !% !& !" !# !# !' !"& !"# !( !$ !" !!# !)' "

λ(D) = 1+5+5+10+1+3+5 = 30

c Pierangela Samarati 16/20

Disclosure sensitivity

The sensitivity λ(D) of a dis- closure D is the sum of the sensitivity labels of released:

  • properties
  • credentials

associations

!"#$%&!"#$%&'(")#% !"$'!&%(")#% '()*!%$"*)#)'&+, !"+,!"#$%&'(")#% !"-.)(/0(!%#(*&"$,-$ !!"#$!./0/1123 !%#&'()!456 *%+!2/738739:0 ",$-!;+<5=&'> .//(-00!?@ !!"#$!0A./1113B

  • 1,23!<-C)"1&'

45%&-!:B9D111D8.. "267",$-!<+<:0 !" !# !$ !% !& !" !# !# !' !"& !"# !( !$ !" !!# !)' "

λ(D) = 1+5+5+10+1+3+5 = 30

c Pierangela Samarati 16/20

slide-14
SLIDE 14

Disclosure sensitivity

The sensitivity λ(D) of a dis- closure D is the sum of the sensitivity labels of released:

  • properties
  • credentials
  • associations

!"#$%&!"#$%&'(")#% !"$'!&%(")#% '()*!%$"*)#)'&+, !"+,!"#$%&'(")#% !"-.)(/0(!%#(*&"$,-$ !!"#$!./0/1123 !%#&'()!456 *%+!2/738739:0 ",$-!;+<5=&'> .//(-00!?@ !!"#$!0A./1113B

  • 1,23!<-C)"1&'

45%&-!:B9D111D8.. "267",$-!<+<:0 !" !# !$ !% !& !" !# !# !' !"& !"# !( !$ !" !!# !)' "

λ(D) = 1+5+5+10+1+3+5 = 30

c Pierangela Samarati 16/20

Server request

Request R: disjunction of simple requests

  • Simple request R: conjunction of terms
  • term r=type.{p1,...,pm}: disclosure of {p1,...,pm} from c

s.t. type(c)isatype = ⇒ type is an abstraction of credential type type(c) in H

Example

R = r1∧r2 r1 = id.{Name,Address} r2 = cc.{Name,CCNum}

c Pierangela Samarati 17/20

slide-15
SLIDE 15

Min-disclosure problem

A disclosure D:

  • satisfies R if it satisfies at

least a R in R

  • satisfies R if, ∀

r=type.{p1,...,pm} in R, it includes c s.t.:

  • c certifies {p1,...,pm}
  • type(c)isatype

is minimum if ∄ a valid disclosure D′ s.t. D′ satisfies R and λ(D′)<λ(D)

c Pierangela Samarati 18/20

Min-disclosure problem

A disclosure D:

  • satisfies R if it satisfies at

least a R in R

  • satisfies R if, ∀

r=type.{p1,...,pm} in R, it includes c s.t.:

  • c certifies {p1,...,pm}
  • type(c)isatype

is minimum if ∄ a valid disclosure D′ s.t. D′ satisfies R and λ(D′)<λ(D)

R = id.{Name,Address} ∧ cc.{Name,CCNum}

c Pierangela Samarati 18/20

slide-16
SLIDE 16

Min-disclosure problem

A disclosure D:

  • satisfies R if it satisfies at

least a R in R

  • satisfies R if, ∀

r=type.{p1,...,pm} in R, it includes c s.t.:

  • c certifies {p1,...,pm}
  • type(c)isatype

is minimum if ∄ a valid disclosure D′ s.t. D′ satisfies R and λ(D′)<λ(D)

R = id.{Name,Address} ∧ cc.{Name,CCNum}

!"#$%&!"#$%&'(")#% !"$'!&%(")#% '()*!%$"*)#)'&+, !"+,!"#$%&'(")#% !"-.)(/0(!%#(*&"$,-$ !!"#$!./0/1123 !%#&'()!456 *%+!2/738739:0 ",$-!;+<5=&'> .//(-00!?@ !!"#$!0A./1113B

  • 1,23!<-C)"1&'

45%&-!:B9D111D8.. "267",$-!<+<:0 !" !# !$ !% !& !" !# !# !' !"& !"# !( !$ !" !!# !)' "

λ(D) = 1+8+1+5+5+15 = 35

c Pierangela Samarati 18/20

Min-disclosure problem

A disclosure D:

  • satisfies R if it satisfies at

least a R in R

  • satisfies R if, ∀

r=type.{p1,...,pm} in R, it includes c s.t.:

  • c certifies {p1,...,pm}
  • type(c)isatype
  • is minimum if ∄ a valid

disclosure D′ s.t. D′ satisfies R and λ(D′)<λ(D)

R = id.{Name,Address} ∧ cc.{Name,CCNum}

!"#$%&!"#$%&'(")#% !"$'!&%(")#% '()*!%$"*)#)'&+, !"+,!"#$%&'(")#% !"-.)(/0(!%#(*&"$,-$ !!"#$!./0/1123 !%#&'()!456 *%+!2/738739:0 ",$-!;+<5=&'> .//(-00!?@ !!"#$!0A./1113B

  • 1,23!<-C)"1&'

45%&-!:B9D111D8.. "267",$-!<+<:0 !" !# !$ !% !& !" !# !# !' !"& !"# !( !$ !" !!# !)' "

λ(D) = 35 = ⇒ D is not minimum

c Pierangela Samarati 18/20

slide-17
SLIDE 17

Min-disclosure problem

A disclosure D:

  • satisfies R if it satisfies at

least a R in R

  • satisfies R if, ∀

r=type.{p1,...,pm} in R, it includes c s.t.:

  • c certifies {p1,...,pm}
  • type(c)isatype
  • is minimum if ∄ a valid

disclosure D′ s.t. D′ satisfies R and λ(D′)<λ(D)

R = id.{Name,Address} ∧ cc.{Name,CCNum}

!"#$%&!"#$%&'(")#% !"$'!&%(")#% '()*!%$"*)#)'&+, !"+,!"#$%&'(")#% !"-.)(/0(!%#(*&"$,-$ !!"#$!./0/1123 !%#&'()!456 *%+!2/738739:0 ",$-!;+<5=&'> .//(-00!?@ !!"#$!0A./1113B

  • 1,23!<-C)"1&'

45%&-!:B9D111D8.. "267",$-!<+<:0 !" !# !$ !% !& !" !# !# !' !"& !"# !( !$ !" !!# !)' "

λ(D′) = 30 = ⇒ D′ is minimum

c Pierangela Samarati 18/20

Computing a minimal disclosure

The problem of computing a disclosure that minimizes release of information is NP-hard

  • exploit graph-based representation of portfolio and requests,

providing heuristics based on graph-matching [PASSAT’10]

  • exploit Max-SAT representation of the problem and existing SAT

solver [WPES’10]

c Pierangela Samarati 19/20

slide-18
SLIDE 18

Work to be investigated

  • Sensitivity labels assigned to proofs (provided by non-atomic

credentials)

  • Sensitivity labels based on context
  • Integration with server-side solutions and more expressive server

requests

  • User-intuitive approaches for expressing preferences (and

possibly translate them to sensitivity labels)

  • Consideration of previous disclosures

c Pierangela Samarati 20/20