1 / 110

A Privacy-Preserving Index for Range Queries

A Privacy-Preserving Index for Range Queries. Implementation (Group 6) Monika (A0066244H) Damien Forest (A0066246A) Rattanak Chhung (A0066240N) Yann -Loup Phan Van Song (A0066238B). Introduction. What we will present in this presentation Query-Optimal- Bucketization Algorithm

eyad
Télécharger la présentation

A Privacy-Preserving Index for Range Queries

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Privacy-Preserving Index for Range Queries Implementation (Group 6) Monika (A0066244H) Damien Forest (A0066246A) RattanakChhung (A0066240N) Yann-Loup Phan Van Song (A0066238B) CS5322 - Groupe 6

  2. CS5322 - Groupe 6 Introduction • What we will present in this presentation • Query-Optimal-Bucketization Algorithm • Attack 2 x 1D (cutting partitions) • Two attributes with Hilbert curve • What we have also done: • Controlled-Diffusion Algorithm • Remake Experiments

  3. CS5322 - Groupe 6 Query-Optimal-Bucketization 1 attribute

  4. Inputs CS5322 - Groupe 6 Our goal: find the bucketizationthatreduces the number of total false positives Principle: For all the sub-problems with max 2 buckets compute H[k][2] = (BC(1, i) + BC(i + 1,K)) Store optimal-partition-point ibestin OPP[k][2] Do the same for more than 2 buckets: H[k][l] = (H[i][l -1] + BC(i + 1, k)) Store optimal-partition-point ibestin OPP[k][l] Reconstrcut the buckets by taking: btemp = new Bucket(V[OPP[j - 1][M - 1 - i]], V[j - 1]) Dataset of plain values

  5. CS5322 - Groupe 6 BC table BC=

  6. Inputs CS5322 - Groupe 6 Intermediaryresults First Step: M=2 MinCost = 95 Dataset of plain values

  7. Inputs CS5322 - Groupe 6 Outputs Last Step: M=4 MinCost = 45 Note: Depending on whatwewantwecaninclude or not the values that have 0 frequency Dataset of plain values

  8. Inputs CS5322 - Groupe 6 Link with privacy MinCost strictly decreasing with M but might increase the likeliness of an attack (Cf.[1] Damiani et al.) -> Tradeoff Performance-Privacy Dataset of plain values

  9. CS5322 - Groupe 6 Attacks

  10. Inputs CS5322 - Groupe 6 Partition attribute 1 Partition attribute 2 Dataset of plain values Encrypted table

  11. Context CS5322 - Groupe 6 Our goal: To match the indexes and the buckets How ? Workingwithcardinalities

  12. Algorithm CS5322 - Groupe 6 Based on propagation, thisis the Sudokualgorithm: - First, identifysome indexes - Whilesome new indexes are identified Do propagation Propagation (loop): The identification of an index decreases the cardinalities in couples and helps to identify new indexes… Trigger (first attack): Done by BAA and BAA2. Their goal is to identify one or several indexes to launch the propagation

  13. First attack - BAA CS5322 - Groupe 6 BAA : B11 = [

  14. First attack - BAA CS5322 - Groupe 6 BAA : B11 = [

  15. First attack - BAA CS5322 - Groupe 6 BAA : B11 = [ 73 ,

  16. First attack - BAA CS5322 - Groupe 6 BAA : B11 = [ 73 , 15 ]

  17. First attack - BAA CS5322 - Groupe 6 BAA : BAA2 : B11 = [ 73 , 15 ] B12 = [ 73 , 15 ] B13 = [ 79 , 30 ] B14 = [ 79 , 30 ] B21 = [ 20 , 45 ] B22 = [ 9 , 74 ] No identified index … B23 = [ 9 , 74 ] B24 = [ 20 , 45 ]

  18. First attack - BAA2 CS5322 - Groupe 6 BAA : BAA2 : B11 = [ 73 , 15 ] B11 = [ B12 = [ 73 , 15 ] B12 = [ B13 = [ 79 , 30 ] B13 = [ B14 = [ 79 , 30 ] B14 = [ B21 = [ 20 , 45 ] B21 = [ B22 = [ 9 , 74 ] B22 = [ No identified index … B23 = [ 9 , 74 ] B23 = [ B24 = [ 20 , 45 ] B24 = [

  19. First attack - BAA2 CS5322 - Groupe 6 BAA2 : |B11;B21| = B11 = [ B12 = [ B13 = [ B14 = [ B21 = [ B22 = [ B23 = [ B24 = [

  20. First attack - BAA2 CS5322 - Groupe 6 BAA2 : |B11;B21| = 1 B11 = [ B12 = [ B13 = [ B14 = [ B21 = [ B22 = [ B23 = [ B24 = [

  21. First attack - BAA2 CS5322 - Groupe 6 BAA2 : |B11;B21| = 1 B11 = [ 73 , 79 , 30 B12 = [ B13 = [ B14 = [ B21 = [ 45 , 20 , 74 , 9 B22 = [ B23 = [ B24 = [

  22. First attack - BAA2 CS5322 - Groupe 6 BAA2 : |B11;B21| = 1 B11 = [ 73 , 79 , 30 B12 = [ B13 = [ B14 = [ B21 = [ 45 , 20 , 74 , 9 B22 = [ B23 = [ B24 = [

  23. First attack - BAA2 CS5322 - Groupe 6 BAA2 : |B11;B21| = 1 |B11;B22| = 0 B11 = [ 73 , 79 , 30 B12 = [ B13 = [ B14 = [ B21 = [ 45 , 20 , 74 , 9 B22 = [ B23 = [ B24 = [

  24. First attack - BAA2 CS5322 - Groupe 6 BAA2 : |B11;B21| = 1 |B11;B22| = 0 |B11;B23| = 0 B11 = [ 73 , 79 , 30 B12 = [ B13 = [ B14 = [ B21 = [ 45 , 20 , 74 , 9 B22 = [ B23 = [ B24 = [

  25. First attack - BAA2 CS5322 - Groupe 6 BAA2 : |B11;B21| = 1 |B11;B22| = 0 |B11;B23| = 0 |B11;B24| = B11 = [ 73 , 79 , 30 B12 = [ B13 = [ B14 = [ B21 = [ 45 , 20 , 74 , 9 B22 = [ B23 = [ B24 = [

  26. First attack - BAA2 CS5322 - Groupe 6 BAA2 : |B11;B21| = 1 |B11;B22| = 0 |B11;B23| = 0 |B11;B24| = 1 B11 = [ 73 , 79 , 30 B12 = [ B13 = [ B14 = [ B21 = [ 45 , 20 , 74 , 9 B22 = [ B23 = [ B24 = [

  27. First attack - BAA2 CS5322 - Groupe 6 BAA2 : |B11;B21| = 1 |B11;B22| = 0 |B11;B23| = 0 |B11;B24| = 1 B11 = [ 73 , 79 , 30 B12 = [ B13 = [ B14 = [ B21 = [ 45 , 20 , 74 , 9 B22 = [ B23 = [ B24 = [ 45 , 20 , 74 , 9

  28. First attack - BAA2 CS5322 - Groupe 6 BAA2 : |B11;B21| = 1 |B11;B22| = 0 |B11;B23| = 0 |B11;B24| = 1 B11 = [ 73 , 79 , 30 B12 = [ B13 = [ B14 = [ B21 = [ 45 , 20 , 74 , 9 B22 = [ B23 = [ B24 = [ 45 , 20 , 74 , 9

  29. First attack - BAA2 CS5322 - Groupe 6 BAA2 : |B11;B21| = 1 |B11;B22| = 0 |B11;B23| = 0 |B11;B24| = 1 B11 = [ 73 , 79 , 30 ] |B12;B21| = 0 B12 = [ 15 , 30 ] |B12;B22| = 0 |B12;B23| = 2 B13 = [ 73 , 79 , 30 ] |B12;B24| = 0 B14 = [ 73 , 15 , 79 , 30 ] |B13;B21| = 1 |B13;B22| = 0 1 |B13;B23| = B21 = [ 45 , 20 , 74 , 9 ] 1 |B13;B24| = B22 = [ 45 , 20 , 74 , 9 ] 0 |B14;B21| = 2 |B14;B22| = B23 = [ 45 , 20 , 74 , 9 ] No identified index … |B14;B23| = 1 0 B24 = [ 45 , 20 , 74 , 9 ] |B14;B24| =

  30. First attack - intersection CS5322 - Groupe 6 BAA : BAA2 : B11 = [ 73 , 15 ] B11 = [ 73 , 79 , 30 ] B12 = [ 73 , 15 ] B12 = [ 15 , 30 ] B13 = [ 79 , 30 ] B13 = [ 73 , 79 , 30 ] B14 = [ 79 , 30 ] B14 = [ 73 , 15 , 79 , 30 ] B21 = [ 20 , 45 ] B21 = [ 45 , 20 , 74 , 9 ] B22 = [ 9 , 74 ] B22 = [ 45 , 20 , 74 , 9 ] No identified index … B23 = [ 9 , 74 ] B23 = [ 45 , 20 , 74 , 9 ] No identified index … B24 = [ 20 , 45 ] B24 = [ 45 , 20 , 74 , 9 ]

  31. First attack - intersection CS5322 - Groupe 6 BAA : BAA2 : B11 = [ 73 , 15 ] B11 = [ 73 , 79 , 30 ] B12 = [ 73 , 15 ] B12 = [ 15 , 30 ] B13 = [ 79 , 30 ] B13 = [ 73 , 79 , 30 ] B14 = [ 79 , 30 ] B14 = [ 73 , 15 , 79 , 30 ] B21 = [ 20 , 45 ] B21 = [ 45 , 20 , 74 , 9 ] B22 = [ 9 , 74 ] B22 = [ 45 , 20 , 74 , 9 ] No identified index … B23 = [ 9 , 74 ] B23 = [ 45 , 20 , 74 , 9 ] No identified index … B24 = [ 20 , 45 ] B24 = [ 45 , 20 , 74 , 9 ]

  32. First attack - intersection CS5322 - Groupe 6 BAA & BAA2 : B11 = 73 B12 = 15 B13 = [ 79, 30 ] B14 = [ 79, 30 ] B21 = [ 20, 45 ] B22 = [ 9, 74 ] B23 = [ 9, 74 ] B24 = [ 20, 45 ]

  33. First attack - intersection CS5322 - Groupe 6 BAA & BAA2 : B11 = 73 B12 = 15 B13 = [ 79, 30 ] B14 = [ 79, 30 ] B21 = [ 20, 45 ] B22 = [ 9, 74 ] B23 = [ 9, 74 ] B24 = [ 20, 45 ] New identified indexes : 73, 15 New identified indexes :

  34. Creation of couples of indexes CS5322 - Groupe 6 (73 ; [ B11 = 73 B13 = [ 79, 30 ] B21 = [ 20, 45 ] B23 = [ 9, 74 ] B12 = 15 B14 = [ 79, 30 ] B22 = [ 9, 74 ] B24 = [ 20, 45 ] New identified indexes : 73, 15 New identified indexes :

  35. Creation of couples of indexes CS5322 - Groupe 6 (73 ; [ (45;1), B11 = 73 B13 = [ 79, 30 ] B21 = [ 20, 45 ] B23 = [ 9, 74 ] B12 = 15 B14 = [ 79, 30 ] B22 = [ 9, 74 ] B24 = [ 20, 45 ] New identified indexes : 73, 15 New identified indexes :

  36. Creation of couples of indexes CS5322 - Groupe 6 (73 ; [ (45;1), (20;1)]) B11 = 73 B13 = [ 79, 30 ] B21 = [ 20, 45 ] B23 = [ 9, 74 ] B12 = 15 B14 = [ 79, 30 ] B22 = [ 9, 74 ] B24 = [ 20, 45 ] New identified indexes : 73, 15 New identified indexes :

  37. Creation of couples of indexes CS5322 - Groupe 6 (73 ; [ (45;1), (20;1)]) (15 ; [ B11 = 73 B13 = [ 79, 30 ] B21 = [ 20, 45 ] B23 = [ 9, 74 ] B12 = 15 B14 = [ 79, 30 ] B22 = [ 9, 74 ] B24 = [ 20, 45 ] New identified indexes : 73, 15 New identified indexes :

  38. Creation of couples of indexes CS5322 - Groupe 6 (73 ; [ (45;1), (20;1)]) (15 ; [ (9;2)]) B11 = 73 B13 = [ 79, 30 ] B21 = [ 20, 45 ] B23 = [ 9, 74 ] B12 = 15 B14 = [ 79, 30 ] B22 = [ 9, 74 ] B24 = [ 20, 45 ] New identified indexes : 73, 15 New identified indexes :

  39. Creation of couples of indexes CS5322 - Groupe 6 (73 ; [(45;1),(20;1)]) (45 ; [(73;1),(79;1)]) (15 ; [(9;2)]) (9 ; [(15;2),(30;1)]) (79 ; [(45;1),(74;1),(20;1)]) (74 ; [(79;1),(30;2)]) (30 ; [(74;2),(9;1)]) (20 ; [(79;1),(73;1)]) B11 = 73 B13 = [ 79, 30 ] B21 = [ 20, 45 ] B23 = [ 9, 74 ] B12 = 15 B14 = [ 79, 30 ] B22 = [ 9, 74 ] B24 = [ 20, 45 ] New identified indexes : 73, 15 New identified indexes :

  40. Removeknown indexes from sets CS5322 - Groupe 6 (73 ; [(45;1),(20;1)]) (45 ; [(73;1),(79;1)]) (15 ; [(9;2)]) (9 ; [(15;2),(30;1)]) (79 ; [(45;1),(74;1),(20;1)]) (74 ; [(79;1),(30;2)]) (30 ; [(74;2),(9;1)]) (20 ; [(79;1),(73;1)]) B11 = 73 B13 = [ 79, 30 ] B21 = [ 20, 45 ] B23 = [ 9, 74 ] B12 = 15 B14 = [ 79, 30 ] B22 = [ 9, 74 ] B24 = [ 20, 45 ] New identified indexes : 73, 15 New identified indexes :

  41. Removeknown indexes from sets CS5322 - Groupe 6 (73 ; [(45;1),(20;1)]) (45 ; [(79;1)]) (15 ; [(9;2)]) (9 ; [(30;1)]) (79 ; [(45;1),(74;1),(20;1)]) (74 ; [(79;1),(30;2)]) (30 ; [(74;2),(9;1)]) (20 ; [(79;1)]) B11 = 73 B13 = [ 79, 30 ] B21 = [ 20, 45 ] B23 = [ 9, 74 ] B12 = 15 B14 = [ 79, 30 ] B22 = [ 9, 74 ] B24 = [ 20, 45 ] New identified indexes : 73, 15 New identified indexes :

  42. Propagation 1 - look for new indexes CS5322 - Groupe 6 (73 ; [(45;1),(20;1)]) (45 ; [(79;1)]) (15 ; [(9;2)]) (9 ; [(30;1)]) (79 ; [(45;1),(74;1),(20;1)]) (74 ; [(79;1),(30;2)]) (30 ; [(74;2),(9;1)]) (20 ; [(79;1)]) B11 = 73 B13 = [ 79, 30 ] B21 = [ 20, 45 ] B23 = [ 9, 74 ] B12 = 15 B14 = [ 79, 30 ] B22 = [ 9, 74 ] B24 = [ 20, 45 ] New identified indexes : 73, 15 New identified indexes :

  43. Propagation 1 - look for new indexes CS5322 - Groupe 6 (73 ; [(45;1),(20;1)]) (45 ; [(79;1)]) (15 ; [(9;2)]) (9 ; [(30;1)]) (79 ; [(45;1),(74;1),(20;1)]) (74 ; [(79;1),(30;2)]) (30 ; [(74;2),(9;1)]) (20 ; [(79;1)]) B11 = 73 B13 = [ 79, 30 ] B21 = [ 20, 45 ] B23 = [ 9, 74 ] B12 = 15 B14 = [ 79, 30 ] B22 = [ 9, 74 ] B24 = [ 20, 45 ] New identified indexes : 73, 15 New identified indexes :

  44. Propagation 1 - look for new indexes CS5322 - Groupe 6 (73 ; [(45;1),(20;1)]) (45 ; [(79;1)]) (15 ; [(9;2)]) (9 ; [(30;1)]) (79 ; [(45;1),(74;1),(20;1)]) (74 ; [(79;1),(30;2)]) (30 ; [(74;2),(9;1)]) (20 ; [(79;1)]) B11 = 73 B13 = [ 79, 30 ] B21 = [ 20, 45 ] B23 = [ 9, 74 ] B12 = 15 B14 = [ 79, 30 ] B22 = [ 9, 74 ] B24 = [ 20, 45 ] New identified indexes : 73, 15 New identified indexes :

  45. Propagation 1 - look for new indexes CS5322 - Groupe 6 (73 ; [(45;1),(20;1)]) (45 ; [(79;1)]) (15 ; [(9;2)]) (9 ; [(30;1)]) (79 ; [(45;1),(74;1),(20;1)]) (74 ; [(79;1),(30;2)]) (30 ; [(74;2),(9;1)]) (20 ; [(79;1)]) Samecardinality: no way to distinguishthem ! B11 = 73 B13 = [ 79, 30 ] B21 = [ 20, 45 ] B23 = [ 9, 74 ] B12 = 15 B14 = [ 79, 30 ] B22 = [ 9, 74 ] B24 = [ 20, 45 ] New identified indexes : 73, 15 New identified indexes :

  46. Propagation 1 - look for new indexes CS5322 - Groupe 6 (73 ; [(45;1),(20;1)]) (45 ; [(79;1)]) (15 ; [(9;2)]) (9 ; [(30;1)]) (79 ; [(45;1),(74;1),(20;1)]) (74 ; [(79;1),(30;2)]) (30 ; [(74;2),(9;1)]) (20 ; [(79;1)]) B11 = 73 B13 = [ 79, 30 ] B21 = [ 20, 45 ] B23 = [ 9, 74 ] B12 = 15 B14 = [ 79, 30 ] B22 = [ 9, 74 ] B24 = [ 20, 45 ] New identified indexes : 73, 15 New identified indexes :

  47. Propagation 1 - identify the new index CS5322 - Groupe 6 (73 ; [(45;1),(20;1)]) (45 ; [(79;1)]) (15 ; [(9;2)]) (9 ; [(30;1)]) (79 ; [(45;1),(74;1),(20;1)]) (74 ; [(79;1),(30;2)]) (30 ; [(74;2),(9;1)]) (20 ; [(79;1)]) B11 = 73 B13 = [ 79, 30 ] B21 = [ 20, 45 ] B23 = [ 9, 74 ] B12 = 15 B14 = [ 79, 30 ] B22 = [ 9, 74 ] B24 = [ 20, 45 ] New identified indexes : 73, 15 New identified indexes :

  48. Propagation 1 - identify the new index CS5322 - Groupe 6 (73 ; [(45;1),(20;1)]) (45 ; [(79;1)]) (15 ; [(9;2)]) (9 ; [(30;1)]) (79 ; [(45;1),(74;1),(20;1)]) (74 ; [(79;1),(30;2)]) (30 ; [(74;2),(9;1)]) (20 ; [(79;1)]) B11 = 73 B13 = [ 79, 30 ] B21 = [ 20, 45 ] B23 = [ 9, 74 ] B12 = 15 B14 = [ 79, 30 ] B22 = [ 9, 74 ] B24 = [ 20, 45 ] New identified indexes : 73, 15 New identified indexes :

  49. Propagation 1 - identify the new index CS5322 - Groupe 6 (73 ; [(45;1),(20;1)]) (45 ; [(79;1)]) (15 ; [(9;2)]) (9 ; [(30;1)]) (79 ; [(45;1),(74;1),(20;1)]) (74 ; [(79;1),(30;2)]) (30 ; [(74;2),(9;1)]) (20 ; [(79;1)]) B11 = 73 B13 = [ 79, 30 ] B21 = [ 20, 45 ] B23 = 9 B12 = 15 B14 = [ 79, 30 ] B22 = [ 9, 74 ] B24 = [ 20, 45 ] New identified indexes : 73, 15 New identified indexes :

  50. Propagation 1 - add the new index to the list CS5322 - Groupe 6 (73 ; [(45;1),(20;1)]) (45 ; [(79;1)]) (15 ; [(9;2)]) (9 ; [(30;1)]) (79 ; [(45;1),(74;1),(20;1)]) (74 ; [(79;1),(30;2)]) (30 ; [(74;2),(9;1)]) (20 ; [(79;1)]) B11 = 73 B13 = [ 79, 30 ] B21 = [ 20, 45 ] B23 = 9 B12 = 15 B14 = [ 79, 30 ] B22 = [ 9, 74 ] B24 = [ 20, 45 ] New identified indexes : 73, 15 New identified indexes : 9

More Related