Set security intersection method and apparatus, and storage medium
Patent Information
- Application Number
- CN202211163816.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-09-23
- Publication Date
- 2026-10-13
- Estimated Expiration
- 2042-09-23
AI Technical Summary
现有的集合安全求交集通常使用基于Diffie-Hellman密钥协商协议的集合安全求交集方法,但是,使用基于Diffie-Hellman密钥协商协议的集合安全求交集方法计算的求交结果有假阳性存在,并且整体计算量偏高、性能较差
[0017]本公开的集合安全求交集方法、装置以及存储介质,能够减少集合安全求交集的假阳性的出现概率;通过设置最小生成元,可以降低运算开销、提升运算的性能,提高了用户的使用感受度。
Smart Images

Figure CN115549912B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of data security technology, and in particular to a set security intersection method, apparatus, and storage medium. Background Technology
[0002] Private Set Intersection (PSI), also known as privacy set intersection, solves the problem of secure computation of intersection between two or more parties. Each participating party holds its own dataset, and by running a private set intersection protocol, one or all parties can obtain the intersection of all sets, while elements of each party's dataset other than the intersection cannot be known to the other party. Existing private set intersection methods typically use methods based on the Diffie-Hellman key agreement protocol. However, these methods suffer from false positives, high computational cost, and poor performance. Summary of the Invention
[0003] In view of this, one technical problem to be solved by the present invention is to provide a method, apparatus and storage medium for secure intersection of sets.
[0004] According to a first aspect of this disclosure, a set-secure intersection method is provided, comprising: setting shared public parameters; wherein the shared public parameters include a first prime number, a second prime number, a minimum generator, and a hash function; generating a first random key and a multiplicative inverse of the first random key for an initiator, and generating a second random key and a third random key for a participant; the initiator generating a first data set based on the first source data set of the initiator, the hash function, the minimum generator, the first random key, and the first prime number, generating operation parameters based on the minimum generator, the multiplicative inverse, and the first prime number, and sending the first data set and the operation parameters to the participant; the participant generating a second data set based on the first data set, the second random key, the minimum generator, the third random key, and the first prime number, generating a third data set based on the minimum generator, the hash function, the participant's second source data set, the second random key, the operation parameters, the third random key, and the first prime number, and sending the second data set and the third data set to the initiator; and the initiator determining the intersection result of the first source data set and the second source data set based on the second data set and the third data set.
[0005] Optionally, the first prime number p and the second prime number q satisfy q divisibility. in, Let g be the Euler's totient function with respect to p; the minimum generator g is a cyclic group of order q. The smallest generator.
[0006] Optionally, the first data set is generated. Where A is the first source data set, ai is the i-th element in the first source data set; H(·) is the hash function; i is a natural number; and the operation parameters are generated. Where, x -1 Let x be the multiplicative inverse and x be the first random key.
[0007] Optionally, the second data set U′={(u i ) y ·g z mod p|u i ∈U}; where u i Let be the i-th element in the first data set; y be the second random key; z be the third random key; generate the third data set. Where B is the second source data set of the participating party, b j Let j be the j-th element in the second source data set, where j is a natural number.
[0008] Optionally, determining the intersection result of the first source data set and the second source data set based on the second data set and the third data set includes: generating a fourth data set V′={(v j ) x mod p| v j ∈V}; where, v j Let j be the j-th element in the third data set; calculate the intersection of the second data set U′ and the fourth data set V′, and obtain the corresponding data set in the first source data set based on the intersection, as the intersection result.
[0009] Optionally, the intersection result is sent to the participating party.
[0010] According to a second aspect of this disclosure, a set-secure intersection finding device is provided, comprising: a shared parameter setting module for setting shared common parameters; wherein the shared common parameters include a first prime number, a second prime number, a minimum generator, and a hash function; a random key generation module for generating a first random key for an initiator and a multiplicative inverse of the first random key, and generating a second random key and a third random key for participants; and a first data set processing module for generating a first data set based on the initiator's first source data set, the hash function, the minimum generator, the first random key, and the first prime number, generating operational parameters based on the minimum generator, the multiplicative inverse, and the first prime number, and processing the first data set... The first data set and the operation parameters are sent to the participant; the second data set processing module is used to generate a second data set based on the first data set, the second random key, the minimum generator, the third random key and the first prime number, and generate a third data set based on the minimum generator, the hash function, the participant's second source data set, the second random key, the operation parameters, the third random key and the first prime number, and send the second data set and the third data set to the initiator; the intersection result determination module is used to determine the intersection result of the first source data set and the second source data set based on the second data set and the third data set by the initiator.
[0011] Optionally, the first prime number p and the second prime number q satisfy q divisibility. in, Let g be the Euler's totient function with respect to p; the minimum generator g is a cyclic group of order q. The smallest generator.
[0012] Optionally, the first data set processing module is used to generate the first data set. Where A is the first source data set, a i Let be the i-th element in the first source data set; H(·) be the hash function; i be a natural number; the first data set processing module is further configured to generate the operation parameters. Where, x -1 Let x be the multiplicative inverse and x be the first random key.
[0013] Optionally, the second data set processing module is used to generate the second data set U′={(u i ) y ·g z mod p|u i ∈U}; where u iLet be the i-th element in the first data set; y be the second random key; z be the third random key; and the second data set processing module be used to generate the third data set. Wherein, B is the second source data set of the participating party, bj is the j-th element in the second source data set, and j is a natural number.
[0014] Optionally, the intersection result determination module is used to generate a fourth data set V′= {(v j ) x mod p|v j ∈V}; where, v j Let j be the j-th element in the third data set; calculate the intersection of the second data set U′ and the fourth data set V′, and obtain the corresponding data set in the first source data set based on the intersection, as the intersection result.
[0015] Optionally, the intersection result sending module is used to send the intersection result to the participating party.
[0016] According to a third aspect of this disclosure, a set-safe intersection finding apparatus is provided, comprising: a memory; and a processor coupled to the memory, the processor being configured to perform the method described above based on instructions stored in the memory.
[0017] The set-safe intersection method, apparatus, and storage medium disclosed herein can reduce the probability of false positives in set-safe intersection; by setting a minimum generator, computational overhead can be reduced, computational performance can be improved, and user experience can be enhanced. Attached Figure Description
[0018] To more clearly illustrate the technical solutions in the embodiments of this disclosure or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this disclosure. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0019] Figure 1 A flowchart illustrating the set-secure intersection method based on the Diffie-Hellman key negotiation protocol in the prior art;
[0020] Figure 2 A flowchart illustrating one embodiment of the set-safe intersection method according to this disclosure;
[0021] Figure 3 This is a schematic diagram of data interaction according to another embodiment of the set-safe intersection method of this disclosure;
[0022] Figure 4 A schematic diagram of a module of an embodiment of the set-safe intersection finding apparatus according to this disclosure;
[0023] Figure 5 This is a schematic diagram of a module for another embodiment of the set-safe intersection device according to the present disclosure. Detailed Implementation
[0024] The present disclosure will now be described more fully with reference to the accompanying drawings, which illustrate exemplary embodiments of the present disclosure. The technical solutions of the embodiments of the present disclosure will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present disclosure, and not all embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of the present disclosure without creative effort are within the scope of protection of the present disclosure.
[0025] Among the related technologies known to the inventors, set-secure intersection techniques can be used independently for applications such as secure verification of advertising effectiveness, secure matching of social contacts, and secure comparison of blacklists. They can also be combined with federated learning to achieve virtual fusion of multi-party data. Both parties, A and B, use the same hash function H(·) and a large prime number p. The initiator (Party A is the initiator, and Party B is the participant) needs to calculate the intersection of set A and set B. Existing set-secure intersection methods based on the Diffie-Hellman key exchange protocol include... Figure 1 As shown:
[0026] Step 101, the initiator owns a set A = {a1, a2, ..., a...} n Generate a random key.
[0027] Step 102, the participants possess a set B = {b1, b2, ..., b}. m Generate a random key.
[0028] Steps 103 and 104, the initiator calculates the set U = {H(a i ) x mod p|a i ∈A}, and send it to the participating parties.
[0029] In steps 105 and 106, the participating parties receive the set U sent by the initiator and simultaneously calculate U′= {(u i ) y mod p|u i ∈U}, the participant computation set V={H(b j ) ymod p|b j ∈B}, and send U′ and V to the initiator.
[0030] Step 107: After receiving the message, the initiator calculates V′={(v j ) x mod p|v j ∈V}.
[0031] Step 108: The initiator calculates the intersection of U′ and V′.
[0032] Step 109: The initiator calculates the intersection result, i.e., A∩B, based on the element association relationship.
[0033] Step 110: The initiator sends the intersection result to the participants.
[0034] Existing set-secure intersection methods based on the Diffie-Hellman key exchange protocol have the following two problems:
[0035] 1. The hash value H(a) of a set element i ) or H(b j It is not necessarily a finite cyclic multiplication group. The generators can cause false positives in the intersection results.
[0036] In existing DH key negotiation, in addition to sharing a large prime number p, the communicating parties also need to share a finite cyclic multiplication group. The generator g is used, and subsequent calculations are all modular exponentiation operations with g as the base and p as the modulus. (Group) yes The subgroup of order . Where q|p-1.
[0037] When the base is the generator g, and the exponents x = 0, ..., q-1, then the modular exponentiation result g x mod p are both finite cyclic multiplication groups. The elements, and exactly iterate through the group. All elements. Therefore, given a given generator g, choosing different... When running the DH key negotiation protocol, the shared secret gxy mod p obtained by the two communicating parties will be different.
[0038] However, in the set-secure intersection method based on the Diffie-Hellman key exchange protocol described above, the hash value of the set element is used as the base. But general cryptographic hash functions cannot guarantee that their output hash value is a group. The elements (i.e., generators) can easily lead to false positives in set intersection. That is, a∈A, b∈B, a≠b, but H(a) xymod p = H(b) xy If mod p holds true, then H(a) ≠ H(b).
[0039] For example, taking prime numbers q = 41 and p = 83 (satisfying the safe prime number requirement of p = 2q + 1) as an example, and without loss of generality, we set the output value of the hash function. When a∈A, b∈B, a≠b, and assuming H(a)=5, H(b)=78; choose x=7, y=8, and calculate respectively:
[0040] H(a) xy mod p = 5 56 mod 83 = 70 mod 83;
[0041] H(b) xy mod p = 78 56 mod 83 = 70 mod 83;
[0042] From the above, we can see that H(a) xy mod p = H(b) xy mod p, resulting in PSI false positives.
[0043] 2. The hash value H(a) of the set elements i ) or H(b j Generally, the base is a large integer. When performing modular exponentiation with this base, the overall computational load is high, resulting in poor performance.
[0044] Assuming the elements of the set are uniformly distributed, taking SM3 or SHA-256 as examples, the hash algorithm output length is 256 bits, and the probability of a hash value having i consecutive leading zeros is...
[0045] As shown above, the hash value of the set elements is likely a large integer of 256 bits or close to 256 bits. Since large integer operations are more expensive than small integer operations, existing set-secure intersection methods based on the Diffie-Hellman key agreement protocol cannot improve overall performance by using Diffie-Hellman key agreement protocol optimization methods with smaller bases.
[0046] Figure 1 This is a flowchart illustrating one embodiment of the set-safe intersection method according to the present disclosure, as follows: Figure 1 As shown:
[0047] Step 101: Set shared public parameters; these parameters include the first prime number, the second prime number, the smallest generator, and the hash function. Both the first and second prime numbers can be large prime numbers.
[0048] Step 102: Generate the initiator's first random key and its multiplicative inverse, and generate the participants' second and third random keys.
[0049] Step 103: The initiator generates a first data set based on the initiator's first source data set, hash function, minimum generator, first random key and first prime number, generates operation parameters based on the minimum generator, multiplicative inverse and first prime number, and sends the first data set and operation parameters to the participants.
[0050] Step 104: The participants generate a second data set based on the first data set, the second random key, the minimum generator, the third random key, and the first prime number; and generate a third data set based on the minimum generator, the hash function, the participants' second source data set, the second random key, the operation parameters, the third random key, and the first prime number. The participants then send the second and third data sets to the initiator.
[0051] Step 105: The initiator determines the intersection of the first and second source data sets based on the second and third data sets. The intersection result can be sent to the participating parties according to business needs.
[0052] In one embodiment, the first prime number p and the second prime number q are divisible by q. in, Euler with respect to p Function; minimum generator g is a cyclic group of order q. The smallest generator.
[0053] Generate the first data set Where A is the first source data set, a i Let be the i-th element in the first source data set; H(·) be the hash function; and i be a natural number. Generate operation parameters. Where, x -1 Let x be the multiplicative inverse, and let x be the first random key. x·x - 1 mod q = 1.
[0054] Generate the second data set U′={(u i ) y ·g z mod p|u i ∈U}; where, u i Let be the i-th element in the first data set; y is the second random key, and z is the third random key. Generate the third data set. Where B is the second source data set of the participating parties, b jLet j be the j-th element in the second source data set, where j is a natural number. Calculate the intersection of the second and third data sets. Based on the relationship between this intersection and the data in the first source data set, determine the intersection result of the first and second source data sets.
[0055] There are several methods to determine the intersection of the first and second source data sets based on the second and third data sets. For example, generating the fourth data set V′= {(v j ) x mod p|v j ∈V}; where, v j Let j be the j-th element in the third data set; calculate the intersection of the second data set U′ and the fourth data set V′, and obtain the corresponding data set in the first source data set based on the intersection, as the intersection result.
[0056] Let u′ i ∈U′,v′ j If ∈V′, then:
[0057]
[0058]
[0059] From equations (1-1) and (1-2) above, we can deduce that when a i =b j At that time, u′ i =v′ j Due to the base number It is possible to derive the element u′ from U′. i V′ element v′ j They are all groups Member, and can be represented as g t The form is as follows. Modular exponentiation results are equal only when the exponents are congruent, ensuring that false positives are avoided due to modular exponentiation.
[0060] Once large prime numbers p and q are selected, group calculations can be performed offline. The smaller generator g reduces the overhead of modular exponentiation operations in the online phase. Furthermore, compared to the existing set-secure intersection method based on the Diffie-Hellman key negotiation protocol, the set-secure intersection method of this disclosure only adds two additional modular exponentiation operations. When both sets are large, the reduction in modular exponentiation operation overhead of the set-secure intersection method of this disclosure will be more significant, thereby improving the operating efficiency of the PSI protocol.
[0061] The set-secure intersection method disclosed herein reduces false positives in set-secure intersection protocols by placing the hash values of elements from both sets in the exponent. The probability of a false positive in secure intersection is the same as the probability of a collision in the cryptographic hash function used, which can be essentially ignored, thus reducing the probability of false positives. A small generator can be selected using the traditional DH optimization method, and pre-computation and the use of cyclic groups are employed. Finding the minimum generator reduces the overhead of subsequent single modular exponentiation operations, thereby improving modular exponentiation performance and thus the overall protocol performance.
[0062] In one embodiment, the length of the large prime number is set to L bits, and the commercial cryptographic hash algorithm SM3 is selected as the hash function H(·). Considering that the output hash value length of SM3 is 256 bits, L ≥ 512 is set. A secure prime number p (the first prime number) is used, satisfying p = 2q + 1, where q (the second prime number) is also a large prime number. Common parameters between the two parties in the offline phase are pre-calculated:
[0063] The first step is to select a random number q of length L-1 bits and calculate p = 2q + 1.
[0064] The second step is to run a primality test algorithm (e.g., the Miller-Rabin algorithm) to check whether p and q are both prime numbers; if not, return to the first step.
[0065] The third step is to start from small and gradually increase. Select elements sequentially as g, and check the congruence g. q Check if step 3 (mod p) is true; if not, repeat step 3.
[0066] The fourth step is to find a cyclic group of order q. Find the smallest generator g and complete the calculation of common parameters.
[0067] Figure 3 This is a data interaction diagram illustrating another embodiment of the set-safe intersection method according to this disclosure. Information calculation and interaction between the two parties are completed online to ultimately determine the intersection, as shown below. Figure 3 As shown:
[0068] Step 301, Data party A (initiator) owns a set A = {a1, a2, ..., a...} n Generate a random key. The initiator needs to calculate the intersection of set A and set B. The initiator's method for calculating the multiplicative inverse of x is as follows: Satisfying the congruence x·x -1 Three 1 (mod q).
[0069] Step 302, Data Provider B (Party Participant) owns a set B = {b1, b2, ..., b...}m Generate a random key.
[0070] Step 303: The initiator sends a set to the participants. And (operational parameters)
[0071] Step 304: The participating party receives the sets U and I sent by the initiator, and simultaneously calculates U′= {(u i ) y ·g z mod p|u i ∈u}, and compute the set
[0072] Step 305: The participants send U′ and V to the initiator.
[0073] Step 306: After receiving the message, the initiator calculates V′={(v j ) x mod p|v j ∈V}.
[0074] Step 307: Calculate the intersection of U′ and V′.
[0075] Step 308: The initiator calculates the intersection of U′ and V′, i.e., A∩B, based on the element association relationship.
[0076] Step 309: The initiator sends the intersection result to the participants. Whether the initiator needs to send the intersection result to the participants depends on business requirements.
[0077] In one embodiment, such as Figure 4 As shown, this disclosure provides a set security intersection device 40, including: a shared parameter setting module 41, a random key generation module 42, a first data set processing module 43, a second data set processing module 44, an intersection result determination module 45, and an intersection result sending module 46.
[0078] The shared parameter setting module 41 sets shared public parameters, including the first prime number, the second prime number, the minimum generator, and the hash function. The random key generation module 42 generates the initiator's first random key and its multiplicative inverse, and generates the participants' second and third random keys.
[0079] The first data set processing module 43 generates a first data set based on the initiator's first source data set, hash function, minimum generator, first random key and first prime number, generates operation parameters based on the minimum generator, multiplicative inverse and first prime number, and sends the first data set and operation parameters to the participants.
[0080] The second data set processing module 44 generates a second data set based on the first data set, the second random key, the minimum generator, the third random key, and the first prime number. It then generates a third data set based on the minimum generator, the hash function, the participant's second source data set, the second random key, the operation parameters, the third random key, and the first prime number. Finally, it sends the second and third data sets to the initiator.
[0081] The intersection result determination module 45 determines the intersection result of the first source data set and the second source data set based on the second data set and the third data set at the initiator's location. The intersection result sending module 46 sends the intersection result to the participating parties.
[0082] In one embodiment, the first data set processing module 43 generates the first data set. A is the first source data set, a i Let be the i-th element in the first source data set; H(·) be the hash function; and i be a natural number. The first data set processing module 43 generates the operation parameters. x -1 is the multiplicative inverse, and x is the first random key.
[0083] The second data set processing module 44 generates the second data set U′={(u i ) y · g z mod p|u i ∈U};u i Let be the i-th element in the first data set; y is the second random key, and z is the third random key. The second data set processing module 44 generates the third data set. B is the second source data set of the participating parties, b j Let j be the j-th element in the second source data set, where j is a natural number.
[0084] Intersection result determination module 45 generates the fourth data set V′={(v j ) x mod p|v j ∈V}; v j Let j be the j-th element in the third data set. The intersection result determination module 45 calculates the intersection of the second data set U′ and the fourth data set V′, and obtains the corresponding data set in the first source data set based on the intersection, as the intersection result.
[0085] Figure 5 This is a schematic diagram of a module for another embodiment of the set-safe intersection finding apparatus according to this disclosure. Figure 5As shown, the set-safe intersection apparatus may include a memory 51, a processor 52, a communication interface 53, and a bus 54. The memory 51 is used to store instructions, and the processor 52 is coupled to the memory 51. The processor 52 is configured to execute the set-safe intersection method in any of the above embodiments based on the instructions stored in the memory 51.
[0086] The memory 51 can be a high-speed RAM, non-volatile memory, or a memory array. The memory 51 may also be divided into blocks, and these blocks can be combined into virtual volumes according to certain rules. The processor 52 can be a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the set security intersection method of this disclosure.
[0087] The set-safe intersection method, apparatus, and storage medium in the above embodiments can reduce the probability of false positives in set-safe intersection; by setting a minimum generator, computational overhead can be reduced, computational performance can be improved, and user experience can be enhanced.
[0088] The methods and systems of this disclosure may be implemented in many ways. For example, they may be implemented by software, hardware, firmware, or any combination of software, hardware, and firmware. The above-described order of steps for the methods is for illustrative purposes only, and the steps of the methods of this disclosure are not limited to the order specifically described above unless otherwise specifically stated. Furthermore, in some embodiments, this disclosure may also be implemented as a program recorded on a recording medium, the program including machine-readable instructions for implementing the methods according to this disclosure. Thus, this disclosure also covers recording media storing programs for performing the methods according to this disclosure.
[0089] The description in this disclosure is provided for illustrative and descriptive purposes only and is not intended to be exhaustive or to limit the disclosure to its forms. Many modifications and variations will be apparent to those skilled in the art. The embodiments were chosen and described in order to better illustrate the principles and practical application of this disclosure and to enable those skilled in the art to understand this disclosure and to design various embodiments with various modifications suitable for a particular purpose.
Claims
1. A set-safe intersection method, comprising: Set shared public parameters; wherein, the shared public parameters include a first prime number, a second prime number, a minimum generator, and a hash function; the first prime number p and the second prime number q satisfy... Divisible ; For about Euler's totient function; the minimum generator For the order of Cyclic group The smallest generator; Generate the initiator's first random key and the multiplicative inverse of the first random key, and generate the participants' second and third random keys; The initiator generates a first data set based on the initiator's first source data set, the hash function, the minimum generator, the first random key, and the first prime number; generates operation parameters based on the minimum generator, the multiplicative inverse, and the first prime number; and sends the first data set and the operation parameters to the participating party. Among them, the first data set is generated. ;in, For the first source data set, This is the i-th element in the first source data set; The hash function is defined as follows: i is a natural number; the operation parameters are generated. ;in, Let x be the multiplicative inverse, and let x be the first random key; The participating party generates a second data set based on the first data set, the second random key, the minimum generator, the third random key, and the first prime number; generates a third data set based on the minimum generator, the hash function, the participating party's second source data set, the second random key, the operation parameters, the third random key, and the first prime number; and sends the second data set and the third data set to the initiator. Among them, the second data set is generated. ; wherein, the Let y be the i-th element in the first data set; y be the second random key; z be the third random key; generate the third data set. ;in, The second source data set of the participating parties, Let j be the j-th element in the second source data set, where j is a natural number; The initiator determines the intersection of the first source data set and the second source data set based on the second data set and the third data set.
2. The method as described in claim 1, wherein determining the intersection result of the first source data set and the second source data set based on the second data set and the third data set includes: Generate the fourth dataset ;in, It is the j-th element in the third data set; Calculate the second data set and the fourth data set The intersection of the first source data set is used as the intersection result to obtain the corresponding data set in the first source data set.
3. The method of claim 1, comprising: The intersection result is sent to the participating party.
4. A set-safe intersection finding device, comprising: A shared parameter setting module is used to set shared public parameters; wherein, the shared public parameters include a first prime number, a second prime number, a minimum generator, and a hash function; the first prime number p and the second prime number q satisfy... Divisible ; For about Euler's totient function; the minimum generator For the order of Cyclic group The smallest generator; The random key generation module is used to generate the first random key of the initiator and the multiplicative inverse of the first random key, and to generate the second random key and the third random key of the participants. The first data set processing module is used to generate a first data set based on the first source data set of the initiator, the hash function, the minimum generator, the first random key and the first prime number, generate operation parameters based on the minimum generator, the multiplicative inverse and the first prime number, and send the first data set and the operation parameters to the participating party. The first data set processing module is used to generate the first data set. ; For the first source data set, This is the i-th element in the first source data set; The hash function is defined as follows: i is a natural number; the operation parameters are generated. ; Let x be the multiplicative inverse, and let x be the first random key; The second data set processing module is used to generate a second data set based on the first data set, the second random key, the minimum generator, the third random key, and the first prime number by the participating party; generate a third data set based on the minimum generator, the hash function, the second source data set of the participating party, the second random key, the operation parameters, the third random key, and the first prime number; and send the second data set and the third data set to the initiator. The second data set processing module is used to generate the second data set. The Let y be the i-th element in the first data set; y be the second random key; z be the third random key; generate the third data set. ;in, The second source data set of the participating parties, Let j be the j-th element in the second source data set, where j is a natural number; The intersection result determination module is used to determine the intersection result of the first source data set and the second source data set based on the second data set and the third data set by the initiator.
5. The apparatus of claim 4, wherein, The intersection result determination module is used to generate the fourth data set. ;in, For the j-th element in the third data set; calculate the second data set. and the fourth data set The intersection of the first source data set is used as the intersection result to obtain the corresponding data set in the first source data set.
6. The apparatus of claim 4, comprising: The intersection result sending module is used to send the intersection result to the participating parties.
7. A set-safe intersection finding device, comprising: Memory; And a processor coupled to the memory, the processor being configured to perform the method as described in any one of claims 1 to 3 based on instructions stored in the memory.
8. A computer-readable storage medium storing computer instructions that are executed by a processor according to any one of claims 1 to 3.
Citation Information
Patent Citations
Set intersection method for realizing multi-party privacy
CN113518092A
Efficient three-party privacy set intersection method and system based on key negotiation
CN115051791A