Lattice-based public key authentication searchable encryption method in medical Internet of Things environment
Through the searchable encryption method of Gage Public Key Authentication, the problem of increasing ciphertext and trapped gate overhead in multiple user scenarios in the medical Internet of Things is solved, and efficient and secure data query and privacy protection are achieved to resist quantum computing attacks.
Patent Information
- Application Number
- CN202510598608.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-09
- Publication Date
- 2025-08-08
AI Technical Summary
In the medical IoT multi-user scenario, in the existing authenticated searchable encryption scheme, the overhead of ciphertext and trap doors increases linearly with the increase in the number of users, and is vulnerable to quantum computing attacks, resulting in inefficiency and insufficient security.
Using grid-based public key authentication searchable encryption method, by introducing a sending server and a constant trapping mechanism, doctors generate pre-encrypted ciphertext, sending server re-encrypts and uploads, researchers generate trapping gate, and cloud servers match ciphertext to achieve ciphertext weight reduction and quantum computing resistance.
It effectively reduces the overhead of ciphertext and trapped doors in multiple user scenarios, improves system efficiency and security, and ensures the privacy protection of medical data in the era of quantum computing.
Smart Images

Figure CN120455010A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the field of network security technology, and specifically relates to a lattice-based public key authentication searchable encryption method in a multi-user scenario in the medical Internet of Things. Background Art
[0002] Searchable encryption technology is a technique for performing searches on encrypted data, designed to ensure data privacy and accessibility. Traditional encryption methods prevent direct search and processing of encrypted data. However, searchable encryption uses specialized encryption methods to enable keyword searches within encrypted data without decrypting the entire data. This technology utilizes encrypted indexes, query processing mechanisms, and security measures to ensure that searches protect data privacy while preventing the disclosure of sensitive information. However, traditional searchable encryption faces the risk of keyword guessing attacks, where attackers attempt to brute-force decrypt sensitive information from encrypted data through repeated queries or guesses. To effectively mitigate such attacks, authenticated searchable encryption has been introduced, incorporating authentication mechanisms to ensure the security of searches and the accuracy of results. Authenticated searchable encryption not only ensures that searches within encrypted data do not leak sensitive information but also verifies the authenticity and integrity of search results. Authenticated searchable encryption effectively enhances the reliability of secure access and search within encrypted data, significantly reducing the risk of keyword guessing attacks. Therefore, authenticated searchable encryption has broad application in security-critical fields such as the medical Internet of Things, enabling users to efficiently search and analyze data while ensuring data security.
[0003] Unfortunately, most existing authenticated searchable encryption schemes are poorly adaptable to the multi-user scenarios of the Medical Internet of Things. Specifically, in traditional authenticated searchable encryption schemes, when the keyword is the same, each doctor uses his or her own unique key to encrypt, resulting in a different ciphertext. This requires each doctor to have a unique trapdoor to match the query data, resulting in a linear increase in the ciphertext and trapdoor overhead as the number of doctors increases. Furthermore, traditional authenticated searchable encryption schemes are vulnerable to quantum computing attacks. Therefore, designing a post-quantum authenticated searchable encryption scheme that can both meet the needs of multi-user scenarios and resist the threat of quantum computing remains a significant challenge. Summary of the Invention
[0004] The purpose of the present invention is to provide a lattice-based public key authenticated searchable encryption method in a medical Internet of Things environment. This method can solve the problem of linear growth of trapdoors and ciphertext overhead as the number of users increases in multi-user scenarios in the medical Internet of Things, while effectively resisting quantum computing attacks, thereby improving the security and efficiency of the system.
[0005] A lattice public key authentication searchable encryption method in a medical Internet of Things environment, the method comprising:
[0006] Step 1: The authority first initializes various system parameters and distributes a pair of keys to the sending server;
[0007] Step 2: The doctor as the data sender and the researcher as the data receiver generate their own key pairs;
[0008] Step 3: The doctor encrypts the keywords to generate pre-encrypted ciphertext and sends it along with the encrypted electronic medical record to the sending server. The sending server re-encrypts the pre-generated ciphertext to generate a new ciphertext and then uploads it along with the electronic medical record to the cloud server.
[0009] Step 4: The researcher generates a trapdoor for the relevant keyword and uploads it to the sending server.
[0010] Step 5: After receiving the ciphertext from the sending server, the cloud server stores it, searches for the ciphertext that matches the submitted trapdoor, and returns it to the corresponding researcher;
[0011] According to an embodiment of the present invention, a lattice-based public key authenticated searchable encryption method in a medical Internet of Things environment has the following characteristics and positive impacts: (1) Privacy: Medical data usually contains highly sensitive personal information, and it is crucial to ensure that this data is not leaked during the sharing process. Authenticated searchable encryption technology can effectively protect patient privacy in the medical Internet of Things. By encrypting and storing data and querying it, it ensures that only authorized personnel can access sensitive information. It not only supports queries on encrypted data, but also provides identity authentication functions to effectively prevent unauthorized access and data leakage, thereby enhancing data security and privacy protection. (2) Efficiency: Due to the use of a constant trapdoor mechanism, the present invention can significantly reduce the trapdoor overhead caused by the increase in the number of senders in multi-user scenarios. At the same time, a ciphertext reduction function is introduced. When multiple senders encrypt the same keyword, only one ciphertext needs to be generated. This not only improves the efficiency of the overall encryption operation and query processing, but also effectively reduces the consumption of system resources. (3) Post-quantum: With the development of quantum computing technology, traditional encryption technology may face the risk of being cracked. Authenticated searchable encryption uses a lattice-based encryption scheme, which is believed to be resistant to quantum computing attacks. Therefore, it can provide longer-term data protection and ensure that the privacy of medical data is still protected even after quantum computing becomes popular.
[0012] In some embodiments of the present invention, steps 1-5 are specifically implemented as follows: comprising algorithm Setup(1 λ), Server_ExtractKey(PP), Sender_ExtractKey(PP), Receiver_ExtractKey(PP), Pre_PAEKS(PP,kw,pk S ,sk S ,pk R )、PAEKS(PP,Ct,pk SS ,sk SS ,pk R ), Trapdoor(PP,kw',pk R ,sk R ,pk SS ), The meanings of the parameters involved are as follows: PP represents system parameters, kw and kw' represent keywords, (pk S ,sk S ), (pk R ,sk R ) and (pk SS ,sk SS ) represent the public and private key pairs of the sender, receiver, and sending server respectively, Ct represents the ciphertext generated in advance, and They represent the trapdoor of the ciphertext used for matching, and HL2 represents the list of ciphertext storage. The specific implementation steps are:
[0013] Setup(1 λ ): Initialization algorithm. This algorithm is used for system initialization, takes the security parameter λ as input, and outputs the public parameter PP.
[0014] Server_ExtractKey(PP): Send server key generation algorithm. This algorithm takes the system public parameter PP as input and outputs a pair of keys (pk SS ,sk SS ). First, the algorithm executes the algorithm TrapGen(q,n,m) to obtain the matrix tuple (C,T C ), and then select the matrix Finally, the public and private key pair {pk SS =(C SS ,C),sk SS =T C}.
[0015] Sender_ExtractKey(PP): Sender key generation algorithm. This algorithm uses the system public parameters As input, output a pair of keys (pk SS ,sk SS). First, the algorithm executes the algorithm TrapGen(q,n,m) to obtain the matrix tuple (A,T A ), and then select the matrix Finally, the public and private key pair {pk S =(A S ,A),sk S =T A}.
[0016] Receiver_ExtractKey(PP): Receiver key generation algorithm. This algorithm uses system public parameters As input, output a pair of keys (pk R ,sk R ). First, the algorithm executes the algorithm TrapGen(q,n,m) to obtain the matrix tuple (B,T B ), and then select the matrix Finally, the public and private key pair {pk R =(B S ,B),sk R =T B}.
[0017] Pre_PAEKS(PP,kw,pk S ,sk S ,pk R ): ciphertext pre-generation algorithm. This algorithm uses the system public parameter PP, message kw, sender's public and private key pair (pk S ,sk S ) and the recipient's public key pk R As input, the output ciphertext Ct=(Ct1.Ct2.Ct3), where Ct1=H1(kw), Ct2=H2(sk S ,kw),Ct3=H2(pk R ,kw) and forwards it to the sending server.
[0018] PAEKS(PP,Ct,pk SS ,sk SS ,pk R ): Ciphertext generation algorithm. This algorithm uses the system public parameter PP, generates the ciphertext Ct in advance, and sends the server public and private key pair (Pk SS ,sk SS ) and the recipient's public key pk R As input, output final ciphertext The algorithm first checks whether the keyword and target researcher related to Ct exist in HL1. If both Ct1 and Ct3 exist, the server outputs the corresponding ciphertext. Otherwise, generate the ciphertext and add it to HL1 as follows: Select a random vector and η' S ←Φ n Then, calculate Finally, output the ciphertext in satisfy
[0019] Ciphertext insertion algorithm. This algorithm uses the system public parameters surface and ciphertext As input, output is the updated table HL2.
[0020] Trapdoor(PP,kw',pk R ,sk R ,pk SS ): Trapdoor generation algorithm. The algorithm uses the system public parameter PP, message kw', receiver's public and private key pair (pk R ,sk R ) and send the server public key pk SS is the input and output is the trapdoor The algorithm first selects a random vector and η' R ←Φ n Then, calculate Tr1=H2(pk R ,kw'), and Finally, the output in satisfy
[0021] Matching algorithm. The algorithm uses system public parameters PP, ciphertext and trapdoor is the input. The algorithm verifies the inequality Is it true? If so, the match is successful and the return value is 1. Otherwise, the match fails and the return value is 0.
[0022] Query algorithm. The algorithm uses system public parameters Table HL2 and Trapdoor As input, the output is the matching ciphertext. The algorithm traverses all stored trapdoors and returns the ciphertext that satisfies the equation ciphertext. BRIEF DESCRIPTION OF THE DRAWINGS
[0023] Figure 1This is an architecture diagram of a lattice public key authentication searchable encryption method in a medical Internet of Things environment according to one embodiment of the present invention;
[0024] Figure 2 The present invention is a flowchart of a lattice public key authentication searchable encryption method in a medical Internet of Things environment according to an embodiment of the present invention. DETAILED DESCRIPTION
[0025] The embodiments described below with reference to the accompanying drawings are exemplary and intended to explain the present invention, but should not be construed as limiting the present invention. All other embodiments derived by persons of ordinary skill in the art based on the embodiments of the present invention without creative effort shall fall within the scope of protection of the present invention.
[0026] The present invention proposes a lattice-based public key authentication and searchable encryption method in a medical Internet of Things environment to solve the following problems:
[0027] (1) In the medical Internet of Things, authenticated searchable encryption technology can ensure the privacy of sensitive medical data while supporting data query and effectively preventing unauthorized access.
[0028] (2) Lattice-based encryption schemes are resistant to quantum computing attacks, ensuring that data can still be securely protected in the quantum computing era.
[0029] like Figure 1 and Figure 2 As shown, the specific implementation steps of the present invention are divided into five steps: Setup (1 λ )(initialization), Server_ExtractKey(PP), Sender_ExtractKey(PP), Receiver_ExtractKey(PP)(key generation), Pre_PAEKS(PP,kw,pk S ,sk S ,pk R )、PAEKS(PP,Ct,pk SS ,sk SS ,pk R ), (ciphertext generation and storage), Trapdoor(PP,kw',pk R ,sk R ,pk SS )(Trapdoor Generation), (Ciphertext search) The present invention involves four roles: a doctor as a sender, a sending server, a researcher as a receiver, and a cloud server.
[0030] Initialization: The authority executes the initialization algorithm Setup(1λ ) to initialize the system. First, set the grid parameters n, m and discrete Gaussian distribution parameter σ, and initialize the hash function
[0031] Key generation: The authority, sender and receiver call Server_ExtractKey(PP), Sender_ExtractKey(PP) and Receiver_ExtractKey(PP) to generate public and private key pairs (pk SS ,sk SS ), (pk S ,sk S ) and (pk R ,sk R );
[0032] Ciphertext generation: The ciphertext generation stage consists of two parts: the doctor passes Pre_PAEKS(PP,kw,pk S ,sk S ,pk R ) algorithm to encrypt the keyword to generate the advance ciphertext and the sending server calls PAEKS (PP, Ct, pk SS ,sk SS ,pk R ) algorithm to generate the final ciphertext. All authorized doctors can generate ciphertexts for the corresponding keywords in advance by executing Pre_PAEKS, and these ciphertexts are sent to the sending server. After the sending server receives the ciphertext Ct sent by the doctor, it executes PAEKS to generate the final ciphertext And upload it to the cloud server, the server uses the algorithm Storing ciphertext In addition, the sending server maintains a hash link list HL1 to store the advance ciphertext Ct and the final ciphertext The mapping relationship;
[0033] Trapdoor generation: All authenticated researchers are allowed to generate a trapdoor by executing Trapdoor(PP,kw',pk R ,sk R ,pk SS ) algorithm generates trapdoors for query keywords and uploads them to the cloud server;
[0034] Ciphertext search: After receiving the query trapdoor from the researcher, the cloud server performs Algorithm, using The algorithm tests the ciphertexts in list HL2 in turn and returns the ciphertexts that meet the conditions.
Claims
1. A lattice public key authentication searchable encryption method in a medical Internet of Things environment, comprising the following steps: Step 1: The system inputs the security parameter λ and the authorized agency executes the algorithm Setup(1 λ ) to set the grid parameters n, m and discrete Gaussian distribution parameter σ, and select hash functions H1, H2, the above parameters together constitute the system public parameter PP; Step 2: The authorization agency, data sender, and data receiver respectively call the algorithms Server_ExtractKey(PP), Sender_ExtractKey(PP), and Receiver_ExtractKey(PP). The specific process is as follows: The Server_ExtractKey(PP) obtains the matrix tuple by executing the trapdoor generation algorithm TrapGen(q,n,m) in the grid And select the matrix Among them, C is statistically close to uniform distribution on the C Yes Finally, let the public-private key pair {pk SS =(C SS ,C),sk SS =T C }; The execution process of the Sender_ExtractKey(PP) and the Receiver_ExtractKey(PP) is the same as above; Step 3: The doctor encrypts the keyword to generate the corresponding ciphertext and forwards it to the cloud server. The specific process is as follows: The doctor calls the algorithm Pre_PAEKS(PP,kw,pk S ,sk S ,pk R ) is encrypted in advance for the keyword, and the corresponding ciphertext Ct = (Ct1.Ct2.Ct3) is generated, where Ct1 = H1 (kw), Ct2 = H2 (sk S ,kw),Ct3=H2(pk R ,kw), kw represents the keyword, (pk S ,sk S ), (pk R ,sk R ) and (pk SS ,sk SS ) represent the public and private key pairs of the sender, receiver, and sending server respectively, Ct represents the ciphertext generated in advance and forwarded to the sending server; The sending server executes the algorithm PAEKS (PP, Ct, pk SS ,sk SS ,pk R ), first check whether the keyword and target researcher related to Ct exist in table HL1, where HL1 is a hash table. If both Ct1 and Ct3 exist, it means that this keyword has been forwarded to this researcher, then the sending server outputs the corresponding ciphertext Otherwise, pick a random vector calculate and Ciphertext is added to table HL1 and forwarded to the cloud server for storage, where satisfy Step 4: The researchers used the algorithm Trapdoor(PP,kw',pk R ,sk R ,pk SS ) is the keyword encryption, where kw' represents the keyword and generates the corresponding trapdoor The specific process is as follows: The researchers selected a random vector And calculate Tr1=H2(pk R ,kw'), and The researchers will Forwarded to the cloud server, where satisfy Step 5: The cloud server has used all the ciphertexts to make the algorithm Storage is performed, where HL2 represents the list of ciphertext storage; the specific process is as follows: After receiving the researcher's request to match the trapdoor, the cloud server executes the algorithm Return to Satisfaction Ciphertext Right now and return it to the corresponding researchers.