Searchable Symmetric Encryption Improved Definitions and Efficient Constructions
Searchable Symmetric Encryption: Improved Definitions and Efficient Constructions Seny Kamara Johns Hopkins University Joint work with Reza Curtmola (JHU), Juan Garay (Bell Labs), Rafail Ostrovsky (UCLA) 1
Remote Storage ‣Remote storage is ubiquitous • data backups • GMail, Yahoo Mail etc. . . ‣Q: How do we store sensitive data on an untrusted server? ‣A: Encryption • hides all partial information about data • client must download all data, decrypt and perform operations locally ‣Can we enable the server to help ? IPAM - Securing Cyberspace 2
Outline ‣Motivation ‣Brief overview of different models for private searching ‣Our focus: Searchable Symmetric Encryption (SSE) • Revisiting security definitions for SSE - point out subtle (but serious) issues with previous definitions • Two new notions of security for SSE - “Non-adaptive” security - “Adaptive” security • Two new constructions ‣Extensions IPAM - Securing Cyberspace 3
Private Searching ‣MPC: general, but inefficient [Yao 82, GMW 87, BGW 88, CCD 88] ‣Searching (explicitly) -- different settings • public data: unencrypted (e. g. , stock-quotes, news articles) - client wishes to hide which element is accessed - PIR and its variants [CGKS, KO 97, . . . ] • user-owned data: symmetrically encrypted - client can upload additional “encrypted” data structures to help search - Oblivious RAMs, searchable symmetric encryption [O 90, OG 96, SWP 00, Goh 03, CM 05] • third-party data: public-key encrypted - data comes encrypted to server from users other than client - public-key searchable encryption [BDOP 05, BW 06. . . ] IPAM - Securing Cyberspace 4
Searchable Symmetric Encryption ‣We consider the following scenario • client has a collection of documents that consists of a set of words • encrypts document collection together with additional data structure • sends everything to server ‣Functionality: server should support the following types of queries • find all documents that contain a particular keyword ‣Privacy: allow server to help, but reveal as little as possible IPAM - Securing Cyberspace 5
Prior work on SSE ‣SSE can be achieved using oblivious RAMs • functionality: can simulate any data structure in a hidden way, and can support conjunctive queries, B-trees etc. . . • privacy: hides everything, even the access pattern • efficiency: logarithmic number of rounds per each read/write ‣Q: Can we search over encrypted data in single/constant rounds? • with absolute privacy, we don’t know (great open problem) • what if we relax the security requirements? IPAM - Securing Cyberspace 6
How do we relax the security definition ? ‣Informal answer • leak the access pattern but nothing else ‣What does it mean to “leak the access pattern but nothing else” ? • defining this formally is “delicate” • in fact, there are issues with 3 previous attempts IPAM - Securing Cyberspace 7
Constant-round SSE with relaxed security ‣ 3 previous constant-round solutions that “leak access pattern” • “Practical techniques for searches on encrypted data” [SWP 00] • “Secure Indexes” [Goh 03] • “Privacy-preserving keyword searches on remote encrypted data” [CM 05] IPAM - Securing Cyberspace 8
Outline ‣Motivation ‣Overview of privacy-preserving searching ‣Searchable symmetric encryption • Revisiting security definitions for SSE • “Non-adaptive” definitions and construction • “Adaptive” definitions and construction ‣Extensions IPAM - Securing Cyberspace 9
Revisiting SSE security definitions ‣[SWP 00, Goh 03, CM 05]: “A secure SSE scheme should not leak anything beyond the outcome of a search” • “search outcome”: memory addresses of documents that contain a hidden keyword (precise definition later) • Important to note: different keyword requests may lead to the same search outcome • “search pattern”: whether two queries were for the same keyword or not ‣A (slightly) better intuition • “A secure SSE scheme should not leak anything beyond the outcome and the pattern of a search” IPAM - Securing Cyberspace 10
Issues with SWP’s security definition ‣[SWP 00] implicitly use indistinguishability [GM 84] as a security definition • “any function of the plaintext that can be computed from the ciphertext can be computed from the length of the plaintext” ‣Issue: adversary gets to see search outcomes and search pattern ‣[SWP 00] does not model the fact that this additional information is revealed. ‣There also issues with definitions in [Goh 03, CM 05], but to explain these we’ll need to define the model more precisely IPAM - Securing Cyberspace 11
SSE Algorithms ‣Keygen(1 k): outputs symmetric key K ‣Build. Index(K, {D 1, . . . , Dn}): outputs secure index I ‣Trapdoor(K, w): outputs a trapdoor Tw ‣Search(I, Tw): outputs identifiers of documents containing w (id 1, . . . , idm) IPAM - Securing Cyberspace 12
SSE System Operation ‣Secure index: additional data structure that helps the server to search (following [Goh 03] terminology) ‣Symmetrically encrypted data: client performs encryption himself ‣Trapdoors: associate a trapdoor to keywords which enables server to search while keeping keyword hidden INDEX keyword IPAM - Securing Cyberspace 13
Our model ‣History: documents and keywords ‣View: encrypted documents, index, trapdoors ‣Trace: length of documents, search outcomes, search pattern IPAM - Securing Cyberspace 14
Our Intuition ‣Previous intuition • “A secure SSE scheme should not leak anything beyond the outcome and the pattern of a search” ‣A more “formal intuition” • “any function about the documents and the keywords that can be computed from the encrypted documents, the index and the trapdoors can be computed from the length of the documents, the search outcomes and the search pattern” IPAM - Securing Cyberspace 15
Issues with Goh’s SSE security definition ‣IND 2 -CKA: indistinguishability against chosen-keyword attacks • “any function of the documents that can be computed from the encrypted documents and the index can be computed from the length of the documents and the search outcomes” ‣Issue: says nothing about keywords or trapdoors ‣Important Note: [Goh 03] considers more than SSE and notes that secure trapdoors is not necessary for all the applications considered. Also Z-IDX has secure trapdoors. ‣Why not prove index secure in the sense of IND 2 -CKA and trapdoors “secure” using another definition? ‣We show that there exists an SSE scheme that has • IND 2 -CKA indexes and trapdoors that are “secure” • but when taken together, adversary can recover keyword IPAM - Securing Cyberspace 16
Issues with CM’s SSE security definition ‣“CM security” • “any function that can be computed about the documents and keywords given the ciphertexts, the index and the trapdoors can be computed from the length of the documents and the search outcomes” ‣Issues • leaves out search pattern (proofs assume unique queries) • order of quantifiers implies that there will always exist a simulator that can evaluate function on documents and keywords • Only guarantees security against non-adaptive adversaries IPAM - Securing Cyberspace 17
What is adaptiveness? ‣Non-adaptive adversaries make search queries without seeing the outcome of previous searches ‣Adaptive adversaries can make search queries as a function of the outcome of previous searches ‣What are the implications of adaptiveness? IPAM - Securing Cyberspace 18
Modeling adaptiveness Non-Adaptive (new) [SWP 00, Goh 03, CM 05, . . . ] SI w 1 w 2 w 3 w 4 w 2 w 3 IPAM - Securing Cyberspace 19
Outline ‣Motivation ‣Overview of privacy-preserving searching ‣Searchable symmetric encryption • Revisiting security definitions for SSE • “Non-adaptive” definitions and construction • “Adaptive” definitions and construction ‣Extensions IPAM - Securing Cyberspace 20
Non-adaptive security ‣“any function about the history that can be computed from the view can be computed from the trace” • history: documents and keywords • view: encrypted documents, index, trapdoors, • trace: document lengths, search outcomes, search pattern IPAM - Securing Cyberspace 21
SSE-1 ‣Building a Secure Index Austin Baltimore Washington IPAM - Securing Cyberspace 22
SSE-1 ‣Building a Secure Index Austin Baltimore Washington IPAM - Securing Cyberspace 23
SSE-1 ‣Building a Secure Index ‣P: PRP ‣F: PRF P(Austin) F(Austin) Austin = KA P(Baltimore) F(Baltimore) Baltimore = KB P(Washington) F(Washington) Washington = KW IPAM - Securing Cyberspace 24
SSE-1 ‣Searching addr : = P(Baltimore) Trapdoor : = (addr, key) key : = F(Baltimore) Baltimore D 8, D 10 IPAM - Securing Cyberspace 25
Technical issues ‣We overlooked many technical details • padding and shuffling ‣Efficient storage of sparse tables • large address space; small number of entries • FKS dictionaries [Fredman-Komlos-Szemeredi 84] - storage: O(#entries) - lookup: O(1) IPAM - Securing Cyberspace 26
Outline ‣Motivation ‣Overview of privacy-preserving computation ‣Searchable symmetric encryption • Revisiting security definitions for SSE • “Non-adaptive” definitions and construction • “Adaptive” definitions and construction ‣Extensions IPAM - Securing Cyberspace 27
Adaptive security ‣“any function about the partial history that can be computed from the partial view can be computed from the partial trace” • partial history: documents and keywords • partial view: encrypted documents, index, trapdoors, • partial trace: document lengths, search outcomes, search pattern IPAM - Securing Cyberspace 28
Adaptive security ‣Do we need revised SSE constructions? ‣Are previous constructions adaptively secure? ‣Technical challenge: simulator must be able to “fake” trapdoors after having committed to index ‣Previous constructions do not have this property ‣Unfortunately, this is expensive! IPAM - Securing Cyberspace 29
SSE-2 ‣Similar to SSE-1 ‣Pre-processing and padding • simulator can commit to an index before query is issued • and still build valid trapdoors after query is issued ‣Constant blowup in • size of trapdoors • size of index • server search time IPAM - Securing Cyberspace 30
Comparison ‣n: total # of documents access pattern d: # of documents that contain word [Ost 90, GO 96] [SWP 00] [Goh 03] [CM 05] SSE-1 SSE-2 yes no no no 1 1 1 no no yes server comp. server storage rounds comm. adaptive yes IPAM - Securing Cyberspace 31
Outline ‣Motivation ‣Overview of privacy-preserving searching ‣Searchable symmetric encryption • Revisiting security definitions for SSE • “Non-adaptive” definitions and construction • “Adaptive” definitions and construction ‣Extensions IPAM - Securing Cyberspace 32
Multi-User SSE IPAM - Securing Cyberspace 33
Multi-User SSE ‣Indexes and trapdoors require same security notions as single-user SSE ‣Revocation: owner can revoke searching privileges • robust against user collusions ‣Anonymity: server should not know who initiated search ‣Simple construction that transforms single-user SSE schemes to multiuser SSE schemes • broadcast encryption (revocation) • PRPs IPAM - Securing Cyberspace 34
Open Questions ‣Constant-round schemes that hide everything, even the access pattern ‣Searching for Boolean combinations of keywords • Conjunctive searchable encryption [GSW 04, PKL 04, BW 06] • Disjunctive ? IPAM - Securing Cyberspace 35
Conclusions ‣Weakening “complete security” is delicate • point out issues with previous attempts ‣Introduce new definitions • non-adaptive: simulation and indistinguishability-based • adaptive: simulation and indistinguishability-based ‣Efficient and practical constructions ‣Multi-user setting IPAM - Securing Cyberspace 36
Questions? IPAM - Securing Cyberspace 37
- Slides: 37