Chinese ciphertext multi-keyword fuzzy search method for medical data privacy protection
By converting Chinese keywords into pinyin and constructing multi-layer indexes, fuzzy search of Chinese ciphertext multiple keywords in medical data is achieved, solving the problem of inaccurate matching in the existing technology, and improving search accuracy and efficiency.
Patent Information
- Application Number
- CN202210589520.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-05-26
- Publication Date
- 2025-02-14
- Estimated Expiration
- 2042-05-26
AI Technical Summary
The prior art is difficult to realize multi-key fuzzy search of Chinese ciphertext data in medical data query, especially when the user enters incorrect keywords, resulting in no search results.
The fuzzy search method of Chinese ciphertext multi-keywords is adopted. By converting Chinese keywords into pinyin, and multi-layer indexes are constructed using the Bloom filter and locally sensitive hash function, the fuzzy matching of multiple keywords is achieved.
Improves the accuracy of fuzzy keyword search, can correctly return matching results in 80% of the cases, and significantly improves search efficiency through multi-layer index structure.
Smart Images

Figure CN114860888B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of privacy protection data query, and in particular to a Chinese ciphertext multi-keyword fuzzy search method for medical data supporting privacy protection. Background Art
[0002] The ciphertext-based searchable technology solves the query privacy problem of users. In today's big data era, the issue of medical privacy protection is still widely concerned. In traditional ciphertext keyword search, most solutions are aimed at precise matching. Due to various reasons, users may enter incorrect information, which cannot be perfectly matched and results cannot be found. To address this problem, the present invention proposes fuzzy keyword search, uses Bloom filters to store keywords, forms index vectors, matches query vectors with index vectors, and returns the top n files with high matching degrees.
[0003] Publish content
[0004] In view of the deficiencies in the prior art, the present invention provides a Chinese ciphertext multi-keyword fuzzy search method for medical data supporting privacy protection.
[0005] The present invention comprises the following steps:
[0006] Step 1) The medical institution pre-processes the data, constructs a knowledge graph about the disease, forms a keyword index of symptoms and diseases, and forms a disease information document;
[0007] Step 2) Convert the Chinese keywords of symptoms and diseases into pinyin, map the pinyin into the Bloom filter, construct a tree for each keyword, and form a keyword index;
[0008] Step 3) Encrypt the disease information document and the keyword index containing the symptom-disease name respectively, and upload the encrypted file and index to the cloud server;
[0009] Step 4) The user enters the symptom keyword of interest, the keyword is first converted into a pinyin vector, and then the pinyin is mapped to a Bloom filter to form a query index;
[0010] Step 5) The user encrypts the query index and sends the encrypted query index to the cloud server;
[0011] Step 6) The cloud server executes the search process and returns the first n encrypted disease information documents that match to the user;
[0012] Step 7) The user decrypts all the returned encrypted documents.
[0013] Compared with the prior art, the present invention has the following beneficial effects: the present invention provides a fuzzy search of multiple keywords for Chinese encrypted data, while many existing technologies are for English, and most of them are for precise searchable encryption. When a user enters an incorrect keyword, the solution of the present invention returns the search result corresponding to the correct keyword to the user through a sensitive hash function (LSH), thereby improving the accuracy of fuzzy keyword search to 80%. In addition, the present invention constructs a three-layer index for keywords. Compared with the traditional forward index, this index structure can greatly improve the search efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0014] Figure 1 It is an information interaction diagram of the parties involved in the present invention;
[0015] Figure 2 The format of the pinyin vector;
[0016] Figure 3 is the format of the Bloom filter;
[0017] Figure 4 The format for a keyword index;
[0018] Figure 5 Encryption process for document and keyword indexing;
[0019] Figure 6 The format of the query index;
[0020] Figure 7 Perform a search process for cloud servers. DETAILED DESCRIPTION
[0021] like Figure 1 As shown, the specific steps of the method of the present invention are as follows:
[0022] 1) The data owner (i.e., medical institution, such as hospital) pre-processes the data and completes the construction of the disease knowledge graph. It can query the relationship index between symptoms and diseases and form a keyword index of symptoms and diseases; it forms a disease information document containing symptoms, departments, treatment drugs, contraindicated foods, etc.
[0023] 2) Convert each Chinese keyword into pinyin. The pinyin format is as follows: Figure 2 As shown in FIG. 1 , it is represented by a 104-bit vector. The pinyin vector is mapped to an m-bit Bloom filter through l local sensitive hash (LSH) functions. The generated Bloom filter is as follows: Figure 3 As shown. A tree is constructed for each keyword index. The form of a keyword index is as follows Figure 4As shown in the figure, the first layer is the vector of a single keyword, the second layer is the vector formed by the collection of other keywords of a document containing this keyword, and the third layer is the identifier ID of all documents containing this keyword, thereby generating all keyword indexes. The purpose of such an index design is to improve the search speed. This can enable multi-keyword searches. After finding the first keyword, it is possible to quickly find the documents containing other query keywords. In the structure of the forward index, it is necessary to search for keywords one by one in each document. In contrast, the search efficiency of this case has been improved.
[0024] 3) Encrypt the disease information document and the keyword index containing symptom-disease names respectively. The encryption process is as Figure 5 shown, and upload the encrypted file and index to the cloud server.
[0025] 4) The user inputs the symptom keywords of interest, converts the keywords into pinyin vectors, and the form of the vectors is as Figure 2 shown. Map the pinyin vectors into the Bloom filter through l identical locality-sensitive hashing functions to form a query index. The query index is as Figure 6 shown.
[0026] 5) The user encrypts the query index and sends the encrypted query index to the cloud server.
[0027] 6) The cloud server executes the search process and returns all the encrypted disease information documents corresponding to the matched symptoms to the user. The matching process is as Figure 7 shown.
[0028] 7) The user decrypts the returned encrypted document.
[0029] Preferably, in step 1), when preprocessing the data, a method based on a knowledge graph can be used to systematically extract keywords.
[0030] Preferably, in step 2), the format of pinyin is a 104-bit vector. Different from Chinese and English, in addition to letters, Chinese also has tones. Therefore, in the 104 bits, there are 4 characters, and in each character, the first half is the letter and the second half is the tone. To achieve fuzzy search, the present invention uses locality-sensitive hashing (LSH): when the user inputs incorrect keywords, through the use of l sensitive hashing functions, the incorrect keywords are mapped to the addresses of the correct keywords, and these addresses are stored in the m-bit Bloom filter (l < m). Such a method can improve the search accuracy.
[0031] Preferably, in step 3), the encryption methods for the disease information document and its ID and the encryption method for the keyword index are different. The encryption method for the disease information document and its ID uses public key encryption, which ensures the security of the stored documents; the encryption method for the keyword index uses symmetric encryption in the first, second and third layers, which can improve search efficiency.
[0032] Preferably, in step 4), the user can enter a single keyword or multiple keywords for query. Entering a single keyword only requires generating one Bloom filter. If multiple keywords are entered, two Bloom filters are required. Except for the first keyword, all other keywords are mapped to the second Bloom filter.
[0033] Preferably, in step 5), the encryption of the query index corresponds to the encryption of the keyword index.
[0034] Preferably, in step 6), during the search performed by the cloud server, if it is a single keyword search, the first encrypted query index is calculated with the first layer of the encrypted keyword index, and the third layer encrypted file IDs that meet the conditions are recorded. If it is a multi-keyword query, based on the single keyword query, the second encrypted query index is calculated with the second layer of the keyword index, and after two rounds of calculation, the third layer encrypted file IDs that meet the conditions are recorded, and the encrypted file corresponding to the encrypted ID is returned to the user.
[0035] Preferably, in step 7), the user uses his own private key and the public key of the data owner to decrypt.
[0036] The present invention realizes fuzzy search of Chinese encrypted multi-keywords, which can be applied in medical scenarios to protect the query privacy of users. In searchable encryption, most of the searches are for precise keywords. If the user enters the wrong keyword for some reason, the correct match cannot be made. Therefore, fuzzy search is proposed, which allows users to find the correct match even if they enter the wrong keyword.
Claims
1. A Chinese ciphertext multi-keyword fuzzy search method for medical data supporting privacy protection, characterized by: The following steps are involved: Step 1) The medical institution pre-processes the data, constructs a knowledge graph about the disease, forms a keyword index of symptoms and diseases, and forms a disease information document; Step 2) Convert the Chinese keywords of symptoms and diseases into pinyin, map the pinyin into the Bloom filter, construct a tree for each keyword, and form a keyword index; Step 3) Encrypt the disease information document and the keyword index containing the symptom-disease name separately, and upload the encrypted file and index to the cloud server; Step 4) The user enters the symptom keyword of interest, the keyword is first converted into a pinyin vector, and then the pinyin is mapped to the Bloom filter to form a query index; Step 5) The user encrypts the query index and sends the encrypted query index to the cloud server; Step 6) The cloud server executes the search process and returns the first n encrypted disease information documents that match to the user; Step 7) The user decrypts all the returned encrypted documents; In step 2), pinyin is mapped to Bloom filters through multiple local sensitive hash functions, and the keyword index is a three-layer tree structure, including the correspondence between disease information documents and keywords; The pinyin format uses a 104-bit vector, with a total of 4 characters, the first half of each character is a letter, and the second half is a tone; The first layer of the keyword index is a vector of a single keyword, the second layer is a vector formed by a collection of other keywords of a document containing this keyword, and the third layer is the identifier ID of all documents containing this keyword; In step 4), the user enters a single keyword or multiple keywords for query. If a single keyword is entered, only one Bloom filter is generated. If multiple keywords are entered, two Bloom filters are required. Except for the first keyword, all other keywords are mapped to the second Bloom filter. In step 6), the cloud server performs the search process. If it is a single keyword search, the first encrypted query index is calculated with the first layer of the encrypted keyword index, and the third layer encrypted file ID that meets the conditions is recorded; If it is a multi-keyword query, based on the single-keyword query, the second encrypted query index is calculated with the second layer of the keyword index. After two rounds of calculation, the third-layer encrypted file ID that meets the conditions is recorded, and the encrypted file corresponding to the encrypted ID is returned to the user.
2. The search method according to claim 1, characterized in that: In step 3), public key encryption is used for the disease information document; symmetric encryption is used for the three layers of the keyword index.
Citation Information
Patent Citations
Searchable encryption method based on Chinese in cloud environment
CN105681280A
Chinese multi-keyword weight fuzzy search privacy protection method
CN114386065A