Skip to main content

Extended Functionality in Verifiable Searchable Encryption

  • Conference paper
  • First Online:
Cryptography and Information Security in the Balkans (BalkanCryptSec 2015)

Part of the book series: Lecture Notes in Computer Science ((LNSC,volume 9540))

Abstract

When outsourcing the storage of sensitive data to an (untrusted) remote server, a data owner may choose to encrypt the data beforehand to preserve confidentiality. However, it is then difficult to efficiently retrieve specific portions of the data as the server is unable to identify the relevant information. Searchable encryption well studied as a solution to this problem, allowing data owners and other authorised users to generate search queries which the server may execute over the encrypted data to identify relevant data portions.

However, many current schemes lack two important properties: verifiability of search results, and expressive queries. We introduce Extended Verifiable Searchable Encryption (eVSE) that permits a user to verify that search results are correct and complete. We also permit verifiable computational queries over keywords and specific data values, that go beyond the standard keyword matching queries to allow functions such as averaging or counting operations. We formally define the notion of eVSE within relevant security models and give a provably secure instantiation.

J. Alderman—Supported by the European Commission under project H2020-644024 “CLARUS” and acknowledges support from BAE Systems Advanced Technology Centre.

S.L. Renwick—Supported by Thales UK and EPSRC under a CASE Award.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Depending on the choice of underlying ABE scheme; see Sect. 4.1.

  2. 2.

    We also permit the server to verify correctness to avoid the rejection problem, where a server may learn some useful information by observing if results are accepted.

  3. 3.

    In this case, it may be possible to avoid the use of symmetric encryption in our construction by letting the secret k be the key for this cryptographic hash function.

References

  1. Alderman, J., Janson, C., Cid, C., Crampton, J.: Access control in publicly verifiable outsourced computation. In: Bao, F., Miller, S., Zhou, J., Ahn, G. (eds.) Proceedings of the 10th ACM Symposium on Information, Computer and Communications Security, ASIA CCS 2015. ACM, pp. 657–662 (2015)

    Google Scholar 

  2. Alderman, J., Janson, C., Cid, C., Crampton, J.: Hybrid publicly verifiable computation. IACR Cryptol. ePrint Arch. 2015, 320 (2015)

    MATH  Google Scholar 

  3. Alderman, J., Janson, C., Martin, K.M., Renwick, S.L.: Extended functionality in verifiable searchable encryption. IACR Cryptol. ePrint Arch. (2015)

    Google Scholar 

  4. Apon, D., Katz, J., Shi, E., Thiruvengadam, A.: Verifiable oblivious storage. In: Krawczyk, H. (ed.) PKC 2014. LNCS, vol. 8383, pp. 131–148. Springer, Heidelberg (2014)

    Chapter  Google Scholar 

  5. Backes, M., Barbosa, M., Fiore, D., Reischuk, R.M.: ADSNARK: nearly practical and privacy-preserving proofs on authenticated data. In: 2015 IEEE Symposium on Security and Privacy, SP 2015, pp. 271–286. IEEE Computer Society (2015)

    Google Scholar 

  6. Backes, M., Fiore, D., Reischuk, R.M.: Verifiable delegation of computation on outsourced data. In: Sadeghi, A., Gligor, V.D., Yung, M. (eds.) 2013 ACM SIGSAC Conference on Computer and Communications Security, CCS 2013, pp. 863–874. ACM (2013)

    Google Scholar 

  7. Bellare, M., Namprempre, C.: Authenticated encryption: relations among notions and analysis of the generic composition paradigm. J. Cryptol. 21(4), 469–491 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  8. Ben-Sasson, E., Chiesa, A., Genkin, D., Tromer, E.: Fast reductions from rams to delegatable succinct constraint satisfaction problems: extended abstract. In: Kleinberg, R.D. (ed.) Innovations in Theoretical Computer Science, ITCS 2013, pp. 401–414. ACM (2013)

    Google Scholar 

  9. Benabbas, S., Gennaro, R., Vahlis, Y.: Verifiable delegation of computation over large datasets. In: Rogaway, P. (ed.) CRYPTO 2011. LNCS, vol. 6841, pp. 111–131. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  10. Bitansky, N., Canetti, R., Chiesa, A., Tromer, E.: From extractable collision resistance to succinct non-interactive arguments of knowledge, and back again. In: Goldwasser, S. (ed.) Innovations in Theoretical Computer Science 2012, pp. 326–349. ACM (2012)

    Google Scholar 

  11. Boneh, D., Persiano, G., Di Crescenzo, G., Ostrovsky, R.: Public key encryption with keyword search. In: Cachin, C., Camenisch, J.L. (eds.) EUROCRYPT 2004. LNCS, vol. 3027, pp. 506–522. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  12. Park, H.-A., Rhee, H.S., Lee, D.-H., Byun, J.W.: Off-line keyword guessing attacks on recent keyword search schemes over encrypted data. In: Jonker, W., Petković, M. (eds.) SDM 2006. LNCS, vol. 4165, pp. 75–83. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  13. Chai, Q., Gong, G.: Verifiable symmetric searchable encryption for semi-honest-but-curious cloud servers. In: Proceedings of IEEE International Conference on Communications, ICC 2012, pp. 917–922. IEEE (2012)

    Google Scholar 

  14. Cheng, R., Yan, J., Guan, C., Zhang, F., Ren, K.: Verifiable searchable symmetric encryption from indistinguishability obfuscation. In: Proceedings of the 10th ACM Symposium on Information, Computer and Communications Security, ASIA CCS ’15, pp. 621–626. ACM (2015)

    Google Scholar 

  15. Kalai, Y.T., Raz, R., Chung, K.-M., Liu, F.-H.: Memory delegation. In: Rogaway, P. (ed.) CRYPTO 2011. LNCS, vol. 6841, pp. 151–168. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  16. Curtmola, R., Garay, J.A., Kamara, S., Ostrovsky, R.: Searchable symmetric encryption: improved definitions and efficient constructions. In: 3th ACM Conference on Computer and Communications Security, pp. 79–88. ACM (2006)

    Google Scholar 

  17. Fu, Z., Shu, J., Sun, X., Linge, N.: Smart cloud search services: verifiable keyword-based semantic search over encrypted cloud data. IEEE Trans. Consum. Electron. 60(4), 762–770 (2014)

    Article  Google Scholar 

  18. Gennaro, R., Gentry, C., Parno, B.: Non-interactive verifiable computing: outsourcing computation to untrusted workers. In: Rabin, T. (ed.) CRYPTO 2010. LNCS, vol. 6223, pp. 465–482. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  19. Goh, E.: Secure indexes. IACR Cryptol. ePrint Arch. 2003, 216 (2003)

    Google Scholar 

  20. Goldreich, O., Ostrovsky, R.: Software protection and simulation on oblivious rams. J. Assoc. Comput. Mach. 43, 431–473 (1996)

    Article  MathSciNet  MATH  Google Scholar 

  21. Kamara, S., Papamonthou, C., Roeder, T.: Dynamic searchable symmetric encryption. In: Conference on Computer and Communications Security, pp. 965–976. ACM (2012)

    Google Scholar 

  22. Sahai, A., Waters, B., Katz, J.: Predicate encryption supporting disjunctions, polynomial equations, and inner products. In: Smart, N.P. (ed.) EUROCRYPT 2008. LNCS, vol. 4965, pp. 146–162. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  23. Kurosawa, K., Ohtaki, Y.: How to update documents verifiably in searchable symmetric encryption. In: Abdalla, M., Nita-Rotaru, C., Dahab, R. (eds.) CANS 2013. LNCS, vol. 8257, pp. 309–328. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  24. Li, J., Wang, Q., Wang, C., Cao, N., Ren, K., Lou, W.: Fuzzy keyword search over encrypted data in cloud computing. In: 29th IEEE International Conference on Computer Communications, Joint Conference of the IEEE Computer and Communications Societies. INFOCOM 2010, pp. 441–445. IEEE (2010)

    Google Scholar 

  25. Liu, P., Wang, J., Ma, H., Nie, H.: Efficient verifiable public key encryption with keyword search based on KP-ABE. In: Ninth International Conference on Broadband and Wireless Computing, Communication and Applications, BWCCA 2014, pp. 584–589. IEEE (2014)

    Google Scholar 

  26. Park, D.J., Kim, K., Lee, P.J.: Public key encryption with conjunctive field keyword search. In: Lim, C.H., Yung, M. (eds.) WISA 2004. LNCS, vol. 3325, pp. 73–86. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  27. Vaikuntanathan, V., Parno, B., Raykova, M.: How to delegate and verify in public: verifiable computation from attribute-based encryption. In: Cramer, R. (ed.) TCC 2012. LNCS, vol. 7194, pp. 422–439. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  28. Song, D.X., Wagner, D., Perrig, A.: Practical techniques for searches on encrypted data. In: IEEE Symposium on Security and Privacy, pp. 44–55. IEEE (2000)

    Google Scholar 

  29. Stefanov, E., Papamonthou, C., Shi, E.: Practical dynamic searchable encryption with small leakage. In: 21st Annual Network and Distributed System Security Symposium, NDSS 2014. The Internet Society (2014)

    Google Scholar 

  30. Sun, W., Wang, B., Cao, N., Li, M., Lou, W., Hou, Y.T., Li, H.: Verifiable privacy-preserving multi-keyword text search in the cloud supporting similarity-based ranking. IEEE Trans. Parallel Distrib. Syst. 25(11), 3025–3035 (2014)

    Article  Google Scholar 

  31. Sun, W., Yu, S., Lou, W., Hou, T., Li, H.: Protecting your right: verifiable attribute-based keyword search with fine-grainedowner-enforced search authorization in the cloud. IEEE Trans. Parallel Distrib. Syst. 99 (2013)

    Google Scholar 

  32. Wang, C., Cao, N., Li, J., Lou, W.: Secure ranked keyword search over encrypted cloud data. In: International Conference on Distributed Computing Systems, ICDCS 2010, pp. 253–262. IEEE Computer Society (2010)

    Google Scholar 

  33. Wang, C., Cao, N., Ren, K., Lou, W.: Enabling secure and efficient ranked keyword search over outsourced cloud data. IEEE Trans. Parallel Distrib. Syst. 23(8), 1467–1479 (2012)

    Article  Google Scholar 

  34. Wang, J., Ma, H., Li, J., Zhu, H., Ma, S., Chen, X.: Efficient verifiable fuzzy keyword search over encrypted data in cloud computing. Comput. Sci. Inf. Syst. 10(2), 667–684 (2013)

    Article  Google Scholar 

  35. Wang, J., Ma, H., Tang, Q., Li, J., Zhu, H., Ma, S., Chen, X.: Efficient verifiable fuzzy keyword search over encrypted data in cloud computing. Comput. Sci. Inf. Syst. 10(2), 667–684 (2013)

    Article  Google Scholar 

  36. Waters, B.: Ciphertext-policy attribute-based encryption: an expressive, efficient, and provably secure realization. In: Catalano, D., Fazio, N., Gennaro, R., Nicolosi, A. (eds.) PKC 2011. LNCS, vol. 6571, pp. 53–70. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  37. Zheng, Q., Xu, S., Ateniese, G.: VABKS: verifiable attribute-based keyword search over outsourced encrypted data. In: 2014 IEEE Conference on Computer Communications, INFOCOM 2014, pp. 522–530. IEEE (2014)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Sarah Louise Renwick .

Editor information

Editors and Affiliations

Appendices

A Security Models

Index Privacy. In Game 2, we formalise the notion of index indistinguishability against a selective chosen keyword attack, which ensures no information regarding the keywords is leaked from the index. Firstly the adversary outputs two sets of attributes \((D_0, D_1\subseteq \mathcal {U})\) that they wish to be challenged on, with the restriction that \(|D_0|=|D_1|\) (this is required as the CP-ABE used to produce the index does not conceal the index length). The challenger runs \(\mathsf {Setup}\) to produce the public and secret parameters. The challenger selects a bit \(b\in \{0,1\}\) uniformly at random to select which set of attributes to encode into the index. Before the index is created, the challenger needs to create the pre-index from the set of attributes \(D_b\) (line 4 of Game 2). This is done using an \(\mathsf {Encode}\) mechanism that takes the elements of \(D_b\) as input and outputs the pre-index \(\delta (D_b)\). \(\mathsf {Encode}\) is not required in our instantiation as the pre-indexes can be chosen directly from \(\tilde{U}\) as the user knows the mapping from \(\mathcal {U}\) to \(\mathcal {U}^\prime \) and the permutation \(\varPi \); the adversary however does not. The challenger then runs \(\mathsf {BuildIndex}\) using \(\delta (D_b)\) to produce the index \(\mathcal {I}_{D_b}\), which is given to \(\mathcal {A}\). The adversary is then given PP and oracle access, with the restriction that the query results are identical for each index \(\mathcal {I}_{D_0}, \mathcal {I}_{D_1}\), i.e. if \(R_0\leftarrow \mathsf {Search}(\mathcal {I}_{D_0}, QT_{Q}, st_{s}, SK_\mathrm{{S}}, \mathrm {PP})\) and \(R_1\leftarrow \mathsf {Search}(\mathcal {I}_{D_1}, QT_{Q}, st_{s}, SK_\mathrm{{S}}, \mathrm {PP})\) then we need \(R_0=R_1\). After this query phase, \(\mathcal {A}\) outputs a guess \(b^\prime \) and wins the game if the comparison operator \(==\) returns 1 which indicates that \(b^\prime =b\). Hence \(\mathcal {A}\) wins the game if they can identify which attribute set \((D_0\) or \(D_1)\) was encoded into the index \(\mathcal {I}_{D_b}\).

figure j

Query Privacy. The queries themselves should not leak any information about the corresponding keywords that make up the query. Our construction of the queries leaks the gates, but not the keywords themselves. This notion of query indistinguishability against a selective chosen query attack is formalised in Game 3. The game runs similarly to that of Game 2, subject to the following restrictions: the challenge queries \((Q_0, Q_1)\) must use the same gates. We denote the gate structure of a query Q by \(\mathcal {G}_Q\), and hence require that \(\mathcal {G}_{Q_0} = \mathcal {G}_{Q_1}\).

figure k

1.1 A.1 Security Proofs

Proof

(Public Verifiability). Here we provide a proof sketch; full details can be found in [3]. We start by assuming that \(\mathcal {A}_{eVSE}\) is an adversary with non-negligible advantage \(\delta \). We begin by defining the following three games:

  • Game A. This is the selective Public Verifiability game as defined in Game 1.

  • Game B. This is the same as Game A with the modification that in \(\mathsf {Query}\), we no longer return an encryption of \(m_0\) and \(m_1\). Instead, we choose another random message \(m^\prime \ne m_0, m_1\) and, if \(Q(\mathcal {I}_{D})=1\), we replace \(c_1\) by \(\mathsf {ABE}.\mathsf {Encrypt}(\overline{Q}, m^\prime , {MPK_{\text {ABE}}^{}})\). Otherwise, we replace \(c_0\) by \(\mathsf {ABE}.\mathsf {Encrypt}(Q, m^\prime , {MPK_{\text {ABE}}^{}})\).

  • Game C. This is the same as Game B with the exception that instead of choosing a random message \(m^\prime \), we implicitly set \(m^\prime \) to be the challenge input w in the one-way function game.

We show that an adversary with non-negligible advantage against the selective Public Verifiability game can be used to construct an adversary that may invert the one-way function g.

We begin by showing that there is a negligible distinguishing advantage between Game A and Game B. We construct an adversary \(\mathcal {A}_{ABE}\) that creates an eVSE instance by executing Algorithms 1–8 and uses \(\mathcal {A}_{eVSE}\) as a sub-routine to break the selective IND-CPA security of the CP-ABE scheme. The advantage of our constructed adversary is \(Adv_{\mathcal {A}_{ABE}} \geqslant \frac{\delta }{2}\). Hence, if \(\mathcal {A}_{eVSE}\) has advantage \(\delta \) at distinguishing these games then \(\mathcal {A}_{ABE}\) can win the sIND-CPA game for CP-ABE with non-negligible probability. Thus since we assumed the CP-ABE scheme to be secure, we conclude that \(\mathcal {A}_{eVSE}\) cannot distinguish the games with non-negligible probability. The transition from Game B to Game C is simply to set the value of \(m^\prime _i\) to no longer be random but instead to correspond to the challenge w in the one-way function inversion game. We argue that the adversary has no distinguishing advantage between these games since the new value is independent of anything else in the system bar the verification key g(w) and hence looks random to an adversary with no additional information. Finally we show that using \(\mathcal {A}_{eVSE}\) in Game C, \(\mathcal {A}_{ABE}\) can invert the one-way function g – that is, given a challenge \(z = g(w)\) we can recover w. Now, if \(\mathcal {A}_{eVSE}\) is successful, it will output a forgery comprising the plaintext encrypted under the unsatisfied query (Q or \(\overline{Q}\)). By construction, this will be w and \(\mathcal {A}_{ABE}\) can therefore forward this result to \(\mathcal {C}\) in order to invert the one-way function with the same non-negligible probability that \(\mathcal {A}_{eVSE}\) has against the public verifiability game.

We conclude that if the ABE scheme is sIND-CPA secure and the one-way function is hard-to-invert, then \(e \mathcal {VSE}\) as defined by Algorithms 1–8 is secure in the sense of selective Public Verifiability.                                                       \(\square \)

The remaining proofs can be found in the full version [3].

B Discussion

Table 1. Comparison of schemes

Our scheme extends the expressiveness of queries that can be achieved in VSE. No other VSE schemes to our knowledge are able to perform the range of search queries or include negation of keywords in their search queries. Additionally our scheme leaks neither the access pattern (AP) or the search pattern (SP) to the server whilst executing a search. Our combination of search queries with computational queries is also a novel functionality in the field of VSE.

The search time and size of the queries are both linear in n (the amount of data items stored on the remote server). Due to this eVSE may be more suited to smaller databases to prevent these features from being prohibitively expensive. The VSE scheme of [13] has a search time that is linear in the number of letters in the queried keyword (which is usually much smaller than n). This faster search is achieved using a tree-based index, however only a single keyword equality search can be performed. Another scheme built using ABE [37] is able to achieve multi-level access, where users can be restricted to searching only certain parts of the database. Keywords are grouped with respect to their access control policies, and the search time is linear in the number of groups. This scheme also only achieves a single keyword equality search. The scheme of [35] achieves verifiable fuzzy keyword search with a search time that is linear in the size of the fuzzy keyword set (which varies depending on the level of fuzziness required i.e. searching for data items that contain keywords of edit distance two will require a larger fuzzy keyword set than searching for keywords with an edit distance of one from the queried keyword [24]). Again, this is likely to be less than n. In terms of the number of rounds of communication required per search, our scheme is optimal requiring only one round of communication. The size of the search results in our scheme is also linear in n. Most VSE schemes in the literature return results of a size that is linear in the number of data items that match the query, however this method leaks the access pattern which in turn may leak information about the query. Our scheme hides the access pattern as all search results are of the same form, regardless of what query was submitted.

Our scheme achieves public verifiability, index privacy and query privacy (in terms of the keywords searched for), which is comparable to the security of other VSE schemes. Overall, our scheme sacrifices efficiency when compared to existing VSE schemes, but gains much increased functionality and query expressiveness.

Table 1 gives a brief comparison between our scheme and those in the literature as discussed above and throughout the paper.

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this paper

Cite this paper

Alderman, J., Janson, C., Martin, K.M., Renwick, S.L. (2016). Extended Functionality in Verifiable Searchable Encryption. In: Pasalic, E., Knudsen, L. (eds) Cryptography and Information Security in the Balkans. BalkanCryptSec 2015. Lecture Notes in Computer Science(), vol 9540. Springer, Cham. https://doi.org/10.1007/978-3-319-29172-7_12

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-29172-7_12

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-29171-0

  • Online ISBN: 978-3-319-29172-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics