A data processing method, system, device and computer-readable storage medium

By obtaining Yao shared set, weight data set and random number set, generating information to be transmitted, and using inadvertent transmission method to transmit this information, calculating the weight and value of intersection, the confidentiality problem of intersection weight and calculation in privacy calculation is solved, and efficient privacy data processing is achieved.

CN116070271BActive Publication Date: 2025-06-24SHENZHEN ANHENG INFORMATION SECURITY TECHNOLOGY CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310090739.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-01-17
Publication Date
2025-06-24
Estimated Expiration
2043-01-17

AI Technical Summary

Technical Problem

In the field of privacy computing and security multi-party computing, how to calculate the intersection weight sum of the privacy sets held by both parties without revealing any collection element information.

Method used

By obtaining Yao shared sets, weight data sets and random number sets, information to be transmitted is generated, and this information is transmitted using an inadvertent transmission method. Compute the target and value of the random set of numbers and transfer it to the other party, causing it to calculate the weight and value of the intersection.

Benefits of technology

The data weight summation between two privacy calculation participants is realized, ensuring the confidentiality and high applicability of information.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116070271B_ABST
    Figure CN116070271B_ABST
Patent Text Reader

Abstract

The present application discloses a data processing method, system, device, and computer-readable storage medium, which are applied to a first privacy computing participant. The method includes obtaining a first Yao sharing set; generating a random number set corresponding to the first private data; generating information to be transmitted corresponding to the first private data based on the first Yao sharing set, the weight data set, and the random number set; transmitting the information to be transmitted to a second privacy computing participant based on the oblivious transfer method and the second Yao sharing set; calculating the target sum value of the random number set; and transmitting the target sum value to the second privacy computing participant, so that the second privacy computing participant calculates the weighted sum value of the first private data and the second private data under the weight data set based on the received data and the target sum value. The present application realizes the weighted privacy summation of data between two privacy computing participants by means of garbled circuits, the Yao sharing principle, and the oblivious transfer method, with high confidentiality and good applicability of the method.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the technical fields of privacy computing and secure multi-party computing. More specifically, it relates to a data processing method, system, device, and computer-readable storage medium. Background Art

[0002] In the fields of privacy computing and secure multi-party computing, a typical application scenario is private set intersection. Taking two parties as an example, participant P0 holds a private set X, and participant P1 holds a private set Y. After performing private set intersection, both parties obtain the intersection result X ∩ Y without revealing any information about the elements of the private set other than the intersection. Private set intersection has a wide range of application scenarios, such as financial institutions calculating the common customer groups without exposing their own customers. However, in some scenarios, the two parties may want to calculate the weighted sum of the private set intersection but do not want to disclose any information about the set elements. For example, participant P0 holds a weighted set X = {(x1, v1), (x2, v2),..., (x n , v n )}, and participant P1 holds a set Y = {y1, y2,..., y n}, and they want to calculate the weighted sum ∑V X∩Y of the X ∩ Y set without disclosing any set information.

[0003] In summary, how to perform weighted summation of the private intersection of two parties is an urgent problem to be solved by those skilled in the art in the current field. Summary of the Invention

[0004] The purpose of this application is to provide a data processing method, which can, to a certain extent, solve the technical problem of how to perform weighted summation of the private intersection of two parties. This application also provides a data processing system, device, and computer-readable storage medium.

[0005] To achieve the above purpose, this application provides the following technical solutions:

[0006] A data processing method, applied to a first privacy computing participant, includes:

[0007] Obtain a first Yao sharing set, where the first Yao sharing set includes a sharing set allocated to the first privacy computing participant determined based on a target judgment result, and the target judgment result includes a judgment result of determining whether each data in the first private data belongs to the second private data based on a garbled circuit;

[0008] Obtain the weight data set corresponding to the first private data;

[0009] Generate a random number set corresponding to the first private data;

[0010] Generate the information to be transmitted corresponding to the first private data based on the first Yao sharing set, the weight data set, and the random number set;

[0011] Transmit the information to be transmitted to the second private computing participant based on the oblivious transfer method and the second Yao sharing set, where the second Yao sharing set includes the sharing set allocated to the second private computing participant determined based on the target judgment result;

[0012] Calculate the target sum value of the random number set;

[0013] Transmit the target sum value to the second private computing participant, so that the second private computing participant calculates the weighted sum value of the first private data and the second private data under the weight data set based on the received data and the target sum value, where the received data includes the data obtained by the second private computing participant based on receiving the information to be transmitted using the oblivious transfer method and the second sharing set;

[0014] Wherein, the first private data and the weight data set belong to the first private computing participant, and the second private data belongs to the second private computing participant.

[0015] Preferably, obtaining the first Yao sharing set includes:

[0016] Obtain the first Yao sharing set, where the first Yao sharing set includes

[0017] Wherein, represents the first Yao sharing set; X = {x1, x2,..., x n} represents the first private data, represents the Yao sharing value indicating whether the data x i in the first Yao sharing set belongs to the second private data, i = 1, 2,..., n, and n represents the total number of data.

[0018] Preferably, generating the information to be transmitted corresponding to the first private data based on the first Yao sharing set, the weight data set, and the random number set includes:

[0019] Take every two adjacent uncomputed Yao sharing values in the first Yao sharing set as data to be operated on;

[0020] Determine the weight information of each data to be operated on in the weight data set;

[0021] Determine the random number value of each data to be operated on in the random number set;

[0022] For each of the to-be-operated data, according to the first operation formula, generate corresponding to-be-transmitted sub-information based on the to-be-operated data, the weight information, and the random value;

[0023] Take all the to-be-transmitted sub-information as the to-be-transmitted information;

[0024] The first operation formula includes:

[0025]

[0026]

[0027]

[0028]

[0029] Wherein, m0, m1, m2, m3 represent the to-be-transmitted sub-information; represents the currently selected to-be-operated data; v i represents the weight information corresponding to the data x in the first privacy data i corresponding to v i+1 and the weight information corresponding to the data x in the first privacy data i+1 corresponding to v; r j represents the random value; represents the exclusive OR operation.

[0030] Preferably, calculating the target sum value of the random number set includes:

[0031] Calculate the target sum value of the random number set according to the second operation formula;

[0032] The second operation formula includes:

[0033]

[0034] Wherein, e represents the target sum value; represents rounding up.

[0035] Preferably, the confusion circuit includes a first input terminal, a second input terminal, a third input terminal, an exclusive OR operation gate connected to the first input terminal and the second input terminal, and an AND gate connected to the output terminal of the exclusive OR operation gate and the third input terminal;

[0036] Among them, the first input terminal is used to input the value of the target binary digit in the first binary data; the second input terminal is used to input the value of the target binary digit in the second binary data; the input value of the third input terminal is 1 in the initial round, and the input value of the third input terminal in the remaining rounds is the output result of the AND gate in the previous round of operation process.

[0037] A data processing method is applied to the second privacy computing participant, including:

[0038] Obtain the second Yao sharing set, where the second Yao sharing set includes the sharing set allocated to the second privacy computing participant determined based on the target judgment result, and the target judgment result includes the judgment result of determining whether each data in the first privacy data belongs to the second privacy data based on the garbled circuit.

[0039] Based on the oblivious transfer method and the second Yao sharing set, determine the received data corresponding to the information to be transmitted. The information to be transmitted includes the information to be transmitted corresponding to the first privacy data generated by the first privacy computing participant based on the weight data set corresponding to the first privacy data, the random number set corresponding to the first privacy data, and the first Yao sharing set. The first Yao sharing set includes the sharing set allocated to the first privacy computing participant determined based on the target judgment result.

[0040] Receive the target sum value of the random number set transmitted by the first privacy computing participant.

[0041] Based on the received data and the target sum value, calculate the weighted sum value of the first privacy data and the second privacy data under the weight data set.

[0042] Among them, the first privacy data and the weight data set belong to the first privacy computing participant, and the second privacy data belongs to the second privacy computing participant.

[0043] Preferably, the determining the received data corresponding to the information to be transmitted based on the oblivious transfer method and the second Yao sharing set includes:

[0044] Based on the oblivious transfer method and the second Yao sharing set, determine the received sub-data corresponding to each sub-information to be transmitted in the information to be transmitted through the third operation formula.

[0045] Use all the received sub-data as the received data.

[0046] The third operation formula includes:

[0047]

[0048] where X = {x1, x2,..., x n} represents the first privacy data, represents the Yao sharing value indicating whether the data x i in the first Yao sharing set belongs to the second privacy data, i = 1, 2,..., n, Y = {y1, y2,..., y n} represents the second privacy data, represents the Yao sharing value indicating whether the data x i in the second Yao sharing set belongs to the second privacy data, i = 1, 2,..., n; n represents the total number of data; represents the data to be calculated currently selected; v i represents the weight information corresponding to the data x i in the first privacy data, v i+1 is the weight information corresponding to the data x i+1 in the first privacy data; r j represents a random value; z j represents the received sub - data corresponding to the data to be calculated currently selected; represents the exclusive - or operation.

[0049] Preferably, calculating the weighted sum value of the first privacy data and the second privacy data under the weight data set based on the received data and the target sum value includes:

[0050] Calculating the weighted sum value of the first privacy data and the second privacy data under the weight data set based on the received data and the target sum value through the fourth operation formula;

[0051] The fourth operation formula includes:

[0052]

[0053] where θ represents the weighted sum value; e represents the target sum value; represents rounding up.

[0054] A data processing system, applied to the first privacy - computing participant, includes:

[0055] A first acquisition module, configured to acquire a first Yao sharing set, where the first Yao sharing set includes a sharing set allocated to the first privacy - computing participant determined based on a target judgment result, and the target judgment result includes a judgment result of determining whether each data in the first privacy data belongs to the second privacy data based on a garbled circuit;

[0056] A second acquisition module, configured to acquire a weight data set corresponding to the first private data;

[0057] A first generation module, configured to generate a random number set corresponding to the first private data;

[0058] A second generation module, configured to generate information to be transmitted corresponding to the first private data based on the first Yao sharing set, the weight data set, and the random number set;

[0059] A first transmission module, configured to transmit the information to be transmitted to a second privacy computing participant based on an oblivious transfer method and a second Yao sharing set, where the second Yao sharing set includes a sharing set allocated to the second privacy computing participant determined based on the target judgment result;

[0060] A first calculation module, configured to calculate a target sum value of the random number set;

[0061] A second transmission module, configured to transmit the target sum value to the second privacy computing participant, so that the second privacy computing participant calculates a weighted sum value of the first private data and the second private data under the weight data set based on the received data and the target sum value, where the received data includes data obtained by the second privacy computing participant receiving the information to be transmitted based on the oblivious transfer method and the second sharing set;

[0062] Wherein, the first private data and the weight data set belong to the first privacy computing participant, and the second private data belongs to the second privacy computing participant.

[0063] A data processing device, comprising:

[0064] A memory, configured to store a computer program;

[0065] A processor, configured to implement the steps of any one of the above data processing methods when executing the computer program.

[0066] A computer-readable storage medium, in which a computer program is stored, and when the computer program is executed by a processor, the steps of any one of the above data processing methods are implemented.

[0067] A data processing method provided by this application is applied to a first privacy computing participant. The first Yao sharing set is obtained. The first Yao sharing set includes a sharing set allocated to the first privacy computing participant determined based on a target judgment result. The target judgment result includes a judgment result of determining whether each data in the first private data belongs to the second private data based on a garbled circuit. The weight data set corresponding to the first private data is obtained. A random number set corresponding to the first private data is generated. Based on the first Yao sharing set, the weight data set, and the random number set, the information to be transmitted corresponding to the first private data is generated. The information to be transmitted is transmitted to the second privacy computing participant based on the oblivious transfer method and the second Yao sharing set. The second Yao sharing set includes a sharing set allocated to the second privacy computing participant determined based on the target judgment result. The target sum value of the random number set is calculated. The target sum value is transmitted to the second privacy computing participant, so that the second privacy computing participant calculates the weighted sum value of the first private data and the second private data under the weight data set based on the received data and the target sum value. The received data includes the data obtained by the second privacy computing participant based on the oblivious transfer method and the second sharing set after receiving the information to be transmitted. Among them, the first private data and the weight data set belong to the first privacy computing participant, and the second private data belongs to the second privacy computing participant. This application realizes the weighted summation of data between two privacy computing participants by means of a garbled circuit, the Yao sharing principle, and the oblivious transfer method. During the whole process, the privacy computing participants do not transmit their own data to each other. The method has high confidentiality and good applicability. A data processing system, device, and computer-readable storage medium provided by this application also solve the corresponding technical problems. BRIEF DESCRIPTION OF THE DRAWINGS

[0068] In order to more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the following will briefly introduce the drawings required for use in the description of the embodiments or the prior art. Obviously, the drawings in the following description are only the embodiments of this application. For those of ordinary skill in the art, other drawings can be obtained according to the provided drawings without creative efforts.

[0069] Figure 1 is the structural diagram of a standard OT;

[0070] Figure 2 is the first flowchart of a data processing method provided by an embodiment of this application;

[0071] Figure 3 is a schematic structural diagram of a garbled circuit of this application;

[0072] Figure 4 is another schematic structural diagram of a garbled circuit of this application;

[0073] Figure 5The second flowchart of a data processing method provided by an embodiment of the present application;

[0074] Figure 6 The structural schematic diagram of a data processing system provided by an embodiment of the present application;

[0075] Figure 7 The structural schematic diagram of a data processing device provided by an embodiment of the present application;

[0076] Figure 8 Another structural schematic diagram of a data processing device provided by an embodiment of the present application. Detailed implementation manners

[0077] Next, the technical solutions in the embodiments of the present application will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present application.

[0078] To facilitate the understanding of the data processing solution of the present application, the technologies applied in the present application will be described as follows:

[0079] 1. Garbled Circuit:

[0080] The garbled circuit (GC) was initially proposed by Academician Yao Qizhi in 1986 as a circuit encryption idea to solve secure two-party computation. In 2012, Bellare et al. gave a specific formal definition of the garbled circuit, which enables two parties to jointly compute a certain function circuit without knowing each other's data. The key lies in that the computable function problems can theoretically be converted into a set of circuits, represented by adder circuits, multiplier circuits, comparison circuits, etc., and the circuit is essentially composed of individual logic gates, including AND gates, NOT gates, OR gates, NAND gates, etc. Even complex calculation processes, such as deep learning, can be converted into circuits.

[0081] Yao sharing:

[0082] The result of constructing a garbled circuit using the point-and-permute technique is a Yao sharing. In the garbled circuit, assuming P0 is the circuit generator and P1 is the circuit evaluator, based on the point-and-permute technique, the circuit evaluator randomly selects a κ-bit string R and R[0]=1. For each wire in the garbled circuit, random keys k0 and It includes an important feature, k0[0] = 1 - k1[0], and the first bit of ki-1 is called the permutation bit. The Yao sharing state of a secret value x can be represented as held by P0 and held by P1 If you want to recover the secret, it is only necessary for Pi-1 to send its permutation bit to Pi, and Pi can recover the secret In the above symbols, ⊕ represents exclusive OR.

[0083] Oblivious Transfer:

[0084] Oblivious Transfer (OT) was first proposed by Rabin in 1981. In 1985, Even et al. proposed a more widely used standard OT protocol, which involves two parties: the sender Sender who holds two messages m0, m1, and the receiver Receiver who holds a selection bit c ∈ {0, 1}. OT allows the Receiver to obtain mc, but cannot obtain any information about the other message m1-c. At the same time, the Sender also cannot obtain any information about the selection bit c. The structure of the standard OT is as Figure 1 shown.

[0085] In addition to the above OT protocol where the receiver obtains one of the two messages (1-out-of-2 OT, OT1 2 ), there is also a variant of OT1 where one of n messages is selected. n

[0086] Please refer to Figure 2 , Figure 2 which is the first flowchart of a data processing method provided by an embodiment of the present application.

[0087] A data processing method provided by an embodiment of the present application, which is applied to the first privacy computing party, may include the following steps:

[0088] Step S101: Obtain a first Yao sharing set, where the first Yao sharing set includes a sharing set allocated to the first privacy computing party determined based on a target judgment result, and the target judgment result includes a judgment result of determining whether each data in the first privacy data belongs to the second privacy data based on a garbled circuit.

[0089] ​In practical applications, the first privacy computing participant may first obtain the first Yao sharing set, and the first Yao sharing set includes the sharing set allocated to the first privacy computing participant determined based on the target judgment result. The target judgment result includes the judgment result of determining whether each data in the first privacy data belongs to the second privacy data based on the garbled circuit. The types, contents, etc. of the first privacy data and the second privacy data can be determined according to actual needs, and the present application does not make specific limitations here.

[0090] In a specific application scenario, the structure of the garbled circuit may be as Figure 3 shown. The garbled circuit includes a first input terminal, a second input terminal, a third input terminal, an exclusive OR operation gate connected to the first input terminal and the second input terminal, and an AND gate connected to the output terminal of the exclusive OR operation gate and the third input terminal; wherein, the first input terminal is used to input the value of the target binary bit in the binary first data; the second input terminal is used to input the value of the target binary bit in the binary second data; the input value of the third input terminal is 1 in the initial round, and the input value of the third input terminal in the remaining rounds is the output result of the AND gate in the previous round of operation process.

[0091] It should be noted that when it is necessary to compare the sizes of two data, the two data can be converted into binary data. For example, the data p and q can be expressed as p f p f-1 ...p1 and q f q f-1 ...q1, where p b , q b ∈{0,1}, b = 1, 2,..., f, and f represents the total number of bits of the binary number. Then, only the induction method can be used to compare whether these two data are equal. Define the variable Initialize c1 = 1, p i p i-1 ...p1 = q i q i-1 ...q1 if and only if p i = q i and p i-1 ...p1 = q i-1 ...q1. Obviously, through c b-1 = 1 and p i = q i it can be deduced that c b . Given p i , q i and c b , c b+1 can be summarized as: p i = q i and c b = 1, and this summary is equivalent to the garbled circuit of the present application.

[0092] It should be noted that the garbled circuit can have only Figure 3 one circuit module as shown. In this case, only the input in each round of operation needs to be changed; or b circuit modules can be connected in series to obtain a circuit for comparing whether p f p f-1 ... p1 and q f q f-1 ... q1 are equal. Its structure is as Figure 4 shown, and the present application does not make specific limitations here.

[0093] It should also be noted that the function of the privacy equality test function fpet constructed based on the garbled circuit of the present application is as follows: If the participating party A inputs x and the participating party B inputs y, after the function is executed, the participating party A obtains The participating party B obtains where k0 is the random key in the Yao sharing, s is the calculation result of whether x is equal to y. If x = y, then Otherwise And only A needs to permute its bits and send it to B, and B can recover the secret

[0094] In a specific application scenario, in the process of determining whether each data in the first private data belongs to the second private data based on the garbled circuit and transmitting the corresponding Yao sharing set to the first private computing party and the second private computing party, the first private computing party can input x and the participating party can input y i ∈Y to execute the fpet function one by one; the participating party A obtains The participating party B obtains The participating party A calculates The participating party B calculates If x ∈ Y, then Otherwise Furthermore, by using a method similar to that of Pinkas et al. in 2014 to map elements to a hash table for optimization, the complexity of the above method for determining whether multiple elements belong to each other's sets can be reduced from b to a constant level.

[0095] In a specific application scenario, according to the garbled circuit of the present application, the first Yao sharing set can include Among them, represents the first Yao sharing set; X = {x1, x2,..., x n} represents the first private data, represents the data x in the first Yao sharing set iWhether it is the Yao sharing value of the second private data, i = 1, 2,..., n, where n represents the total number of data. Correspondingly, the second Yao sharing set may include Among them, represents the second Yao sharing set; Y = {y1, y2,..., y n} represents the first private data, represents the Yao sharing value indicating whether the data x i in the second Yao sharing set belongs to the second private data, i = 1, 2,..., n.

[0096] Step S102: Obtain the weight data set corresponding to the first private data.

[0097] Step S103: Generate a random number set corresponding to the first private data.

[0098] In practical applications, after obtaining the first Yao sharing set, the first private computing party can obtain the weight data set corresponding to the first private data and generate a random number set corresponding to the first private data, so as to perform privacy weight summation on the weight data set, the first private data, and the second private data by means of this random number set.

[0099] Step S104: Generate the information to be transmitted corresponding to the first private data based on the first Yao sharing set, the weight data set, and the random number set.

[0100] Step S105: Transmit the information to be transmitted to the second private computing party based on the oblivious transfer method and the second Yao sharing set, where the second Yao sharing set includes the sharing set allocated to the second private computing party determined based on the target judgment result.

[0101] In practical applications, after generating the random number set corresponding to the first private data, the first private computing party can generate the information to be transmitted corresponding to the first private data based on the first Yao sharing set, the weight data set, and the random number set, and transmit the information to be transmitted to the second private computing party based on the oblivious transfer method and the second Yao sharing set, where the second Yao sharing set includes the sharing set allocated to the second private computing party determined based on the target judgment result.

[0102] In a specific application scenario, when generating the information to be transmitted corresponding to the first private data based on the first Yao sharing set, the weight data set, and the random number set, the first private computing party can be based on OT1 4A method for caching and transmitting corresponding information to a second privacy computing participant, that is, each pair of adjacent uncomputed Yao sharing values in the first Yao sharing set can be used as data to be computed; determining the weight information of each data to be computed in the weight dataset; determining the random values of each data to be computed in the random number set; for each data to be computed, generating a corresponding sub-information to be transmitted based on the data to be computed, the weight information, and the random value through a first operation formula; using all the sub-information to be transmitted as the information to be transmitted;

[0103] The first operation formula includes:

[0104]

[0105]

[0106]

[0107]

[0108] Among them, m0, m1, m2, and m3 represent the sub-information to be transmitted; represents the currently selected data to be computed; v i represents the weight information corresponding to the data x in the first privacy data i corresponding to the weight information, v i+1 corresponding to the data x in the first privacy data i+1 corresponding to the weight information; r j represents the random value; represents the exclusive OR operation.

[0109] Correspondingly, in the process of receiving data, the second privacy computing participant can input a selection bit and then, through a third operation formula, determine the received sub-data corresponding to each sub-information to be transmitted in the information to be transmitted based on the oblivious transfer method and the second Yao sharing set; use all the received sub-data as the received data;

[0110] The third operation formula includes:

[0111]

[0112] Among them, z j represents the received sub-data corresponding to the currently selected data to be computed.

[0113] It should be noted that when there is one remaining Yao sharing value in the first Yao sharing set, the first privacy computing participant and the second privacy computing participant can perform data transmission based on the OT1 2 method, etc., and the present application does not make specific limitations here.

[0114] Step S106: Calculate the target sum value of the random number set.

[0115] In practical applications, after the first privacy computing party transmits the information to be transmitted to the second privacy computing party based on the oblivious transfer method and the second Yao sharing set, it can calculate the target sum value of the random number set, so that the second privacy computing party can determine the weight sum value of the first privacy data and the second privacy data under the weight data set based on the target sum value.

[0116] In a specific application scenario, when calculating the target sum value of the random number set, the first privacy computing party can calculate the target sum value of the random number set through the second operation formula;

[0117] The second operation formula includes:

[0118]

[0119] where e represents the target sum value; represents rounding up.

[0120] Step S107: Transmit the target sum value to the second privacy computing party, so that the second privacy computing party can calculate the weight sum value of the first privacy data and the second privacy data under the weight data set based on the received data and the target sum value. The received data includes the data obtained by the second privacy computing party after receiving the information to be transmitted based on the oblivious transfer method and the second sharing set; among them, the first privacy data and the weight data set belong to the first privacy computing party, and the second privacy data belongs to the second privacy computing party.

[0121] In practical applications, after calculating the target sum value of the random number set, the first privacy computing party can transmit the target sum value to the second privacy computing party, so that the second privacy computing party can calculate the weight sum value of the first privacy data and the second privacy data under the weight data set based on the received data and the target sum value. The received data includes the data obtained by the second privacy computing party after receiving the information to be transmitted based on the oblivious transfer method and the second sharing set.

[0122] In a specific application scenario, the second privacy computing party can calculate the weight sum value of the first privacy data and the second privacy data under the weight data set based on the received data and the target sum value through the fourth operation formula;

[0123] The fourth operation formula includes:

[0124]

[0125] where θ represents the weight sum value; e represents the target sum value; represents rounding up.

[0126] A data processing method provided by the present application is applied to a first privacy computing participant. The method includes: obtaining a first Yao sharing set, where the first Yao sharing set includes a sharing set allocated to the first privacy computing participant determined based on a target judgment result, and the target judgment result includes a judgment result of determining whether each data in the first private data belongs to the second private data based on a garbled circuit; obtaining a weight data set corresponding to the first private data; generating a random number set corresponding to the first private data; generating information to be transmitted corresponding to the first private data based on the first Yao sharing set, the weight data set, and the random number set; transmitting the information to be transmitted to a second privacy computing participant based on an oblivious transfer method and a second Yao sharing set, where the second Yao sharing set includes a sharing set allocated to the second privacy computing participant determined based on the target judgment result; calculating a target sum value of the random number set; and transmitting the target sum value to the second privacy computing participant, so that the second privacy computing participant calculates a weighted sum value of the first private data and the second private data under the weight data set based on the received data and the target sum value, and the received data includes data obtained by the second privacy computing participant based on the oblivious transfer method and the second sharing set after receiving the information to be transmitted; wherein, the first private data and the weight data set belong to the first privacy computing participant, and the second private data belongs to the second privacy computing participant. The present application realizes the weighted summation of data between two privacy computing participants by means of a garbled circuit, the Yao sharing principle, and an oblivious transfer method. During the whole process, the privacy computing participants do not transmit their own data to each other, and the method has high confidentiality and good applicability.

[0127] Please refer to Figure 5 , Figure 5 which is the second flowchart of a data processing method provided by an embodiment of the present application.

[0128] A data processing method provided by an embodiment of the present application is applied to a second privacy computing participant, and may include the following steps:

[0129] Step S201: Obtain a second Yao sharing set, where the second Yao sharing set includes a sharing set allocated to the second privacy computing participant determined based on a target judgment result, and the target judgment result includes a judgment result of determining whether each data in the first private data belongs to the second private data based on a garbled circuit.

[0130] Step S202: Determine received data corresponding to the information to be transmitted based on the oblivious transfer method and the second Yao sharing set, where the information to be transmitted includes information to be transmitted corresponding to the first private data generated by the first privacy computing participant based on a weight data set corresponding to the first private data, a random number set corresponding to the first private data, and the first Yao sharing set, and the first Yao sharing set includes a sharing set allocated to the first privacy computing participant determined based on the target judgment result.

[0131] Step S203: Receive the target sum value of the random number set transmitted by the first privacy computing participant.

[0132] Step S204: Calculate the weighted sum value of the first private data and the second private data under the weight data set based on the received data and the target sum value; wherein, the first private data and the weight data set belong to the first privacy computing participant, and the second private data belongs to the second privacy computing participant.

[0133] In practical applications, when the second privacy computing participant determines the received data corresponding to the information to be transmitted based on the oblivious transfer method and the second Yao sharing set, it can, through the third operation formula, determine the received sub-data corresponding to each sub-information to be transmitted in the information to be transmitted based on the oblivious transfer method and the second Yao sharing set;

[0134] Take all the received sub-data as the received data;

[0135] The third operation formula includes:

[0136]

[0137] wherein, X = {x1, x2,..., x n} represents the first private data, represents the Yao sharing value indicating whether the data x i in the first Yao sharing set belongs to the second private data, i = 1, 2,..., n, Y = {y1, y2,..., y n} represents the second private data, <s i >1 Y [0] represents the Yao sharing value indicating whether the data x i in the second Yao sharing set belongs to the second private data, i = 1, 2,..., n; n represents the total number of data; represents the currently selected data to be operated; v i represents the weight information corresponding to the data x i in the first private data, v i+1 is the weight information corresponding to the data x i+1 in the first private data; r j represents the random numerical value; z j represents the received sub-data corresponding to the currently selected data to be operated; represents the exclusive OR operation.

[0138] In practical applications, when the second privacy computing participant calculates the weighted sum value of the first privacy data and the second privacy data under the weight data set based on the received data and the target sum value, the weighted sum value of the first privacy data and the second privacy data under the weight data set can be calculated based on the received data and the target sum value through the fourth operation formula;

[0139] The fourth operation formula includes:

[0140]

[0141] where θ represents the weighted sum value; e represents the target sum value; represents rounding up.

[0142] Please refer to Figure 6 , Figure 6 which is a schematic structural diagram of a data processing system provided by an embodiment of the present application.

[0143] A data processing system provided by an embodiment of the present application, which is applied to the first privacy computing participant, may include:

[0144] A first acquisition module 101, configured to acquire a first Yao sharing set, where the first Yao sharing set includes a sharing set allocated to the first privacy computing participant determined based on a target judgment result, and the target judgment result includes a judgment result of determining whether each data in the first privacy data belongs to the second privacy data based on a garbled circuit;

[0145] A second acquisition module 102, configured to acquire a weight data set corresponding to the first privacy data;

[0146] A first generation module 103, configured to generate a random number set corresponding to the first privacy data;

[0147] A second generation module 104, configured to generate information to be transmitted corresponding to the first privacy data based on the first Yao sharing set, the weight data set, and the random number set;

[0148] A first transmission module 105, configured to transmit the information to be transmitted to the second privacy computing participant based on the oblivious transfer method and a second Yao sharing set, where the second Yao sharing set includes a sharing set allocated to the second privacy computing participant determined based on the target judgment result;

[0149] A first calculation module 106, configured to calculate the target sum value of the random number set;

[0150] The second transmission module 107 is configured to transmit the target and value to the second privacy computing participant, so that the second privacy computing participant calculates the weighted sum value of the first privacy data and the second privacy data under the weight data set based on the received data and the target and value, where the received data includes the data obtained by the second privacy computing participant based on the oblivious transfer method and the second shared set after receiving the information to be transmitted;

[0151] Among them, the first privacy data and the weight data set belong to the first privacy computing participant, and the second privacy data belongs to the second privacy computing participant.

[0152] A data processing system provided by an embodiment of the present application, which is applied to the second privacy computing participant, may include:

[0153] The third acquisition module is configured to acquire the second Yao shared set, where the second Yao shared set includes the shared set allocated to the second privacy computing participant determined based on the target judgment result, and the target judgment result includes the judgment result of determining whether each data in the first privacy data belongs to the second privacy data based on the garbled circuit.

[0154] The first determination module is configured to determine the received data corresponding to the information to be transmitted based on the oblivious transfer method and the second Yao shared set, where the information to be transmitted includes the information to be transmitted corresponding to the first privacy data generated by the first privacy computing participant based on the weight data set corresponding to the first privacy data, the random number set corresponding to the first privacy data, and the first Yao shared set, and the first Yao shared set includes the shared set allocated to the first privacy computing participant determined based on the target judgment result.

[0155] The first receiving module is configured to receive the target sum value of the random number set transmitted by the first privacy computing participant.

[0156] The second calculation module is configured to calculate the weighted sum value of the first privacy data and the second privacy data under the weight data set based on the received data and the target sum value; among them, the first privacy data and the weight data set belong to the first privacy computing participant, and the second privacy data belongs to the second privacy computing participant.

[0157] For the description of the corresponding modules in the data processing system provided by the embodiment of the present application, reference may be made to the above embodiment, which will not be elaborated here.

[0158] The present application also provides a data processing device and a computer-readable storage medium, both of which have the corresponding effects of the data processing method provided by the embodiment of the present application. Please refer to Figure 7 , Figure 7 which is a schematic structural diagram of a data processing device provided by an embodiment of the present application.

[0159] A data processing device provided by an embodiment of the present application includes a memory 201 and a processor 202. A computer program is stored in the memory 201, and when the processor 202 executes the computer program, the steps of the data processing method described in any of the above embodiments are implemented.

[0160] Please refer to Figure 8 , in another data processing device provided by an embodiment of the present application, it may further include: an input port 203 connected to the processor 202, configured to transmit an externally input command to the processor 202; a display unit 204 connected to the processor 202, configured to display the processing result of the processor 202 to the outside; a communication module 205 connected to the processor 202, configured to implement communication between the data processing device and the outside. The display unit 204 may be a display panel, a laser scanning display, etc.; the communication methods adopted by the communication module 205 include but are not limited to Mobile High-Definition Link technology (HML), Universal Serial Bus (USB), High-Definition Multimedia Interface (HDMI), wireless connections: Wireless Fidelity technology (WiFi), Bluetooth communication technology, Low Energy Bluetooth communication technology, communication technology based on IEEE802.11s.

[0161] A computer-readable storage medium provided by an embodiment of the present application stores a computer program, and when the computer program is executed by a processor, the steps of the data processing method described in any of the above embodiments are implemented.

[0162] The computer-readable storage medium involved in the present application includes Random Access Memory (RAM), internal memory, Read-Only Memory (ROM), Electrically Programmable ROM, Electrically Erasable Programmable ROM, registers, hard disks, removable disks, CD-ROM, or any other form of storage medium well-known in the technical field.

[0163] For the description of relevant parts in a data processing system, device, and computer-readable storage medium provided by an embodiment of the present application, please refer to the detailed description of the corresponding parts in the data processing method provided by the embodiment of the present application, which will not be elaborated here. In addition, for the parts in the above technical solutions provided by the embodiments of the present application that are the same as the corresponding technical solutions in the prior art in terms of implementation principles, no detailed description is given to avoid excessive elaboration.

[0164] It should also be noted that in this text, relational terms such as first and second are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the term "comprising", "including" or any other variant thereof is intended to cover non-exclusive inclusion, so that a process, method, article or device comprising a series of elements not only includes those elements, but also includes other elements not expressly listed, or elements inherent to such process, method, article or device. Without further limitation, an element defined by the statement "comprising an..." does not exclude the presence of additional identical elements in the process, method, article or device comprising the element.

[0165] The foregoing description of the disclosed embodiments enables those skilled in the art to practice or use the present application. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present application. Therefore, the present application will not be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A data processing method, characterized in that, Applied to the first privacy computing participant, including: Obtain a first Yao sharing set, where the first Yao sharing set includes a sharing set allocated to the first privacy computing participant determined based on a target judgment result, and the target judgment result includes a judgment result of determining whether each data in the first private data belongs to the second private data based on a garbled circuit; Obtain the weight data set corresponding to the first private data; Generate a random number set corresponding to the first private data; Based on the first Yao sharing set, the weight data set, and the random number set, generate the information to be transmitted corresponding to the first private data; Transmit the information to be transmitted to the second privacy computing participant based on the oblivious transfer method and the second Yao sharing set, where the second Yao sharing set includes a sharing set allocated to the second privacy computing participant determined based on the target judgment result; Calculate the target sum value of the random number set; Transmit the target sum value to the second privacy computing participant, so that the second privacy computing participant calculates the weighted sum value of the first private data and the second private data under the weight data set based on the received data and the target sum value, and the received data includes the data obtained by the second privacy computing participant based on the oblivious transfer method and the second sharing set after receiving the information to be transmitted; Wherein, the first private data and the weight data set belong to the first privacy computing participant, and the second private data belongs to the second privacy computing participant.

2. The method according to claim 1, wherein The obtaining the first Yao sharing set includes: Obtain the first Yao sharing set, where the first Yao sharing set includes Among them, represents the first Yao sharing set; X = {x1, x2,..., x n} represents the first private data, represents the Yao sharing value indicating whether the data x i belongs to the second private data in the first Yao sharing set, where i = 1, 2,..., n, and n represents the total number of data.

3. The method according to claim 2, wherein The generating the information to be transmitted corresponding to the first private data based on the first Yao sharing set, the weight data set, and the random number set includes: Take every two adjacent uncomputed Yao sharing values in the first Yao sharing set as data to be operated; Determine the weight information of each data to be operated in the weight data set; Determine the random number value of each data to be operated in the random number set; For each data to be operated, generate the corresponding sub-information to be transmitted based on the data to be operated, the weight information, and the random number value through a first operation formula; Take all the sub-information to be transmitted as the information to be transmitted; The first operation formula includes: Among them, m0, m1, m2, and m3 represent the sub-information to be transmitted; represents the data to be operated on currently selected; v i represents the weight information corresponding to the data x in the first privacy data i ; v i+1 the weight information corresponding to the data x in the first privacy data i+1 ; r j represents the random value; represents the exclusive OR operation.

4. The method according to claim 3, wherein The calculating the target sum value of the random number set includes: Calculate the target sum value of the random number set through a second operation formula; The second operation formula includes: Wherein, e represents the target sum value; represents rounding up.

5. The method according to claim 1, wherein The garbled circuit includes a first input terminal, a second input terminal, a third input terminal, an exclusive OR operation gate connected to the first input terminal and the second input terminal, and an AND gate connected to the output terminal of the exclusive OR operation gate and the third input terminal; Among them, the first input terminal is used to input the value of the target binary bit in the first binary data; the second input terminal is used to input the value of the target binary bit in the second binary data; the input value of the third input terminal is 1 in the initial round, and the input value of the third input terminal in the remaining rounds is the output result of the AND gate in the previous round of operation process.

6. A data processing method, characterized in that, Applied to the second privacy computing participant, including: Obtain the second Yao sharing set, where the second Yao sharing set includes the sharing set allocated to the second privacy computing participant determined based on the target judgment result, and the target judgment result includes the judgment result of whether each data in the first privacy data belongs to the second privacy data based on the garbled circuit. Determine the received data corresponding to the information to be transmitted based on the oblivious transfer method and the second Yao sharing set, where the information to be transmitted includes the information to be transmitted corresponding to the first privacy data generated by the first privacy computing participant based on the weight data set corresponding to the first privacy data, the random number set corresponding to the first privacy data, and the first Yao sharing set, and the first Yao sharing set includes the sharing set allocated to the first privacy computing participant determined based on the target judgment result. Receive the target sum value of the random number set transmitted by the first privacy computing participant. Calculate the weighted sum value of the first privacy data and the second privacy data under the weight data set based on the received data and the target sum value. Among them, the first privacy data and the weight data set belong to the first privacy computing participant, and the second privacy data belongs to the second privacy computing participant.

7. The method according to claim 6, wherein The determining the received data corresponding to the information to be transmitted based on the oblivious transfer method and the second Yao sharing set includes: Determine the received sub-data corresponding to each sub-information to be transmitted based on the oblivious transfer method and the second Yao sharing set through the third operation formula. Use all the received sub-data as the received data. The third operation formula includes: Among them, X = {x1, x2,..., x n} represents the first privacy data, represents the Yao sharing value indicating whether the data x i in the first Yao sharing set belongs to the second privacy data, i = 1, 2,..., n, Y = {y1, y2,..., y n} represents the second privacy data, represents the Yao sharing value indicating whether the data x i in the second Yao sharing set belongs to the second privacy data, i = 1, 2,..., n; n represents the total number of data; represents the data to be operated on currently selected; v i represents the weight information corresponding to the data x i in the first privacy data, v i+1 and the weight information corresponding to the data x i+1 in the first privacy data; r j represents a random value; z j represents the received sub - data corresponding to the data to be operated on currently selected; represents an exclusive - or operation.

8. The method according to claim 7, wherein The calculating the weighted sum value of the first privacy data and the second privacy data under the weight data set based on the received data and the target sum value includes: Calculate the weighted sum value of the first privacy data and the second privacy data under the weight data set based on the received data and the target sum value through the fourth operation formula. The fourth operation formula includes: Where θ represents the weight sum value; e represents the target sum value; represents rounding up.

9. A data processing system, characterized in that, Applied to the first privacy computing participant, including: The first obtaining module is used to obtain the first Yao sharing set, where the first Yao sharing set includes the sharing set allocated to the first privacy computing participant determined based on the target judgment result, and the target judgment result includes the judgment result of whether each data in the first privacy data belongs to the second privacy data based on the garbled circuit. The second obtaining module is used to obtain the weight data set corresponding to the first privacy data. The first generating module is used to generate the random number set corresponding to the first privacy data. A second generation module, configured to generate information to be transmitted corresponding to the first private data based on the first Yao sharing set, the weight data set, and the random number set; A first transmission module, configured to transmit the information to be transmitted to a second private computing participant based on an oblivious transfer method and a second Yao sharing set, where the second Yao sharing set includes a sharing set allocated to the second private computing participant determined based on the target judgment result; A first calculation module, configured to calculate a target sum value of the random number set; A second transmission module, configured to transmit the target sum value to the second private computing participant, so that the second private computing participant calculates a weighted sum value of the first private data and the second private data under the weight data set based on the received data and the target sum value, where the received data includes data obtained by the second private computing participant receiving the information to be transmitted based on the oblivious transfer method and the second sharing set; Wherein, the first private data and the weight data set belong to the first private computing participant, and the second private data belongs to the second private computing participant.

10. A data processing device, characterized in that, Comprising: A memory, configured to store a computer program; A processor, configured to implement the steps of the data processing method according to any one of claims 1 to 8 when executing the computer program.

11. A computer-readable storage medium, characterized in that, A computer program is stored in the computer-readable storage medium, and when the computer program is executed by a processor, the steps of the data processing method according to any one of claims 1 to 8 are implemented.

Citation Information

Patent Citations

  • Sum and product computing method for protecting data privacy security of arbitrary user group

    CN103763100A

  • Privacy protection time sequence similarity calculation method

    CN105138923A