Fuzzy retrieval system and method based on database encryption fields

By introducing a collaborative working mechanism of clients, platform servers and multiple data processing micro-servers into the database encryption field fuzzy search system, the existing homomorphic encryption technology is solved, and efficient encryption field fuzzy search is achieved, and data security is ensured.

CN119830315APending Publication Date: 2025-04-15BEIJING GUODIANTONG NETWORK TECH CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411783510.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-06
Publication Date
2025-04-15

AI Technical Summary

Technical Problem

Existing homomorphic encryption techniques are less efficient when dealing with complex fuzzy retrieval, especially in complex queries such as wildcards or similarity matching.

Method used

A fuzzy search system based on database encryption fields is proposed, and the client, platform server and multiple data processing micro-servers work together. The platform server splits the encrypted fields into multiple encrypted field data and distributes them to the corresponding data processing micro-server. Each micro-server uses a decryption algorithm to decrypt the received encrypted field data and executes a fuzzy matching algorithm in the database to obtain the search results.

Benefits of technology

By splitting and distributing the encrypted fields to multiple data processing micro-servers, the efficiency of processing complex queries is improved, and the problem of inefficiency in the prior art for complex fuzzy retrieval can be effectively overcome, while ensuring data security.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119830315A_ABST
    Figure CN119830315A_ABST
Patent Text Reader

Abstract

The invention provides a fuzzy retrieval system and method based on database encryption fields and a client. The fuzzy retrieval system and method are used for sending an obtained fuzzy retrieval request to a platform server. The fuzzy retrieval request comprises an encrypted field used for retrieving data; the platform server is used for distributing each piece of encrypted field data to the corresponding data processing micro-server according to the data volume of the encrypted field, and the number of the data processing micro-servers is adjusted based on the number of the encrypted field data; each data processing micro server is used for decrypting the received encrypted field data by adopting a decryption algorithm to obtain a decryption result; and obtaining a fuzzy retrieval result of the encrypted field. Due to the fact that the encrypted field is divided into the multiple pieces of encrypted field data, then each piece of encrypted field data is distributed to the corresponding data processing micro-server, each data processing micro-server can independently process the received encrypted field data, and the efficiency is high when complex query is processed.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of encrypted data processing, and in particular relates to a fuzzy retrieval system and method based on encrypted fields of a database. Background Art

[0002] Homomorphic encryption is a technology that allows calculations to be performed directly on encrypted data, allowing addition or multiplication operations to be completed without decrypting the data. Although homomorphic encryption can be used for certain types of fuzzy queries, such as range queries, it still has limitations for complex fuzzy searches such as wildcard or similarity matching.

[0003] Although homomorphic encryption improves security, it is less efficient when processing complex queries. Summary of the invention

[0004] In order to overcome the above-mentioned deficiencies of the prior art, in a first aspect, the present invention application proposes a fuzzy retrieval system based on a database encrypted field, comprising: a client, a platform server, and a plurality of data processing micro servers;

[0005] The client is used to send the acquired fuzzy search request to the platform server; the fuzzy search request includes an encrypted field for retrieving data;

[0006] The platform server is used to split the encrypted field into multiple encrypted field data according to the data amount of the encrypted field, and distribute each encrypted field data to a corresponding data processing micro server, and the number of the data processing micro servers is adjusted based on the number of the multiple encrypted field data;

[0007] Each of the data processing micro-servers is used to decrypt the received encrypted field data using a decryption algorithm to obtain a decryption result; and to execute a fuzzy matching algorithm on the decryption result in a database to obtain a fuzzy retrieval result of the encrypted field.

[0008] Preferably, the platform server is specifically used to split the encrypted field into equal parts to obtain multiple encrypted field data.

[0009] Preferably, the number of the data processing micro servers is adjusted based on the number of the encrypted field data, including:

[0010] The number of the data processing micro servers is equal to the number of the encrypted field data.

[0011] Preferably, each of the data processing micro-servers is also used to decrypt the received encrypted field data segment by segment.

[0012] Preferably, each of the data processing micro-servers is also used to screen the fuzzy search results of the encrypted fields according to preset conditions to obtain query results.

[0013] Preferably, the system further comprises:

[0014] A result processing microserver is used to obtain the query results of each of the data processing microservers; summarize the query results of each of the data processing microservers to obtain a summary result; sort the summary result to obtain a sorted result; remove the fuzzy retrieval results of repeated encrypted fields in the sorted result to obtain a deduplicated summary result; paginate the deduplicated summary result to obtain a final retrieval result; and send the final retrieval result to the platform server.

[0015] Preferably, the platform server is further used to obtain the final search result, display the final search result, and send the final search result to the client;

[0016] The client is also used to obtain the final search result sent by the platform server.

[0017] In the second aspect, the present invention also proposes a fuzzy search method based on a database encrypted field, comprising:

[0018] Using the client to send the acquired fuzzy search request to the platform server, the fuzzy search request includes an encrypted field for retrieving data;

[0019] Using the platform server to split the encrypted field into multiple encrypted field data according to the amount of data in the encrypted field, and distribute each encrypted field data to a corresponding data processing microserver, wherein the number of the data processing microservers is adjusted based on the number of the multiple encrypted field data;

[0020] Each data processing micro-server uses a decryption algorithm to decrypt the received encrypted field data to obtain a decryption result; a fuzzy matching algorithm is executed on the decryption result in the database to obtain a fuzzy retrieval result of the encrypted field.

[0021] In a third aspect, the present invention application further proposes an electronic device, comprising: at least one processor and a memory; the memory and the processor are connected via a bus;

[0022] The memory is used to store one or more programs;

[0023] When the one or more programs are executed by the at least one processor, the fuzzy retrieval method based on database encrypted fields is implemented.

[0024] In a fourth aspect, the present invention application further proposes a readable storage medium on which an execution program is stored. When the execution program is executed, the fuzzy retrieval method based on encrypted fields of a database is implemented.

[0025] Compared with the closest prior art, the present invention has the following beneficial effects:

[0026] The present invention discloses a fuzzy search system and method based on encrypted fields in a database, comprising: a client, a platform server, and a plurality of data processing micro servers; the client is used to send the obtained fuzzy search request to the platform server; the fuzzy search request includes an encrypted field for retrieving data; the platform server is used to split the encrypted field into a plurality of encrypted field data according to the amount of data in the encrypted field, and distribute each of the encrypted field data to a corresponding data processing micro server, and the number of the data processing micro servers is adjusted based on the number of the plurality of encrypted field data; each of the data processing micro servers is used to decrypt the received encrypted field data using a decryption algorithm to obtain a decryption result; and a fuzzy matching algorithm is executed on the decryption result in the database to obtain a fuzzy search result of the encrypted field. Since the encrypted field is split into a plurality of encrypted field data, and each encrypted field data is then distributed to a corresponding data processing micro server, each data processing micro server can process the received encrypted field data separately, so that the processing efficiency of complex queries is higher. Since the fuzzy matching algorithm is introduced, the system of the present invention can be applied to fuzzy search, and the system can break through the problem that there are still limitations for complex fuzzy searches such as wildcards or similarity matching. BRIEF DESCRIPTION OF THE DRAWINGS

[0027] Figure 1 An architectural diagram of a fuzzy retrieval system based on database encrypted fields provided by the present invention;

[0028] Figure 2 A specific use case diagram of a fuzzy retrieval system based on database encrypted fields provided by the present invention;

[0029] Figure 3 An architectural diagram of a fuzzy retrieval method based on database encrypted fields provided by the present invention;

[0030] Figure 4 A schematic diagram of the operation of an electronic device provided in the present invention application. DETAILED DESCRIPTION

[0031] The specific implementation methods of the present invention are further described in detail below with reference to the accompanying drawings.

[0032] Embodiment 1:

[0033] like Figure 1 As shown, the present invention application provides a fuzzy retrieval system based on database encrypted fields, including: a client, a platform server, and multiple data processing micro servers;

[0034] The client is used to send the acquired fuzzy search request to the platform server; the fuzzy search request includes an encrypted field for retrieving data;

[0035] The platform server is used to split the encrypted field into multiple encrypted field data according to the data amount of the encrypted field, and distribute each encrypted field data to a corresponding data processing micro server, and the number of the data processing micro servers is adjusted based on the number of the multiple encrypted field data;

[0036] Each of the data processing micro-servers is used to decrypt the received encrypted field data using a decryption algorithm to obtain a decryption result; and to execute a fuzzy matching algorithm on the decryption result in a database to obtain a fuzzy retrieval result of the encrypted field.

[0037] As mentioned above, each data processing microserver can read the encrypted field data assigned to it from the database and decrypt it using a secure decryption algorithm. After decryption, the fuzzy matching algorithm is executed at the same time. The fuzzy retrieval matching algorithm is as follows: the decrypted result after decryption contains the field to be retrieved, and based on the decrypted result after decryption, the corresponding encrypted field can be screened out.

[0038] As mentioned above, the platform server is specifically used to split the encrypted field into equal parts to obtain multiple encrypted field data.

[0039] As described above, the platform server can reasonably split the encrypted field data into several equal parts according to the amount of data in the encrypted field that the user actually wants to retrieve, and distribute them to the data processing microserver responsible for data processing.

[0040] The above-mentioned, the number of the data processing micro servers is adjusted based on the number of the plurality of encrypted field data, including:

[0041] The number of the data processing micro servers is equal to the number of the encrypted field data.

[0042] As mentioned above, the number of data processing microservers utilizes the characteristics of microservices to scale the number of data processing microservers according to actual conditions. Scaling includes: when the number of data processing microservers is less than the number of encrypted field data, based on the number of encrypted field data, the number of data processing microservers is expanded to be the same as the number of encrypted field data; when the number of data processing microservers is greater than the number of encrypted field data, based on the number of encrypted field data, the number of data processing microservers is reduced to be the same as the number of encrypted field data. The characteristics of microservices can enhance the scalability of the system.

[0043] As mentioned above, each of the data processing micro servers is also used to decrypt the received encrypted field data segment by segment.

[0044] Each of the data processing micro servers is further configured to screen the fuzzy search results of the encrypted fields according to preset conditions to obtain query results. After the above processing, query results that meet the conditions can be screened out.

[0045] The above-mentioned system further comprises:

[0046] A result processing microserver is used to obtain the query results of each of the data processing microservers; summarize the query results of each of the data processing microservers to obtain a summary result; sort the summary result to obtain a sorted result; remove the fuzzy retrieval results of repeated encrypted fields in the sorted result to obtain a deduplicated summary result; paginate the deduplicated summary result to obtain a final retrieval result; and send the final retrieval result to the platform server.

[0047] As mentioned above, each data processing microserver reads the relevant data of the encrypted field assigned to it from the database, and uses a secure decryption algorithm to decrypt the data one by one. After the decryption is completed, the fuzzy matching algorithm is executed at the same time to obtain the fuzzy search results of the encrypted field, and then the query results that meet the conditions are filtered. Because the encrypted field data cannot be fuzzily searched in the traditional way. The logic of this system is to decrypt the encrypted field data segment by segment, and then perform fuzzy matching of the fuzzy matching algorithm to generate the final fuzzy search results. Fuzzy retrieval is that the decrypted field contains the field to be searched, and the search record can be filtered out.

[0048] As mentioned above, the result processing microserver aggregates the query results and performs further processing, such as sorting, deduplication, and paging. Since the encrypted field data is distributed to different data processing microserver nodes for processing, after the query results are screened out and aggregated, they can be uniformly sorted, deduplicated, and paging again according to the rules.

[0049] The platform server is further configured to obtain the final search result, display the final search result, and send the final search result to the client;

[0050] The client is also used to obtain the final search result sent by the platform server.

[0051] The above mainly realizes that the final search results after processing are returned to the platform server, and then returned to the client through the platform server, so that the final search results received by the client can be displayed to the customer in a timely manner.

[0052] The system of the present invention is different from other systems in that it utilizes the architecture of a data processing microserver to distribute all query results of fuzzy retrieval to the service nodes of the result processing microserver for execution, and after the execution is completed, it is integrated for sorting, deduplication, and paging. Resources are exchanged for time to achieve the purpose of fast retrieval. Among them, the characteristic of microservices is that the number of data processing microservers can be expanded or reduced according to the needs of business concurrency. When the resources required for the query are large, the number of data processing microserver nodes can be increased, and when the business is not frequent, the number of data processing microserver nodes can be reduced.

[0053] The system of the present invention can also solve the contradiction between data security and query efficiency caused by accurate matching query on encrypted data in the prior art. By adopting a specific decryption algorithm and retrieval mechanism, the present invention can ensure data security while protecting sensitive information, while improving the flexibility, efficiency and accuracy of data query.

[0054] For example, Figure 2 As shown, a specific use case of the system of the present invention is: when performing fuzzy retrieval of encrypted fields, the client sends a fuzzy retrieval request to the platform server. The platform server splits the encrypted field into several reasonable equal parts of encrypted field data according to the actual amount of data in the encrypted field to be retrieved, and distributes them to the data processing server. The data processing server is embodied in a cluster, and the data processing service can be dynamically expanded and contracted according to the actual resource usage. A single data processing microserver reads the encrypted field data assigned to it from the database, and uses a secure decryption algorithm to decrypt the data segment by segment. After the decryption is completed, the fuzzy matching algorithm is executed at the same time to filter out the query results that meet the conditions. For the query results, the data processing server sends the query results to the result processing microserver, and then the result processing microserver summarizes the query results and performs further processing, such as sorting, deduplication, paging, etc., to obtain the final retrieval results. The final retrieval results are sent to the platform server for display, and the platform server sends the final retrieval results to the client at the same time, so that the client obtains the fuzzy retrieval results.

[0055] Embodiment 2:

[0056] like Figure 3 As shown, the present invention also provides a fuzzy retrieval method based on a database encrypted field, comprising:

[0057] Step 1: using the client to send the acquired fuzzy search request to the platform server, wherein the fuzzy search request includes an encrypted field for retrieving data;

[0058] Step 2: using the platform server to split the encrypted field into multiple encrypted field data according to the amount of data in the encrypted field, and distributing each encrypted field data to a corresponding data processing microserver, wherein the number of the data processing microservers is adjusted based on the number of the multiple encrypted field data;

[0059] Step 3: Decrypt the received encrypted field data using a decryption algorithm on each data processing microserver to obtain a decryption result; perform a fuzzy matching algorithm on the decryption result in the database to obtain a fuzzy search result of the encrypted field.

[0060] Furthermore, the platform server is used to split the encrypted field into multiple encrypted field data according to the amount of data in the encrypted field, including:

[0061] The encrypted field is split into equal parts using a platform server to obtain a plurality of encrypted field data.

[0062] Further, the number of the data processing micro servers is adjusted based on the number of the plurality of encrypted field data, including:

[0063] The number of the data processing micro servers is equal to the number of the encrypted field data.

[0064] Further, the decrypting of the received encrypted field data by using a decryption algorithm by each data processing micro server includes:

[0065] Each of the data processing micro servers is used to decrypt the received encrypted field data segment by segment.

[0066] Further, after decrypting the received encrypted field data using a decryption algorithm by each data processing microserver to obtain a decryption result; and executing a fuzzy matching algorithm on the decryption result in a database to obtain a fuzzy search result of the encrypted field, the method further includes:

[0067] Each of the data processing micro servers is used to screen the fuzzy search results of the encrypted fields according to preset conditions to obtain query results.

[0068] Furthermore, after the fuzzy search results of the encrypted fields are screened according to preset conditions by each of the data processing micro servers to obtain the query results, the method further includes:

[0069] Utilize the result processing microserver to obtain the query result of each data processing microserver; summarize the query result of each data processing microserver to obtain a summary result; sort the summary result to obtain a sorted result; remove the fuzzy retrieval results of repeated encrypted fields in the sorted result to obtain a deduplicated summary result; paginate the deduplicated summary result to obtain a final retrieval result; and send the final retrieval result to the platform server.

[0070] Further, after sending the final search result to the platform server, it also includes:

[0071] Using the platform server to obtain the final search result, displaying the final search result; sending the final search result to the client;

[0072] The final search result sent by the platform server is obtained by using the client.

[0073] Embodiment 3:

[0074] like Figure 4 As shown, the present invention also provides an electronic device, which may be a computer device, a single-chip device, an intelligent mobile device, etc. The electronic device in this embodiment may include a processor, a memory, a transceiver component, etc. The memory, the processor, and the transceiver component are connected via a bus; the memory may be used to store an execution program, and an exemplary execution program may include instructions; the processor is used to execute the instructions stored in the memory. The memory may also be used to store data, which may be called and / or modified when the instructions are executed.

[0075] The processor may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. It is the computing core and control core of the terminal, which is suitable for implementing one or more instructions, specifically suitable for loading and executing one or more instructions in a storage medium to implement a corresponding method flow or a corresponding function, so as to implement the steps of a fuzzy retrieval method based on a database encrypted field in the above embodiment.

[0076] Embodiment 4:

[0077] Based on the same inventive concept, the present invention also provides a readable storage medium, specifically an electronic device readable storage medium (Memory), which is a memory device in an electronic device for storing programs and data. It can be understood that the storage medium here can include both built-in storage media in electronic devices and, of course, extended storage media supported by electronic devices. The storage medium provides a storage space, which stores the operating system of the terminal. In addition, one or more instructions suitable for being loaded and executed by a processor are also stored in the storage space, and these instructions can be one or more execution programs (including program codes). It should be noted that the storage medium here can be a high-speed RAM memory or a non-volatile memory, such as at least one disk memory. The processor loads and executes one or more instructions stored in the storage medium, which can implement the steps of a fuzzy retrieval method based on a database encrypted field in the above embodiment.

[0078] Those skilled in the art will appreciate that the embodiments of the present invention application can be provided as methods, systems, or computer program products. Therefore, the present invention application can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present invention application can adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.

[0079] The present invention application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present invention application. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of the processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0080] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0081] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0082] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention application rather than to limit its protection scope. Although the present invention application is described in detail with reference to the above embodiments, ordinary technicians in the relevant field should understand that after reading the present invention application, those skilled in the art can still make various changes, modifications or equivalent substitutions to the specific implementation methods of the application, but these changes, modifications or equivalent substitutions are all within the protection scope of the claims to be approved.

Claims

1. A fuzzy retrieval system based on database encrypted fields, characterized in that: include: Client, platform server, multiple data processing micro servers; The client is used to send the acquired fuzzy search request to the platform server; The fuzzy search request includes an encrypted field for retrieving data; The platform server is used to split the encrypted field into multiple encrypted field data according to the data amount of the encrypted field, and distribute each encrypted field data to a corresponding data processing micro server, and the number of the data processing micro servers is adjusted based on the number of the multiple encrypted field data; Each of the data processing micro-servers is used to decrypt the received encrypted field data using a decryption algorithm to obtain a decryption result; and to execute a fuzzy matching algorithm on the decryption result in a database to obtain a fuzzy retrieval result of the encrypted field.

2. The system according to claim 1, characterized in that The platform server is specifically used to split the encrypted field into equal parts to obtain multiple encrypted field data.

3. The system according to claim 1, characterized in that The number of the data processing micro servers is adjusted based on the number of the encrypted field data, including: The number of the data processing micro servers is equal to the number of the encrypted field data.

4. The system according to claim 1, characterized in that Each of the data processing micro-servers is also used to decrypt the received encrypted field data segment by segment.

5. The system according to claim 1, characterized in that Each of the data processing micro servers is also used to screen the fuzzy search results of the encrypted fields according to preset conditions to obtain query results.

6. The system according to claim 5, characterized in that Also includes: A result processing micro server, used to obtain the query result of each of the data processing micro servers; Summarizing the query results of each of the data processing micro servers to obtain a summary result; Sorting the summary results to obtain a sorting result; Removing the fuzzy search results of the repeated encrypted fields in the sorting results to obtain a deduplicated summary result; Paging the deduplicated summary results to obtain final search results; The final search result is sent to the platform server.

7. The system according to claim 6, characterized in that The platform server is further used to obtain the final search result, display the final search result, and send the final search result to the client; The client is also used to obtain the final search result sent by the platform server.

8. A fuzzy retrieval method based on database encrypted fields, characterized in that: include: Using the client to send the acquired fuzzy search request to the platform server, the fuzzy search request includes an encrypted field for retrieving data; Using the platform server to split the encrypted field into multiple encrypted field data according to the amount of data in the encrypted field, and distribute each encrypted field data to a corresponding data processing microserver, wherein the number of the data processing microservers is adjusted based on the number of the multiple encrypted field data; Each data processing micro server uses a decryption algorithm to decrypt the received encrypted field data to obtain a decryption result; a fuzzy matching algorithm is executed on the decryption result in the database to obtain a fuzzy search result of the encrypted field.

9. An electronic device, characterized in that: include: at least one processor and memory; The memory and the processor are connected via a bus; The memory is used to store one or more programs; When the one or more programs are executed by the at least one processor, a fuzzy retrieval method based on a database encrypted field as described in claim 8 is implemented.

10. A readable storage medium, characterized in that: An execution program is stored thereon, and when the execution program is executed, a fuzzy retrieval method based on a database encrypted field as described in claim 8 is implemented.