Multi-party privacy set intersection method, device, equipment and medium

By adopting packaged secret sharing technology and Bloom filter mapping in the multi-party privacy set interception protocol, the problem of exponential growth of OT calls and insufficient security of information theory in the existing protocol is solved, and an efficient and secure solution for each participant to obtain intersection results peer-to-peer.

CN119519968AActive Publication Date: 2025-02-25CHENGDU WEISHITONG INFORMATION SECURITY TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202411786776.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-06
Publication Date
2025-02-25
Estimated Expiration
2044-12-06

AI Technical Summary

Technical Problem

The existing multi-party privacy set interception protocol based on BF and OT has the problem that the number of OT calls increases exponentially with the number of participants and the size of the data set. The calculation and communication overhead are large, the scalability is poor, and it only supports the leader to obtain the intersection results, which lacks information theory security.

Method used

Packaged secret sharing technology is used to replace OT technology, random bits are generated and secretly shared in the offline stage, and the data set is mapped through the Bloom filter and hash function in the online stage, combining randomization processing and intersection element determination modules to achieve peer-to-peer acquisition of intersection results and ensure the security of information theory.

Benefits of technology

The online communication performance is optimized so that each participant can obtain intersection results equally, which has security in the sense of information theory and improves the overall performance and scalability of the MPSI method.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119519968A_ABST
    Figure CN119519968A_ABST
Patent Text Reader

Abstract

The invention discloses a multi-party privacy set intersection method and device, equipment and a medium, and relates to the technical field of computers, and the method comprises the steps: in an offline stage, for each participant, generating a first share of a random bit and a second share of an exclusive-or operation result of the random bit based on secret sharing, and sending the first share and the second share to each participant; in the online stage, a first array of a Bloom filter of each participant is constructed; determining one share as a target share according to the relationship between the random bit and the first array, and adding the target shares of the participants to obtain a second array; randomizing the second array, and sharing the randomized array of the target number of participants to each participant so as to reconstruct to obtain a third array; intersection elements are determined based on the data set and the third array. According to the method and the device, the online communication performance is optimized, each participant can equivalently obtain the intersection result, and the method and the device have security in information theory significance.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer technology, and in particular to a method, device, equipment and medium for obtaining intersection of multiple privacy sets. Background Art

[0002] Private Set Intersection (PSI) refers to two or more mutually distrusting parties holding their own data sets to calculate the intersection between all sets without leaking any information other than the intersection. Compared with two-party PSI, Multi-Party PSI (MPSI) requires extra attention to communication structure and anti-collusion attack technology. The performance of the protocol is related to the number of participants and the size of the input set. The implementation of MPSI is mainly divided into programmable oblivious pseudo-random function plus zero sharing, special encoding plus threshold homomorphic encryption, and BF (Bloom filter) plus oblivious transfer (OT).

[0003] The existing MPSI protocol based on BF and OT has the following problems: (1) The number of OT calls increases exponentially with the number of participants and the size of the data set. OT technology is mainly based on public key cryptography, which has large computing and communication overhead in actual practice and poor scalability. (2) The existing protocol only supports the leader to obtain the intersection result, and the leader simply forwards the result to all parties, which is a meaningless operation method. (3) The scheme based on BF and OT is based on mathematically difficult problems and does not have information theoretic security. Therefore, the above technical problems urgently need to be solved by technical personnel in this field. Summary of the invention

[0004] In view of this, the purpose of the present invention is to provide a multi-party private set intersection method, device, equipment and medium, which can optimize online communication performance, enable each participant to obtain the intersection result equally, and have information theory security. The specific scheme is as follows:

[0005] In a first aspect, the present application discloses a method for finding intersection of multiple privacy sets, including:

[0006] In the offline phase, for each participant, a first number of random bits are generated, and a first share of the random bits and a second share of an XOR operation result of the random bits are generated based on secret sharing, and the first share and the second share are sent to each of the participants;

[0007] In the online stage, a data set of each of the participants is determined, and based on a plurality of predetermined hash functions, the data set of each of the participants is mapped to a Bloom filter of each of the participants to obtain a first array of each of the participants; the size of the first array is the first number;

[0008] For each of the participants, determining the first share or the second share as the target share of each of the participants according to the relationship between the random bits and the first array, and adding the target shares of each of the participants to obtain the second array of each of the participants;

[0009] Randomizing the second array of each participant to obtain a processed array of each participant, and sharing the processed arrays of any target number of participants with each participant so that each participant can reconstruct a corresponding third array;

[0010] For each of the participants, an intersection element is determined based on the data set and the third array.

[0011] Optionally, for each of the participants, determining the first share or the second share as the target share of each of the participants according to the relationship between the random bits and the first array includes:

[0012] For each of the participants, if the random bit is the same as the array element at the corresponding position in the first array, the second share is determined as the target share of each of the participants;

[0013] For each of the participants, if the random bit is different from the array element at the corresponding position in the first array, the first share is determined as the target share of each of the participants.

[0014] Optionally, the randomizing the second array of each of the participants includes:

[0015] The random value of each of the participants is multiplied by the second array of each of the participants to achieve randomization of the second array of each of the participants.

[0016] Optionally, the multi-party privacy set intersection method further includes:

[0017] In the offline stage, generating the first number of random variables;

[0018] For each of the random variables, a third share of the random variable is generated based on the secret sharing, and the third share is sent to each of the participants, so that each of the participants obtains the random value according to the received third share.

[0019] Optionally, the target number is n-q+1, where n is the number of participants and q is the number of secrets packaged into one share.

[0020] Optionally, for each of the participants, determining an intersection element based on the data set and the third array includes:

[0021] For each of the participants, traverse each data in the data set, and operate the data based on the multiple hash functions to obtain multiple hash values;

[0022] A plurality of subscript positions are determined based on the plurality of hash values, and the intersection element is determined based on array elements corresponding to the subscript positions in the third array.

[0023] Optionally, determining the intersection element based on the array element corresponding to the subscript position in the third array includes:

[0024] Determine whether the array elements corresponding to the subscript positions in the third array are all 0;

[0025] If the array elements corresponding to the respective subscript positions are all 0, the data are determined as the intersection elements.

[0026] In a second aspect, the present application discloses a multi-party privacy set intersection device, comprising:

[0027] A random bit sharing module, configured to generate a first number of random bits for each participant in an offline phase, generate a first share of the random bits and a second share of an XOR operation result of the random bits based on secret sharing, and send the first share and the second share to each of the participants;

[0028] A Bloom filter mapping module, used for determining a data set of each of the participants in an online stage, and mapping the data set of each of the participants to a Bloom filter of each of the participants based on a plurality of predetermined hash functions, to obtain a first array of each of the participants; the size of the first array is the first number;

[0029] a target share accumulation module, configured to determine, for each of the participants, the first share or the second share as the target share of each of the participants according to the relationship between the random bit and the first array, and add the target shares of each of the participants to obtain a second array of each of the participants;

[0030] A randomization and reconstruction module, configured to perform randomization processing on the second array of each of the participants to obtain a processed array of each of the participants, and share the processed arrays of any target number of the participants with each of the participants, so that each of the participants can reconstruct a corresponding third array;

[0031] The intersection element determination module is used to determine the intersection element for each of the participants based on the data set and the third array.

[0032] In a third aspect, the present application discloses an electronic device, comprising:

[0033] Memory, used to store computer programs;

[0034] A processor is used to execute the computer program to implement the aforementioned disclosed multi-party privacy set intersection method.

[0035] In a fourth aspect, the present application discloses a computer-readable storage medium for storing a computer program; wherein, when the computer program is executed by a processor, the multi-party privacy set intersection method disclosed above is implemented.

[0036] It can be seen that the present application discloses a method for finding the intersection of multi-party privacy sets, including: in an offline stage, for each participant, generating a first number of random bits, and generating a first share of the random bits and a second share of the XOR operation result of the random bits based on secret sharing, and sending the first share and the second share to each of the participants; in an online stage, determining the data set of each of the participants, and mapping the data set of each of the participants to the Bloom filter of each of the participants based on a plurality of predetermined hash functions to obtain a first array of each of the participants; the size of the first array is the first number; for each participant, determining the first share or the second share as the target share of each participant according to the relationship between the random bits and the first array, and adding the target shares of each participant to obtain the second array of each participant; randomizing the second array of each participant to obtain a processed array of each participant, and sharing the processed arrays of any target number of participants to each participant, so that each participant can reconstruct the corresponding third array; for each participant, determining the intersection element based on the data set and the third array. From the above, it can be seen that compared with OT technology, the addition and multiplication operations of packaged secret sharing are relatively simple, and this application adopts an offline-online paradigm to process part of the operations in the offline stage, thereby optimizing the online communication performance. Furthermore, this application can efficiently share multiple secrets at one time. For each secret sharing party, the operations of each participant in the secret distribution, secret reconstruction, homomorphic addition and multiplication calculation process are equal, that is, each participant in this application can obtain the intersection result equally. Furthermore, compared with OT technology based on mathematically difficult problems, packaged secret sharing has information-theoretic security, so the entire process of this application is information-theoretic secure. BRIEF DESCRIPTION OF THE DRAWINGS

[0037] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying creative work.

[0038] Figure 1 A flow chart of a multi-party privacy set intersection method disclosed in this application;

[0039] Figure 2 A schematic diagram of a Bloom filter structure is disclosed;

[0040] Figure 3 A schematic diagram of packaged secret sharing is disclosed;

[0041] Figure 4 This is a schematic diagram of the structure of a multi-party privacy set intersection device disclosed in this application;

[0042] Figure 5 This is a structural diagram of an electronic device disclosed in this application. DETAILED DESCRIPTION

[0043] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0044] The existing MPSI protocol based on BF and OT has the following problems: (1) The number of OT calls increases exponentially with the number of participants and the size of the data set. OT technology is mainly based on public key cryptography, which has large computing and communication overhead in actual practice and poor scalability. (2) The existing protocol only supports the leader to obtain the intersection result, and the leader simply forwards the result to all parties, which is a meaningless operation method. (3) The scheme based on BF and OT is based on mathematically difficult problems and does not have information theoretic security. Therefore, the above technical problems urgently need to be solved by technical personnel in this field.

[0045] To this end, the embodiment of the present application proposes a multi-party privacy set intersection scheme to optimize online communication performance, so that each participant can obtain the intersection result equally, and has security in the sense of information theory.

[0046] The present application embodiment discloses a method for finding the intersection of multiple privacy sets. Figure 1 As shown, including:

[0047] Step S11: In the offline stage, for each participant, a first number of random bits are generated, a first share of the random bits and a second share of the XOR operation result of the random bits are generated based on secret sharing, and the first share and the second share are sent to each of the participants.

[0048] Figure 2 A schematic diagram of a Bloom filter structure is disclosed, such as Figure 2 As shown in Figure 1, a Bloom filter (BF) is a compact data structure for storing a set S. It is a bit array with m entries, each bit is initialized to 0, and a Bloom filter is associated with k random hash functions, where , insert element To BF, the index of BF When searching for an element, if all bits at the index in BF are 1, then x is a member of set S. Represents the i-th element of the BF of the set S.

[0049] Figure 3 A schematic diagram of packaged secret sharing is disclosed, such as Figure 3 As shown in Figure 1, Packed-Shamir's Secret Sharing (Packed-SSS) allows multiple secrets to be shared simultaneously and efficiently. Let q be the number of secrets packed into a share and n be the number of parties. There is a secret vector and secret sharing , there exists a degree The polynomial ,in, , ; , Each participant Hold the corresponding share , reconstruct a degree Packed-SSS Needed The shared secret reconstruction can be achieved through the Lagrange interpolation formula.

[0050] In the offline phase, for each participant, a first number (m) of random bits are generated , where each , , and generating a first share of the random bits based on secret sharing and generate a second share of the XOR result of the random bits , and send the first share and the second share to each participant, where .

[0051] Furthermore, in the offline stage, a first number of random variables are generated, namely For each random variable, a third share of the random variable is generated based on secret sharing, and the third share is sent to each of the participants, so that each of the participants obtains a random value according to the received third share. , this random value will be used later.

[0052] Step S12: In the online stage, determine the data set of each of the participants, and map the data set of each of the participants to the Bloom filter of each of the participants based on a plurality of predetermined hash functions to obtain a first array of each of the participants; the size of the first array is the first number.

[0053] In this embodiment, in the online stage, all participants P negotiate k hash functions in advance, i.e., h1,...,hk:{0,1}*→zm, and convert the data set of each participant Pi into Mapped to the Bloom filter of each participant, a first array of each participant is obtained, where the size of the first array is m.

[0054] Step S13: For each participant, the first share or the second share is determined as the target share of each participant according to the relationship between the random bit and the first array, and the target shares of each participant are added to obtain the second array of each participant.

[0055] In this embodiment, for each participant Pi, if the random bit is the same as the array element at the corresponding position in the first array, that is, , then the second share is determined as the target share of each participant. For each participant, if the random bit is different from the array element at the corresponding position in the first array, , then the first share is determined as the target share of each participant. v Define the determined bloom filter share held as , , , Represents the exclusive-or operation.

[0056] Furthermore, the target shares of each participant are added together to obtain a second array of each participant, that is, , , for a given index j, if each are all equal to 1, The accumulated BF corresponding to the position element is "0" and the rest are shared. Holds "≤n" shares.

[0057] Step S14: Randomize the second array of each participant to obtain a processed array of each participant, and share the processed arrays of any target number of participants with each participant so that each participant can reconstruct a corresponding third array.

[0058] In this embodiment, the random value of each participant is multiplied by the second array of each participant to achieve random processing of the second array of each participant, and obtain , the random value of each participant is obtained in the offline phase based on the above steps.

[0059] Furthermore, the processed arrays of n-q+1 participants are shared with each participant, so that each participant reconstructs a corresponding third array, that is, , where n is the number of parties and q is the number of secrets packed into one share.

[0060] Step S15: For each participant, determine an intersection element based on the data set and the third array.

[0061] In this embodiment, for each of the participants , traverse each data in the data set , , operating the data based on the multiple hash functions to obtain multiple hash values, determining multiple subscript positions based on the multiple hash values, and determining the intersection element based on the array elements corresponding to the subscript positions in the third array, and further determining whether the array elements corresponding to each of the subscript positions in the third array are all 0, if the array elements corresponding to each of the subscript positions are all 0, determining the data as the intersection element.

[0062] In summary, based on the principle and security requirements of MPSI, this application proposes an MPSI method based on BF and Packed-SSS technology. The core idea of ​​the MPSI method is Safely compute the cumulative BF (summing multiple Bloom filters), i.e. ,in, Representing a collection BF (non-standard defined BF, protocol operation performs BF variant). Share it with other parties , then calculate the sum of all shares held as Finally, Refactoring , by checking Are the elements in That is, for Each element of the input If the check is middle, The entries at index are all 0, then are members of the intersection. To ensure that non-intersection elements are The entry corresponding to the index in is a random value, introducing a random shared pair Therefore, the ultimate goal of the scheme is to calculate the randomized cumulative BF, that is, ,in, is a random vector.

[0063] This application targets the existing BF and OT MPSI protocols, replaces OT with Packed-SSS technology, and constructs a specific and effective MPSI method under semi-honest security, and has good scalability with the number of participants and the size of the data set. The construction of the protocol adopts a combination of BF and Packed-SSS technology, and introduces an offline preprocessing paradigm to optimize the communication performance in the online stage and improve the overall performance of the MSPI method. Compared with Shamir secret sharing, Packed-SSS technology can efficiently share multiple secrets at one time, and for each secret sharing party, the operation of the protocol is equal. Based on the simplicity, efficiency and information-theoretic security characteristics of Packed-SSS technology, the MPSI method proposed in the present invention has high performance, and each participant can obtain the intersection result equally, and the entire process of the method is information-theoretic secure.

[0064] It can be seen that the present application discloses a method for finding the intersection of multi-party privacy sets, including: in an offline stage, for each participant, generating a first number of random bits, and generating a first share of the random bits and a second share of the XOR operation result of the random bits based on secret sharing, and sending the first share and the second share to each of the participants; in an online stage, determining the data set of each of the participants, and mapping the data set of each of the participants to the Bloom filter of each of the participants based on a plurality of predetermined hash functions to obtain a first array of each of the participants; the size of the first array is the first number; for each participant, determining the first share or the second share as the target share of each participant according to the relationship between the random bits and the first array, and adding the target shares of each participant to obtain the second array of each participant; randomizing the second array of each participant to obtain a processed array of each participant, and sharing the processed arrays of any target number of participants to each participant, so that each participant can reconstruct the corresponding third array; for each participant, determining the intersection element based on the data set and the third array. From the above, it can be seen that compared with OT technology, the addition and multiplication operations of packaged secret sharing are relatively simple, and this application adopts an offline-online paradigm to process part of the operations in the offline stage, thereby optimizing the online communication performance. Furthermore, this application can efficiently share multiple secrets at one time. For each secret sharing party, the operations of each participant in the secret distribution, secret reconstruction, homomorphic addition and multiplication calculation process are equal, that is, each participant in this application can obtain the intersection result equally. Furthermore, compared with OT technology based on mathematically difficult problems, packaged secret sharing has information-theoretic security, so the entire process of this application is information-theoretic secure.

[0065] Correspondingly, the embodiment of the present application also discloses a multi-party privacy set intersection device, see Figure 4 As shown, the device comprises:

[0066] A random bit sharing module 11 is used to generate a first number of random bits for each participant in an offline phase, generate a first share of the random bits and a second share of an XOR operation result of the random bits based on secret sharing, and send the first share and the second share to each of the participants;

[0067] A Bloom filter mapping module 12 is used to determine the data set of each of the participants in the online stage, and map the data set of each of the participants to the Bloom filter of each of the participants based on a plurality of predetermined hash functions to obtain a first array of each of the participants; the size of the first array is the first number;

[0068] A target share accumulation module 13 is used to determine, for each of the participants, the first share or the second share as the target share of each of the participants according to the relationship between the random bit and the first array, and add the target shares of each of the participants to obtain the second array of each of the participants;

[0069] A randomization and reconstruction module 14 is used to perform randomization processing on the second array of each participant to obtain a processed array of each participant, and share the processed arrays of any target number of participants with each participant, so that each participant can reconstruct a corresponding third array;

[0070] The intersection element determination module 15 is used to determine the intersection element for each of the participants based on the data set and the third array.

[0071] Among them, for more specific working processes of the above-mentioned modules, please refer to the corresponding contents disclosed in the aforementioned embodiments, which will not be repeated here.

[0072] It can be seen that the present application discloses a method for finding the intersection of multi-party privacy sets, including: in an offline stage, for each participant, generating a first number of random bits, and generating a first share of the random bits and a second share of the XOR operation result of the random bits based on secret sharing, and sending the first share and the second share to each of the participants; in an online stage, determining the data set of each of the participants, and mapping the data set of each of the participants to the Bloom filter of each of the participants based on a plurality of predetermined hash functions to obtain a first array of each of the participants; the size of the first array is the first number; for each participant, determining the first share or the second share as the target share of each participant according to the relationship between the random bits and the first array, and adding the target shares of each participant to obtain the second array of each participant; randomizing the second array of each participant to obtain a processed array of each participant, and sharing the processed arrays of any target number of participants to each participant, so that each participant can reconstruct the corresponding third array; for each participant, determining the intersection element based on the data set and the third array. From the above, it can be seen that compared with OT technology, the addition and multiplication operations of packaged secret sharing are relatively simple, and this application adopts an offline-online paradigm to process part of the operations in the offline stage, thereby optimizing the online communication performance. Furthermore, this application can efficiently share multiple secrets at one time. For each secret sharing party, the operations of each participant in the secret distribution, secret reconstruction, homomorphic addition and multiplication calculation process are equal, that is, each participant in this application can obtain the intersection result equally. Furthermore, compared with OT technology based on mathematically difficult problems, packaged secret sharing has information-theoretic security, so the entire process of this application is information-theoretic secure.

[0073] Furthermore, an embodiment of the present application also provides an electronic device. Figure 5 This is a structural diagram of an electronic device 20 according to an exemplary embodiment. The content in the diagram cannot be regarded as any limitation on the scope of use of the present application.

[0074] Figure 5 A schematic diagram of the structure of an electronic device 20 provided in an embodiment of the present application. The electronic device 20 may specifically include: at least one processor 21, at least one memory 22, a display screen 23, an input / output interface 24, a communication interface 25, a power supply 26, and a communication bus 27. The memory 22 is used to store a computer program, which is loaded and executed by the processor 21 to implement the relevant steps in the multi-party privacy set intersection method disclosed in any of the aforementioned embodiments. In addition, the electronic device 20 in this embodiment may specifically be an electronic computer.

[0075] In this embodiment, the power supply 26 is used to provide working voltage for each hardware device on the electronic device 20; the communication interface 25 can create a data transmission channel between the electronic device 20 and the external device, and the communication protocol it follows is any communication protocol that can be applied to the technical solution of the present application, and is not specifically limited here; the input and output interface 24 is used to obtain external input data or output data to the outside world, and its specific interface type can be selected according to specific application needs and is not specifically limited here.

[0076] In addition, the memory 22, as a carrier for storing resources, may be a read-only memory, a random access memory, a disk or an optical disk, etc. The resources stored thereon may include a computer program 221, and the storage method may be temporary storage or permanent storage. In addition to including a computer program that can be used to complete the multi-party privacy set intersection method performed by the electronic device 20 disclosed in any of the aforementioned embodiments, the computer program 221 may further include a computer program that can be used to complete other specific tasks.

[0077] Furthermore, an embodiment of the present application also discloses a computer-readable storage medium for storing a computer program; wherein, when the computer program is executed by a processor, the multi-party privacy set intersection method disclosed above is implemented.

[0078] For the specific steps of the method, reference may be made to the corresponding contents disclosed in the aforementioned embodiments, which will not be described in detail here.

[0079] The various embodiments in this application are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the various embodiments can be referenced to each other. For the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant parts can be referred to the method part description.

[0080] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described in the above description according to function. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0081] The steps of the method or algorithm described in conjunction with the embodiments disclosed herein may be implemented directly using hardware, a software module executed by a processor, or a combination of the two. The software module may be placed in a random access memory (RAM), a memory, a read-only memory (ROM), an electrically programmable ROM, an electrically erasable programmable ROM, a register, a hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.

[0082] Finally, it should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the presence of other identical elements in the process, method, article or device including the elements.

[0083] The above is a detailed introduction to the multi-party privacy set intersection method, device, equipment, and storage medium provided by the present application. This article uses specific examples to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only used to help understand the method of the present application and its core idea; at the same time, for general technical personnel in this field, according to the idea of ​​the present application, there will be changes in the specific implementation method and application scope. In summary, the content of this specification should not be understood as a limitation on the present application.

Claims

1. A method for finding intersection of multiple private sets, characterized in that: include: In the offline phase, for each participant, a first number of random bits are generated, and a first share of the random bits and a second share of an XOR operation result of the random bits are generated based on secret sharing, and the first share and the second share are sent to each of the participants; In the online stage, a data set of each of the participants is determined, and based on a plurality of predetermined hash functions, the data set of each of the participants is mapped to a Bloom filter of each of the participants to obtain a first array of each of the participants; the size of the first array is the first number; For each of the participants, determining the first share or the second share as the target share of each of the participants according to the relationship between the random bits and the first array, and adding the target shares of each of the participants to obtain the second array of each of the participants; Randomizing the second array of each participant to obtain a processed array of each participant, and sharing the processed arrays of any target number of participants with each participant so that each participant can reconstruct a corresponding third array; For each of the participants, an intersection element is determined based on the data set and the third array.

2. The multi-party private set intersection method according to claim 1, characterized in that: The step of determining, for each of the participants, the first share or the second share as a target share of each of the participants according to a relationship between the random bits and the first array includes: For each of the participants, if the random bit is the same as the array element at the corresponding position in the first array, the second share is determined as the target share of each of the participants; For each of the participants, if the random bit is different from the array element at the corresponding position in the first array, the first share is determined as the target share of each of the participants.

3. The multi-party private set intersection method according to claim 1, characterized in that: The randomizing the second array of each participant includes: The random value of each of the participants is multiplied by the second array of each of the participants to achieve randomization of the second array of each of the participants.

4. The multi-party private set intersection method according to claim 3, characterized in that: Also includes: In the offline stage, generating the first number of random variables; For each of the random variables, a third share of the random variable is generated based on the secret sharing, and the third share is sent to each of the participants, so that each of the participants obtains the random value according to the received third share.

5. The multi-party private set intersection method according to claim 1, characterized in that: The target number is n-q+1, where n is the number of participants and q is the number of secrets packaged into one share.

6. The multi-party private set intersection method according to claim 1, characterized in that: For each of the participants, determining an intersection element based on the data set and the third array includes: For each of the participants, traverse each data in the data set, and operate the data based on the multiple hash functions to obtain multiple hash values; A plurality of subscript positions are determined based on the plurality of hash values, and the intersection element is determined based on array elements corresponding to the subscript positions in the third array.

7. The multi-party private set intersection method according to claim 6, characterized in that: The determining the intersection element based on the array element corresponding to the subscript position in the third array includes: Determine whether the array elements corresponding to the subscript positions in the third array are all 0; If the array elements corresponding to the respective subscript positions are all 0, the data are determined as the intersection elements.

8. A multi-party privacy set intersection device, characterized in that: include: A random bit sharing module, configured to generate a first number of random bits for each participant in an offline phase, generate a first share of the random bits and a second share of an XOR operation result of the random bits based on secret sharing, and send the first share and the second share to each of the participants; A Bloom filter mapping module, used for determining a data set of each of the participants in an online stage, and mapping the data set of each of the participants to a Bloom filter of each of the participants based on a plurality of predetermined hash functions, to obtain a first array of each of the participants; the size of the first array is the first number; a target share accumulation module, configured to determine, for each of the participants, the first share or the second share as the target share of each of the participants according to the relationship between the random bits and the first array, and add the target shares of each of the participants to obtain a second array of each of the participants; A randomization and reconstruction module, configured to perform randomization processing on the second array of each of the participants to obtain a processed array of each of the participants, and share the processed arrays of any target number of the participants with each of the participants, so that each of the participants can reconstruct a corresponding third array; The intersection element determination module is used to determine the intersection element for each of the participants based on the data set and the third array.

9. An electronic device, characterized in that: include: Memory, used to store computer programs; A processor, configured to execute the computer program to implement the multi-party privacy set intersection method as described in any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that: Used to store a computer program; wherein, when the computer program is executed by a processor, the multi-party privacy set intersection method as described in any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Multi-party privacy set intersection method for resisting malicious enemies

    CN110719159A

  • Implementation method and system of security comparison protocol based on copy secret sharing

    CN117118602A

  • Efficient and extensible anti-collusion multi-party privacy set intersection method and device

    CN117857028A

  • Data processing method and system, and computing device

    WO2024234685A1