A method and system for finding intersection potential and sum of privacy sets supporting updates

By using DDH-based fully homomorphic encryption and polynomial representation technology in the PSI-card-sum solution, the problem of excessive calculation and communication overhead during periodic update of both data sets is solved, and efficient calculation and communication is achieved linearly related to the amount of data updated each time.

CN115987484BActive Publication Date: 2025-04-29SHANDONG UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211647548.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-12-21
Publication Date
2025-04-29
Estimated Expiration
2042-12-21

AI Technical Summary

Technical Problem

When the existing PSI-card-sum scheme is periodically updated with both data sets, it causes excessive computational overhead and communication overhead, and is linearly related to the amount of data updated each time, rather than the entire data set.

Method used

Using the PSI-card-sum scheme based on DDH, combined with all homomorphic encryption and polynomial representation technology, the PSI-card-sum scheme in the periodic update scenario of participants' data sets is proposed. Through the intersection calculation and polynomial density calculation between the client and the server, the calculation overhead and communication overhead are linearly correlated with the amount of data updated each time.

Benefits of technology

In the case where participants’ data updates are frequent or the existing data sets are updated very little, the calculation overhead and communication overhead are achieved linearly correlated with the amount of data updated each time, rather than the entire data set, significantly reducing the calculation and communication overhead.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115987484B_ABST
    Figure CN115987484B_ABST
Patent Text Reader

Abstract

The present invention proposes a method and system for calculating the intersection potential and sum of privacy sets that support updates, which relates to the field of privacy computing. The client determines the first intersection of an original data set of the client and an incremental data set of the server, and calculates the blinded potential and sum values ​​of the first intersection; the client determines the second intersection of the incremental data set of the client and a complete data set of the server, and calculates the blinded potential and sum values ​​of the second intersection; the client sends the blinded potential and sum values ​​of the first intersection and the blinded potential and sum values ​​of the second intersection to the server, and the server unblinds to obtain the final complete potential and sum; the present invention starts from a PSI‑card‑sum scheme based on DDH, combines fully homomorphic encryption and polynomial representation technology, and proposes a PSI‑card‑sum scheme in a scenario where the data set of the participant is periodically updated. When the data of the participant is updated frequently or the update to the existing data set is very small, the computational overhead and communication overhead are linearly related to the amount of data updated each time rather than the entire data set.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the field of privacy computing, and in particular relates to a method and system for finding intersection potential and sum of updated privacy sets. Background Art

[0002] The statements in this section merely provide background information related to the present invention and do not necessarily constitute prior art.

[0003] Privacy set computing is a key technology in the field of secure multi-party computation (MPC). It can protect the privacy of the input sets of all parties, complete set computing operations, and provide a secure circulation mode of "data available but invisible". It is a powerful cryptographic tool to solve the current "data island" problem.

[0004] Private set intersection sum with cardinality (PSI-card-sum) is a special private set operation protocol. Each participant has a set of private set data and jointly calculates the number of intersection elements and the sum of the labels of the intersection elements without leaking any other information. This problem has important application scenarios in real life, such as calculating the actual effect of advertising: two participants each hold a data set containing user identifiers, and one of them also has a data set of label values ​​related to each user identifier. Both parties hope to know the number of identifiers they share and the sum of the label values ​​related to these users without revealing any other private inputs about them, so as to evaluate the effectiveness of the advertisement.

[0005] According to the inventors' understanding, the current PSI-card-sum implementation methods mainly include: (1) a PSI-card-sum implementation method based on deterministic Diffie-Hellman (DDH); (2) a PSI-card-sum implementation method based on oblivious transmission; (3) a PSI-card-sum implementation method based on encrypted Bloom filters; (4) a PSI-card-sum implementation method based on garbled circuits.

[0006] However, the above four types of PSI-card-sum schemes have the defect of not considering the scenario where both parties update their datasets. That is, when both parties update their datasets (add or delete elements), a new privacy set calculation needs to be performed on the updated datasets each time; this will cause huge computational and communication overheads when both parties update their data frequently or when the updates to the existing datasets are small.

[0007] Therefore, how to design a safe and efficient PSI-card-sum scheme in the scenario where both parties' data sets are periodically updated, so that both the computational overhead and the communication overhead are linearly related to the amount of data updated each time, is an urgent problem to be solved in this field. Summary of the invention

[0008] In order to overcome the shortcomings of the above-mentioned prior art and solve the problem that each time both parties update their data sets, they need to perform new privacy set calculations on the updated sets, resulting in large computing overhead and communication overhead, the present invention provides a method and system for calculating the intersection potential and sum of updated privacy sets. Starting from the PSI-card-sum scheme based on DDH, combined with fully homomorphic encryption and polynomial representation technology, a PSI-card-sum scheme is proposed in the scenario of periodic update of the data sets of the participants. When the data of the participants is updated frequently or the update to the existing data set is very small, the computing overhead and communication overhead are linearly related to the amount of data updated each time rather than the entire data set.

[0009] To achieve the above objectives, one or more embodiments of the present invention provide the following technical solutions:

[0010] The first aspect of the present invention provides a method for finding intersection potential and sum of privacy sets supporting updates;

[0011] A method for finding intersection potential and sum of private sets supporting updates, comprising:

[0012] Step S1: The client determines the first intersection of the original data set of the client and the incremental data set of the server, and calculates the potential and blinding value of the first intersection;

[0013] Step S2: The client determines a second intersection of the incremental data set of the client and the complete data set of the server, and calculates the potential and blinded value of the second intersection;

[0014] Step S3: The client sends the blinded value of the potential and sum of the first intersection and the blinded value of the potential and sum of the second intersection to the server, and the server unblinds to obtain the final complete potential and sum.

[0015] Furthermore, the method further includes step S0: before starting to calculate the potential and the sum, initializing the system parameters, specifically:

[0016] Set up keyspace and cryptographic hash functions;

[0017] The client and the server randomly select the first key and the second key in the key space respectively;

[0018] The client obtains a key pair through a fully homomorphic encryption key generation algorithm.

[0019] Furthermore, the step S1 is specifically:

[0020] The server encrypts the incremental data set on the server by using the second secret key to obtain a first set, and sends the first set to the client;

[0021] The client encrypts the received first set using the first secret key to obtain a second set;

[0022] The server performs a permutation operation on the original data set of the client to obtain a third set, and sends it to the client;

[0023] The client compares the second set with the permuted original data set to obtain the vector of the first intersection;

[0024] The server and the client both call the oblivious transfer protocol, the server randomly selects a first modulus and inputs a message, the client inputs bits selected from the vector of the first intersection, and the client obtains the potential and blinded value of the first intersection.

[0025] Furthermore, the step S2 is specifically:

[0026] The server side performs interpolation polynomial calculation on the original data set and the incremental data set on the server side to obtain a first polynomial and a second polynomial;

[0027] The client calculates the ciphertext of the client's incremental data set and sends it to the server;

[0028] The server calculates the ciphertext of the received incremental data set by using the first polynomial and the second polynomial to obtain the first secret state set and the second secret state set, and sends the first secret state set and the second secret state set to the client after replacing them;

[0029] The client decrypts the second secret state set to obtain a vector of the second intersection;

[0030] The server and the client both call the oblivious transfer protocol, the server randomly selects the second modulus and inputs the message, the client inputs bits selected from the vector of the second intersection, and the client obtains the potential and blinded value of the second intersection.

[0031] Furthermore, in step S3, the server unblinds the blinded value of the potential and sum of the first intersection and the blinded value of the potential and sum of the second intersection sent by the client according to the selected first modulus and second modulus to obtain the final complete potential and sum.

[0032] Furthermore, the method further includes step S4: after obtaining the complete potential and sum, updating the final original data set, specifically:

[0033] The client encrypts the incremental data set of the client by using the selected first secret key and sends it to the server;

[0034] The server encrypts the received incremental data set ciphertext by using the selected second secret key, performs a replacement operation on the encrypted data set, and sends it to the client after the replacement is completed;

[0035] The client merges the replaced incremental data set with the original data set to obtain the final original data set.

[0036] Furthermore, in step S2, the first secret state set and the second secret state set can be shared between two parties without replacement, so that the two parties can obtain the ciphertext ct 1,i Whether the shared value and ct is 0 after decryption 2,i After decryption, the two parties determine whether the shared value is the label value. Finally, the two parties call the general MPC protocol to calculate the potential and label sum of the intersection of the two parties.

[0037] A second aspect of the present invention provides a system that supports finding the intersection potential and sum of updated privacy sets.

[0038] A system supporting intersection potential and sum of updated privacy sets includes a first computing unit, a second computing unit and a data unblinding unit:

[0039] The first calculation unit is configured to: determine, at the client, a first intersection of an original data set of the client and an incremental data set of the server, and calculate a potential and a blinded value of the first intersection;

[0040] The second calculation unit is configured to: determine, at the client, a second intersection of the incremental data set of the client and the complete data set of the server, and calculate the potential and the blinded value of the second intersection;

[0041] The data unblinding unit is configured as follows: the client sends the blinded value of the potential and sum of the first intersection and the blinded value of the potential and sum of the second intersection to the server, and the server unblinds to obtain the final complete potential and sum.

[0042] The third aspect of the present invention provides a computer-readable storage medium having a program stored thereon, which, when executed by a processor, implements the steps in a method for finding intersection potential and sum of privacy sets supporting updates as described in the first aspect of the present invention.

[0043] The fourth aspect of the present invention provides an electronic device, comprising a memory, a processor, and a program stored in the memory and executable on the processor. When the processor executes the program, the steps in a method for finding the intersection potential and sum of a privacy set supporting updates as described in the first aspect of the present invention are implemented.

[0044] One or more of the above technical solutions have the following beneficial effects:

[0045] The innovative advantage of the present invention is that it considers for the first time the PSI-card-sum scheme in the scenario where the data sets of two participants are periodically updated; in order to solve the problem of large computational overhead and communication overhead caused by the need to perform new privacy set calculations on the updated sets each time after both parties update their respective data sets, the present invention provides a method and system for calculating the intersection potential and sum of updated privacy sets. Starting from the DDH-based PSI-card-sum scheme, combined with fully homomorphic encryption and polynomial representation technology, a PSI-card-sum scheme in the scenario where the data sets of the participants are periodically updated is proposed. When the data of the participants are updated frequently or the updates to the existing data set are very small, the computational overhead and communication overhead are linearly related to the amount of data updated each time rather than the entire data set.

[0046] Advantages of additional aspects of the present invention will be given in part in the following description, and in part will become obvious from the following description, or will be learned through practice of the present invention. BRIEF DESCRIPTION OF THE DRAWINGS

[0047] The accompanying drawings in the specification, which constitute a part of the present invention, are used to provide a further understanding of the present invention. The exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute improper limitations on the present invention.

[0048] Figure 1 It is the intersection graph of the updated identifier sets of both parties on the dth day in the first embodiment.

[0049] Figure 2 This is a diagram of the construction method of the first embodiment.

[0050] Figure 3 It is a system structure diagram of the second embodiment. DETAILED DESCRIPTION

[0051] The present invention will be further described below in conjunction with the accompanying drawings and embodiments.

[0052] Starting from the PSI-card-sum scheme based on DDH, the present invention combines fully homomorphic encryption with polynomial representation technology, proposes a PSI-card-sum method that supports updates, and gives a specific instantiation scheme. Currently, the present invention only considers the scenario in which two participants each add elements.

[0053] Embodiment 1

[0054] Let client P1 be on day d-1 (d≥1 and )The input identifier set (i.e. the original data set) is The updated set on day d (i.e., incremental data set) is Xd ={x d,i} i∈[σ] ; Let the identifier set (i.e. original data set) input by server P2 on day d-1 be And the corresponding label value set is The updated sets on day d (i.e., incremental data sets) are Y d ={y d,i} i∈[σ] and V d = {v d,i} i∈[σ] ,After executing the PSI-card-sum protocol, P1 obtains the number of the ,intersection elements of the two parties, and P2 obtains the number of the intersection ,elements and the sum of the intersection element labels.

[0055] Based on the datasets owned by both parties on day d-1, after both parties incrementally update their datasets on day d, the possible intersections of the identifier sets are as follows: Figure 1 shown.

[0056] based on Figure 1 In the case of intersection shown in FIG. 1 , this embodiment discloses a method for obtaining the intersection potential and sum of the privacy sets supporting update, including:

[0057] The client determines the first intersection of the client's original data set and the server's incremental data set, that is, Figure 1 In part ①, the potential of the first intersection and the blinded value z1 are calculated;

[0058] The client determines the second intersection of the client's incremental data set and the server's complete data set, i.e. Figure 1 In part ②, the potential of the second intersection and the blinded value z2 are calculated;

[0059] The client sends the blinded value z1 of the potential and sum of the first intersection and the blinded value z2 of the potential and sum of the second intersection to the server, and the server unblinds to obtain the final complete potential and sum Z.

[0060] For example, a specific construction method for finding the intersection potential and sum of a privacy set that supports updates is as follows: Figure 2 As shown, specifically:

[0061] Step S0: System parameter initialization

[0062] Group of order p The key space is

[0063] Choosing a hash function is a cryptographic hash function. For a set X, let H(X) = {H(x)|x∈X} and H(X) k = {H(x) k|∈X}.

[0064] Client P1 from the key space Randomly select random numbers As the first secret key, the server P2 takes the key space Randomly select random numbers As the second secret key.

[0065] Client P1 runs the fully homomorphic encryption key generation algorithm Gen(1 λ ) to obtain the key pair (pk, sk).

[0066] Assuming that the current time node is day d, the protocol execution process needs to use the previous data retained by both parties during the calculation process on day d-1. On day d-1, client P1 obtains the set replaced by server P2 The number of elements that intersect the two sides on the d-1th day C = |X old ∩Y old |; Server-side P2 calculates and obtains the sum of the intersection element labels on day d-1 If the server P2 wants to obtain the number of elements in the intersection of the two parties, it can do so by asking P1 to send the calculated C to P2. This step is omitted in the following process.

[0067] Step S1: Calculation Figure 1 The blinded value z1 of the intersection of the potential and sum corresponding to part ①

[0068] Step S101: P2 uses the second secret key k2 to calculate the first set And send it to P1.

[0069] Step S102: P1 receives the first set And use the first secret key k1 to encrypt the second set P1 compares this set with the original data set Ω after permutation. If Then let the indicator vector The i-th bit is 1 otherwise it is 0, indicating that the vector is the vector of the first intersection.

[0070] Step S103: Both parties execute the oblivious transfer (OT) protocol for σ times, where P1 is the receiver of the OT protocol and P2 is the sender of the OT protocol. When both parties execute the ith OT protocol, P2 randomly selects the first modulus And enter the message pair (r i ,r i +v d,i ); P1 inputs the vector from the first intersection Select bit e i And get the output m i;OT protocol ensures that when e i =1, m i =r i +v d,i Otherwise i =r i .

[0071] Step S104: P1 calculation and C1=HW(e i ) is the vector The Hamming weight of , where z1 is the blinded value of the sum of the first intersection and C1 is the power of the first intersection.

[0072] Step S2: Calculation Figure 1 The blinded value z2 of the intersection potential and sum corresponding to part ②.

[0073] Step S201: P2 uses the original data set and incremental dataset {y d,i ,v d,i} i∈[σ] Calculate the interpolation polynomial to get h(y), and use and {y d,i ,0} i∈[σ] Calculate the interpolation polynomial to get f(y), and get the first polynomial g1=h(y)+rf(y), and the second polynomial g2=rf(y), where r is a random value selected by P2; it is easy to prove that the above two polynomials satisfy if x∈Y old ∪Y d , then g1(x) calculates the label corresponding to x and g2(x)=0, otherwise both g1(x) and g2(x) calculate random values.

[0074] Step S202: P1 uses the fully homomorphic encryption algorithm to calculate the ciphertext of its incremental data set element to obtain {Enc(pk,x d,i )} i∈[σ] And send it to P2.

[0075] Step S203: P2 receives {Enc(pk,x d,i )} i∈[σ] Then, the first polynomial g1 and the second polynomial g2 are subjected to a secret state calculation to obtain a first secret state set ct 1,i =g1(Enc(pk,x d,i )) and the second dense state set ct 2,i =g2(Enc(pk,x d,i )); P2 permutation set {ct 1,i ,ct 2,i} i∈[σ] , then P2 selects σ random values And calculate ct1,i =ct 1,i +u i ; P2 will set {ct 1,i ,ct 2,i} i∈[σ] Send to P1.

[0076] Step S204: P1 receives {ct 1,i ,ct 2,i} i∈[σ] Then use the fully homomorphic encryption decryption algorithm to decrypt the second secret state set of the ciphertext pair {ct 2,i} i∈[σ] , if Dec(sk,ct 2,i )=0, then let the indicator vector The i-th bit is 1 otherwise it is 0, indicating that the vector is the vector of the second intersection.

[0077] Step S205: Both parties execute the OT protocol for σ times, where P1 is the receiver of the OT protocol and P2 is the sender of the OT protocol. When both parties execute the OT protocol for the i-th time, P2 randomly selects the second modulus And enter the message pair (w i ,w i -u i ); P1 inputs the vector from the second intersection Select bit e i And get the output m i OT protocol ensures that when e i =1 hour m i =w i -u i Otherwise i =w i .

[0078] Step S206: P1 uses the fully homomorphic encryption decryption algorithm to decrypt the second part of the ciphertext pair {ct 2,i} i∈[σ] Corresponding to e i =1, and calculate and C2=HW(e i ) is the vector , z2 is the blinded value of the sum of the second intersection, and C2 is the cardinality of the second intersection.

[0079] Step S3: P1 sends z1+z2 to P2 for unblinding and obtains the result

[0080] Step S301: P1 sends z=z1+z2 to P2.

[0081] Step S302: P1 calculates the final complete potential value through C=C+C1+C2, and P2 calculates the final complete potential value according to the selected first modulus r i and the second modulus w i Unblind z, specifically:

[0082] Step S4: Prepare for the next update.

[0083] Step S401: P1 uses the first secret key k1 to perform a search on the incremental data set X d Encrypted And send it to P2.

[0084] Step S402: P2 receives Then use the second secret key k2 to calculate And the replaced set Send to P1.

[0085] Step S403: P1 receives the set Ω ′ After the update set Ω = Ω ∪ Ω ′ .

[0086] The above scheme is only a basic scheme that meets the correctness and security under the semi-honest model. In practice, in order to improve the computational efficiency of the scheme, the permutation operation in step S2 can be replaced by a secret sharing operation, that is, the first secret state set and the second secret state set are shared by two parties without permutation, so that the two parties obtain the ciphertext ct respectively. 1,i Whether the shared value and ct is 0 after decryption 2,i After decryption, the two parties determine whether the shared value is the label value. Finally, the two parties call the general MPC protocol to calculate the potential and label sum of the intersection of the two parties. This process is designed to be compatible with SIMD, the optimization technology of the fully homomorphic encryption scheme, thereby reducing the computational overhead caused by polynomial secret state calculations.

[0087] Embodiment 2

[0088] This embodiment discloses a system that supports finding intersection potential and sum of updated privacy sets;

[0089] like Figure 3 As shown, a system supporting the intersection potential and sum of updated privacy sets includes a first computing unit, a second computing unit and a data unblinding unit:

[0090] The first calculation unit is configured to: determine, at the client, a first intersection of an original data set of the client and an incremental data set of the server, and calculate a potential and a blinded value of the first intersection;

[0091] The second calculation unit is configured to: determine, at the client, a second intersection of the incremental data set of the client and the complete data set of the server, and calculate the potential and the blinded value of the second intersection;

[0092] The data unblinding unit is configured as follows: the client sends the blinded value of the potential and sum of the first intersection and the blinded value of the potential and sum of the second intersection to the server, and the server unblinds to obtain the final complete potential and sum.

[0093] Embodiment 3

[0094] The purpose of this embodiment is to provide a computer-readable storage medium.

[0095] A computer-readable storage medium stores a computer program thereon, which, when executed by a processor, implements the steps in a method for finding intersection potential and sum of privacy sets supporting updates as described in the first embodiment of the present disclosure.

[0096] Embodiment 4

[0097] The purpose of this embodiment is to provide an electronic device.

[0098] An electronic device includes a memory, a processor, and a program stored in the memory and executable on the processor. When the processor executes the program, the steps in a method for finding intersection potential and sum of privacy sets supporting updates as described in the first embodiment of the present disclosure are implemented.

[0099] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. For those skilled in the art, the present invention may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.

Claims

1. A method for finding intersection potential and sum of private sets supporting updates, characterized in that: include: Step S1: The client determines the first intersection of the original data set of the client and the incremental data set of the server, and calculates the potential and blinding value of the first intersection; The step S1 is specifically: The server encrypts the incremental data set on the server by using the second secret key to obtain a first set, and sends the first set to the client; The client encrypts the received first set using the first secret key to obtain a second set; The server performs a permutation operation on the original data set of the client to obtain a third set, and sends it to the client; The client compares the second set with the permuted original data set to obtain the vector of the first intersection; The server and the client both call the oblivious transfer protocol, the server randomly selects the first modulus and inputs the message, the client inputs bits selected from the vector of the first intersection, and the client obtains the potential and blinded value of the first intersection; Step S2: The client determines a second intersection of the incremental data set of the client and the complete data set of the server, and calculates the potential and blinded value of the second intersection; The step S2 is specifically: The server side performs interpolation polynomial calculation on the original data set and the incremental data set on the server side to obtain a first polynomial and a second polynomial; The client calculates the ciphertext of the client's incremental data set and sends it to the server; The server calculates the ciphertext of the received incremental data set by using the first polynomial and the second polynomial to obtain the first secret state set and the second secret state set, and sends the first secret state set and the second secret state set to the client after replacing them; The client decrypts the second secret state set to obtain a vector of the second intersection; The server and the client both call the oblivious transfer protocol, the server randomly selects the second modulus and inputs the message, the client inputs bits selected from the vector of the second intersection, and the client obtains the potential and blinded value of the second intersection; Step S3: The client sends the blinded value of the potential and sum of the first intersection and the blinded value of the potential and sum of the second intersection to the server, and the server unblinds to obtain the final complete potential and sum.

2. A method for finding intersection potential and sum of privacy sets supporting updates as claimed in claim 1, characterized in that: The process also includes step S0: before starting to calculate the potential and the sum, initializing the system parameters, specifically: Set up keyspace and cryptographic hash functions; The client and the server randomly select the first key and the second key in the key space respectively; The client obtains a key pair through a fully homomorphic encryption key generation algorithm.

3. A method for finding intersection potential and sum of privacy sets supporting updates as claimed in claim 1, characterized in that: In step S3, the server unblinds the blinded value of the potential and sum of the first intersection and the blinded value of the potential and sum of the second intersection sent by the client according to the selected first modulus and second modulus to obtain the final complete potential and sum.

4. A method for finding intersection potential and sum of privacy sets supporting updates as claimed in claim 1, characterized in that: The method further includes step S4: after obtaining the complete potential and sum, updating the final original data set, specifically: The client encrypts the incremental data set of the client by using the selected first secret key and sends it to the server; The server encrypts the received incremental data set ciphertext by using the selected second secret key, performs a replacement operation on the encrypted data set, and sends it to the client after the replacement is completed; The client merges the replaced incremental data set with the original data set to obtain the final original data set.

5. The method for finding intersection potential and sum of privacy sets supporting updates as claimed in claim 1, characterized in that: In step S2, the first secret state set and the second secret state set can also be shared between two parties without replacement, so that the two parties can obtain the ciphertext ct 1,i Whether the shared value and ct are 0 after decryption 2,i After decryption, whether it is the shared value of the label value, the two parties finally call the general MPC protocol to calculate the potential and label sum of the intersection of the two parties.

6. A system for finding intersection potentials and sums of updated private sets, characterized in that: It includes a first calculation unit, a second calculation unit and a data unblinding unit: The first calculation unit is configured to: determine, at the client, a first intersection of an original data set of the client and an incremental data set of the server, and calculate a potential and a blinded value of the first intersection; The calculation of the potential and the blinded value of the first intersection is specifically: The server encrypts the incremental data set on the server by using the second secret key to obtain a first set, and sends the first set to the client; The client encrypts the received first set using the first secret key to obtain a second set; The server performs a permutation operation on the original data set of the client to obtain a third set, and sends it to the client; The client compares the second set with the permuted original data set to obtain the vector of the first intersection; The server and the client both call the oblivious transfer protocol, the server randomly selects the first modulus and inputs the message, the client inputs bits selected from the vector of the first intersection, and the client obtains the potential and blinded value of the first intersection; The second calculation unit is configured to: determine, at the client, a second intersection of the incremental data set of the client and the complete data set of the server, and calculate the potential and the blinded value of the second intersection; The calculation of the potential and the blinded value of the second intersection is specifically: The server side performs interpolation polynomial calculation on the original data set and the incremental data set on the server side to obtain a first polynomial and a second polynomial; The client calculates the ciphertext of the client's incremental data set and sends it to the server; The server calculates the ciphertext of the received incremental data set by using the first polynomial and the second polynomial to obtain the first secret state set and the second secret state set, and sends the first secret state set and the second secret state set to the client after replacing them; The client decrypts the second secret state set to obtain a vector of the second intersection; The server and the client both call the oblivious transfer protocol, the server randomly selects the second modulus and inputs the message, the client inputs bits selected from the vector of the second intersection, and the client obtains the potential and blinded value of the second intersection; The data unblinding unit is configured as follows: the client sends the blinded value of the potential and sum of the first intersection and the blinded value of the potential and sum of the second intersection to the server, and the server unblinds to obtain the final complete potential and sum.

7. A computer-readable storage medium having a program stored thereon, characterized in that: When the program is executed by a processor, the steps in the method for finding the intersection potential and sum of privacy sets supporting updates as described in any one of claims 1 to 5 are implemented.

8. An electronic device comprising a memory, a processor, and a program stored in the memory and executable on the processor, characterized in that: When the processor executes the program, the steps in the method for calculating the intersection potential and sum of privacy sets supporting updates as described in any one of claims 1 to 5 are implemented.

Citation Information

Patent Citations

  • Multi-party condition privacy protection set intersection method and system for resisting collusion attack

    CN114386068A

  • Privacy set intersection method based on multi-party condition retrieval

    CN114386089A