Skip to main content

SEMFS: Secure and Efficient Multi-keyword Fuzzy Search for Cloud Storage

  • Conference paper
  • First Online:
Information Systems Security (ICISS 2017)

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

Included in the following conference series:

Abstract

Cloud computing has become a popular technology for outsourcing data and providing reliable data services. Encryption is essential to preserve privacy of the outsourced sensitive data. Keyword search over encrypted data would enhance the effective utilization of outsourced storage. In this work, we propose an efficient Searchable Symmetric Encryption (SSE) scheme called SEMFS (Secure & Efficient Multi-keyword Fuzzy Search Scheme) to allow the cloud to search over outsourced encrypted data. SEMFS uses quotient filter for efficient indexing and faster searching. The most attractive feature of this scheme is to allow update the entries of index file dynamically (to achieve better performance) preserving data privacy. Experimental analysis shows that SEMFS achieves higher throughput than the bloom filter based scheme, when implemented. Security of SEMFS has been analyzed against known ciphertext and known plaintext attack models.

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.

    Let, \(\alpha \times \beta =\gamma \) where \(\alpha \) is the total number of slots in QF and \(\beta \) is the total number of different values that can be stored in each slot.

References

  1. Secure Hash Algorithm 2. http://csrc.nist.gov/publications/fips/fips180-2/fips180-2withchangenotice.pdf

  2. Adusumilli, P., Zou, X., Ramamurthy, B.: DGKD: distributed group key distribution with authentication capability. In: Proceedings of the Sixth Annual IEEE SMC Information Assurance Workshop, pp. 286–293. IEEE (2005)

    Google Scholar 

  3. Bender, M.A., Farach-Colton, M., Johnson, R., Kraner, R., Kuszmaul, B.C., Medjedovic, D., Montes, P., Shetty, P., Spillane, R.P., Zadok, E.: Don’t thrash: how to cache your hash on flash. Proc. VLDB Endow. 5(11), 1627–1637 (2012)

    Article  Google Scholar 

  4. Bender, M.A., Farach-Colton, M., Johnson, R., Kuszmaul, B.C., Medjedovic, D., Montes, P., Shetty, P., Spillane, R.P., Zadok, E.: Don’t thrash: how to cache your hash on flash. In: Proceedings of the 3rd USENIX Conference on Hot Topics in Storage and File Systems, p. 1 (2011)

    Google Scholar 

  5. Bloom, B.H.: Space/time trade-offs in hash coding with allowable errors. Commun. ACM 13(7), 422–426 (1970)

    Article  MATH  Google Scholar 

  6. Boneh, D., Di Crescenzo, G., Ostrovsky, R., Persiano, G.: Public key encryption with keyword search. In: Cachin, C., Camenisch, J.L. (eds.) EUROCRYPT 2004. LNCS, vol. 3027, pp. 506–522. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-24676-3_30

    Chapter  Google Scholar 

  7. Boneh, D., Waters, B.: Conjunctive, subset, and range queries on encrypted data. In: Vadhan, S.P. (ed.) TCC 2007. LNCS, vol. 4392, pp. 535–554. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-70936-7_29

    Chapter  Google Scholar 

  8. Cao, N., Wang, C., Li, M., Ren, K., Lou, W.: Privacy-preserving multi-keyword ranked search over encrypted cloud data. In: Proceedings of the IEEE INFOCOM 2011, pp. 829–837. IEEE (2011)

    Google Scholar 

  9. Chang, Y.-C., Mitzenmacher, M.: Privacy preserving keyword searches on remote encrypted data. In: Ioannidis, J., Keromytis, A., Yung, M. (eds.) ACNS 2005. LNCS, vol. 3531, pp. 442–455. Springer, Heidelberg (2005). https://doi.org/10.1007/11496137_30

    Chapter  Google Scholar 

  10. Chuah, M., Hu, W.: Privacy-aware bedtree based solution for fuzzy multi-keyword search over encrypted data. In: Proceedings of the 31st IEEE International Conference on Distributed Computing Systems Workshops (ICDCSW) 2011, pp. 273–281. IEEE (2011)

    Google Scholar 

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

    Google Scholar 

  12. Daemen, J., Rijmen, V.: The Design of Rijndael: AES-The Advanced Encryption Standard. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-662-04722-4

    MATH  Google Scholar 

  13. Goh, E.J.: Secure indexes. Technical report 2003/216, IACR Cryptology ePrint Archive (2003)

    Google Scholar 

  14. Golle, P., Staddon, J., Waters, B.: Secure conjunctive keyword search over encrypted data. In: Jakobsson, M., Yung, M., Zhou, J. (eds.) ACNS 2004. LNCS, vol. 3089, pp. 31–45. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-24852-1_3

    Chapter  Google Scholar 

  15. Hong, C., Li, Y., Zhang, M., Feng, D.: Fast multi-keywords search over encrypted cloud data. In: Cellary, W., Mokbel, M.F., Wang, J., Wang, H., Zhou, R., Zhang, Y. (eds.) WISE 2016. LNCS, vol. 10041, pp. 433–446. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-48740-3_32

    Chapter  Google Scholar 

  16. Hwang, Y.H., Lee, P.J.: Public key encryption with conjunctive keyword search and its extension to a multi-user system. In: Takagi, T., Okamoto, T., Okamoto, E., Okamoto, T. (eds.) Pairing 2007. LNCS, vol. 4575, pp. 2–22. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-73489-5_2

    Chapter  Google Scholar 

  17. Kuzu, M., Islam, M.S., Kantarcioglu, M.: Efficient similarity search over encrypted data. In: Proceedings of the IEEE 28th International Conference on Data Engineering (ICDE), pp. 1156–1167. IEEE (2012)

    Google Scholar 

  18. Li, H., Yang, Y., Luan, T.H., Liang, X., Zhou, L., Shen, X.S.: Enabling fine-grained multi-keyword search supporting classified sub-dictionaries over encrypted cloud data. IEEE Trans. Dependable Secure Comput. 13(3), 312–325 (2016)

    Article  Google Scholar 

  19. Li, J., Wang, Q., Wang, C., Cao, N., Ren, K., Lou, W.: Fuzzy keyword search over encrypted data in cloud computing. In: Proceedings of the IEEE INFOCOM 2010, pp. 1–5. IEEE (2010)

    Google Scholar 

  20. Liu, C., Zhu, L., Li, L., Tan, Y.: Fuzzy keyword search on encrypted cloud storage data with small index. In: Proceedings of the IEEE International Conference on Cloud Computing and Intelligence Systems (CCIS) 2011, pp. 269–273. IEEE (2011)

    Google Scholar 

  21. Lynn, B.: The pairing-based cryptography library (2006). https://crypto.stanford.edu/pbc/. Accessed 27 Mar 2013

  22. Medelyan, O.: Human-competitive automatic topic indexing. Ph.D. thesis, The University of Waikato (2009)

    Google Scholar 

  23. Nabeel, M., Yoosuf, M., Bertino, E.: Attribute based group key management. In: Proceedings of the 14th ACM Symposium on Access Control Models and Technologies, pp. 115–124. ACM (2014)

    Google Scholar 

  24. Nayak, S.K., Tripathy, S.: Privacy preserving provable data possession for cloud based electronic health record system. In: Proceedings of the IEEE Trustcom/BigDataSE/ISPA, pp. 860–867. IEEE (2016)

    Google Scholar 

  25. Rose, S., Engel, D., Cramer, N., Cowley, W.: Automatic keyword extraction from individual documents. In: Text Mining: Applications and Theory, pp. 1–20. John Wiley & Sons (2010)

    Google Scholar 

  26. Singhal, A.: Modern information retrieval: a brief overview. IEEE Data Eng. Bull. 24(4), 35–43 (2001)

    Google Scholar 

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

    Google Scholar 

  28. van Liesdonk, P., Sedghi, S., Doumen, J., Hartel, P., Jonker, W.: Computationally Efficient searchable symmetric encryption. In: Jonker, W., Petković, M. (eds.) SDM 2010. LNCS, vol. 6358, pp. 87–100. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-15546-8_7

    Chapter  Google Scholar 

  29. Wang, B., Yu, S., Lou, W., Hou, Y.T.: Privacy-preserving multi-keyword fuzzy search over encrypted data in the cloud. In: Proceedings of the IEEE INFOCOM 2014, pp. 2112–2120. IEEE (2014)

    Google Scholar 

  30. Wang, C., Cao, N., Li, J., Ren, K., Lou, W.: Secure ranked keyword search over encrypted cloud data. In: Proceedings of the 30th International Conference Distributed Computing Systems (ICDCS), pp. 253–262. IEEE (2010)

    Google Scholar 

  31. 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). IEEE

    Article  Google Scholar 

  32. Yu, J., Lu, P., Zhu, Y., Xue, G., Li, M.: Toward secure multikeyword top-k retrieval over encrypted cloud data. IEEE Trans. Dependable Secure Comput. 10(4), 239–250 (2013)

    Article  Google Scholar 

  33. Zhang, B., Zhang, F.: An efficient public key encryption with conjunctive-subset keywords search. J. Netw. Comput. Appl. 34(1), 262–267 (2011)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Sanjeet Kumar Nayak .

Editor information

Editors and Affiliations

Appendix A Bloom Filter

Appendix A Bloom Filter

Bloom filter is a space-efficient data structure for representing a set in order to support membership queries [5]. A bloom filter for representing a set S containing n number of elements is described by an array of m bits size. All these m bits are initialized to 0. It uses k independent hash functions defined as \(\mathcal {H} = \{h_i|h_i : S \rightarrow [1, m], 1\le i \le k\}\). To insert an element \(s \in S\) into the bloom filter, all the \(h_i(s)\)-th position are set to 1 in the m bit array. To search an element \(q \in S\), first we find k number of array positions using \(h_i(q), 1\le i \le k\). Then, we check if the corresponding bit of any of the k position is 0, then q is definitely not present in the set S. Otherwise, q probably present in the set S. Consider the following example. Figure 6 shows an example of bloom filter with m = 10 and k = 3. Here, the filter represents the set \(S=\{A, B\}\). Black colored arrow shows the corresponding positions of the bloom filter that each element of set S is mapped to. Now if we will search for an element D, then we can observe from the figure that at least one position to which D is mapped contains 0 (shown in red colored lines). So D is definitely not present in the set. If we will search for an element C, then we can observe from the figure that all the positions to which C is mapped contain 1. Hence, C is probably present in the set.

Fig. 6.
figure 6

An example of boolean filter (Color figure online)

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Nayak, S.K., Tripathy, S. (2017). SEMFS: Secure and Efficient Multi-keyword Fuzzy Search for Cloud Storage. In: Shyamasundar, R., Singh, V., Vaidya, J. (eds) Information Systems Security. ICISS 2017. Lecture Notes in Computer Science(), vol 10717. Springer, Cham. https://doi.org/10.1007/978-3-319-72598-7_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-72598-7_4

  • Published:

  • Publisher Name: Springer, Cham

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

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

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics