Blockchain-Assisted Verifiable and Multi-User Fuzzy Search Encryption Scheme
<p>p-stable element mapping.</p> "> Figure 2
<p>System model.</p> "> Figure 3
<p>LSH-Bloom Architectural Diagram.</p> "> Figure 4
<p>The index tree.</p> "> Figure 5
<p>(<b>a</b>) Index generation time. (<b>b</b>) The search matching time when search keyword number is 3. (<b>c</b>) The search matching time when the file number is 2000. (<b>d</b>) The fuzzy search accuracy. Zhong, H. et al (2020) refers to the scheme in ref. [<a href="#B15-applsci-14-11740" class="html-bibr">15</a>], Li, X. et al (2022) refers to the scheme in ref. [<a href="#B21-applsci-14-11740" class="html-bibr">21</a>], Li, J. et al (2022) refers to the scheme in ref. [<a href="#B28-applsci-14-11740" class="html-bibr">28</a>] and Fu, S. et al (2021) refers to the scheme in ref. [<a href="#B29-applsci-14-11740" class="html-bibr">29</a>].</p> ">
Abstract
:1. Introduction
- For the existence of malicious cloud servers in fuzzy search schemes, semi-decentralization is used to weaken the power of cloud servers, a smart contract is constructed to guarantee fairness between users and servers, and blockchain is introduced to assist in achieving integrity verification of results.
- Aiming at the lack of fine-grained access control for users in one-to-many application scenarios, the is used to distribute the shared key with a tree structure, and only authorized users who meet the access results can decrypt the shared key.
- By improving the index tree structure and bigram participle algorithm, the proposed scheme not only optimizes the search efficiency and search precision but also enables users to check the search results locally for a second time.
- Through security analysis, it is proved that the scheme is secure under the adaptive selection of keyword attacks. Functional comparison and experimental analysis show that the search efficiency of the scheme has been improved under the premise of supporting multi-functionalities such as multiple keywords, fuzzy search, dynamic updating, and result validation. In particular, the search time of our scheme is more advantageous with the increase in search keywords and searched files.
2. Related Work
2.1. Fuzzy Searchable Encryption
2.2. Blockchain-Based Searchable Encryption
3. Preliminaries
3.1. Bloom Filter (BF)
3.2. Locality Sensitive Hashing (LSH)
4. Definitions of Algorithm and Security Model
4.1. System Model
- (1)
- Data Owner . extends beyond individual entities to data centers that are responsible for the integration of file information owned by multiple data owners. This implementation realizes the application of a multi-owner scenario from another perspective.
- (2)
- Trusted Authority . As an authenticating entity, it generates attribute private keys for data users and transmits system public parameters and other relevant information to the users securely.
- (3)
- Data Users . need to apply for their attribute private keys based on their attributes as well as reliable information, then generate and send search trapdoor to the smart contract account for searching transactions through query requirements.
- (4)
- Smart Contract . As a decentralized component of the system, stores secure index tree and verification information of data owners, mitigating the excessive and uncontrolled authority of the cloud server. The search contract performs the initial segment of the entire search transaction and ensures the verification process for .
- (5)
- Cloud Server . has powerful storage as well as computational capabilities, and stores the ciphertext data files outsourced by , and provides with the second part of the search service based on the transaction initiated, it may have the malicious behavior of tampering with the user’s search results.
4.2. Algorithm Framework
4.2.1. Definition
4.2.2. Algorithm Definition
- (1)
- is a system initialization algorithm. The Data Owner inputs random security parameter λ, generates system public key and the master private key .
- (2)
- is a key generation algorithm. inputs random security parameter λ and the length of file index, outputs the key set .
- (3)
- is an encryption algorithm. takes public key , plaintext set , keyword set , access policy , key of the corresponding type of files, authentication key , and index encryption key as input. Then, for outputs, the ciphertext set , encrypted file identifier , security index , the key cipher containing access policy , ciphertext file message authentication code , and security index tree .
- (4)
- is a user registration algorithm run by , it takes , , and as input, outputs attribute private key , the user search key , and authenticated identifier .
- (5)
- is a trapdoor generation algorithm. Data User takes the public key , a query keyword collection and attribute private key as input, outputs the trapdoor with time stamp .
- (6)
- is a search-matching algorithm run by Smart Contract . This algorithm takes and as input, outputs , and .
- (7)
- is a verification algorithm. The Data User takes the verification key , the ciphertext file and the ciphertext message authentication code as input. It is determined whether a preliminarily correct result is obtained by outputting the result.
- (8)
- is a decryption algorithm run by the Data User. It takes the attribute private key , the key cipher containing access policy , and file set cipher , which are based on the query keyword set as input. If satisfies the access structure defined by the Data Owner , then it outputs the plaintext files containing the query keyword set, otherwise, the output is .
- (9)
- is an index tree update algorithm run by the smart contract. It takes the encrypted subtree sent by the Data Owner as input, and outputs the new index tree . The detailed process is described in Section 5.2.4.
4.3. Security Model
- . initializes system and runs , then sends a collection of files to . generates encrypted file and index with a secure symmetric encryption algorithm and index generation algorithm, then sends them to . generates a polynomial number of keywords sets and launches an adaptive search . Then the search keywords in set are transformed into a set of vectors to generate search trapdoor by , which is sent to . Eventually, outputs , ending the game.
- . Given the leakage functions and , inputs plaintext file . Simulator generates a simulated index and ciphertext , sends and to . chooses a polynomial number of keywords for adaptive interrogation, then outputs search trapdoor based on . Finally, outputs the result , ending the game.
5. Proposed Scheme
5.1. Main Idea
5.2. Concrete Construction
5.2.1. Preliminary Work
5.2.2. Encryption Work
- A.
- Key Encryption
- B.
- File Index Vector Generation
- C.
- Index Tree Generation
- D.
- Trapdoor Generation
5.2.3. Search Match
Algorithm 1 Search Matching Algorithm |
Input: the index tree Output: 1: if is not a leaf node then |
2: if > then |
3: GDFS () |
4: GDFS () |
5: else |
6: return |
7: end if |
8: else |
9: if > && is full |
10: delete the lowest relevance node from |
11: insert the new node and sort all the node by |
12: else if > && is not full |
13: insert the new node in |
14: end if |
15: return |
16: end if |
5.2.4. The Subsequent Work
- A.
- Verification
- B.
- Decryption
- C.
- Index tree update
6. Program Analysis
6.1. Correctness Analysis
6.1.1. Fuzzy Search Correctness
6.1.2. Decryption Correctness
6.2. Security Analysis
- (1)
- Generate ciphertext by simulation.
- (2)
- Generate search trapdoor by simulation.
- (3)
- Simulated construction of index .
7. Efficiency Analysis
7.1. Functionality Comparison
7.2. Complexity Theoretical Analysis
- Index tree generation. The cost of file index generation includes the generation of a plaintext index vector for each file and the encryption of the plaintext index vector. Where the generation of the index is mainly linked to the number of keywords, the encryption of the plaintext vector mainly consists of the factorization operation of the vector and multiplication with a matrix of order . The time overhead of single file index generation is . The generates additional nodes at the internal nodes when the number of files is . Therefore, the cost of the generation is a little higher than the other schemes, but it is generated by the locally and upload to the smart contract only once.
- Trapdoor Generation. The cost of trapdoor generation mainly consists of generating an bit plaintext trapdoor and performing matrix multiplication operations on the plaintext trapdoor, so the cost of trapdoor generation is .
- Search Match. The Search and Match includes traversing the , the calculation of the inner product of trapdoors and index vectors, and sorting the files to filter out rejections based on relevance. In this scheme, only the most relevant ciphertext files are searched. These files and child nodes share the same access path, so the traversal of the only touches a portion of nodes i.e., on paths from the root to the leaf nodes instead of traversing the child nodes repeatedly, hence the time complexity is .
7.3. Experimental Performance
- Individual File Index Generation and Encryption. In Figure 5a, the cost of generating a plaintext index vector for a single file index is gradually increasing with the number of file keywords. Meanwhile, the encryption time of the plaintext index vector is constant, which fluctuates slightly at 40 ms.
- Search Match. In Figure 5b, as the number of files gradually increases, all 4 schemes basically show an increasing trend. When the number of files is no more than 1000, all the schemes increase at a relatively small level. The time cost and growth rate required for searching in the proposed scheme are lower than those of the schemes in [25,29], and as the number of files increases, the scheme follows up with a slight increase compared to the beginning. Although the search time of the scheme in [21] also consistently increases at a lower level, the search time of our scheme is still superior to it. When the number of files is 2000, the search times of the schemes in [28,29] are 7.42 s and 4.42 s, respectively, while the time cost of our scheme is only 2.21 s. In Figure 5c, the search matching costs of the schemes in [21,28,29] tend to stabilize, while the time cost in our scheme shows a small linear increase. When the number of search keywords is 9, the time costs of the scheme in [28,29], and [21] are 7.42 s, 4.51 s, and 2.65 s, respectively, while the time cost of our scheme is only about 1.85 s.
- Fuzzy Search Accuracy. Since our scheme and the scheme in [15] have similarities in index construction which uses to transform keywords, the scheme in [15] is chosen to compare fuzzy search accuracy. The fuzzy keywords are constructed by replacing one letter in the keyword with another letter randomly, and the check accuracy is used to test the search results. The accuracy test method from the scheme in [32] is used in our scheme, where indicates the number of search files returned and indicates the number of real files returned.
8. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
References
- Song, D.X.; Wagner, D.; Perrig, A. Practical techniques for searches on encrypted data. In Proceedings of the 2000 IEEE Symposium on Security and Privacy, S&P 2000, Berkeley, CA, USA, 14–17 May 2000; pp. 44–55. [Google Scholar]
- Xu, G.; Li, H.; Ren, H.; Lin, X.; Shen, X. DNA Similarity Search With Access Control Over Encrypted Cloud Data. IEEE Trans. Cloud Comput. 2022, 10, 1233–1252. [Google Scholar] [CrossRef]
- Tong, Q.; Miao, Y.; Liu, X.; Choo, K.-K.R.; Deng, R.H.; Li, H. VPSL: Verifiable Privacy-Preserving Data Search for Cloud-Assisted Internet of Things. IEEE Trans. Cloud Comput. 2022, 10, 2964–2976. [Google Scholar] [CrossRef]
- Boneh, D.; Waters, B. Conjunctive, Subset, and Range Queries on Encrypted Data. In Theory of Cryptography; Vadhan, S.P., Ed.; Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 2007; Volume 4392, pp. 535–554. [Google Scholar] [CrossRef]
- Chen, L.; Cong, G.; Jensen, C.S.; Wu, D. Spatial Keyword Query Processing: An Experimental Evaluation. In Proceedings of the VLDB Endowment, Riva del Garda, Trento, Italy, 26–30 August 2013. [Google Scholar]
- Tong, Q.; Li, X.; Miao, Y.; Liu, X.; Weng, J.; Deng, R. Privacy-Preserving Boolean Range Query with Temporal Access Control in Mobile Computing. IEEE Trans. Knowl. Data Eng. 2022, 35, 5159–5172. [Google Scholar] [CrossRef]
- 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 2010 Proceedings IEEE INFOCOM, San Diego, CA, USA, 14–19 March 2010; pp. 1–5. [Google Scholar] [CrossRef]
- Chuah, M.; Hu, W. Privacy-Aware BedTree Based Solution for Fuzzy Multi-keyword Search over Encrypted Data. In Proceedings of the 2011 31st International Conference on Distributed Computing Systems Workshops, Minneapolis, MN, USA, 20–24 June 2011; pp. 273–281. [Google Scholar] [CrossRef]
- Wang, B.; Yu, S.; Lou, W.; Hou, Y.T. Inverted index based multi-keyword public-key searchable encryption with strong privacy guarantee. In Proceedings of the IEEE Conference on Computer Communications (INFOCOM), Hong Kong, China, 26 April–1 May2015; pp. 2092–2100. [Google Scholar]
- Chen, J.; He, K.; Deng, L.; Yuan, Q.; Du, R.; Xiang, Y. EliMFS: Achieving Efficient, Leakage-Resilient, and Multi-Keyword Fuzzy Search on Encrypted Cloud Data. IEEE Trans. Serv. Comput. 2020, 13, 1072–1085. [Google Scholar] [CrossRef]
- Shan, B.; Yao, Y.; Li, W.; Zuo, X.; Yu, N. Fuzzy Keyword Search over Encrypted Cloud Data with Dynamic Fine-grained Access Control. In Proceedings of the 2022 IEEE International Conference on Trust, Security and Privacy in Computing and Communications (TrustCom), Wuhan, China, 9–11 December 2022; pp. 1340–1347. [Google Scholar] [CrossRef]
- Xia, Z.; Wang, X.; Sun, X.; Wang, Q. A Secure and Dynamic Multi-Keyword Ranked Search Scheme over Encrypted Cloud Data. IEEE Trans. Parallel Distrib. Syst. 2016, 27, 340–352. [Google Scholar] [CrossRef]
- Fu, Z.; Wu, X.; Wang, Q.; Ren, K. Enabling Central Keyword-Based Semantic Extension Search Over Encrypted Outsourced Data. IEEE Trans. Inform. Forensics Secur. 2017, 12, 2986–2997. [Google Scholar] [CrossRef]
- Fu, Z.; Wu, X.; Guan, C.; Sun, X.; Ren, K. Toward Efficient Multi-Keyword Fuzzy Search Over Encrypted Outsourced Data With Accuracy Improvement. IEEE Trans. Inform. Forensic Secur. 2016, 11, 2706–2716. [Google Scholar] [CrossRef]
- Zhong, H.; Li, Z.; Cui, J.; Sun, Y.; Liu, L. Efficient dynamic multi-keyword fuzzy search over encrypted cloud data. J. Netw. Comput. Appl. 2020, 149, 102469. [Google Scholar] [CrossRef]
- Wang, C.; Ren, K.; Yu, S.; Urs, K.M.R. Achieving usable and privacy-assured similarity search over outsourced cloud data. In Proceedings of the 2012 Proceedings IEEE INFOCOM, Orlando, FL, USA, 25–30 March 2012; pp. 451–459. [Google Scholar] [CrossRef]
- Zhang, H.; Zhao, S.; Guo, Z.; Wen, Q.; Li, W.; Gao, F. Scalable Fuzzy Keyword Ranked Search Over Encrypted Data on Hybrid Clouds. IEEE Trans. Cloud Comput. 2023, 11, 308–323. [Google Scholar] [CrossRef]
- Kuzu, M.; Islam, M.S.; Kantarcioglu, M. Efficient Similarity Search over Encrypted Data. In Proceedings of the 2012 IEEE 28th International Conference on Data Engineering, Arlington, VA, USA, 1–5 April 2012; pp. 1156–1167. [Google Scholar] [CrossRef]
- 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—IEEE Conference on Computer Communications, Toronto, ON, Canada, 27 April–2 May 2014; pp. 2112–2120. [Google Scholar] [CrossRef]
- Tong, Q.; Miao, Y.; Weng, J.; Liu, X.; Choo, K.-K.R.; Deng, R. Verifiable Fuzzy Multi-keyword Search over Encrypted Data with Adaptive Security. IEEE Trans. Knowl. Data Eng. 2022, 35, 5386–5399. [Google Scholar] [CrossRef]
- Li, X.; Tong, Q.; Zhao, J.; Miao, Y.; Ma, S.; Weng, J. VRFMS: Verifiable Ranked Fuzzy Multi-keyword Search over Encrypted Data. IEEE Trans. Serv. Comput. 2022, 16, 698–710. [Google Scholar] [CrossRef]
- Cai, C.; Weng, J.; Yuan, X.; Wang, C. Enabling Reliable Keyword Search in Encrypted Decentralized Storage with Fairness. IEEE Trans. Dependable Secur. Comput. 2021, 18, 131–144. [Google Scholar] [CrossRef]
- Wang, S.; Zhang, Y.; Zhang, Y. A Blockchain-Based Framework for Data Sharing With Fine-Grained Access Control in Decentralized Storage Systems. IEEE Access 2018, 6, 38437–38450. [Google Scholar] [CrossRef]
- Hu, S.; Cai, C.; Wang, Q.; Wang, C.; Luo, X.; Ren, K. Searching an Encrypted Cloud Meets Blockchain: A Decentralized, Reliable and Fair Realization. In Proceedings of the IEEE INFOCOM 2018—IEEE Conference on Computer Communications, Honolulu, HI, USA, 15–19 April 2018; pp. 792–800. [Google Scholar] [CrossRef]
- Chen, Z.; Wu, A.; Li, Y.; Xing, Q.; Geng, S. Blockchain-Enabled Public Key Encryption with Multi-Keyword Search in Cloud Computing. Secur. Commun. Netw. 2021, 2021, 6619689. [Google Scholar] [CrossRef]
- Guo, Y.; Zhang, C.; Wang, C.; Jia, X. Towards Public Verifiable and Forward-Privacy Encrypted Search by Using Blockchain. IEEE Trans. Dependable Secur. Comput. 2022, 20, 2111–2126. [Google Scholar] [CrossRef]
- Chai, Q.; Gong, G. Verifiable symmetric searchable encryption for semi-honest-but-curious cloud servers. In Proceedings of the 2012 IEEE International Conference on Communications (ICC), Ottawa, ON, Canada, 10–15 June 2012; pp. 917–922. [Google Scholar] [CrossRef]
- Li, J.; Ma, J.; Miao, Y.; Chen, L.; Wang, Y.; Liu, X. Verifiable Semantic-Aware Ranked Keyword Search in Cloud-Assisted Edge Computing. IEEE Trans. Serv. Comput. 2022, 15, 3591–3605. [Google Scholar] [CrossRef]
- Fu, S.; Zhang, Q.; Jia, N.; Xu, M. A Privacy-preserving Fuzzy Search Scheme Supporting Logic Query over Encrypted Cloud Data. Mob. Netw. Appl. 2021, 26, 1574–1585. [Google Scholar] [CrossRef]
- Ge, X.; Yu, J.; Hu, C.; Zhang, H.; Hao, R. Enabling Efficient Verifiable Fuzzy Keyword Search Over Encrypted Data in Cloud Computing. IEEE Access 2018, 6, 45725–45739. [Google Scholar] [CrossRef]
- Huang, R.; Li, Z.; Wu, G. A Verifiable Encryption Scheme Supporting Fuzzy Search. In Security, Privacy, and Anonymity in Computation, Communication, and Storage; Wang, G., Feng, J., Bhuiyan, M.Z.A., Lu, R., Eds.; Lecture Notes in Computer Science; Springer International Publishing: Cham, Switzerland, 2019; Volume 11611, pp. 397–411. [Google Scholar] [CrossRef]
- Xiangyang, Z.; Hua, D.; Xun, Y.; Geng, Y.; Xiao, L. MUSE: An Efficient and Accurate Verifiable Privacy-Preserving Multikeyword Text Search over Encrypted Cloud Data. Secur. Commun. Netw. 2017, 2017, 1923476. [Google Scholar] [CrossRef]
Notation | Meaning |
---|---|
the file set of | |
the ciphertext set | |
the public key | |
the access policy | |
the symmetric key for the corresponding type of files. | |
the key cipher containing access policy | |
the verification key | |
the user attributes collection | |
a query keyword collection | |
the index encryption key | |
attribute private key for users | |
the user search key | |
a trapdoor with time stamp | |
a collection of keywords for a file set | |
the keyword set for file | |
the stemming of the keyword | |
the keyword stemming set for file | |
the ciphertext message authentication code | |
the key set for the encrypted trapdoor and index |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Yan, X.; Cheng, P.; Tang, Y.; Zhang, J. Blockchain-Assisted Verifiable and Multi-User Fuzzy Search Encryption Scheme. Appl. Sci. 2024, 14, 11740. https://doi.org/10.3390/app142411740
Yan X, Cheng P, Tang Y, Zhang J. Blockchain-Assisted Verifiable and Multi-User Fuzzy Search Encryption Scheme. Applied Sciences. 2024; 14(24):11740. https://doi.org/10.3390/app142411740
Chicago/Turabian StyleYan, Xixi, Pengyu Cheng, Yongli Tang, and Jing Zhang. 2024. "Blockchain-Assisted Verifiable and Multi-User Fuzzy Search Encryption Scheme" Applied Sciences 14, no. 24: 11740. https://doi.org/10.3390/app142411740
APA StyleYan, X., Cheng, P., Tang, Y., & Zhang, J. (2024). Blockchain-Assisted Verifiable and Multi-User Fuzzy Search Encryption Scheme. Applied Sciences, 14(24), 11740. https://doi.org/10.3390/app142411740