# Blockchain-Assisted Verifiable and Multi-User Fuzzy Search Encryption Scheme
###### Abstract  
Searchable encryption (SE) allows users to efficiently retrieve data from encrypted cloud data, but most of the existing SE solutions only support precise keyword search. Fuzzy searchable encryption agrees with practical situations well in the cloud environment, as search keywords that are misspelled to some extent can still generate search trapdoors that are as effective as correct keywords. In scenarios where multiple users can search for ciphertext, most fuzzy searchable encryption schemes ignore the security issues associated with malicious cloud services and are inflexible in multi-user scenarios. For example, in medical application scenarios where malicious cloud servers may exist, diverse types of files need to correspond to doctors in the corresponding departments, and there is a lack of fine-grained access control for sharing decryption keys for different types of files. In the application of medical cloud storage, malicious cloud servers may return incorrect ciphertext files. Since diverse types of files need to be guaranteed to be accessible by doctors in the corresponding departments, sharing decryption keys with the corresponding doctors for different types of files is an issue. To solve these problems, a verifiable fuzzy searchable encryption with blockchain-assisted multi-user scenarios is proposed. Locality-sensitive hashing and bloom filters are used to realize multi-keyword fuzzy search, and the bigram segmentation algorithm is optimized for keyword conversion to improve search accuracy. To realize fine-grained access control in multi-user scenarios, ciphertext-policy attribute-based encryption (CP-ABE) is used to distribute the shared keys. In response to the possibility of malicious servers tampering with or falsifying users' search results, the scheme leverages the blockchain's technical features of decentralization, non-tamperability, and traceability, and uses smart contracts as a trusted third party to carry out the search work, which not only prevents keyword-guessing attacks within the cloud server, but also solves the verification work of search results. The security analysis leads to the conclusion that the scheme is secure under the adaptively chosen-keyword attack. multi-user fuzzy search; smart contract; access control Article Blockchain-Assisted Verifiable and Multi-User Fuzzy Search Encryption Scheme [PERSON], [PERSON], [PERSON]  
the search operation. To address this situation, fuzzy search [7] realizes a certain degree of approximate keyword search matching, which can generate the same or similar keyword trapdoor for users to perform search matching. However, a few existing fuzzy search schemes still have limitations. For example, the schemes in [7] and the scheme in [8] only support single keyword search. Although there exists a multi-user scenario implemented in the scheme in [9] and the scheme in [10], where multiple users can retrieve the ciphertext through a single cloud server. In the case that multiple users have search permissions, it is necessary to ensure that people with different search permissions can search for the corresponding ciphertext files. Therefore, fine-grained access control needs to be ensured. There is the problem that the encryption and decryption keys are difficult to share, the online auditing and authorization by administrators for users applying for access are not friendly when it comes to the actual situation of smart healthcare, and do not satisfy the fine-grained access control of multi-user application scenarios. Although the scheme [11] can search for ciphertext files with corresponding permissions in multi-user scenarios, current fuzzy search schemes seldom consider fine-grained access control on shared keys for different types of files. Therefore, it is essential to provide multi-keyword fuzzy search encryption schemes with fine-grained control under multi-user conditions. In the scenario of smart healthcare, doctors in different departments need to search for the ciphertext of case files.