CN117010008A - Privacy intersection method, device, system, computer equipment and storage medium - Google Patents

Privacy intersection method, device, system, computer equipment and storage medium Download PDF

Info

Publication number
CN117010008A
CN117010008A CN202310574514.7A CN202310574514A CN117010008A CN 117010008 A CN117010008 A CN 117010008A CN 202310574514 A CN202310574514 A CN 202310574514A CN 117010008 A CN117010008 A CN 117010008A
Authority
CN
China
Prior art keywords
participating
party
encryption
parameter
participating party
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310574514.7A
Other languages
Chinese (zh)
Inventor
纪耀宗
夏知渊
丁文定
郭相林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202310574514.7A priority Critical patent/CN117010008A/en
Publication of CN117010008A publication Critical patent/CN117010008A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Storage Device Security (AREA)

Abstract

The application relates to a privacy intersection method, a privacy intersection device, computer equipment, storage media and a computer program product, and relates to the technical field of privacy calculation. The method comprises the following steps: acquiring a key common to the participating parties; encrypting the participating party data set based on the secret key to obtain a participating party encryption set, and transmitting the participating party encryption set to a participating third party; the participating method comprises the following steps: the user participates in the data with unique identification which is reserved by the user; acquiring an encryption intersection calculated by a participating third party based on the encryption set of the participating party; the participating third party is used for acquiring the participating party encryption set and the participating party encryption set obtained by encrypting the held participating party data set by the participating party through the secret key; and solving the traffic operation of the encryption set of the participating party and the encryption set of the participating party to obtain an encryption intersection. By adopting the method, the safety and the efficiency of privacy exchange in the privacy exchange process can be improved.

Description

Privacy intersection method, device, system, computer equipment and storage medium
Technical Field
The present application relates to the field of privacy computing technology, and in particular, to a privacy intersection method, apparatus, system, computer device, storage medium and computer program product.
Background
With the development and wide-spread application of big data and artificial intelligence technology, the demands for data security and privacy protection are becoming stronger, and various security computing technologies are widely adopted to solve the problem of data cooperation among across institutions. Among them, the privacy set intersection technique (PSI, private Set Intersection) is considered as a pre-step of cross-institution data collaboration, and has also received extensive attention and application to the ground.
In the conventional art, a privacy intersection algorithm based on public key RSA is generally used.
However, conventional techniques face security and computational efficiency challenges. On one hand, the intersection and the element number in the traditional method can be exposed to the participating parties; on the other hand, since encryption and decryption operations with high computational complexity are required in the execution process of the conventional technology, when more elements are in the set, the time is long, resulting in low privacy exchange efficiency.
Disclosure of Invention
In view of the foregoing, it is desirable to provide a privacy-seeking method, apparatus, computer device, computer-readable storage medium, and computer program product that can improve security and processing efficiency.
In a first aspect, the present application provides a method of privacy intersection. The method comprises the following steps:
acquiring a key common to the participating parties;
encrypting the participating party data set based on the secret key to obtain a participating party encryption set, and transmitting the participating party encryption set to a participating third party; the participating method comprises the following steps: the user participates in the data with unique identification which is reserved by the user;
acquiring an encryption intersection calculated by a participating third party based on the encryption set of the participating party;
the participating third party is used for acquiring the participating party encryption set and the participating party encryption set obtained by encrypting the held participating party data set by the participating party through the secret key; calculating the encryption set of the participating party and the encryption set of the participating party to obtain an encryption intersection; wherein the participating partner data set includes: the user is participating in the data with unique identification that the present application holds.
In one embodiment, obtaining a key common to the participating parties includes:
acquiring a first parameter, and determining a second parameter based on the first parameter;
calculating a first intermediate value based on the first parameter and the second parameter, and sending the first intermediate value to the participating party; obtaining a second intermediate value calculated by the participating party based on the first parameter and the second parameter;
a key is determined based on the second intermediate value and the first intermediate value.
In one embodiment, the first parameter is a prime number P greater than or equal to 5; calculating a first intermediate value based on the first parameter and the second parameter, including:
any element in the set {2,3, … …, P-2} is obtained as a first intermediate element;
the first parameter and the second parameter are calculated to obtain a first intermediate value based on the first intermediate element.
In one embodiment, the second parameter is any element in the set {2,3, … …, P-2}.
In one embodiment, the participating party encryption set obtained by encrypting the participating party data set based on the key comprises:
and symmetrically encrypting the held participating party data set through the secret key to obtain the participating party encrypted set.
In one embodiment, the method further comprises: the participating party data set and the participating party data set are mutually independent.
In a second aspect, the application further provides a privacy intersection device. The device comprises:
the key acquisition module is used for acquiring a key common to the participating parties;
the data encryption module is used for encrypting the participation party data set based on the secret key to obtain a participation party encryption set, and transmitting the participation party encryption set to a participation third party; the participating method comprises the following steps: the user participates in the data with unique identification which is reserved by the user;
the intersection acquisition module is used for acquiring an encryption intersection calculated by a participating third party based on the participating party encryption set;
the participating third party is used for acquiring the participating party encryption set and the participating party encryption set obtained by encrypting the held participating party data set by the participating party through the secret key; calculating the encryption set of the participating party and the encryption set of the participating party to obtain an encryption intersection; wherein the participating partner data set includes: the user is participating in the data with unique identification that the present application holds.
In a third aspect, the application further provides a privacy intersection system. The system comprises: participation in the method, participation in the other party and participation in the third party;
the participating party acquires a key common to the participating party, encrypts a participating party data set based on the key to obtain a participating party encrypted set, and sends the participating party encrypted set to a participating third party; wherein participating in the present data set comprises: the user participates in the data with unique identification which is reserved by the user;
the participating party encrypts the participating party data set based on the secret key to obtain a participating party encrypted set, and sends the participating party encrypted set to a participating third party; wherein the participating partner data set includes: the user participates in the data with unique identification which is reserved by the user;
the participating third party obtains the participating party encryption set and the participating party encryption set, calculates the participating party encryption set and the participating party encryption set to obtain an encryption intersection, and sends the encryption intersection to the participating party.
In a fourth aspect, the present application also provides a computer device. The computer device comprises a memory storing a computer program and a processor implementing the steps of the method of any of the embodiments described above when the processor executes the computer program.
In a fifth aspect, the present application also provides a computer device readable storage medium. The computer device readable storage medium having stored thereon a computer program which, when executed by a processor, implements the steps of the method of any of the embodiments described above.
In a sixth aspect, the application also provides a computer program product. The computer program product comprises a computer program which, when executed by a processor, implements the steps of the method according to any of the embodiments described above.
The privacy exchange method, apparatus, computer device, storage medium and computer program product described above first acquire a key common to the participating parties. Then, encrypting the participating party data set based on the secret key to obtain a participating party encryption set, and transmitting the participating party encryption set to a participating third party; the participating method comprises the following steps: the user is participating in the data with unique identification that the present application holds. Further, the encryption intersection calculated by the participating third party based on the participating party encryption set is obtained. The participating third party is used for acquiring the participating party encryption set and the participating party encryption set obtained by encrypting the held participating party data set by the participating party through the secret key; calculating the encryption set of the participating party and the encryption set of the participating party to obtain an encryption intersection; wherein the participating partner data set includes: the user is participating in the data with unique identification that the present application holds. In the privacy intersection process, the participating party data set, the number of elements in the participating party data set and the intersection are not known by the participating party, and the original data corresponding to the participating party data set and the encrypted intersection are not known by the participating party data set and the encrypted intersection, so that the security in the privacy intersection process can be improved. Furthermore, the participating party and the participating party encrypt the data with the same attribute through the same secret key, so that the participating third party and the participating third party can directly perform matching and intersection on the encryption set of the participating party and the encryption set of the participating party, the calculated amount is small, and the data processing efficiency can be improved.
Drawings
FIG. 1 is an application environment diagram of a privacy-preserving method in one embodiment;
FIG. 2 is a flow chart of a privacy-preserving method in one embodiment;
FIG. 3 is a schematic diagram of data transmission for privacy exchange in one embodiment;
FIG. 4 is a block diagram of a privacy-preserving apparatus in one embodiment;
fig. 5 is an internal structural diagram of a computer device in one embodiment.
Detailed Description
The present application will be described in further detail with reference to the drawings and examples, in order to make the objects, technical solutions and advantages of the present application more apparent. It should be understood that the specific embodiments described herein are for purposes of illustration only and are not intended to limit the scope of the application.
The privacy intersection method provided by the embodiment of the application can be applied to an application environment shown in fig. 1. Wherein the participating party 102 and the participating partner 104 communicate with the participating third party 106, respectively, over a network. The data storage system may store data that needs to be processed by the participating third parties 106. The data storage system may be integrated on the cloud or on a network server. The participating third party 106 communicates with the participating party 102 and the participating party 104, respectively, to enter into a privacy-preserving environment. First, the participating party 102 may obtain a key that is common to the participating parties 104. The participating party 102 may then encrypt the participating party data set based on the key to obtain a participating party encrypted set, and send the participating party encrypted set to the participating third party 106; the participating method comprises the following steps: the user is participating in the data with unique identification that the present application holds. Further, the participating party 102 may obtain an encrypted intersection calculated by the participating third party 106 based on the participating party's encrypted set. The participating third party 106 is configured to obtain an encrypted set of the participating party, and an encrypted set of the participating party obtained by encrypting the data set of the participating party held by the participating party 104 through a key; calculating the encryption set of the participating party and the encryption set of the participating party to obtain an encryption intersection; wherein the participating partner data set includes: the user is participating in the data with unique identification that the present application holds.
The privacy exchange method provided by the embodiment of the application can be applied to a system comprising a participating party, a participating party and a participating third party, and is realized through communication interaction between the participating third party and the participating party and communication interaction between the participating party and the participating party respectively.
In one embodiment, as shown in fig. 2, a privacy-seeking method is provided, and the method is described as being applied to a system implementation including a participating party, a participating partner, and a participating third party, and includes the following steps 202 to 206.
Step 202, a key common to the participating parties is obtained.
In this embodiment, the participating party and the participating partner may determine the first parameter P through data interaction.
In one embodiment, the participating party may send a first interaction request to the participating party, where the first interaction request may include, but is not limited to: candidate first parameter P1. The participating party may obtain a first interaction feedback of the participating party to the first interaction request within a preset time period, where the first interaction feedback may include, but is not limited to: consent, disagreement. When the first interaction feedback corresponds to disagreement or the participant does not receive the first interaction feedback of the participant to the interaction request within a preset time period, the participant can send a second interaction request to the participant, and the second interaction request can include but is not limited to: candidate first parameter P2, wherein candidate first parameter P2 is different from candidate first parameter P2.
In this embodiment, when the participating party receives the first interaction feedback of the participating party to the interaction request within the preset time period, and the first interaction feedback corresponds to agreement, the participating party and the participating party take the candidate first parameter P1 as the first parameter P.
In this embodiment, the participating party may first acquire the first parameter P, and determine the second parameter based on the first parameter. Wherein the second parameterIs any element in the set {2,3, … …, P-2}。
In this embodiment, the participating party may determine a key common to the participating party based on the first parameter and the second parameter.
Step 204, encrypting the participation party data set based on the secret key to obtain a participation party encryption set, and transmitting the participation party encryption set to a participation third party; the participating method comprises the following steps: the user is participating in the data with unique identification that the present application holds.
In this embodiment, the plurality of data in the participating party data set and the plurality of data in the participating party data set have the same attribute, and the attribute of the data may include, but is not limited to: account information, address information, identity information, etc.
In this embodiment, the manner in which the participating party encrypts the participating party's data set with the key is the same as the manner in which the participating party encrypts the participating party's data set with the key.
Step 206, obtaining the encryption intersection calculated by the participating third party based on the participating party encryption set.
In this embodiment, the participating third party may match elements in the participating party encryption set with elements in the participating party encryption set to obtain the same element set in the participating party encryption set and the participating party encryption set as an intersection set.
In this embodiment, the participating party may also decrypt the encrypted intersection to obtain the original data intersection.
In this embodiment, the participating third party is configured to obtain an encrypted set of the participating party, and an encrypted set of the participating party obtained by encrypting the data set of the participating party held by the participating party through a key; calculating the encryption set of the participating party and the encryption set of the participating party to obtain an encryption intersection; wherein the participating partner data set includes: the user is participating in the data with unique identification that the present application holds.
In the privacy exchange method, first, a key common to the participating parties is acquired. Then, encrypting the participating party data set based on the secret key to obtain a participating party encryption set, and transmitting the participating party encryption set to a participating third party; the participating method comprises the following steps: the user is participating in the data with unique identification that the present application holds. Further, the encryption intersection calculated by the participating third party based on the participating party encryption set is obtained. The participating third party is used for acquiring the participating party encryption set and the participating party encryption set obtained by encrypting the held participating party data set by the participating party through the secret key; calculating the encryption set of the participating party and the encryption set of the participating party to obtain an encryption intersection; wherein the participating partner data set includes: the user is participating in the data with unique identification that the present application holds. In the privacy intersection process, the participating party data set, the number of elements in the participating party data set and the intersection are not known by the participating party, and the original data corresponding to the participating party data set and the encrypted intersection are not known by the participating party data set and the encrypted intersection, so that the security in the privacy intersection process can be improved. Furthermore, the participating party and the participating party encrypt the data with the same attribute through the same secret key, so that the participating third party can directly perform matching intersection on the encryption set of the participating party and the encryption set of the participating party, the calculated amount is small, and the data processing efficiency can be improved.
In some embodiments, obtaining a key common to the participating parties may include: acquiring a first parameter, and determining a second parameter based on the first parameter; calculating a first intermediate value based on the first parameter and the second parameter, and sending the first intermediate value to the participating party; obtaining a second intermediate value calculated by the participating party based on the first parameter and the second parameter; a key is determined based on the second intermediate value and the first intermediate value.
In this embodiment, the first parameter P may be a prime number.
In the present embodiment, the second parameterMay be an integer.
In one embodiment, the second parameterIs any element in the set {2,3, … …, P-2}, where P is a prime number.
In this embodiment, the participating party may determine the first intermediate element a based on the first parameter, and the participating party may also determine the second intermediate element b based on the first parameter.
In this embodiment, the calculating, by the participating party, a first intermediate value based on the first parameter and the second parameter may include: acquiring a first intermediate element a based on the first intermediate element a, a first parameter P and a second parameterA first intermediate value a is determined.
In this embodiment, the calculation of the second intermediate value by the participating partner based on the first parameter and the second parameter may include: acquiring a second intermediate element based on the second intermediate element b, the first parameter P and the second parameterA second intermediate value B is determined.
In this embodiment, the participating party sends the first intermediate value a to the participating party, and the participating party can calculate the key k based on the first intermediate value a AB =A b modp; similarly, the participating party sends the second intermediate value B to the participating party, and the participating party can calculate the key k based on the second intermediate value B AB =B a modp。
In some embodiments, the first parameter is a prime number P greater than or equal to 5; the participating method calculates a first intermediate value based on the first parameter and the second parameter, and may include: any element in the set {2,3, … …, P-2} is obtained as a first intermediate element; the first parameter and the second parameter are calculated to obtain a first intermediate value based on the first intermediate element.
In this embodiment, the participant can determine a first intermediate element a corresponding to the participant based on a first parameter, where a e {2,3, … …, P-2}.
In the present embodiment of the present application, in the present embodiment,the participant may be based on the first intermediate element a, the first parameter P and the second parameterDetermining a first intermediate value +.>
In some embodiments, the first parameter is a prime number P greater than or equal to 5; the participating partner calculating a second intermediate value based on the first parameter and the second parameter may include: any element in the set {2,3, … …, P-2} is obtained as a second intermediate element; based on the second intermediate element, the first parameter and the second parameter are calculated to obtain a second intermediate value.
In this embodiment, the participating partner may also determine a second intermediate element b corresponding to the participating party based on the first parameter, where b∈ {2,3, … …, P-2}.
In this embodiment, the participating counterparties may be based on the second intermediate element b, the first parameter P and the second parameterDetermining a second intermediate value +.>
In this embodiment, the participating party sends the first intermediate value a to the participating party, and the participating party can calculate the key k based on the first intermediate value a AB =A b modp; similarly, the participating party sends the second intermediate value B to the participating party, and the participating party can calculate the key based on the second intermediate value B
In some embodiments, encrypting the participating party data set based on the key to obtain the participating party encrypted set may include: and symmetrically encrypting the held participating party data set through the secret key to obtain the participating party encrypted set.
In this embodiment, the participating partner performs symmetric encryption on the participating partner data set held by the key to obtain the participating partner encrypted set. For example, the participating parties may pass through the key k AB Symmetrically encrypting the data set of the participating party to obtain an encrypted set Y of the participating party B
In this embodiment, the participating party may pass through the key k AB Symmetrically encrypting the participation party data set to obtain a participation party encryption set Y A . Wherein the plurality of data in the participating party data set and the plurality of data in the participating party data set have the same attribute. For example, the participating party passes through the key k AB And encrypting the data set of the participation party, the element of which corresponds to the account information, and then the data set of the participation party corresponds to the account information. By carrying out the same encryption on the data with the same attribute, the encrypted elements participating in the encryption set of the method and the encrypted elements participating in the encryption set of the opposite party can be directly compared.
In some embodiments, the above method may further comprise: the participating party data set and the participating party data set are mutually independent.
In this embodiment, as shown in fig. 3, when the element in the participating party data set corresponds to IDi, the participating party may pass through the key k when the participating party data set also corresponds to IDi AB For participating in the present data set X A Symmetric encryption is carried out to obtain an encryption set Y of the participating parties A ={E KAB (IDi)|IDi∈X A The participating partner can pass through the key k AB For participating partner data set X B Symmetric encryption is carried out to obtain an encryption set Y of the participating parties B ={E KAB (IDi)|IDi∈X B }。
In this embodiment, the participating third party obtains the participating party encryption collection Y A And participating partner encryption set Y B For Y A And Y B Intersection is carried out to obtain intersection Y AB . The participating party data sets are respectively paired by keys common to the participating party and the participating partyEncrypting the data set of the participating party, and intersecting the encrypted data set. The participating third party does not have a secret key, can not analyze and obtain the real data of the elements in the participating party and the participating counterpart, and the participating counterpart can not know the number of the elements in the participating party data set, so that the data security in the data transmission process can be improved.
In this embodiment, the participating third party will intersect Y AB The participation party fed back to the initiation request can pass through the key k AB For intersection Y AB Decrypting to obtain decrypted intersection X AB ={D KAB (E KAB (IDi))|IDi∈X A ∩X B }={IDi|IDi∈X A ∩X B }。
In the privacy intersection process, the participating party data set, the number of elements in the participating party data set and the intersection are not known by the participating party, and the original data corresponding to the participating party data set and the encrypted intersection are not known by the participating party data set and the encrypted intersection, so that the security of the data in the privacy intersection process can be improved.
It should be understood that, although the steps in the flowcharts related to the embodiments described above are sequentially shown as indicated by arrows, these steps are not necessarily sequentially performed in the order indicated by the arrows. The steps are not strictly limited to the order of execution unless explicitly recited herein, and the steps may be executed in other orders. Moreover, at least some of the steps in the flowcharts described in the above embodiments may include a plurality of steps or a plurality of stages, which are not necessarily performed at the same time, but may be performed at different times, and the order of the steps or stages is not necessarily performed sequentially, but may be performed alternately or alternately with at least some of the other steps or stages.
Based on the same inventive concept, the embodiment of the application also provides a privacy intersection device for realizing the privacy intersection method. The implementation of the solution provided by the device is similar to the implementation described in the above method, so the specific limitation in the embodiments of the privacy intersection device or devices provided below may refer to the limitation of the privacy intersection method hereinabove, and will not be described herein.
In one embodiment, as shown in fig. 4, there is provided a privacy intersection apparatus, including: a key acquisition module 402, a data encryption module 404, and an intersection acquisition module 406, wherein:
a key acquisition module 402, configured to acquire a key common to the participating parties.
A data encryption module 404, configured to encrypt the participating party data set based on the key to obtain a participating party encrypted set, and send the participating party encrypted set to a participating third party; the participating method comprises the following steps: the user is participating in the data with unique identification that the present application holds.
And the intersection acquisition module 406 is configured to acquire an encrypted intersection calculated by the participating third party based on the participating party encrypted set.
The participating third party is used for acquiring the participating party encryption set and the participating party encryption set obtained by encrypting the held participating party data set by the participating party through the secret key; calculating the encryption set of the participating party and the encryption set of the participating party to obtain an encryption intersection; wherein the participating partner data set includes: the user is participating in the data with unique identification that the present application holds.
In one embodiment, the key acquisition module 402 may include:
and the parameter determination submodule is used for acquiring the first parameter and determining the second parameter based on the first parameter.
The intermediate value calculation sub-module is used for calculating a first intermediate value based on the first parameter and the second parameter and sending the first intermediate value to the other party; and obtaining a second intermediate value calculated by the participating partner based on the first parameter and the second parameter.
A key determination submodule for determining a key based on the second intermediate value and the first intermediate value.
In one embodiment, the first parameter is a prime number P greater than or equal to 5, and the intermediate value calculation sub-module may include:
a first intermediate element obtaining unit configured to obtain any element in the set {2,3, … …, P-2} as a first intermediate element.
And the first intermediate value calculation unit is used for calculating a first intermediate value based on the first intermediate element, the first parameter and the second parameter.
In one embodiment, the second parameter is any element in the set {2,3, … …, P-2}.
In one embodiment, the data encryption module 404 may include:
and the symmetric encryption sub-module is used for symmetrically encrypting the held participation data set through the secret key to obtain the participation encryption set.
In one embodiment, the participating party data sets are independent of the participating party data sets.
The above-mentioned individual modules in the privacy intersection device may be implemented in whole or in part by software, hardware, and combinations thereof. The above modules may be embedded in hardware or may be independent of a processor in the computer device, or may be stored in software in a memory in the computer device, so that the processor may call and execute operations corresponding to the above modules.
Based on the same inventive concept, the embodiment of the application also provides a privacy intersection system for realizing the privacy intersection method. The implementation scheme of the system for solving the problem is similar to that described in the above method, so the specific limitation in the embodiment of the privacy intersection system provided below can be referred to the limitation of the privacy intersection method hereinabove, and will not be repeated here.
In one embodiment, a privacy resolution system may include: participating in the method, participating in the other party and participating in the third party.
In this embodiment, the participating party may acquire a key common to the participating party, encrypt the participating party data set based on the key to obtain a participating party encrypted set, and send the participating party encrypted set to the participating third party. Wherein participating in the present data set comprises: the user is participating in the data with unique identification that the present application holds.
In this embodiment, the participating partner may encrypt the participating partner data set based on the key to obtain a participating partner encrypted set, and send the participating partner encrypted set to the participating third party. Wherein the participating partner data set includes: the user participates in the data with unique identification which is reserved by the user;
in this embodiment, the participating third party may acquire the participating party encryption set and the participating party encryption set, calculate the participating party encryption set and the participating party encryption set to obtain an encryption intersection, and send the encryption intersection to the participating party.
In one embodiment, a computer device is provided, which may be a server, the internal structure of which may be as shown in fig. 5. The computer device includes a processor, a memory, an Input/Output interface (I/O) and a communication interface. The processor, the memory and the input/output interface are connected through a system bus, and the communication interface is connected to the system bus through the input/output interface. Wherein the processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, computer programs, and a database. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage media. The database of the computer equipment is used for storing data such as the encryption set of the participating party and the encryption set of the participating party. The input/output interface of the computer device is used to exchange information between the processor and the external device. The communication interface of the computer device is used for communicating with an external terminal through a network connection. The computer program is executed by a processor to implement a privacy-preserving method.
It will be appreciated by those skilled in the art that the structure shown in FIG. 5 is merely a block diagram of some of the structures associated with the present inventive arrangements and is not limiting of the computer device to which the present inventive arrangements may be applied, and that a particular computer device may include more or fewer components than shown, or may combine some of the components, or have a different arrangement of components.
In one embodiment, a computer device is provided comprising a memory and a processor, the memory having stored therein a computer program, the processor when executing the computer program performing the steps of: acquiring a key common to the participating parties; encrypting the participating party data set based on the secret key to obtain a participating party encryption set, and transmitting the participating party encryption set to a participating third party; the participating method comprises the following steps: the user participates in the data with unique identification which is reserved by the user; acquiring an encryption intersection calculated by a participating third party based on the encryption set of the participating party; the participating third party is used for acquiring the participating party encryption set and the participating party encryption set obtained by encrypting the held participating party data set by the participating party through the secret key; calculating the encryption set of the participating party and the encryption set of the participating party to obtain an encryption intersection; wherein the participating partner data set includes: the user is participating in the data with unique identification that the present application holds.
In one embodiment, the processor, when executing the computer program, further implements obtaining a key common to the participating parties, may include: acquiring a first parameter, and determining a second parameter based on the first parameter; calculating a first intermediate value based on the first parameter and the second parameter, and sending the first intermediate value to the participating party; obtaining a second intermediate value calculated by the participating party based on the first parameter and the second parameter; a key is determined based on the second intermediate value and the first intermediate value.
In one embodiment, the first parameter is a prime number P greater than or equal to 5, and the processor when executing the computer program further performs calculation based on the first parameter and the second parameter to obtain a first intermediate value, which may include: any element in the set {2,3, … …, P-2} is obtained as a first intermediate element; the first parameter and the second parameter are calculated to obtain a first intermediate value based on the first intermediate element.
In one embodiment, the processor when executing the computer program also implements the second parameter as any element in the set {2,3, … …, P-2}.
In one embodiment, the processor, when executing the computer program, further implements a participation method encryption set obtained by encrypting the participation method data set based on the key, and may include: and symmetrically encrypting the held participating party data set through the secret key to obtain the participating party encrypted set.
In one embodiment, the processor when executing the computer program further implements: the participating party data set and the participating party data set are mutually independent.
In one embodiment, a computer readable storage medium is provided having a computer program stored thereon, which when executed by a processor, performs the steps of: acquiring a key common to the participating parties; encrypting the participating party data set based on the secret key to obtain a participating party encryption set, and transmitting the participating party encryption set to a participating third party; the participating method comprises the following steps: the user participates in the data with unique identification which is reserved by the user; acquiring an encryption intersection calculated by a participating third party based on the encryption set of the participating party; the participating third party is used for acquiring the participating party encryption set and the participating party encryption set obtained by encrypting the held participating party data set by the participating party through the secret key; calculating the encryption set of the participating party and the encryption set of the participating party to obtain an encryption intersection; wherein the participating partner data set includes: the user is participating in the data with unique identification that the present application holds.
In one embodiment, the computer program, when executed by the processor, further enables obtaining a key common to the participating parties, may include: acquiring a first parameter, and determining a second parameter based on the first parameter; calculating a first intermediate value based on the first parameter and the second parameter, and sending the first intermediate value to the participating party; obtaining a second intermediate value calculated by the participating party based on the first parameter and the second parameter; a key is determined based on the second intermediate value and the first intermediate value.
In one embodiment, the first parameter is a prime number P greater than or equal to 5, and the computer program when executed by the processor further performs calculation based on the first parameter and the second parameter to obtain a first intermediate value, which may include: any element in the set {2,3, … …, P-2} is obtained as a first intermediate element; the first parameter and the second parameter are calculated to obtain a first intermediate value based on the first intermediate element.
In one embodiment, the computer program, when executed by the processor, may also implement the second parameter as any element of the set {2,3, … …, P-2}.
In one embodiment, the computer program, when executed by the processor, further implements a participation method encryption method for encrypting a participation method data set based on a key, and may include: and symmetrically encrypting the held participating party data set through the secret key to obtain the participating party encrypted set.
In one embodiment, the computer program may also implement, when executed by a processor: the participating party data set and the participating party data set are mutually independent.
In one embodiment, a computer program product is provided comprising a computer program which, when executed by a processor, performs the steps of: acquiring a key common to the participating parties; encrypting the participating party data set based on the secret key to obtain a participating party encryption set, and transmitting the participating party encryption set to a participating third party; the participating method comprises the following steps: the user participates in the data with unique identification which is reserved by the user; acquiring an encryption intersection calculated by a participating third party based on the encryption set of the participating party; the participating third party is used for acquiring the participating party encryption set and the participating party encryption set obtained by encrypting the held participating party data set by the participating party through the secret key; calculating the encryption set of the participating party and the encryption set of the participating party to obtain an encryption intersection; wherein the participating partner data set includes: the user is participating in the data with unique identification that the present application holds.
In one embodiment, the computer program, when executed by the processor, enables the acquisition of a key common to the participating parties, may include: acquiring a first parameter, and determining a second parameter based on the first parameter; calculating a first intermediate value based on the first parameter and the second parameter, and sending the first intermediate value to the participating party; obtaining a second intermediate value calculated by the participating party based on the first parameter and the second parameter; a key is determined based on the second intermediate value and the first intermediate value.
In one embodiment, the first parameter is a prime number P greater than or equal to 5, and the computer program, when executed by the processor, performs calculation of a first intermediate value based on the first parameter and the second parameter, may include: any element in the set {2,3, … …, P-2} is obtained as a first intermediate element; the first parameter and the second parameter are calculated to obtain a first intermediate value based on the first intermediate element.
In one embodiment, the computer program, when executed by the processor, may implement the second parameter as any element of the set {2,3, … …, P-2}.
In one embodiment, a computer program, when executed by a processor, implements a participation method encryption method for encrypting a participation method data set based on a key, may include: and symmetrically encrypting the held participating party data set through the secret key to obtain the participating party encrypted set.
In one embodiment, the computer program may also implement, when executed by a processor: the participating party data set and the participating party data set are mutually independent.
It should be noted that, the user information (including but not limited to user equipment information, user personal information, etc.) and the data (including but not limited to data for analysis, stored data, presented data, etc.) related to the present application are information and data authorized by the user or sufficiently authorized by each party, and the collection, use and processing of the related data need to comply with the related laws and regulations and standards of the related country and region.
Those skilled in the art will appreciate that implementing all or part of the above described methods may be accomplished by way of a computer program stored on a non-transitory computer readable storage medium, which when executed, may comprise the steps of the embodiments of the methods described above. Any reference to memory, database, or other medium used in embodiments provided herein may include at least one of non-volatile and volatile memory. The nonvolatile Memory may include Read-Only Memory (ROM), magnetic tape, floppy disk, flash Memory, optical Memory, high density embedded nonvolatile Memory, resistive random access Memory (ReRAM), magnetic random access Memory (Magnetoresistive Random Access Memory, MRAM), ferroelectric Memory (Ferroelectric Random Access Memory, FRAM), phase change Memory (Phase Change Memory, PCM), graphene Memory, and the like. Volatile memory can include random access memory (Random Access Memory, RAM) or external cache memory, and the like. By way of illustration, and not limitation, RAM can be in the form of a variety of forms, such as static random access memory (Static Random Access Memory, SRAM) or dynamic random access memory (Dynamic Random Access Memory, DRAM), and the like. The databases referred to in the embodiments provided herein may include at least one of a relational database and a non-relational database. The non-relational database may include, but is not limited to, a blockchain-based distributed database, and the like. The processor referred to in the embodiments provided in the present application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic unit, a data processing logic unit based on quantum computing, or the like, but is not limited thereto.
The technical features of the above embodiments may be arbitrarily combined, and all possible combinations of the technical features in the above embodiments are not described for brevity of description, however, as long as there is no contradiction between the combinations of the technical features, they should be considered as the scope of the description.
The foregoing examples illustrate only a few embodiments of the application and are described in detail herein without thereby limiting the scope of the application. It should be noted that it will be apparent to those skilled in the art that several variations and modifications can be made without departing from the spirit of the application, which are all within the scope of the application. Accordingly, the scope of the application should be assessed as that of the appended claims.

Claims (11)

1. A method of privacy exchange, the method comprising:
acquiring a key common to the participating parties;
encrypting the participation party data set based on the secret key to obtain a participation party encryption set, and transmitting the participation party encryption set to a participation third party; the participating party data set comprises: the user stores the data with the unique identification in the participating party;
acquiring an encryption intersection calculated by the participating third party based on the encryption set of the participating party;
the participating third party is used for acquiring a participating party encryption set and a participating party encryption set obtained by encrypting the held participating party data set by the participating party through the secret key; performing intersection calculation on the participating party encryption set and the participating party encryption set to obtain the encryption intersection; wherein the participating partner data set includes: and the user stores the data with the unique identification in the participating party.
2. The method of claim 1, wherein the obtaining a key common to the participating parties comprises:
acquiring a first parameter, and determining a second parameter based on the first parameter;
calculating a first intermediate value based on the first parameter and the second parameter, and sending the first intermediate value to the participating party; the second intermediate value calculated by the participating partner based on the first parameter and the second parameter is obtained;
a key is determined based on the second intermediate value and the first intermediate value.
3. The method according to claim 2, characterized in that said first parameter is a prime number P greater than or equal to 5; the calculating, based on the first parameter and the second parameter, a first intermediate value includes:
any element in the set {2,3, … …, P-2} is obtained as a first intermediate element;
and calculating the first intermediate value based on the first intermediate element and the first parameter and the second parameter.
4. A method according to claim 3, wherein the second parameter is any element of the set {2,3, … …, P-2}.
5. The method of claim 1, wherein encrypting the participating party data set based on the key results in a participating party encrypted set, comprising:
and symmetrically encrypting the held participation party data set through the secret key to obtain the participation party encryption set.
6. The method according to claim 1, wherein the method further comprises: the participating party data set and the participating party data set are mutually independent.
7. A privacy resolution system, the system comprising: participation in the method, participation in the other party and participation in the third party;
the participating party acquires a key common to the participating party, encrypts a participating party data set based on the key to obtain a participating party encryption set, and sends the participating party encryption set to the participating third party; wherein the participating party data set comprises: the user stores the data with the unique identification in the participating party;
the participating party encrypts the participating party data set based on the secret key to obtain a participating party encrypted set, and sends the participating party encrypted set to the participating third party; wherein the participating partner data set includes: the user stores the data with the unique identification in the participating party;
the participating third party obtains the participating party encryption set and the participating party encryption set, calculates the participating party encryption set and the participating party encryption set to obtain an encryption intersection, and sends the encryption intersection to the participating party.
8. A privacy-seeking communication device, the device comprising:
the key acquisition module is used for acquiring a key common to the participating parties;
the data encryption module is used for encrypting the participation party data set based on the secret key to obtain a participation party encryption set, and transmitting the participation party encryption set to a participation third party; the participating party data set comprises: the user stores the data with the unique identification in the participating party;
the intersection acquisition module is used for acquiring an encryption intersection calculated by the participating third party based on the participating party encryption set;
the participating third party is used for acquiring a participating party encryption set and a participating party encryption set obtained by encrypting the held participating party data set by the participating party through the secret key; performing intersection calculation on the participating party encryption set and the participating party encryption set to obtain the encryption intersection; wherein the participating partner data set includes: and the user stores the data with the unique identification in the participating party.
9. A computer device comprising a memory and a processor, the memory storing a computer program, characterized in that the processor implements the steps of the method of any of claims 1 to 6 when the computer program is executed.
10. A computer readable storage medium, on which a computer program is stored, characterized in that the computer program, when being executed by a processor, implements the steps of the method of any of claims 1 to 6.
11. A computer program product comprising a computer program, characterized in that the computer program, when being executed by a processor, implements the steps of the method of any of claims 1 to 6.
CN202310574514.7A 2023-05-22 2023-05-22 Privacy intersection method, device, system, computer equipment and storage medium Pending CN117010008A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310574514.7A CN117010008A (en) 2023-05-22 2023-05-22 Privacy intersection method, device, system, computer equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310574514.7A CN117010008A (en) 2023-05-22 2023-05-22 Privacy intersection method, device, system, computer equipment and storage medium

Publications (1)

Publication Number Publication Date
CN117010008A true CN117010008A (en) 2023-11-07

Family

ID=88571717

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310574514.7A Pending CN117010008A (en) 2023-05-22 2023-05-22 Privacy intersection method, device, system, computer equipment and storage medium

Country Status (1)

Country Link
CN (1) CN117010008A (en)

Similar Documents

Publication Publication Date Title
Yu et al. A blockchain-based shamir’s threshold cryptography scheme for data protection in industrial internet of things settings
WO2021197037A1 (en) Method and apparatus for jointly performing data processing by two parties
Chen et al. When homomorphic encryption marries secret sharing: Secure large-scale sparse logistic regression and applications in risk control
CN108900533B (en) Shared data privacy protection method, system, terminal and medium
US9535658B2 (en) Secure private database querying system with content hiding bloom filters
US20200401726A1 (en) System and method for private integration of datasets
CN104521178A (en) Method and system for secure multiparty cloud computation
Erkin et al. Privacy-preserving distributed clustering
JP2020092414A (en) Encrypted data sharing management for blockchain
CN113761563B (en) Data intersection calculation method and device and electronic equipment
CN113179158B (en) Multi-party combined data processing method and device for controlling bandwidth
CN113221153B (en) Graph neural network training method and device, computing equipment and storage medium
Li et al. An efficient blind filter: Location privacy protection and the access control in FinTech
WO2018099577A1 (en) System and method for providing a collective decentralized authority for sharing sensitive data
CN115130880A (en) Financial electric power data fusion method and medium based on federal learning under asymmetric scene
CN115842627A (en) Decision tree evaluation method, device, equipment and medium based on secure multi-party computation
CN112241537A (en) Longitudinal federated learning modeling method, system, medium and equipment
CN115913537A (en) Data intersection method and system based on privacy protection and related equipment
CN110968883A (en) Data management method and device based on block chain technology and storage medium
CN109409111B (en) Encrypted image-oriented fuzzy search method
CN117034304A (en) Data processing method, apparatus, computer device, storage medium, and program product
CN113792282B (en) Identity data verification method and device, computer equipment and storage medium
CN117010008A (en) Privacy intersection method, device, system, computer equipment and storage medium
Zhang et al. Quantum homomorphic encryption based on quantum obfuscation
Liu An application of secure data aggregation for privacy-preserving machine learning on mobile devices

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination