Simulatability The enemy knows the system, Claude Shannon - - PowerPoint PPT Presentation

simulatability
SMART_READER_LITE
LIVE PREVIEW

Simulatability The enemy knows the system, Claude Shannon - - PowerPoint PPT Presentation

Simulatability The enemy knows the system, Claude Shannon CompSci 590.03 Instructor: Ashwin Machanavajjhala Lecture 6 : 590.03 Fall 13 1 Outline


slide-1
SLIDE 1

Simulatability ¡

“The ¡enemy ¡knows ¡the ¡system”, ¡Claude ¡Shannon ¡

CompSci ¡590.03 ¡ Instructor: ¡Ashwin ¡Machanavajjhala ¡

1 ¡ Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡

slide-2
SLIDE 2

Outline ¡

  • Simulatable ¡Audi<ng ¡
  • Minimality ¡A?ack ¡in ¡anonymiza<on ¡
  • Simulatable ¡algorithms ¡for ¡anoymiza<on ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 2 ¡

slide-3
SLIDE 3

Query ¡Audi<ng ¡

Database ¡has ¡numeric ¡values ¡(say ¡salaries ¡of ¡employees). ¡ Should ¡not ¡release ¡exact ¡value ¡of ¡any ¡value. ¡ ¡ ¡ Database ¡either ¡truthfully ¡answers ¡a ¡ques<on ¡or ¡denies ¡answering. ¡ ¡ MIN, ¡MAX, ¡SUM ¡queries ¡over ¡subsets ¡of ¡the ¡database. ¡ ¡ QuesFon: ¡ ¡ ¡When ¡to ¡allow/deny ¡queries? ¡ ¡

Database ¡

Researcher ¡

Query ¡ Safe ¡to ¡ publish? ¡ Yes ¡ No ¡

3 ¡ Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡

slide-4
SLIDE 4

Why ¡should ¡we ¡deny ¡queries? ¡

  • Q1: ¡AK’s ¡sensi<ve ¡value? ¡ ¡

– DENY ¡

  • ¡Q2: ¡Max ¡sensi<ve ¡value ¡of ¡ ¡

ugrads? ¡

– ANSWER: ¡2 ¡

  • Q3: ¡Max ¡sensi<ve ¡value ¡of ¡US ¡

¡students? ¡ ¡

– ANSWER: ¡3 ¡

  • But ¡Q3 ¡+ ¡Q2 ¡=> ¡AK ¡= ¡3 ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 4 ¡

Name ¡ Grad ¡ Interna =onal ¡ Sensi=v e ¡value ¡ NR ¡ Y ¡ Y ¡ 1 ¡ AK ¡ Y ¡ N ¡ 3 ¡ SR ¡ N ¡ N ¡ 1 ¡ KL ¡ N ¡ N ¡ 2 ¡ YC ¡ Y ¡ Y ¡ 1 ¡ SY ¡ Y ¡ Y ¡ 2 ¡ HC ¡ Y ¡ Y ¡ 1 ¡

slide-5
SLIDE 5

Value-­‑Based ¡Audi<ng ¡

  • Let ¡a1, ¡a2, ¡…, ¡ak ¡be ¡the ¡answers ¡to ¡previous ¡queries ¡Q1, ¡Q2, ¡…, ¡Qk. ¡ ¡
  • Let ¡ak+1 ¡be ¡the ¡answer ¡to ¡Qk+1. ¡ ¡

ai ¡= ¡f(ci1x1, ¡ci2x2, ¡…, ¡cinxn), ¡ ¡i ¡= ¡1 ¡… ¡k+1 ¡ cim ¡= ¡1 ¡if ¡Qi ¡depends ¡on ¡xm ¡ ¡ ¡ Check ¡if ¡any ¡xj ¡has ¡a ¡unique ¡solu=on. ¡ ¡

5 ¡ Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡

slide-6
SLIDE 6

Value-­‑Based ¡Audi<ng ¡

  • Data ¡Values: ¡{x1, ¡x2 ¡, ¡x3 ¡, ¡x4 ¡, ¡x5}, ¡Queries: ¡MAX. ¡
  • Allow ¡query ¡if ¡value ¡of ¡xi ¡can’t ¡be ¡inferred. ¡

¡

x1 x2 ¡ x3 ¡ x4 ¡ ¡ x5 ¡

6 ¡ Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡

slide-7
SLIDE 7

Value-­‑based ¡Audi<ng ¡

  • Data ¡Values: ¡{x1, ¡x2 ¡, ¡x3 ¡, ¡x4 ¡, ¡x5}, ¡Queries: ¡MAX. ¡
  • Allow ¡query ¡if ¡value ¡of ¡xi ¡can’t ¡be ¡inferred. ¡

¡

x1 x2 ¡ x3 ¡ x4 ¡ ¡ x5 ¡

max(x1, ¡x2 ¡, ¡x3 ¡, ¡x4 ¡, ¡x5) ¡

Ans: ¡10 ¡

10 ¡

  • ­‑∞ ¡≤ ¡x1 ¡… ¡x5≤ ¡10 ¡

7 ¡ Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡

slide-8
SLIDE 8

Value-­‑based ¡Audi<ng ¡

  • Data ¡Values: ¡{x1, ¡x2 ¡, ¡x3 ¡, ¡x4 ¡, ¡x5}, ¡Queries: ¡MAX. ¡
  • Allow ¡query ¡if ¡value ¡of ¡xi ¡can’t ¡be ¡inferred. ¡

¡

x1 x2 ¡ x3 ¡ x4 ¡ ¡ x5 ¡

max(x1, ¡x2 ¡, ¡x3 ¡, ¡x4 ¡, ¡x5) ¡

Ans: ¡10 ¡

10 ¡ max(x1, ¡x2 ¡, ¡x3 ¡, ¡x4) ¡

Ans: ¡8 ¡

DENY ¡

  • ­‑∞ ¡≤ ¡x1 ¡… ¡x4 ¡≤ ¡8 ¡

¡=> ¡x5 ¡= ¡10 ¡

8 ¡ Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡

slide-9
SLIDE 9

Value-­‑based ¡Audi<ng ¡

  • Data ¡Values: ¡{x1, ¡x2 ¡, ¡x3 ¡, ¡x4 ¡, ¡x5}, ¡Queries: ¡MAX. ¡
  • Allow ¡query ¡if ¡value ¡of ¡xi ¡can’t ¡be ¡inferred. ¡

¡

x1 x2 ¡ x3 ¡ x4 ¡ ¡ x5 ¡

max(x1, ¡x2 ¡, ¡x3 ¡, ¡x4 ¡, ¡x5) ¡

Ans: ¡10 ¡

10 ¡ max(x1, ¡x2 ¡, ¡x3 ¡, ¡x4) ¡

Ans: ¡8 ¡

DENY ¡

Denial ¡means ¡some ¡ value ¡can ¡be ¡ compromised! ¡

9 ¡ Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡

slide-10
SLIDE 10

Value-­‑based ¡Audi<ng ¡

  • Data ¡Values: ¡{x1, ¡x2 ¡, ¡x3 ¡, ¡x4 ¡, ¡x5}, ¡Queries: ¡MAX. ¡
  • Allow ¡query ¡if ¡value ¡of ¡xi ¡can’t ¡be ¡inferred. ¡

¡

x1 x2 ¡ x3 ¡ x4 ¡ ¡ x5 ¡

max(x1, ¡x2 ¡, ¡x3 ¡, ¡x4 ¡, ¡x5) ¡

Ans: ¡10 ¡

10 ¡ max(x1, ¡x2 ¡, ¡x3 ¡, ¡x4) ¡

Ans: ¡8 ¡

DENY ¡

What ¡could ¡ ¡ max(x1, ¡x2, ¡x3, ¡x4) ¡ be? ¡

10 ¡ Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡

slide-11
SLIDE 11

Value-­‑based ¡Audi<ng ¡

  • Data ¡Values: ¡{x1, ¡x2 ¡, ¡x3 ¡, ¡x4 ¡, ¡x5}, ¡Queries: ¡MAX. ¡
  • Allow ¡query ¡if ¡value ¡of ¡xi ¡can’t ¡be ¡inferred. ¡

¡

x1 x2 ¡ x3 ¡ x4 ¡ ¡ x5 ¡

max(x1, ¡x2 ¡, ¡x3 ¡, ¡x4 ¡, ¡x5) ¡

Ans: ¡10 ¡

10 ¡ max(x1, ¡x2 ¡, ¡x3 ¡, ¡x4) ¡

Ans: ¡8 ¡

DENY ¡

From ¡first ¡answer, ¡

max(x1,x2,x3,x4) ¡≤ ¡10 ¡

11 ¡ Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡

slide-12
SLIDE 12

Value-­‑based ¡Audi<ng ¡

  • Data ¡Values: ¡{x1, ¡x2 ¡, ¡x3 ¡, ¡x4 ¡, ¡x5}, ¡Queries: ¡MAX. ¡
  • Allow ¡query ¡if ¡value ¡of ¡xi ¡can’t ¡be ¡inferred. ¡

¡

x1 x2 ¡ x3 ¡ x4 ¡ ¡ x5 ¡

max(x1, ¡x2 ¡, ¡x3 ¡, ¡x4 ¡, ¡x5) ¡

Ans: ¡10 ¡

10 ¡ max(x1, ¡x2 ¡, ¡x3 ¡, ¡x4) ¡

Ans: ¡8 ¡

DENY ¡

If, ¡max(x1,x2,x3,x4) ¡= ¡

10 ¡

Then, ¡no ¡privacy ¡ breach ¡

12 ¡ Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡

slide-13
SLIDE 13

Value-­‑based ¡Audi<ng ¡

  • Data ¡Values: ¡{x1, ¡x2 ¡, ¡x3 ¡, ¡x4 ¡, ¡x5}, ¡Queries: ¡MAX. ¡
  • Allow ¡query ¡if ¡value ¡of ¡xi ¡can’t ¡be ¡inferred. ¡

¡

x1 x2 ¡ x3 ¡ x4 ¡ ¡ x5 ¡

max(x1, ¡x2 ¡, ¡x3 ¡, ¡x4 ¡, ¡x5) ¡

Ans: ¡10 ¡

10 ¡ max(x1, ¡x2 ¡, ¡x3 ¡, ¡x4) ¡

Ans: ¡8 ¡

DENY ¡

Hence, ¡

max(x1,x2,x3,x4) ¡< ¡10 ¡

=> ¡x5 ¡= ¡10! ¡

13 ¡ Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡

slide-14
SLIDE 14

Value-­‑based ¡Audi<ng ¡

  • Data ¡Values: ¡{x1, ¡x2 ¡, ¡x3 ¡, ¡x4 ¡, ¡x5}, ¡Queries: ¡MAX. ¡
  • Allow ¡query ¡if ¡value ¡of ¡xi ¡can’t ¡be ¡inferred. ¡

¡

x1 x2 ¡ x3 ¡ x4 ¡ ¡ x5 ¡

max(x1, ¡x2 ¡, ¡x3 ¡, ¡x4 ¡, ¡x5) ¡

Ans: ¡10 ¡

10 ¡ max(x1, ¡x2 ¡, ¡x3 ¡, ¡x4) ¡

Ans: ¡8 ¡

DENY ¡

Hence, ¡

max(x1,x2,x3,x4) ¡< ¡10 ¡

=> ¡x5 ¡= ¡10! ¡

Denials ¡leak ¡informa=on. ¡ ¡ ANack ¡occurred ¡since ¡privacy ¡analysis ¡did ¡ not ¡assume ¡that ¡aNacker ¡knows ¡the ¡algorithm. ¡ ¡

14 ¡ Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡

slide-15
SLIDE 15

Simulatable ¡Audi<ng ¡[Kenthapadi ¡et ¡al ¡PODS ¡‘05] ¡

  • An ¡auditor ¡is ¡simulatable ¡if ¡the ¡decision ¡to ¡deny ¡a ¡query ¡Qk ¡is ¡

made ¡based ¡on ¡informa=on ¡already ¡available ¡to ¡the ¡aNacker. ¡ ¡ – Can ¡use ¡queries ¡Q1, ¡Q2, ¡…, ¡Qk ¡and ¡answers ¡a1, ¡a2, ¡…, ¡ak-­‑1 ¡ – Cannot ¡use ¡ak ¡or ¡the ¡actual ¡data ¡to ¡make ¡the ¡decision. ¡

  • Denials ¡provably ¡do ¡not ¡leak ¡informaiton ¡

– Because ¡the ¡a?acker ¡could ¡equivalently ¡determine ¡whether ¡ the ¡query ¡would ¡be ¡denied. ¡ ¡ – A?acker ¡can ¡mimic ¡or ¡simulate ¡the ¡auditor. ¡

15 ¡ Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡

slide-16
SLIDE 16

Simulatable ¡Audi<ng ¡Algorithm ¡

  • Data ¡Values: ¡{x1, ¡x2 ¡, ¡x3 ¡, ¡x4 ¡, ¡x5}, ¡Queries: ¡MAX. ¡
  • Allow ¡query ¡if ¡value ¡of ¡xi ¡can’t ¡be ¡inferred. ¡

¡

x1 x2 ¡ x3 ¡ x4 ¡ ¡ x5 ¡

max(x1, ¡x2 ¡, ¡x3 ¡, ¡x4 ¡, ¡x5) ¡

Ans: ¡10 ¡

10 ¡ max(x1, ¡x2 ¡, ¡x3 ¡, ¡x4) ¡

Before ¡ compu<ng ¡ answer ¡

DENY ¡

¡ ¡ ¡ Ans ¡> ¡10 ¡=> ¡not ¡possible ¡ Ans ¡= ¡10 ¡=> ¡-­‑∞ ¡≤ ¡x1 ¡… ¡x4 ¡≤ ¡10 ¡ Ans ¡< ¡10 ¡=> ¡x5 ¡= ¡10 ¡

SAFE ¡ UNSAFE ¡

16 ¡ Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡

slide-17
SLIDE 17

Summary ¡of ¡Simulatable ¡Audi<ng ¡

  • Decision ¡to ¡deny ¡answers ¡must ¡be ¡based ¡on ¡past ¡queries ¡

answered ¡in ¡some ¡(many!) ¡cases. ¡ ¡

  • Denials ¡can ¡leak ¡informa<on ¡if ¡the ¡adversary ¡does ¡not ¡know ¡all ¡

the ¡informa<on ¡that ¡is ¡used ¡to ¡decide ¡whether ¡to ¡deny ¡the ¡

  • query. ¡ ¡

17 ¡ Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡

slide-18
SLIDE 18

Outline ¡

  • Simulatable ¡Audi<ng ¡
  • Minimality ¡A?ack ¡in ¡anonymiza<on ¡
  • Simulatable ¡algorithms ¡for ¡anoymiza<on ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 18 ¡

slide-19
SLIDE 19

Minimality ¡a?ack ¡on ¡Generaliza<on ¡ algorithms ¡

  • Algorithms ¡for ¡K-­‑anonymity, ¡L-­‑diversity, ¡T-­‑closeness, ¡etc. ¡try ¡to ¡

maximize ¡u<lity. ¡ ¡

– Find ¡a ¡minimally ¡generalized ¡table ¡in ¡the ¡lauce ¡that ¡sa<sfies ¡privacy, ¡and ¡ maximizes ¡u<lity. ¡ ¡

  • But ¡… ¡a?acker ¡also ¡knows ¡this ¡algorithm! ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 19 ¡

slide-20
SLIDE 20

Example ¡Minimality ¡a?ack ¡[Wong ¡et ¡al ¡VLDB07] ¡

  • Dataset ¡with ¡one ¡quasi-­‑iden<fier ¡and ¡2 ¡values ¡q1, ¡q2. ¡
  • ¡q1, ¡q2 ¡generalize ¡to ¡Q. ¡ ¡
  • Sensi<ve ¡a?ribute: ¡Cancer ¡– ¡yes/no ¡
  • We ¡want ¡to ¡ensure ¡P[Cancer ¡= ¡yes] ¡< ¡½. ¡ ¡

– OK ¡to ¡know ¡if ¡an ¡individual ¡does ¡not ¡have ¡Cancer. ¡ ¡

  • Published ¡Table: ¡ ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 20 ¡

QID Cancer

Q Yes Q Yes Q No Q No q2 No q2 No

slide-21
SLIDE 21

Which ¡input ¡datasets ¡could ¡have ¡led ¡to ¡the ¡ published ¡table? ¡ ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 21 ¡

QID Cancer

Q Yes Q Yes Q No Q No q2 No q2 No

Output ¡dataset ¡ {q1,q2} ¡à ¡Q ¡ (“2-­‑diverse”) ¡ Possible ¡Input ¡dataset ¡ 3 ¡occurrences ¡of ¡q1 ¡

QID Cancer

q1 Yes q1 Yes q1 No q2 No q2 No q2 No

QID Cancer

q1 Yes q1 No q1 No q2 Yes q2 No q2 No

slide-22
SLIDE 22

Which ¡input ¡datasets ¡could ¡have ¡led ¡to ¡the ¡ published ¡table? ¡ ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 22 ¡

QID Cancer

Q Yes Q Yes Q No Q No q2 No q2 No

Output ¡dataset ¡ {q1,q2} ¡à ¡Q ¡ (“2-­‑diverse”) ¡ Possible ¡Input ¡dataset ¡ 3 ¡occurrences ¡of ¡q1 ¡

QID Cancer

q1 Yes Q No Q No q2 Yes q2 No q2 No

This ¡is ¡a ¡beNer ¡ generaliza=on! ¡

slide-23
SLIDE 23

Which ¡input ¡datasets ¡could ¡have ¡led ¡to ¡the ¡ published ¡table? ¡ ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 23 ¡

QID Cancer

Q Yes Q Yes Q No Q No q2 No q2 No

Output ¡dataset ¡ {q1,q2} ¡à ¡Q ¡ (“2-­‑diverse”) ¡ Possible ¡Input ¡dataset ¡ 1 ¡occurrence ¡of ¡q1 ¡

QID Cancer

q2 Yes q1 Yes q2 No q2 No q2 No q2 No

QID Cancer

q2 Yes q2 Yes q1 No q2 No q2 No q2 No

slide-24
SLIDE 24

Which ¡input ¡datasets ¡could ¡have ¡led ¡to ¡the ¡ published ¡table? ¡ ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 24 ¡

QID Cancer

Q Yes Q Yes Q No Q No q2 No q2 No

Output ¡dataset ¡ {q1,q2} ¡à ¡Q ¡ (“2-­‑diverse”) ¡ Possible ¡Input ¡dataset ¡ 1 ¡occurrence ¡of ¡q1 ¡

QID Cancer

q2 Yes Q No Q No q2 Yes q2 No q2 No

This ¡is ¡a ¡beNer ¡ generaliza=on! ¡

slide-25
SLIDE 25

Which ¡input ¡datasets ¡could ¡have ¡led ¡to ¡the ¡ published ¡table? ¡ ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 25 ¡

QID Cancer

Q Yes Q Yes Q No Q No q2 No q2 No

Output ¡dataset ¡ {q1,q2} ¡à ¡Q ¡ (“2-­‑diverse”) ¡ Possible ¡Input ¡dataset ¡ 3 ¡occurrences ¡of ¡q1 ¡

QID Cancer

q2 Yes Q No Q No q2 Yes q2 No q2 No

There ¡must ¡be ¡exactly ¡two ¡tuples ¡with ¡q1 ¡

slide-26
SLIDE 26

Which ¡input ¡datasets ¡could ¡have ¡led ¡to ¡the ¡ published ¡table? ¡ ¡

QID Cancer

Q Yes Q Yes Q No Q No q2 No q2 No

Output ¡dataset ¡ {q1,q2} ¡à ¡Q ¡ (“2-­‑diverse”) ¡ Possible ¡Input ¡dataset ¡ 2 ¡occurrences ¡of ¡q1 ¡

QID Cancer

q1 Yes q1 Yes q2 No q2 No q2 No q2 No

QID Cancer

q2 Yes q2 Yes q1 No q1 No q2 No q2 No

QID Cancer

q1 Yes q2 Yes q1 No q2 No q2 No q2 No

Already ¡ sa=sfies ¡ privacy ¡

26 ¡ Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡

slide-27
SLIDE 27

Which ¡input ¡datasets ¡could ¡have ¡led ¡to ¡the ¡ published ¡table? ¡ ¡

QID Cancer

Q Yes Q Yes Q No Q No q2 No q2 No

Output ¡dataset ¡ {q1,q2} ¡à ¡Q ¡ (“2-­‑diverse”) ¡ Possible ¡Input ¡dataset ¡ 2 ¡occurrences ¡of ¡q1 ¡

QID Cancer

q1 Yes q1 Yes q2 No q2 No q2 No q2 No

QID Cancer

q2 Yes q2 Yes q1 No q1 No q2 No q2 No

Learning ¡Cancer=NO ¡ is ¡OK, ¡ ¡ Hence, ¡this ¡is ¡private ¡ ¡

27 ¡ Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡

slide-28
SLIDE 28

Which ¡input ¡datasets ¡could ¡have ¡led ¡to ¡the ¡ published ¡table? ¡ ¡

QID Cancer

Q Yes Q Yes Q No Q No q2 No q2 No

Output ¡dataset ¡ {q1,q2} ¡à ¡Q ¡ (“2-­‑diverse”) ¡ Possible ¡Input ¡dataset ¡ 2 ¡occurrences ¡of ¡q1 ¡

QID Cancer

q1 Yes q1 Yes q2 No q2 No q2 No q2 No

This ¡is ¡the ¡ONLY ¡ input ¡that ¡results ¡in ¡ the ¡output! ¡

P[Cancer ¡= ¡yes ¡| ¡q1] ¡= ¡1 ¡

28 ¡ Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡

slide-29
SLIDE 29

Outline ¡

  • Simulatable ¡Audi<ng ¡
  • Minimality ¡A?ack ¡in ¡anonymiza<on ¡
  • Transparent ¡Anonymiza<on: ¡ ¡

Simulatable ¡algorithms ¡for ¡anoymiza<on ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 29 ¡

slide-30
SLIDE 30

Transparent ¡Anonymiza<on ¡

  • Assume ¡that ¡the ¡adversary ¡knows ¡the ¡algorithm ¡that ¡is ¡being ¡
  • used. ¡ ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 30 ¡

O: ¡Output ¡table ¡ I(O, ¡A): ¡Input ¡tables ¡that ¡ ¡ result ¡in ¡O ¡due ¡to ¡algorithm ¡A ¡ I: ¡All ¡possible ¡input ¡tables ¡

slide-31
SLIDE 31

Transparent ¡Anonymiza<on ¡

  • According ¡to ¡I(O, ¡A) ¡privacy ¡must ¡be ¡guaranteed. ¡ ¡

– Probability ¡must ¡be ¡computed ¡assuming ¡I(O,A) ¡is ¡the ¡actual ¡set ¡of ¡all ¡possible ¡ input ¡tables. ¡ ¡

  • What ¡is ¡an ¡efficient ¡algorithm ¡for ¡Transparent ¡Anonymiza<on? ¡

– For ¡L-­‑diversity? ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 31 ¡

slide-32
SLIDE 32

Ace ¡Algorithm ¡[Xiao ¡et ¡al ¡TODS’10] ¡

Step ¡1: ¡Assign ¡ Just ¡based ¡on ¡the ¡sensi<ve ¡values, ¡construct ¡(in ¡a ¡randomized ¡ fashion) ¡an ¡intermediate ¡L-­‑diverse ¡genera<on. ¡ ¡ ¡ ¡ Step ¡2: ¡Split ¡ Only ¡based ¡on ¡the ¡quasi-­‑iden<fier ¡values ¡(and ¡without ¡looking ¡at ¡ sensi<ve ¡values) ¡, ¡determinis<cally ¡refine ¡the ¡intermediate ¡ solu<on ¡to ¡maximize ¡u<lity. ¡ ¡ ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 32 ¡

slide-33
SLIDE 33

Step ¡1: ¡Assign ¡

  • Input ¡Table ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 33 ¡

slide-34
SLIDE 34

Step ¡1: ¡Assign ¡

  • St ¡is ¡the ¡set ¡of ¡all ¡tuples ¡(grouped ¡by ¡sensi<ve ¡value) ¡
  • Itera<vely, ¡ ¡

– Remove ¡α ¡tuples ¡each ¡from ¡the ¡ ¡ β ¡(≥L) ¡most ¡frequent ¡sensi<ve ¡values ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 34 ¡

slide-35
SLIDE 35

Step ¡1: ¡Assign ¡

  • St ¡is ¡the ¡set ¡of ¡all ¡tuples ¡(grouped ¡by ¡sensi<ve ¡value) ¡
  • Itera<vely, ¡ ¡

– Remove ¡α ¡tuples ¡each ¡from ¡the ¡ ¡ β ¡(≥L) ¡most ¡frequent ¡sensi<ve ¡values ¡

– 1st ¡itera<on ¡β=2, ¡α=2 ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 35 ¡

slide-36
SLIDE 36

Step ¡1: ¡Assign ¡

  • St ¡is ¡the ¡set ¡of ¡all ¡tuples ¡(grouped ¡by ¡sensi<ve ¡value) ¡
  • Itera<vely, ¡ ¡

– Remove ¡α ¡tuples ¡each ¡from ¡the ¡ ¡ β ¡(≥L) ¡most ¡frequent ¡sensi<ve ¡values ¡

– 2nd ¡itera<on ¡β=2, ¡α=1 ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 36 ¡

slide-37
SLIDE 37

Step ¡1: ¡Assign ¡

  • St ¡is ¡the ¡set ¡of ¡all ¡tuples ¡(grouped ¡by ¡sensi<ve ¡value) ¡
  • Itera<vely, ¡ ¡

– Remove ¡α ¡tuples ¡each ¡from ¡the ¡ ¡ β ¡(≥L) ¡most ¡frequent ¡sensi<ve ¡values ¡

– 3rd ¡itera<on ¡β=2, ¡α=1 ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 37 ¡

slide-38
SLIDE 38

Intermediate ¡Generaliza<on ¡

Name ¡ Age ¡ Zip ¡ Ann ¡ 21 ¡ 10000 ¡ Bob ¡ 27 ¡ 18000 ¡ Gill ¡ 60 ¡ 63000 ¡ Ed ¡ 54 ¡ 60000 ¡ Don ¡ 32 ¡ 35000 ¡ Fred ¡ 60 ¡ 63000 ¡ Hera ¡ 60 ¡ 63000 ¡ Cate ¡ 32 ¡ 35000 ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 38 ¡

Disease ¡ Dyspepsia ¡ Dyspepsia ¡ Flu ¡ Flu ¡ Bronchi<s ¡ Gastri<s ¡ Diabetes ¡ Gastri<s ¡ ¡

slide-39
SLIDE 39

Step ¡2: ¡Split ¡

  • If ¡a ¡bucket ¡contains ¡α>1 ¡tuples ¡of ¡each ¡sensi<ve ¡value, ¡split ¡it ¡into ¡

two ¡buckets, ¡Ba ¡and ¡Bb ¡s.t., ¡ ¡

– Pick ¡1 ¡≤ ¡αa ¡< ¡α ¡tuples ¡from ¡each ¡sensi<ve ¡value ¡in ¡bucket ¡B, ¡and ¡put ¡them ¡ in ¡bucket ¡Ba. ¡The ¡remaining ¡tuples ¡go ¡to ¡Bb. ¡ ¡ – The ¡division ¡(Ba, ¡Bb) ¡is ¡op<mal ¡in ¡terms ¡of ¡u<lity. ¡ ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 39 ¡

Name ¡ Age ¡ Zip ¡ Ann ¡ 21 ¡ 10000 ¡ Bob ¡ 27 ¡ 18000 ¡ Gill ¡ 60 ¡ 63000 ¡ Ed ¡ 54 ¡ 60000 ¡ Don ¡ 32 ¡ 35000 ¡ Fred ¡ 60 ¡ 63000 ¡ Hera ¡ 60 ¡ 63000 ¡ Cate ¡ 32 ¡ 35000 ¡

slide-40
SLIDE 40

Why ¡does ¡the ¡Ace ¡algorithm ¡sa<sfy ¡ Transparent ¡L-­‑Diversity? ¡

  • According ¡to ¡I(O, ¡A) ¡privacy ¡must ¡be ¡guaranteed. ¡ ¡

– Probability ¡must ¡be ¡computed ¡assuming ¡I(O,A) ¡is ¡the ¡actual ¡set ¡of ¡all ¡possible ¡ input ¡tables. ¡ ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 40 ¡

O: ¡Output ¡table ¡ I(O, ¡A): ¡Input ¡tables ¡that ¡ ¡ result ¡in ¡O ¡due ¡to ¡algorithm ¡A ¡ I: ¡All ¡possible ¡input ¡tables ¡

slide-41
SLIDE 41

Ace ¡algorithm ¡analysis ¡

Lemma ¡1: ¡ ¡ The ¡assign ¡step ¡saFsfies ¡transparent ¡L-­‑diversity. ¡ ¡ Proof ¡(sketch): ¡ ¡

  • Consider ¡an ¡intermediate ¡output ¡Int ¡
  • Suppose ¡there ¡is ¡some ¡input ¡table ¡T ¡such ¡that ¡Assign(T) ¡ ¡= ¡Int ¡
  • Any ¡other ¡table ¡T’ ¡where ¡the ¡sensi<ve ¡values ¡of ¡2 ¡individuals ¡in ¡

the ¡same ¡group ¡are ¡swapped, ¡also ¡leads ¡to ¡the ¡same ¡ intermediate ¡output ¡Int. ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 41 ¡

slide-42
SLIDE 42

Ace ¡algorithm ¡analysis ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 42 ¡

Both ¡tables ¡result ¡in ¡the ¡same ¡intermediate ¡output. ¡ ¡

slide-43
SLIDE 43

Ace ¡algorithm ¡analysis ¡

Lemma ¡1: ¡ ¡ The ¡assign ¡step ¡saFsfies ¡transparent ¡L-­‑diversity. ¡ Proof ¡(sketch): ¡ ¡

  • Consider ¡an ¡intermediate ¡output ¡Int ¡
  • Suppose ¡there ¡is ¡some ¡input ¡table ¡T ¡such ¡that ¡Assign(T) ¡ ¡= ¡Int ¡
  • Any ¡other ¡table ¡T’, ¡where ¡the ¡sensi<ve ¡values ¡of ¡2 ¡individuals ¡in ¡the ¡same ¡

group ¡are ¡swapped, ¡also ¡leads ¡to ¡the ¡same ¡intermediate ¡output. ¡

  • The ¡set ¡of ¡input ¡tables ¡I(Int,A) ¡contains ¡all ¡possible ¡assignments ¡of ¡

diseases ¡to ¡individuals ¡within ¡each ¡group ¡of ¡Int. ¡ ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 43 ¡

slide-44
SLIDE 44

Ace ¡algorithm ¡analysis ¡

Lemma ¡1: ¡ ¡ The ¡assign ¡step ¡saFsfies ¡transparent ¡L-­‑diversity. ¡ Proof ¡(sketch): ¡ ¡

  • The ¡set ¡of ¡table ¡I(Int,A) ¡contains ¡all ¡possible ¡assignments ¡of ¡diseases ¡to ¡

individuals ¡in ¡each ¡group ¡of ¡Int. ¡ ¡

  • P[Ann ¡has ¡dyspepsia ¡| ¡I(Int,A) ¡and ¡Int] ¡= ¡1/2 ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 44 ¡

Name ¡ Age ¡ Zip ¡ Ann ¡ 21 ¡ 10000 ¡ Bob ¡ 27 ¡ 18000 ¡ Gill ¡ 60 ¡ 63000 ¡ Ed ¡ 54 ¡ 60000 ¡ Disease ¡ Dyspepsia ¡ Dyspepsia ¡ Flu ¡ Flu ¡

slide-45
SLIDE 45

Ace ¡algorithm ¡analysis ¡

Lemma ¡2: ¡ The ¡split ¡phase ¡also ¡saFsfies ¡transparent ¡L-­‑diversity. ¡ ¡ ¡ Proof ¡(sketch): ¡

  • I(Int, ¡Assign) ¡contains ¡all ¡tables ¡where ¡an ¡individual ¡is ¡assigned ¡to ¡an ¡

arbitrary ¡sensi<ve ¡value ¡within ¡the ¡same ¡group ¡in ¡Int. ¡ ¡

  • Suppose ¡some ¡input ¡table ¡T ¡ε ¡I(Int, ¡Assign) ¡results ¡in ¡the ¡final ¡output ¡

O ¡a‚er ¡Split. ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 45 ¡

slide-46
SLIDE 46

Ace ¡algorithm ¡analysis ¡

  • Split ¡does ¡not ¡depend ¡on ¡the ¡sensi<ve ¡values. ¡ ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 46 ¡

Ann ¡ ¡ Gill ¡ Bob ¡ Ed ¡ dyspepsia ¡ ¡ ¡ ¡flu ¡ ¡ Ann ¡ ¡ Bob ¡ ¡ dyspepsia ¡ ¡ ¡ ¡flu ¡ ¡ ¡ Gill ¡ ¡ Ed ¡ dyspepsia ¡ ¡ ¡ ¡flu ¡ ¡

¡results ¡in ¡ ¡

Bob ¡ Ed ¡ Ann ¡ Gill ¡ dyspepsia ¡ ¡ ¡ ¡flu ¡ ¡ Bob ¡ Ann ¡ ¡ dyspepsia ¡ ¡ ¡ ¡flu ¡ ¡ ¡ Ed ¡ ¡ Gill ¡ dyspepsia ¡ ¡ ¡ ¡flu ¡ ¡

¡results ¡in ¡ ¡

slide-47
SLIDE 47

Ace ¡algorithm ¡analysis ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 47 ¡

If ¡T ¡ε ¡I(Int, ¡Assign), ¡and ¡it ¡results ¡in ¡O ¡a^er ¡split, ¡ ¡ Then, ¡T’ ¡ε ¡I(Int, ¡Assign), ¡and ¡it ¡results ¡in ¡O ¡a^er ¡split ¡

Table ¡T ¡ Table ¡T’ ¡

slide-48
SLIDE 48

Ace ¡algorithm ¡analysis ¡

  • Lemma ¡2: ¡

The ¡split ¡phase ¡also ¡saFsfies ¡transparent ¡L-­‑diversity. ¡ ¡ Proof ¡(sketch) ¡

  • Let ¡T’ ¡be ¡generated ¡by ¡“swapping ¡diseases” ¡in ¡some ¡bucket. ¡ ¡
  • If ¡T ¡ε ¡I(Int, ¡Assign), ¡and ¡it ¡results ¡in ¡O ¡a‚er ¡split, ¡ ¡

Then, ¡T’ ¡ε ¡I(Int, ¡Assign), ¡and ¡it ¡results ¡in ¡O ¡a‚er ¡split. ¡

  • For ¡any ¡individual ¡it ¡is ¡equally ¡likely ¡that ¡sensi<ve ¡value ¡is ¡one ¡of ¡

≥L ¡choices. ¡ ¡

  • Therefore, ¡P[individual ¡has ¡disease ¡| ¡I(O, ¡Ace)] ¡< ¡1/L ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 48 ¡

slide-49
SLIDE 49

Summary ¡

  • Many ¡systems ¡assume ¡privacy/security ¡is ¡guaranteed ¡by ¡

assuming ¡the ¡adversary ¡does ¡not ¡know ¡the ¡algorithm. ¡ ¡

– This ¡is ¡bad ¡… ¡

  • Simulatable ¡algorithms ¡avoid ¡this ¡problem ¡

– Ideally ¡choices ¡made ¡by ¡the ¡algorithm ¡should ¡be ¡simulatable ¡by ¡the ¡

  • adversary. ¡ ¡
  • Anonymiza<on ¡algorithms ¡are ¡also ¡suscep<ble ¡to ¡adversaries ¡

who ¡know ¡the ¡algorithm ¡or ¡the ¡objec<ve ¡func<on. ¡ ¡

  • Transparent ¡anonymiza<on ¡limits ¡the ¡inference ¡an ¡a?acker ¡(who ¡

knows ¡the ¡algorithm) ¡can ¡make ¡about ¡sensi<ve ¡values. ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 49 ¡

slide-50
SLIDE 50

Next ¡Class ¡

  • Provable ¡Privacy ¡Protec<on ¡& ¡Composi<on ¡
  • Classic ¡Result ¡by ¡[Dinur, ¡Nissim] ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 50 ¡

slide-51
SLIDE 51

References ¡

  • A. ¡Machanavajjhala, ¡J. ¡Gehrke, ¡D. ¡Kifer, ¡M. ¡Venkitasubramaniam, ¡“L-­‑Diversity: ¡Privacy ¡

beyond ¡k-­‑anonymity”, ¡ICDE ¡2006 ¡

  • K. ¡Kenthapadi, ¡N. ¡Mishra, ¡K. ¡Nissim, ¡“Simulatable ¡AudiFng”, ¡PODS ¡2005 ¡
  • R. ¡Wong, ¡A. ¡Fu, ¡K. ¡Wang, ¡J. ¡Pei, ¡“Minimality ¡aVack ¡in ¡privacy ¡preserving ¡data ¡publishing”, ¡

PVLDB ¡2007 ¡

  • X. ¡Xiao, ¡Y. ¡Tao ¡& ¡N. ¡Koudas, ¡“Transparent ¡AnonymizaFon: ¡ThwarFng ¡adversaries ¡who ¡know ¡

the ¡algorithm”, ¡TODS ¡2010 ¡ ¡

Lecture ¡6 ¡: ¡590.03 ¡Fall ¡13 ¡ 51 ¡