A construction method, system, device and medium of a privacy information retrieval protocol based on a pseudo-random function
By constructing a privacy information retrieval protocol based on pseudo-random functions, and utilizing unintentional pseudo-random functions and indistinguishable obfuscation techniques, the high computational complexity and security issues of existing protocols under the threat of quantum computers are solved, achieving low-complexity and high-security privacy information retrieval.
Patent Information
- Application Number
- CN202411871219.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-18
- Publication Date
- 2025-10-21
- Estimated Expiration
- 2044-12-18
AI Technical Summary
Existing privacy information retrieval protocols are computationally complex and cannot effectively resist quantum attacks when facing the threat of quantum computers, and the existing lightweight protocol structures cannot meet the post-quantum security requirements.
A privacy information retrieval protocol is constructed using three hash functions and a pseudo-random function. By utilizing an unintentional pseudo-random function and an indistinguishable obfuscation technique, the retrieved information is hidden through encryption by the unintentional pseudo-random function and obfuscation function, reducing the computational complexity to O(nlog(n)) and resisting quantum attacks.
It achieves the protection of user privacy, reduces computational complexity, improves data security, and prevents malicious users from understanding other data in a quantum computing environment, with post-quantum security and low computational cost.
Smart Images

Figure CN119807247B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of data security technology, and in particular to a construction method, system, device and medium for a privacy information retrieval protocol based on a pseudo-random function. Background Art
[0002] Private Information Retrieval (PIR), an important cryptographic protocol, is gaining increasing attention in privacy computing. However, existing PIR protocols generally fail to consider the threat of future quantum computers. Some post-quantum designs exist for private set intersection protocols, related to PIR. However, the computational complexity of these protocols is at least O(mnlog(mn)), where m is the modulus of the encryption algorithm and n is the dimension of the encryption algorithm.
[0003] Chase et al. published Private Set Intersection in the Internet Setting From Lightweight Oblivious PRF (Chase, M., Miao, P. Private Set Intersection in the Internet Setting From Lightweight Oblivious PRF[J]. Advances in Cryptology–CRYPTO 2020, 2020, 2020: 34–63.), presenting a lightweight two-party private intersection protocol, but due to the limitations of the protocol structure, it cannot resist quantum attacks. Summary of the Invention
[0004] In order to overcome the shortcomings of the above-mentioned prior art, the purpose of the present invention is to provide a method, system, device and medium for constructing a privacy information retrieval protocol based on pseudo-random functions, and to construct post-quantum privacy information retrieval through inadvertent pseudo-random functions, aiming to address the threat of future quantum computers and secondly reduce the computational complexity to O(nlog(n)).
[0005] In order to achieve the above object, the technical solution adopted by the present invention is:
[0006] A method for constructing a private information retrieval protocol based on a pseudo-random function includes the following steps:
[0007] Step 1: Initialize the system and set security parameters m, w, and hash functions and
[0008] Step 2: Based on the security parameters m,w, set in step 1, and hash functions and Perform random pseudo-random function encryption to obtain matrix D;
[0009] Step 3: Based on the security parameters m,w, set in step 1, Hash function and The matrix D obtained in step 2 is obliviously transferred to obtain the hash function value h;
[0010] Step 4: Data Service Platform P s Package the hash function value h obtained in step 3, construct the encapsulation function, and then use indistinguishable obfuscation to confuse the encapsulation function to obtain the obfuscated function
[0011] Step 5: Use the pseudo-random function to calculate the retrieved data and input it into the obfuscation function obtained in step 4. The retrieval is performed in the data, thereby realizing the hiding of the retrieval information.
[0012] The step 1 is specifically as follows:
[0013] Set the security parameters of the protocol Represents a set of integers and sets three hash functions and in, Represents a univariate polynomial ring
[0014] The step 2 is specifically as follows:
[0015] Data Service Platform P s Selected pseudo-random function key Send the pseudo-random function key k to user P u , data service platform P s Input private data to the pseudorandom function Calculate the pseudorandom function value v:
[0016]
[0017] Where F represents a pseudo-random function, is a function for hashing the private data x, is a pseudo-random function based on the key k, For pseudorandom function The hash function is processed twice and once by a pseudo-random function. u The obtained pseudo-random function value v is a result with privacy protection characteristics. The pseudo-random function value v combines the private data with the characteristics of the pseudo-random function.
[0018] Convert the pseudo-random function value v into a matrix, data service platform P s Assume the initial matrix D = 1 m×w , where D is an m×w matrix with each component equal to 1, and let D i [v[i]]=0, that is, change the v[i]th element in the i-th row to 0, thus obtaining a new matrix D∈{0,1} m×w .
[0019] The step three is specifically as follows:
[0020] Step 3.1, Data Service Platform P s Execution: Data Service Platform P s Send bits s[1],...,s[w]∈{0,1}, user P u Oblivious protocol is used to obtain the column vector {r i (0) ,r i (1)} i∈[w] , data service platform P s Oblivious protocol is used to obtain the column vector {r i} i∈[w] , where r i (0) +r i (1) =1 m ,r i =r i s[i] ∈{0,1} m ;
[0021] Step 3.2, user P u Execution: User P u Oblivious protocol is used to obtain the column vector {r i (0) ,r i (1)} i∈[w] And combined into a matrix And calculate the matrix and column vector i∈[w] and the column vector Δ i Send to P s ;
[0022] Step 3.3, Data Service Platform P s Execution: Data Service Platform P sReceive the column vector Δ sent in step 3.2 i Then calculate C, that is: when s[i]=0, C i =r i ;otherwise Output hash function value Here, s[i] represents the i-th bit of s.
[0023] The step 4 is specifically as follows:
[0024] Data Service Platform P s Pack the hash function value h and construct the encapsulation function:
[0025] ψ(h)=ψ(x)=ψ1(h)+ψ2(h),
[0026] Where, ψ1(h)=0, ψ2(h)=message, where message is the message corresponding to the pseudo-random function value h;
[0027] Then use indistinguishable obfuscation to obfuscate the encapsulated function and get the obfuscated function And the confusion function Sent to user P u .
[0028] The step five is specifically as follows:
[0029] User P u Encrypt the content y to be retrieved using a pseudo-random function to obtain a pseudo-random function value v:
[0030]
[0031] User P u Assume the initial matrix E∈1 m×w , where, m×w matrix, each component is 1, and let E i [v[i]]=0, that is, change the u[i]th element in the i-th row to 0, thus obtaining a new E∈{0,1} m×w , user P u Calculate the hash function value l associated with y, that is v1‖v2=(v1,v2);
[0032] User P u Confusion function Enter search data Corresponding hash function value When user P u Retrieval data When , the confusion function The output is empty, that is, the search fails. When user P u Retrieval data When , the confusion function The output is the hash function value The corresponding message is displayed, indicating that the retrieval is successful.
[0033] A system for constructing a private information retrieval protocol based on an oblivious pseudo-random function, comprising:
[0034] System initialization module, system initialization, setting security parameters m,w, and hash functions and
[0035] Oblivious transfer preparation module, based on security parameters m,w, and hash functions and Perform random pseudo-random function encryption to obtain matrix D;
[0036] Oblivious pseudo-random function encryption module, based on security parameters m,w, Hash function and And matrix D is obliviously transferred to obtain the hash function value h;
[0037] Data packaging module, data service platform P s Pack the hash function value h into data, construct the encapsulation function, and then use indistinguishable obfuscation to confuse the encapsulation function to obtain the obfuscated function
[0038] The user retrieval module uses a pseudo-random function to calculate the retrieval data and inputs it into the obfuscation function The retrieval is performed in the data, thereby realizing the hiding of the retrieval information.
[0039] A device for constructing a private information retrieval protocol based on an oblivious pseudo-random function, comprising:
[0040] Memory: used for storing a computer program for implementing a construction method of a private information retrieval protocol based on an oblivious pseudo-random function;
[0041] Processor: used to implement a construction method of a privacy information retrieval protocol based on an oblivious pseudo-random function when executing the computer program.
[0042] A computer-readable storage medium stores a computer program, which, when executed by a processor, implements the steps of a method for constructing a privacy information retrieval protocol based on an oblivious pseudo-random function.
[0043] Compared with the prior art, the present invention has the following beneficial effects:
[0044] 1. The present invention adopts three hash functions and a pseudo-random function to construct a private information retrieval protocol, which achieves user privacy protection, resistance to quantum attacks, and reduction of computational complexity, with the effects of post-quantum security and low computational cost.
[0045] 2. The present invention uses indistinguishable obfuscation to protect the encapsulation function, realizes the hiding of the internal data of the encapsulation function, and can prevent malicious users from attempting to understand other data, thereby improving data security; at the same time, the data service platform converts all data into hash function values, encapsulates the hash function value with the encapsulation function, and obfuscates the encapsulation function with indistinguishable obfuscation to obtain the obfuscated function and sends it to the user. Therefore, the data service platform cannot know the user's search information, thereby protecting the user's privacy and further improving data security.
[0046] In summary, the privacy information retrieval protocol of the present invention can protect user privacy under quantum attacks and reduce computational complexity, while preventing malicious users from attempting to understand other data. It has the effects of low computational cost and high data security. BRIEF DESCRIPTION OF THE DRAWINGS
[0047] Figure 1 It is a functional schematic diagram of the present invention.
[0048] Figure 2 It is an operational structure diagram of the present invention.
[0049] Figure 3 It is a simulation comparison diagram of the present invention. DETAILED DESCRIPTION
[0050] The present invention will be described in detail below with reference to the accompanying drawings.
[0051] A method for constructing a private information retrieval protocol based on a pseudo-random function includes the following steps:
[0052] Step 1: Initialize the system and set security parameters m, w, and hash functions and
[0053] Step 2: Based on the security parameters m,w, set in step 1, and hash functions and Perform random pseudo-random function encryption to obtain matrix D;
[0054] Step 3: Based on the security parameters m,w, set in step 1, Hash function and The matrix D obtained in step 2 is obliviously transferred to obtain the hash function value h;
[0055] Step 4: Data Service Platform P s Package the hash function value h obtained in step 3, construct the encapsulation function, and then use indistinguishable obfuscation to confuse the encapsulation function to obtain the obfuscated function
[0056] Step 5: Use the pseudo-random function to calculate the retrieved data and input it into the obfuscation function obtained in step 4. The retrieval is performed in the data, thereby realizing the hiding of the retrieval information.
[0057] The step 1 is specifically as follows:
[0058] Set the security parameters of the protocol Represents a set of integers and sets three hash functions and in, Represents a univariate polynomial ring
[0059] The step 2 is specifically as follows:
[0060] Data Service Platform P s Selected pseudo-random function key Send the pseudo-random function key k to user P u , data service platform P s Input private data to the pseudorandom function Calculate the pseudorandom function value v:
[0061]
[0062] Where F represents a pseudo-random function, is a function for hashing the private data x, is a pseudo-random function based on the key k, For pseudorandom function The hash function is processed twice and once by a pseudo-random function. u The obtained pseudo-random function value v is a result with privacy protection properties, which combines the privacy data with the properties of the pseudo-random function. In addition, It is a {0,1}-NTRU problem. Based on the {0,1}-NTRU problem, a post-quantum oblivious pseudo-random function is constructed. The {0,1}-NTRU problem refers to the turn up Make This is a classic lattice theory problem that has been proven to be resistant to quantum attacks. Therefore, it is not difficult to prove that the oblivious pseudo-random function constructed based on the {0,1}-NTRU problem is also resistant to quantum attacks.
[0063] Convert the pseudo-random function value v into a matrix, data service platform P s Assume the initial matrix D = 1 m×w , where D is an m×w matrix with each component equal to 1, and let D i [v[i]]=0, that is, change the v[i]th element in the i-th row to 0, thus obtaining a new matrix D∈{0,1} m×w .
[0064] The step three is specifically as follows:
[0065] Step 3.1, Data Service Platform P s Execution: Data Service Platform P s Send bits s[1],...,s[w]∈{0,1}, user P u Oblivious protocol is used to obtain the column vector {r i (0) ,r i (1)} i∈[w] , data service platform P s Oblivious protocol is used to obtain the column vector {r i} i∈[w] , where r i (0) +r i (1) =1 m ,r i =r i s[i] ∈{0,1} m ;
[0066] Step 3.2, user P u Execution: User P u Oblivious protocol is used to obtain the column vector {r i (0) ,r i (1)} i∈[w] And combined into a matrix And calculate the matrix and column vector i∈[w] and the column vector Δ i Send to P s ;
[0067] Step 3.3, Data Service Platform P s Execution: Data Service Platform P s Receive the column vector Δ sent in step 3.2 i Then calculate C, that is: when s[i]=0, C i =r i ;otherwise Output hash function value Here, s[i] represents the i-th bit of s.
[0068] The step 4 is specifically as follows:
[0069] Data Service Platform P s Pack the hash function value h and construct the encapsulation function:
[0070] ψ(h)=ψ(x)=ψ1(h)+ψ2(h),
[0071] Where, ψ1(h)=0, ψ2(h)=message, where message is the message corresponding to the pseudo-random function value h;
[0072] Then use indistinguishable obfuscation to obfuscate the encapsulated function and get the obfuscated function And the confusion function Sent to user P u .
[0073] The step five is specifically as follows:
[0074] User P u Encrypt the content y to be retrieved using a pseudo-random function to obtain a pseudo-random function value v:
[0075]
[0076] User P u Assume the initial matrix E∈1 m×w , where, m×w matrix, each component is 1, and let E i [v[i]]=0, that is, change the u[i]th element in the i-th row to 0, thus obtaining a new E∈{0,1} m×w , user P u Calculate the hash function value l associated with y, that is v1‖v2=(v1,v2);
[0077] User P u Confusion function Enter search data Corresponding hash function value When user P u Retrieval data When , the confusion function The output is empty, that is, the search fails. When user P u Retrieval data When , the confusion function The output is the hash function value The corresponding message is displayed, indicating that the retrieval is successful.
[0078] A system for constructing a private information retrieval protocol based on an oblivious pseudo-random function, comprising:
[0079] System initialization module, system initialization, setting security parameters m,w, and hash functions and Step 1 of a construction method for implementing a private information retrieval protocol based on an oblivious pseudo-random function;
[0080] Oblivious transfer preparation module, based on security parameters m,w, and hash functions and Performing oblivious pseudo-random function encryption to obtain a matrix D, which is used to implement step 2 of a method for constructing a private information retrieval protocol based on an oblivious pseudo-random function;
[0081] Oblivious pseudo-random function encryption module, based on security parameters m,w, Hash function and and matrix D are obliviously transmitted to obtain a hash function value h, which is used to implement step three of a construction method of a privacy information retrieval protocol based on an oblivious pseudo-random function;
[0082] Data packaging module, data service platform P s Pack the hash function value h into data, construct the encapsulation function, and then use indistinguishable obfuscation to confuse the encapsulation function to obtain the obfuscated function Step 4 of the construction method for implementing a private information retrieval protocol based on an oblivious pseudo-random function;
[0083] The user retrieval module uses a pseudo-random function to calculate the retrieval data and inputs it into the obfuscation function The retrieval is performed in order to hide the retrieval information, which is used to implement step five of the construction method of a privacy information retrieval protocol based on an oblivious pseudo-random function.
[0084] A device for constructing a private information retrieval protocol based on an oblivious pseudo-random function, comprising:
[0085] Memory: used for storing a computer program for implementing a construction method of a private information retrieval protocol based on an oblivious pseudo-random function;
[0086] Processor: used to implement a construction method of a privacy information retrieval protocol based on an oblivious pseudo-random function when executing the computer program.
[0087] The present invention also provides a computer-readable storage medium storing a computer program. When the computer program is executed by a processor, the computer program implements the steps of a method for constructing a privacy information retrieval protocol based on an oblivious pseudo-random function.
[0088] Simulation comparison:
[0089] Compared with the results of Chase et al. in the technical background, the simulation device is MacBook Air, Apple M1 chip, 8.00GB RAM, and the execution language is Python 3.12. The comparison results are as follows Figure 3 Comparison chart of simulations of the present invention. "Ours" represents the present invention, "CM20" represents the work of Chase et al., the horizontal axis "n" represents the number of hash function values packaged by the data service platform, and the vertical axis "CPU Time" represents the time in milliseconds.
[0090] See also Figure 3 When n<125 milliseconds, the efficiency of the present invention is not as good as the results of Chase et al.; but when n>125 milliseconds, the efficiency of the present invention is better than the results of Chase et al., and as n increases, the efficiency difference between the two becomes more obvious.
Claims
1. A method for constructing a private information retrieval protocol based on a pseudo-random function, characterized in that: The steps include: Step 1: Initialize the system and set security parameters m, w, and hash functions and Set the security parameters of the protocol Represents a set of integers and sets three hash functions and in, Represents a univariate polynomial ring Step 2: Based on the security parameters m,w, set in step 1, and hash functions and Perform random pseudo-random function encryption to obtain matrix D; Data Service Platform P s Selected pseudo-random function key Send the pseudo-random function key k to user P u , data service platform P s Input private data to the pseudorandom function Calculate the pseudorandom function value v: Where F represents a pseudo-random function, is a function for hashing the private data x, is a pseudo-random function based on the key k, For pseudorandom function The hash function is processed twice and once by a pseudo-random function. u The obtained pseudo-random function value v is a result with privacy protection characteristics. The pseudo-random function value v combines the private data with the characteristics of the pseudo-random function. Convert the pseudo-random function value v into a matrix, data service platform P s Assume the initial matrix D = 1 m×w , where D is an m×w matrix with each component equal to 1, and let D i [v[i]]=0, and we get a new matrix D∈{0,1} m×w ; Step 3: Based on the security parameters m,w, set in step 1, Hash function and The matrix D obtained in step 2 is obliviously transferred to obtain the hash function value h; Step 4: Data Service Platform P s Package the hash function value h obtained in step 3, construct the encapsulation function, and then use indistinguishable obfuscation to confuse the encapsulation function to obtain the obfuscated function Data Service Platform P s Pack the hash function value h and construct the encapsulation function: ψ(h)=ψ(x)=ψ1(h)+ψ2(h), Where, ψ1(h)=0, ψ2(h)=message, where message is the message corresponding to the pseudo-random function value h; Then use indistinguishable obfuscation to obfuscate the encapsulated function and get the obfuscated function And the confusion function Sent to user P u ; Step 5: Use the pseudo-random function to calculate the retrieved data and input it into the obfuscation function obtained in step 4. The retrieval is performed in the data, thereby realizing the hiding of the retrieval information.
2. The method for constructing a private information retrieval protocol based on a pseudo-random function according to claim 1, characterized in that: The step three is specifically as follows: Step 3.1, Data Service Platform P s Execution: Data Service Platform P s Send bits s[1],…,s[w]∈{0,1}, user P u Oblivious protocol is used to obtain the column vector {r i (0) ,r i (1) } i∈[w] , data service platform P s Oblivious protocol is used to obtain the column vector {r i } i∈[w] , where r i (0) +r i (1) =1 m ,r i =r i s[i] ∈{0,1} m , where s[i] represents the i-th bit of s; Step 3.2, user P u Execution: User P u Oblivious protocol is used to obtain the column vector {r i (0) ,r i (1) } i∈[w] And combined into a matrix And calculate the matrix and column vector And the column vector △ i Send to P s ; Step 3.3, Data Service Platform P s Execution: Data Service Platform P s Receive the column vector △ sent in step 3.2 i Then calculate C, that is: when s[i]=0, C i =r i ;otherwise Output hash function value Here, s[i] represents the i-th bit of s.
3. The method for constructing a private information retrieval protocol based on a pseudo-random function according to claim 1, characterized in that: The step five is specifically as follows: User P u Encrypt the content y to be retrieved using a pseudo-random function to obtain a pseudo-random function value v: User P u Assume the initial matrix E∈1 m×w , where, m×w matrix, each component is 1, and let E i [v[i]]=0, and we get a new E∈{0,1} m×w , user P u Calculate the hash function value l associated with y, User P u Confusion function Enter search data Corresponding hash function value When user P u Retrieval data When , the confusion function The output is empty, that is, the search fails. When user P u Retrieval data When , the confusion function The output is the hash function value The corresponding message is displayed, indicating that the retrieval is successful.
4. A system for constructing a pseudo-random function-based privacy information retrieval protocol based on the method according to any one of claims 1 to 3, characterized in that: include: System initialization module, system initialization, setting security parameters m,w, and hash functions and Oblivious transfer preparation module, based on security parameters m,w, and hash functions and Perform random pseudo-random function encryption to obtain matrix D; Oblivious pseudo-random function encryption module, based on security parameters m,w, Hash function and And matrix D is obliviously transferred to obtain the hash function value h; Data packaging module, data service platform P s Pack the hash function value h into data, construct the encapsulation function, and then use indistinguishable obfuscation to confuse the encapsulation function to obtain the obfuscated function The user retrieval module uses a pseudo-random function to calculate the retrieval data and inputs it into the obfuscation function The retrieval is performed in the data, thereby realizing the hiding of the retrieval information.
5. A device for constructing a privacy information retrieval protocol based on a pseudo-random function, characterized in that: include: Memory: used for storing a computer program for implementing the method for constructing a privacy information retrieval protocol based on a pseudorandom function as claimed in any one of claims 1 to 3; Processor: used to implement the construction method of a pseudo-random function-based privacy information retrieval protocol as described in any one of claims 1 to 3 when executing the computer program.
6. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the method for constructing a private information retrieval protocol based on a pseudo-random function are implemented as described in any one of claims 1 to 3.
Citation Information
Patent Citations
Batch privacy information acquisition method based on oblivious pseudo-random function and hash function
CN116541868A
Multi-party privacy computation method and apparatus based on semi-trusted hardware
WO2023115603A1