searchable encryption with optimal locality
play

Searchable Encryption with Optimal Locality: Achieving - PowerPoint PPT Presentation

Searchable Encryption with Optimal Locality: Achieving Sublogarithmic Read Efficiency Charalampos Papamanthou Ioannis Demertzis Dimitris Papadopoulos Hong Kong UST University of Maryland University of Maryland yannis@umd.edu


  1. Searchable Encryption with Optimal Locality: Achieving Sublogarithmic Read Efficiency Charalampos Papamanthou Ioannis Demertzis Dimitris Papadopoulos Hong Kong UST University of Maryland University of Maryland yannis@umd.edu dipapado@cse.ust.hk cpap@umd.edu

  2. What is Searchable Encryption (SE)? Untrusted Cloud Client ? Search pattern: whether a search + query is repeated search query: keyword Setup leakage: total leakage Access pattern : encrypted prior to query execution document ids and files that e.g. size of each encrypted file , satisfy the search query size of encrypted index Security (informal): The adversary does not learn anything beyond the above leakages! 2

  3. Searchable Encryption – Locality and Read Efficiency Locality is an important efficiency Scalable SE requires dimension ([CJS+14],[DP17],… low locality and read efficiency Locality: # non-continuous reads for each query Read Efficiency: # memory locations per result item locality = 3 & read efficiency = 1 search query: keyword id 1 id 4 id 2 X X X X X X id 4 id 5 id 3 id 1 id 1 id 2 id 4 id 6 id 2 X : false positives locality = 1 & read efficiency = O(N) 3

  4. *under some assumptions for the SE scheme Previous Works & Our Result “Cash and Tessaro Eurocrypt 2014” Locality (L): O(1) and Read Efficiency (R): O(1) requires Space (S): ω(Ν) * Schemes with limitation on the General Schemes maximum keyword-list size [ANS+16] – NlogN scheme [ANS+16] – TwoChoiceAlloc * L: O(1), R: O(1), S: O(NlogN) ~ L: O(1), R: O(loglogN), S: O(N) [DP17] – ReadOpt * keyword lists in the dataset have size less than N 1-1/loglogN . L: O(N 1/s ), R: O(1), S: O(sN) [ASS18]** [ANS+16] – OneChoiceAlloc L: O(1), R: O( ω (1)* ε -1 (n) + logloglogN) for n = N 1- ε ( N ) , S: O(N) ~ ** keyword lists in the dataset have size less than N/log 3 N L: O(1), R: O(logN), S: O(N) Our Approach L: O(1), R: O(log γ N), S: O(N), for γ >2/3 4

  5. Searchable Encryption – Naïve Approach 1 k 1 = k 2 = k 3 = <=3 <=4 locality = 1 & read efficiency = 1 & optimal space 5

  6. Searchable Encryption – Naïve Approach 2 k 1 = k 2 = k 3 = ? 6

  7. [ANS+16] – OneChoiceAllocation ~ O(N) space, O(1) locality and O(logN) read efficiency k 1 = k 2 = k 3 = k 1 … 3 logN loglogN M = N / logN loglogN 7

  8. [ANS+16] – TwoChoiceAllocation ~ O(N) space, O(1) locality and O(loglogN) read efficiency k 1 = k 2 = k 3 = ** Assuming all the keyword lists in the dataset have size less than N 1-1/loglogN ** … c loglogN log 2 loglogN M = N / loglogN log 2 loglogN 7

  9. [ANS+16] – TwoChoiceAllocation ~ O(N) space, O(1) locality and O(loglogN) read efficiency k 3 = k 2 = k 1 = ** Assuming all the keyword lists in the dataset have size less than N 1-1/loglogN ** k 3 … c loglogN log 2 loglogN M = N / loglogN log 2 loglogN 7

  10. Our Approach O(N) space, O(1) locality and O(log γ N), for γ >2/3 Read Efficiency [ANS+16]-OneChoiceAlloc ~ Ο( log Ν) [ANS+16] TwoChoiceAlloc ~ O(loglogN) N 1-1/loglogN N Keyword-list size 8

  11. Our Approach O(N) space, O(1) locality and O(log γ N), for γ >2/3 Read Efficiency [ANS+16]-OneChoiceAlloc ~ Ο( log Ν) [ANS+16] TwoChoiceAlloc ~ O(loglogN) N 1-1/loglogN N Keyword-list size 8

  12. Our Approach O(N) space, O(1) locality and O(log γ N), for γ >2/3 Read Efficiency [ANS+16]-OneChoiceAlloc ~ Ο( log Ν) Ο( log γ Ν) [ANS+16] TwoChoiceAlloc ~ O(loglogN) 1- γ N 1-1/loglogN N 1-1/log N N Keyword-list size 8

  13. Our Approach O(N) space, O(1) locality and O(log γ N), for γ >2/3 Read Efficiency [ANS+16]-OneChoiceAlloc ~ Ο( log Ν) Small Huge Ο( log γ Ν) Sequential [ANS+16] TwoChoiceAlloc Scan ~ O(loglogN) 1- γ γ N 1-1/loglogN N 1-1/log N N/log N N Keyword-list size 8

  14. Our Approach O(N) space, O(1) locality and O(log γ N), for γ >2/3 Read Efficiency [ANS+16]-OneChoiceAlloc ~ Focus of this talk! Ο( log Ν) Large Small Medium Huge Ο( log γ Ν) Sequential [ANS+16] Multi-level TwoChoiceAlloc Scan ~ keyword-size O(loglogN) compression 1- γ 2 γ N 1-1/loglogN N 1-1/log N N/log N N/log N N Keyword-list size 8

  15. Starting Point: Offline Two Choice Allocation (OTA) – [SEK03] OfflineTwoChoiceAlloc for m balls and n bins: MaxFlow ( ) … n bins 9

  16. Starting Point: Offline Two Choice Allocation (OTA) – [SEK03] OfflineTwoChoiceAlloc for m balls and n bins: Key IDEA: One OTA per size and then Merge!! with probability at least 1 – O(1/n) … Max load <= L Γ m/n + 1 n bins 10

  17. Our Approach: OTA per size + Merge k s : #keyword lists with size s b s =M/s (#superbuckets) … … A 4s Overflow Probability = O(1/b s ) … A 2s See Lemma 4 in our paper L Σ s ( Γ ) = O(N/M + log γ Ν ) k s /b s + 1 … A s M = Ν/ log γ Ν = Ο( log γ Ν) M … ? 11

  18. Our Approach: New analysis for OTA Our Approach: Accessing keyword lists **Novel analysis for OTA** The probability that more than O(log 2 N) lists of size s overflow is negligible! – see Lemma 5 in our paper … … … … A 4s B 4s k 3 … … A 2s B 2s … … A s B s M Stashes … Ο( log γ Ν) 12

  19. Our Approach: New locality-aware ORAM Ο( n 1/3 log 2 n) Bandwidth and O(1) Locality We need an ORAM with the following properties: 1. O(1) locality , existing ORAMs with polylogn bandwidth have logn locality Zero failure probability , since it will be applied on only log 2 n elements 2. o(√n) bandwidth , in order to achieve sublogarithmic read efficiency  o(√ log 2 n) = o(logn) 3. π α : [n α ]  [n α ] Α n + n 2/3 Square Root ORAM π b : [n b ]  [n b ] Β n 2/3 + n 1/3 Hierarchical ORAM C * n 1/3 De-amortization techniques from Goodrich et al. [GMO+11] 13

  20. Our Approach: OTA Stashes Important: max ≤ N/log 2 N for maintaining O(N) index size … B max … A max … … … … A 4s B 4s … … A 2s B 2s … … A s B s M Stashes … 14

  21. ? Conclusion – Future Work Locality-aware Dynamic SE Read Efficiency Open Question: Closer to the New ORAM: Ο (n 1/3 log 2 n ) Closer to the lower lower bound bandwidth, O(1) locality bound? [ANS+16]-OneChoiceAlloc ~ Ο( log Ν) Large Small Medium Huge Ο( log γ Ν) OTA-based Multi-level Sequential [ANS+16] approach keyword-size TwoChoiceAlloc Scan ~ compression O(loglogN) New probability bounds for OTA 1- γ 2 γ N 1-1/loglogN N 1-1/log N N/log N N/log N N Keyword-list size 15

  22. Thank You! https://eprint.iacr.org/2017/749 Read Efficiency Closer to the New ORAM: Ο (n 1/3 log 2 n ) lower bound bandwidth, O(1) locality [ANS+16]-OneChoiceAlloc ~ Ο( log Ν) Large Small Medium Huge Ο( log γ Ν) OTA-based Multi-level Sequential [ANS+16] approach keyword-size TwoChoiceAlloc Scan ~ compression O(loglogN) New probability bounds for OTA 1- γ 2 γ N 1-1/loglogN N 1-1/log N N/log N N/log N N Keyword-list size

  23. [ASS18] in CRYPTO O(N) space, O(1) locality and ω(1) ⋅ ϵ( n) −1 +O(logloglogN) read efficiency where n = N 1- ϵ( n) Read Efficiency [ANS+16]-OneChoiceAlloc Ο( log Ν) Ο( log Ν /loglogN) Large Small Medium Huge Ο( log γ Ν) OTA-based Multi-level Sequential [ANS+16] approach keyword-size TwoChoiceAlloc Scan ~ compression O(loglogN) New probability O(logloglogN) bounds for OTA 1- γ 3 2 γ N 1-1/loglogN N 1-1/log N N/log N N/log N N/log N N Keyword-list size

  24. Studying locality for HDD Access Cost = (seek time) + (rotational delay) + (transfer time) Random I/O Cost Sequential I/O Cost ~10 μ s for 1 byte ~4-12 ms

  25. Studying locality for SDD Samsung 960 Pro M.2 NVMe SSD Read Write Locality Sequential Transfer 2222.93 1786.72 High Page size = 2MB MB/sec MB/sec Random Transfer 1339.76 1237.57 Page size = 2MB MB/sec MB/sec Random Transfer 34.30 150.83 Page size = 2KB MB/sec MB/sec Low More detailed analysis  http://www.storagereview.com/samsung_960_pro_m2_nvme_ssd_review

  26. Studying locality for RAM Untrusted Cloud Client Tw Tw 2 Tw 3 Tw 1 search query: keyword keyword id 1 id 4 id 2 id 4 id 5 id 3 id 1 id 1 id 2 id 4 id 6 id 2 Tw search query: keyword Tw id 1 id 5 id 1 id 4 id 2 id 4 id 3 id 2 id 6

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend