CN113438078B - Privacy protection method and system in multi-client intersection data calculation process - Google Patents
Privacy protection method and system in multi-client intersection data calculation process Download PDFInfo
- Publication number
- CN113438078B CN113438078B CN202110984789.9A CN202110984789A CN113438078B CN 113438078 B CN113438078 B CN 113438078B CN 202110984789 A CN202110984789 A CN 202110984789A CN 113438078 B CN113438078 B CN 113438078B
- Authority
- CN
- China
- Prior art keywords
- computing server
- auxiliary computing
- auxiliary
- client
- protocol
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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/6245—Protecting personal data, e.g. for financial or medical purposes
- G06F21/6263—Protecting personal data, e.g. for financial or medical purposes during internet communication, e.g. revealing personal data from cookies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/46—Secure multiparty computation, e.g. millionaire problem
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Business, Economics & Management (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Development Economics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Power Engineering (AREA)
- Medical Informatics (AREA)
- Accounting & Taxation (AREA)
- Software Systems (AREA)
- Economics (AREA)
- Finance (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Computer And Data Communications (AREA)
Abstract
The invention relates to a privacy protection method and a privacy protection system in a multi-client intersection data calculation process in the technical field of privacy protection, wherein a private index set is set in each participant client; randomly appointing one participant client as a main participant client, and other participant clients as auxiliary participant clients; setting an additional data set in the main participant client; acquiring a calculation demand; according to the calculation requirement, a plurality of participant clients participating in the calculation of the intersection statistical data of the multi-party private index set initiate communication link requests to a main participant client and two auxiliary calculation servers, execute a safety statistical calculation protocol, and finally output the statistical calculation result of the intersection set of the plurality of participant clients corresponding to the calculation requirement by the main participant client; and the main participant client sends the statistical calculation result to the slave participant client. And completing the statistical calculation of the intersection of the multi-party set and the related data on the premise of not revealing private data of all parties.
Description
Technical Field
The invention relates to the technical field of privacy protection, in particular to a privacy protection method and a privacy protection system in a multi-client intersection data calculation process.
Background
The statements in this section merely provide background information related to the present disclosure and may not constitute prior art.
In many data application scenarios, different participants each hold their own private data, which can often be represented in sets. For multiple participants, they often focus on intersection data, and associated statistical calculations based on the intersection data. For example, in a collaboration scenario of multiple financial institutions, each institution independently grasps its set of customers, and when they conduct a collaboration service, it is desirable to obtain a common set of customers (an intersection of the respective sets of customers) and perform correlation calculations based on these customer data. Any participant does not wish to share its own set of private customers to other participants for the benefit of the respective business and for the privacy of the customers.
The existing solution only supports privacy protection calculation of intersection related data of two participants, and cannot support the situation of more than two participants. The existing calculation processes of two participants usually adopt a pure data encryption mode to carry out respective data management, and the calculation process of rapidness, high efficiency and privacy protection cannot be realized.
Disclosure of Invention
In order to solve the defects of the prior art, the invention provides a privacy protection method and a privacy protection system in the calculation process of multi-client intersection data; the method can complete the statistical calculation of the intersection of the multi-party set and the related data on the premise of not revealing private data of all parties.
In a first aspect, the invention provides a privacy protection method in a multi-client intersection data calculation process;
the privacy protection method in the multi-client intersection data calculation process comprises the following steps:
assuming that there are several participant clients and two helper computing servers; each participant client is provided with a private index set; randomly appointing one participant client as a main participant client, and other participant clients as auxiliary participant clients; setting an additional data set in the main participant client;
acquiring a calculation demand; according to the calculation requirement, a plurality of participant clients participating in the calculation of the intersection statistical data of the multi-party private index set initiate communication link requests to a main participant client and two auxiliary calculation servers, execute a safety statistical calculation protocol, and finally output the statistical calculation result of the intersection set of the plurality of participant clients corresponding to the calculation requirement by the main participant client;
and the main participant client sends the statistical calculation result to the slave participant client.
In a second aspect, the invention provides a privacy protection system in a multi-client intersection data calculation process;
privacy protection system in many client intersection data computational process includes:
a random assignment module configured to: randomly appointing one participant client as a main participant client, and other participant clients as auxiliary participant clients; setting an additional data set in the main participant client;
an acquisition module configured to: acquiring a calculation demand;
a privacy protection module configured to: according to the calculation requirement, a plurality of participant clients participating in the calculation of the intersection statistical data of the multi-party private index set initiate communication link requests to a main participant client and two auxiliary calculation servers, execute a safety statistical calculation protocol, and finally output the statistical calculation result of the intersection set of the plurality of participant clients corresponding to the calculation requirement by the main participant client;
a feedback module configured to: and the main participant client sends the statistical calculation result to the slave participant client.
Compared with the prior art, the invention has the beneficial effects that:
the multiple participants can complete intersection solving and statistical calculation of related data on the premise of not revealing respective private index set data, including the size of the intersection, the sum of the intersection related data, the mean of the intersection related data, the variance of the intersection related data, the maximum and minimum of the intersection related data and the like.
Advantages of additional aspects of the invention will be set forth in part in the description which follows, or may be learned by practice of the invention.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, are included to provide a further understanding of the invention, and are incorporated in and constitute a part of this specification, illustrate exemplary embodiments of the invention and together with the description serve to explain the invention and not to limit the invention.
Fig. 1 is a schematic configuration diagram of the first embodiment.
Detailed Description
Description of terms:
(1) bugu hash and simple hash
Hash of cloth grain: () By passingA hash functionWill be provided withElement mapping toIn each box, at most one element is placed in each box. The mapping rules are as follows: initializationAn empty box, note(wherein). For elementsCalculatingIf, ifIf there is a free box, it willRandomly putting one empty box; if it isIf none are empty, one is randomly selectedWill be provided withThe mixture is put into a furnace to be treated,the original existing elements are taken out and replaced according to the above rules. If the process does not terminate after a certain number of iterations, the elements that are eventually evicted are placed uniformly in a region (referred to as a region)). Use of this patentOfHash of the seed whenWhen it is neededHas a probability of onlyAnd can be ignored.
A simple hash is used in conjunction with the valley hash.
Simple hash () By passingA hash functionWill be provided withElement mapping toIn each box, a plurality of elements meeting the conditions can be placed in each box. The mapping rules are as follows: initializationAn empty box, note(wherein). For elementsCalculatingIn aAll put inUntil all elements are put. Corresponding to the hash of the valley, the invention usesThe simple hash scheme of (1).
(2) Yao's chaotic circuit protocol
The yao-shi chaotic circuit is an encrypted form of the boolean circuit. The yao-shi chaos circuit protocol allows two participating parties to compute correct circuit output results layer by layer in a overwhelming manner without knowing the true input values of the other parties. The whole calculation process does not reveal any additional information except the output of the circuit. The Yao's chaotic circuit protocol can efficiently and safely complete any calculable calculation task on the premise of ensuring the input privacy of both parties.
(3) Secret sharing
The secret sharing scheme used by this patent involves two parametersHefang (Chinese character of 'He')Andthe two parties respectively hold secret dataIn proportion ofAndneither party can obtain the relationBut shares of both parties can be recovered together. Will be provided withThe process of splitting into shares and distributing to both parties is called sharing, and the shares of both parties are used for jointly recoveringThe process of (2) is called reconstruction. The secret sharing method used in this patent includes arithmetic sharing (A)) Boolean sharing () And Yao Shao) The representation is as follows:
(4) Secure multiplication protocol
Participant sideAndrespectively hold secret valuesAndis calculated as a secret share ofAndrespectively obtained by executing multiplication protocolIs calculated as a secret share ofAnd. The protocol can be implemented by homomorphic encryption, a ubiquitous transmission protocol,Multiplication triplets, and the like. The protocol can be extended to matrix multiplication according to the operation principle of matrix multiplication.
Translating protocols for participantsShare of arithmetic to be heldConversion to Boolean shares, note。
Translating protocols for participantsShare of arithmetic to be heldConversion to Boolean shares, note。
Converting protocols for participantsAndshare the arithmetic held by eachAndthe share of the Yao is converted into the share of the Yao which is taken as the input of the Yao chaotic circuit and is respectively recorded asAnd。
The conversion protocol enables the participants toAndshares of the respective own YaoAndconverted into arithmetic share shares, respectivelyAnd。
(8) arithmetic sharing equivalence test protocol
In an arithmetic sharing equivalence test protocol, participantsAndeach input isAndafter the protocol operation is finished, ifThen set upOtherwise,Andrespectively outputIs shared with the other part of the arithmeticAndsatisfy the following requirementsAnd in addition does not reveal any additional information.
Example one
The embodiment provides a privacy protection method in a multi-client intersection data calculation process;
the privacy protection method in the multi-client intersection data calculation process comprises the following steps:
s101: assuming that there are several participant clients and two helper computing servers; each participant client is provided with a private index set; randomly appointing one participant client as a main participant client, and other participant clients as auxiliary participant clients; setting an additional data set in the main participant client;
s102: acquiring a calculation demand; according to the calculation requirement, a plurality of participant clients participating in the calculation of the intersection statistical data of the multi-party private index set initiate communication link requests to a main participant client and two auxiliary calculation servers, execute a safety statistical calculation protocol, and finally output the statistical calculation result of the intersection set of the plurality of participant clients corresponding to the calculation requirement by the main participant client;
s103: and the main participant client sends the statistical calculation result to the slave participant client.
Further, the computing requirements include: calculating the intersection set, the size of the intersection set, the sum of the intersection set, the mean of the intersection set, the variance of the intersection set, the maximum of the intersection set and the minimum of the intersection set.
Further, the statistical calculation result includes the intersection set itself, the size of the intersection set, the sum of the intersection set, the mean of the intersection set, the variance of the intersection set, the maximum of the intersection set, and the minimum of the intersection set.
Functional description of the protocol: for the participating partySeparately grasp the index setsThe data in the index set refers to a client list, for example; for theIndex in,Hold additional data setsWhereinAndcorresponds to () The extra data refers toIndexing corresponding attribute values, e.g.Refer to the customer,For the customerThe amount of consumption of (c). Introducing two collusion-free helper computing servers in a protocolAndauxiliary meterThe compute server has no input (as shown in figure 1). In actual deployment, the auxiliary computing server may adopt two different public cloud platforms. Here collusion means that both parties do not share their private data with each other (except for the interaction required by the protocol), thereby protecting the private data.
The protocol can safely calculate the intersection and the intersection size of the multi-party set and aim at the intersectionThe value corresponding to the middle indexPerforming relevant statistical calculations including sum, mean, variance, maximum, minimum, etc.,and obtaining a final calculation result. The whole calculation process (interactive process) is in a finite fieldIs carried out byLarge prime number) that do not reveal about the collectionAndany of (3).
The formalization is described as follows:
Note that the above calculations for (1), (2), (3), (4), (5), and (6) are independent, and may be all or only some of them.
Further, in S102, when the computation requirement is to compute the intersection set itself, the executed secure statistical computation protocol includes the following steps:
(1-1) Main participant clientSet its private indexPerforming hash of the grains to obtainOne box;Representing the total number of bins;
(1-2) slave participant clientRespectively carrying out simple hashing on the private index set (the valley hash and the 3 hash functions used by the simple hashing are the same) to obtain the second hashA slave clientOne boxOf 1 atA slave clientOne boxThe elements in (A) are represented byWherein, in the step (A),,the size of each box is simply hashed;
(1-3) Main participant clientWill be provided withArithmetic sharing as being sent to a first helper computing serverIs an arithmetic portion ofAnd to be sent to a second auxiliary computing serverIs an arithmetic portion ofRespectively sent to the first auxiliary computing serverAnd a second auxiliary computing server;
wherein the content of the first and second substances,representing secondary participant clientsCorresponds toA polynomial of the data in the individual bins;the expression of the independent variable is shown,show thatAndthen the difference result is multiplied together,coefficients representing a polynomial; if and only if handleWhen the data is substituted into a polynomial, the value of the polynomial is 0 (i.e., by the polynomial)Is 0 to determine whether the carry-in calculation isMedium data).
Will be provided withThe arithmetic sharing is asAnd;to representA constituent set of all coefficients of (a);
dividing the polynomial coefficient fractionSending to the first auxiliary computing server(ii) a Dividing the polynomial coefficient fractionSending to a second auxiliary computing server;
(1-5) forFirst auxiliary computing serverAccording to the data received in the step (1-3) and the step (1-4), calling a safe multiplication protocol for multiple times, and calculating an arithmetic share(ii) a The second auxiliary computing server calls the safe multiplication protocol for multiple times according to the data received in the step (1-3) and the step (1-4) to compute the arithmetic share;
(1-6) forFirst auxiliary computing serverCalculating the sum of the judgment results of the first box of all the slave client sidesSecond auxiliary computing serverCalculating the sum of the judgment results of the first box of all the slave client sides;
(1-7) first auxiliary computing ServerAnd a second auxiliary computing serverWill be provided withAndsend to the Main participant client;
Main participant clientComputing,Is shown ifThen, thenAre intersection elements.Representing the final sought set intersection.
Further, in S102, when the computation requirement is the size of the computation intersection set, the executed secure statistical computation protocol includes the following steps:
(2-2)Respectively carrying out simple hashing on the private index set (the valley hash and the 3 hash functions used by the simple hashing are the same) to obtainEach boxThe elements in (A) are represented by(wherein,Hash the size of each box for simplicity);
(2-3) Main participant clientWill be provided withThe arithmetic sharing is asAndwill beSending to the first auxiliary computing serverWill beSending to a second auxiliary computing server;
(2-4) for,Calculating polynomialAnd will beThe arithmetic sharing is asAndwill beSending to the first auxiliary computing serverWill beSending to a second auxiliary computing server;
(2-5) forFirst auxiliary computing serverAnd a second auxiliary computing serverMultiple invocation of secure multiplication protocol, computingAnd;
(2-6) forBased onFirst auxiliary computing serverCalculate out(ii) a Based onSecond auxiliary computing serverCalculate out;
(2-7) forFirst auxiliary computing serverTo be provided withInvokingConverting the arithmetic quota into a Boolean quota to obtain a corresponding Boolean quota(ii) a Second auxiliary computing serverTo be provided withInvokingConverting the arithmetic quota into a Boolean quota to obtain a corresponding Boolean quota;
(2-8) forFirst auxiliary computing serverTo be provided withCalling an arithmetic sharing equivalence test protocol to obtain(ii) a Second auxiliary computing serverTo be provided withCalling an arithmetic sharing equivalence test protocol to obtain;
(2-9) first auxiliary computing ServerComputing(ii) a Second helper computing server computing(ii) a First auxiliary computing serverWill be provided withSend to the Main participant clientThe second auxiliary computing server willSend to the Main participant clientThe main participant clientComputing。
Further, in S102, when the calculation requirement is to calculate a sum of intersection set related data, the executed security statistic calculation protocol includes the following steps:
(3-2)Respectively carrying out simple hashing on the private index set (the valley hash and the 3 hash functions used by the simple hashing are the same) to obtainEach boxThe elements in (A) are represented by(wherein,Hash the size of each box for simplicity);
(3-3) Main participant clientWill be provided withThe arithmetic sharing is asAndwill beSending to the first auxiliary computing serverWill beSending to a second auxiliary computing server;
(3-4) for,Calculating polynomialAnd will beThe arithmetic sharing is asAndand will beSending to the first auxiliary computing server(ii) a Will be provided withSending to a second auxiliary computing server;
(3-5) forFirst auxiliary computing serverMultiple invocation of secure multiplication protocol, computing(ii) a Second auxiliary computing serverMultiple invocation of secure multiplication protocol, computing;
(3-6) forFirst auxiliary computing serverComputing(ii) a Second auxiliary computing serverComputing;
(3-7) forFirst auxiliary computing serverTo be provided withInvokingAgreement to get a corresponding Boolean fraction(ii) a Second auxiliary computing serverTo be provided withInvokingAgreement to get a corresponding Boolean fraction;
(3-8) forFirst auxiliary computing serverTo be provided withCalling an arithmetic sharing equivalence test protocol to obtain(ii) a Second auxiliary computing serverTo be provided withCalling an arithmetic sharing equivalence test protocol to obtain;
(3-9) useTo representA set of corresponding values for the middle element; main participant clientWill be provided withThe arithmetic sharing is asAndsending outTo the first auxiliary computing serverSending outTo a second auxiliary computing server;
(3-10) forFirst auxiliary computing serverTo be provided withFor input, a second auxiliary computing serverTo be provided withFor input, both parties invoke a secure multiplication protocol, a first helper computing serverObtain an outputSecond auxiliary computing serverObtain an output;
(3-11) first auxiliary computing ServerComputingSecond auxiliary computing serverComputingAnd sent to the client of the main participantThe main participant clientComputing。
Further, in S102, when the calculation requirement is to calculate a mean value of the intersection set related data, the executed security statistic calculation protocol includes the following steps:
(4-2)Respectively carrying out simple hashing on the private index set (the valley hash and the 3 hash functions used by the simple hashing are the same) to obtainEach boxThe elements in (A) are represented by(wherein,Hash the size of each box for simplicity);
will be provided withSending to the first auxiliary computing serverWill beSending to a second auxiliary computing server;
from the participant client to the clientThe arithmetic sharing is asAnd(ii) a Will be provided withSending to the first auxiliary computing server(ii) a Will be provided withSending to a second auxiliary computing server;
(4-5) forFirst auxiliary computing serverMultiple invocation of secure multiplication protocol, computing(ii) a Second auxiliary computing serverMultiple invocation of secure multiplication protocol, computing;
(4-6) forFirst auxiliary computing serverComputing(ii) a Second auxiliary computing serverComputing;
(4-7) forFirst auxiliary computing serverTo be provided withInvokingAgreement to get a corresponding Boolean fraction(ii) a Second auxiliary computing serverTo be provided withInvokingAgreement to get a corresponding Boolean fraction;
(4-8) forFirst auxiliary computing serverTo be provided withCalling an arithmetic sharing equivalence test protocol to obtain(ii) a Second auxiliary computing serverTo be provided withCalling an arithmetic sharing equivalence test protocol to obtain;
(4-9) useTo representA set of corresponding values for the middle element; main participant clientWill be provided withThe arithmetic sharing is asAnd;
main participant clientSendingTo the first auxiliary computing serverThe main participant clientSendingTo a second auxiliary computing server;
(4-10) forFirst auxiliary computing serverTo be provided withFor input, a second auxiliary computing serverTo be provided withFor input, both parties invoke a secure multiplication protocol, a first helper computing serverObtain an outputSecond auxiliary computing serverObtain an output;
(4-12) first auxiliary computing ServerTo be provided withFor input, a second auxiliary computing serverTo be provided withFor input, both parties callProtocol, first auxiliary computing serverObtaining the corresponding YaoShare ofSecond auxiliary computing serverObtaining the corresponding share of Yao;
(4-13) first auxiliary computing ServerTo be provided withFor input, a second auxiliary computing serverTo be provided withCalling the calculation function of the Yao's chaotic circuit protocol for inputFirst auxiliary computing serverTo obtainIs/are as followsPortion(s) ofSecond auxiliary computing serverTo obtainIs/are as followsPortion(s) of;
(4-14) first auxiliary computing ServerAnd a second auxiliary computing serverWill be provided withAndsend to the Main participant client,Can recover。
Note: if necessary, simultaneously calculatingAndthen calculate inThen, use directlyInstead of its share participating in the operation, obtainBut at this time, if the main participant client endAt the same time obtainAndthen the intersection size is exposed.
Further, in S102, when the calculation requirement is to calculate the variance of the intersection set related data, the executed security statistic calculation protocol includes the following steps:
(5-2)Respectively carrying out simple hashing on the private index set (the valley hash and the 3 hash functions used by the simple hashing are the same) to obtainEach boxThe elements in (A) are represented by(wherein,Hash the size of each box for simplicity);
(5-3) Main participant clientWill be provided withThe arithmetic sharing is asAndwill beSending to the first auxiliary computing serverWill beSending to a second auxiliary computing server;
will be provided withSending to the first auxiliary computing server(ii) a Will be provided withSending to a second auxiliary computing server;
(5-5) forFirst auxiliary computing serverMultiple invocation of secure multiplication protocol, computing(ii) a Second auxiliary computing serverMultiple invocation secure multiplication protocolCalculating;
(5-6) forFirst auxiliary computing serverComputing(ii) a Second auxiliary computing serverComputing;
(5-7) forFirst auxiliary computing serverTo be provided withInvokingAgreement to get a corresponding Boolean fraction(ii) a Second auxiliary computing serverTo be provided withInvokingAgreement to get a corresponding Boolean fraction;
(5-8) forFirst auxiliary computing serverTo be provided withCalling an arithmetic sharing equivalence test protocol to obtain(ii) a Second auxiliary computing serverTo be provided withThe Boolean fraction ofCalling an arithmetic sharing equivalence test protocol to obtain;
(5-9) useTo representA set of corresponding values for the middle element; main participant clientWill be provided withThe arithmetic sharing is asAndthe master participant client sendsTo the first auxiliary computing serverThe master participant client sendsTo a second auxiliary computing server;
(5-10) forFirst auxiliary computing serverTo be provided withFor input, a second auxiliary computing serverTo be provided withFor input, both parties invoke a secure multiplication protocol, a first helper computing serverObtaining an output arithmetic quotaSecond auxiliary computing serverObtaining an output arithmetic quota;
(5-11) first auxiliary computing ServerCalculating the arithmetic fraction of the size of the intersectionAndsecond auxiliary computing serverCalculating the arithmetic fraction of the size of the intersectionAnd;
(5-12) first auxiliary computing ServerTo be provided withFor input, a second auxiliary computing serverTo be provided withFor input, both parties callThe protocol is such that the protocol is,obtaining the corresponding share of YaoSecond auxiliary computing serverObtaining the corresponding share of Yao;
(5-13) first auxiliary computing ServerTo be provided withFor input, a second auxiliary computing serverTo be provided withFor input, calling the Yao's chaotic circuit protocol to calculate the averageBoth parties respectively get the averageShare of YaoAnd;representing the size of the intersection;
(5-14) first auxiliary computing ServerTo be provided withFor input, a second auxiliary computing serverTo be provided withCalling for inputProtocol, first auxiliary computing serverObtain an outputSecond auxiliary computing serverShare of Yao to get average output;
(5-15) first auxiliary computing ServerTo be provided withFor input, a second auxiliary computing serverTo be provided withInvoking secure multiplication protocol computations for inputOf the first auxiliary computing serverObtaining the arithmetic contribution of the square of the output meanSecond auxiliary computing serverObtaining the arithmetic contribution of the square of the output mean;
(5-16) forFirst auxiliary computing serverTo be provided withFor input, a second auxiliary computing serverTo be provided withInvoking secure multiplication protocol computations for inputOf the first auxiliary computing serverObtaining an output arithmetic quotaSecond auxiliary computing serverObtaining an output arithmetic quota;
First auxiliary computing serverTo be provided withFor input, a second auxiliary computing serverTo be provided withTo input, callProtocol, first auxiliary computing serverObtain an outputSecond auxiliary computing serverObtain an output;
(5-18) first auxiliary computing ServerTo be provided withFor input, a second auxiliary computing serverTo be provided withCalling the calculation function of the Yao's chaotic circuit protocol for inputBoth parties respectively obtainFraction of YaoAnd;
(5-19) first auxiliary computing ServerTo be provided withFor input, a second auxiliary computing serverTo be provided withCalling for inputProtocol, first auxiliary computing serverObtain an outputSecond auxiliary computing serverObtain an output;
First auxiliary computing serverArithmetic share of varianceSend to the Main participant clientSecond auxiliary computing serverArithmetic share of varianceSend to the Main participant clientThe main participant clientCalculating variance。
Further, in S102, when the calculation requirement is to calculate the maximum value and the minimum value of the intersection set related data, the executed secure statistical calculation protocol includes the following steps:
(6-2)Respectively carrying out simple hashing on the private index set (the valley hash and the 3 hash functions used by the simple hashing are the same) to obtainEach boxThe elements in (A) are represented by(wherein,Hash the size of each box for simplicity);
(6-3) Main participant clientWill be provided withThe arithmetic sharing is asAndwill beSending to the first auxiliary computing serverWill beSending to a second auxiliary computing server;
from the participant client to the clientSending to the first auxiliary computing server(ii) a Will be provided withSending to a second auxiliary computing server;
(6-5) forFirst auxiliary computing serverMultiple invocation of secure multiplication protocol, computing(ii) a Second auxiliary computing serverMultiple invocation of secure multiplication protocol, computing;
(6-6) forFirst auxiliary computing serverComputing(ii) a Second auxiliary computing serverComputing;
(6-7) forFirst auxiliary computing serverTo be provided withInvokingAgreement to get a corresponding Boolean fraction(ii) a Second auxiliary computing serverTo be provided withInvokingAgreement to get a corresponding Boolean fraction;
(6-8) forFirst auxiliary computing serverTo be provided withCalling an arithmetic sharing equivalence test protocol to obtain(ii) a Second auxiliary computing serverTo be provided withInvoking arithmetic sharing equivalence testingProtocol, get;
(6-9) useTo representThe corresponding set of values for the element in (a).Will be provided withThe arithmetic sharing is asAndsending outTo the first auxiliary computing serverSending outTo give;
(6-10) forFirst auxiliary computing serverTo be provided withFor input, a second auxiliary computing serverTo be provided withFor input, both parties invoke a secure multiplication protocol, a first helper computing serverObtain an outputSecond auxiliary computing serverObtain an output;
(6-11) forFirst auxiliary computing serverTo be provided withTo input, callProtocol, first auxiliary computing serverObtain an output(ii) a Second auxiliary computing serverTo be provided withTo input, callProtocol, second helper computing serverObtain an output;
(6-12) first auxiliary computing ServerTo be provided withFor input, a second auxiliary computing serverTo be provided withFor input, both use to find the maximum valueAnd minimum valueThe Yao's chaotic circuit protocol is respectively obtainedThe fraction of yao pin of the maximum and minimum values (non-zero);
(6-13) first helper computing serverAnd a second auxiliary computing serverSending the Yao quota to the client of the main participant,The main participant client can reconstruct the minimum valueAnd maximum value。
In the end of this process,、andthere is no output, and the output is not,can output (1);(2);(3);(4);(5);(6),。
By using the method described in this patent, two collusion-free helper computing servers can be used to enable The participants respectively holding the private data sets obtain set intersection and the statistical calculation result of the intersection related data, including the size of the intersection, the sum of the intersection related data, the mean of the intersection related data, the variance of the intersection related data, the maximum and the minimum of the intersection related data and the like. This calculation process does not reveal any information other than the result.
All angle brackets in this example indicate the share of a parameter in brackets, e.g.To representThe portion of (1), superscriptIndicates that this is an arithmetic fraction (The number of the Boolean fractions is expressed,representing the share of yao); subscript 0 indicates that this is the first minorHelp the serverIs held (or is to be sent to)Has a share (subscript 1 denotes the second auxiliary server))。
The embodiment provides a privacy protection system in a multi-client intersection data calculation process;
privacy protection system in many client intersection data computational process includes:
a random assignment module configured to: randomly appointing one participant client as a main participant client, and other participant clients as auxiliary participant clients; setting an additional data set in the main participant client;
an acquisition module configured to: acquiring a calculation demand;
a privacy protection module configured to: according to the calculation requirement, a plurality of participant clients participating in the calculation of the intersection statistical data of the multi-party private index set initiate communication link requests to a main participant client and two auxiliary calculation servers, execute a safety statistical calculation protocol, and finally output the statistical calculation result of the intersection set of the plurality of participant clients corresponding to the calculation requirement by the main participant client;
a feedback module configured to: and the main participant client sends the statistical calculation result to the slave participant client.
The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention, and various modifications and changes may be made by those skilled in the art. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.
Claims (9)
1. The privacy protection method in the multi-client intersection data calculation process is characterized by comprising the following steps:
assuming that there are several participant clients and two helper computing servers; each participant client is provided with a private index set; randomly appointing one participant client as a main participant client, and other participant clients as auxiliary participant clients; setting an additional data set in the main participant client;
acquiring a calculation demand; according to the calculation requirement, a plurality of participant clients participating in the calculation of the intersection statistical data of the multi-party private index set initiate communication link requests to a main participant client and two auxiliary calculation servers, execute a safety statistical calculation protocol, and finally output the statistical calculation result of the intersection set of the plurality of participant clients corresponding to the calculation requirement by the main participant client;
the main participant client sends the statistical calculation result to the slave participant client;
when the computational requirement is to compute the set of intersections itself, the secure statistical computation protocol implemented includes the steps of:
(1-1) Main participant clientSet its private indexPerforming hash of the grains to obtainOne box;Representing the total number of bins;
(1-2) slave participant clientRespectively carrying out simple hash on the private index sets to obtain the firstA slave clientOne boxOf 1 atA slave clientOne boxThe elements in (A) are represented byWherein, in the step (A),,the size of each box is simply hashed;
(1-3) Main participant clientWill be provided withArithmetic sharing as being sent to a first helper computing serverIs an arithmetic portion ofAnd to be sent to a second auxiliary computing serverIs an arithmetic portion ofRespectively sent to the first auxiliary computing serverAnd a second auxiliary computing server;
wherein the content of the first and second substances,representing secondary participant clientsCorresponds toA polynomial of the data in the individual bins;the expression of the independent variable is shown,show thatAndthen the difference result is multiplied together,coefficients representing a polynomial; if and only if handleWhen the data is substituted into the polynomial, the value of the polynomial is 0;
will be provided withThe arithmetic sharing is asAnd;to representA constituent set of all coefficients of (a);
dividing the polynomial coefficient fractionSending to the first auxiliary computing server(ii) a Dividing the polynomial coefficient fractionSending to a second auxiliary computing server;
(1-5) forFirst auxiliary computing serverAccording to the data received in the step (1-3) and the step (1-4), calling a safe multiplication protocol for multiple times, and calculating an arithmetic share(ii) a The second auxiliary computing server calls the safe multiplication protocol for multiple times according to the data received in the step (1-3) and the step (1-4) to compute the arithmetic share;
(1-6) forFirst auxiliary computing serverCalculating the sum of the judgment results of the first box of all the slave client sidesSecond auxiliary computing serverCalculating the sum of the judgment results of the first box of all the slave client sides;
(1-7) first auxiliary computing ServerAnd a second auxiliary computing serverWill be provided withAndsend to the Main participant client;
Main participant clientComputing,Is shown ifThen, thenIs an intersection element;representing the final sought set intersection;
introducing two collusion-free helper computing servers in a protocolAndthe auxiliary computing server has no input; in actual deployment, the auxiliary computing server selects two different public cloud platforms; the collusion means that both parties do not share their private data with each other, thereby protecting the private data.
2. The method of claim 1, wherein the computing requirements comprise: calculating the intersection set, the size of the intersection set, the sum of the intersection set, the mean of the intersection set, the variance of the intersection set, the maximum of the intersection set and the minimum of the intersection set.
3. The privacy protection method in the process of computing the intersection set of multiple clients according to claim 1, wherein when the computing requirement is the size of the computing intersection set, the security statistic computing protocol is executed including the following steps:
(2-2)Respectively carrying out simple hash on the private index sets to obtainEach boxThe elements in (A) are represented byWherein,The size of each box is simply hashed;
(2-3) Main participant clientWill be provided withThe arithmetic sharing is asAndwill beSending to the first auxiliary computing serverWill beSending to a second auxiliary computing server;
(2-4) for,Calculating polynomialAnd will beThe arithmetic sharing is asAndwill beSending to the first auxiliary computing serverWill beSending to a second auxiliary computing server;
(2-5) forFirst auxiliary computing serverAnd a second auxiliary computing serverMultiple invocation of secure multiplication protocol, computingAnd;
(2-6) forBased onFirst auxiliary computing serverCalculate out(ii) a Based onSecond auxiliary computing serverCalculate out;
(2-7) forFirst auxiliary computing serverTo be provided withInvokingConverting the arithmetic quota into a Boolean quota to obtain a corresponding Boolean quota(ii) a Second auxiliary computing serverTo be provided withInvokingConverting the arithmetic quota into a Boolean quota to obtain a corresponding Boolean quota;
(2-8) forFirst auxiliary computing serverTo be provided withCalling an arithmetic sharing equivalence test protocol to obtain(ii) a Second auxiliary computing serverTo be provided withCalling an arithmetic sharing equivalence test protocol to obtain;
(2-9) first auxiliary computing ServerComputing(ii) a Second helper computing server computing(ii) a First auxiliary computing serverWill be provided withSend to the Main participant clientThe second auxiliary computing server willSend to the Main participant clientThe main participant clientComputing。
4. The privacy protection method in the process of computing the intersection set of multiple clients according to claim 1, wherein when the computation requirement is to compute the sum of the intersection set, the security statistic computation protocol is executed including the following steps:
(3-2)Respectively carrying out simple hash on the private index sets to obtainEach boxThe elements in (A) are represented byWherein,The size of each box is simply hashed;
(3-3) Main participant clientWill be provided withThe arithmetic sharing is asAndwill beSending to the first auxiliary computing serverWill beSending to a second auxiliary computing server;
(3-4) for,Calculating polynomialAnd will beThe arithmetic sharing is asAndand will beSending to the first auxiliary computing server(ii) a Will be provided withSending to a second auxiliary computing server;
(3-5) forFirst auxiliary computing serverMultiple invocation of secure multiplication protocol, computing(ii) a Second auxiliary computing serverMultiple invocation of secure multiplication protocol, computing;
(3-6) forFirst auxiliary computing serverComputing(ii) a Second auxiliary computing serverComputing;
(3-7) forFirst auxiliary computing serverTo be provided withInvokingAgreement to get a corresponding Boolean fraction(ii) a Second auxiliary computing serverTo be provided withInvokingAgreement to get a corresponding Boolean fraction;
(3-8) forFirst auxiliary computing serverTo be provided withCalling an arithmetic sharing equivalence test protocol to obtain(ii) a Second auxiliary computing serverTo be provided withCalling an arithmetic sharing equivalence test protocol to obtain;
(3-9) useTo representA set of corresponding values for the middle element; main participant clientWill be provided withThe arithmetic sharing is asAndsending outFor the first auxiliary calculationServerSending outTo a second auxiliary computing server;
(3-10) forFirst auxiliary computing serverTo be provided withFor input, a second auxiliary computing serverTo be provided withFor input, both parties invoke a secure multiplication protocol, a first helper computing serverObtain an outputSecond auxiliary computing serverObtain an output;
5. The privacy protection method in the process of computing the intersection data of multiple clients according to claim 1, wherein when the computing requirement is to compute the mean value of the intersection set, the executed security statistic computing protocol includes the following steps:
(4-2)Respectively carrying out simple hash on the private index sets to obtainEach boxThe elements in (A) are represented byWherein,The size of each box is simply hashed;
will be provided withSending to the first auxiliary computing serverWill beSending to a second auxiliary computing server;
from the participant client to the clientThe arithmetic sharing is asAnd(ii) a Will be provided withSending to the first auxiliary computing server(ii) a Will be provided withSending to a second auxiliary computing server;
(4-5) forFirst auxiliary computing serverMultiple invocation of secure multiplication protocol, computing(ii) a Second auxiliary computing serverMultiple invocation of secure multiplication protocol, computing;
(4-6) forFirst auxiliary computing serverComputing(ii) a Second auxiliary computing serverComputing;
(4-7) forFirst auxiliary computing serverTo be provided withInvokingAgreement to get a corresponding Boolean fraction(ii) a Second auxiliary computing serverTo be provided withInvokingAgreement to get a corresponding Boolean fraction;
(4-8) forFirst auxiliary computing serverTo be provided withCalling an arithmetic sharing equivalence test protocol to obtain(ii) a Second auxiliary computing serverTo be provided withCalling an arithmetic sharing equivalence test protocol to obtain;
(4-9) useTo representA set of corresponding values for the middle element; main participant clientWill be provided withThe arithmetic sharing is asAnd;
main participant clientSendingTo the first auxiliary computing serverThe main participant clientSendingTo a second auxiliary computing server;
(4-10) forFirst auxiliary computing serverTo be provided withFor input, a second auxiliary computing serverTo be provided withFor input, both parties invoke a secure multiplication protocol, a first helper computing serverObtain an outputSecond auxiliary computing serverObtain an output;
(4-12) first auxiliary computing ServerTo be provided withFor input, a second auxiliary computing serverTo be provided withFor input, both parties callProtocol, first auxiliary computing serverObtaining the corresponding share of YaoSecond auxiliary computing serverObtaining the corresponding fractions of Yao's diseaseShare of;
(4-13) first auxiliary computing ServerTo be provided withFor input, a second auxiliary computing serverTo be provided withCalling the calculation function of the Yao's chaotic circuit protocol for inputFirst auxiliary computing serverTo obtainIs/are as followsPortion(s) ofSecond auxiliary computing serverTo obtainIs/are as followsPortion(s) of;
6. The method of claim 1, wherein the privacy preserving method is applied to the computation process of multi-client intersection data,
when the computational requirement is to compute the variance of the set of intersections, the secure statistical computation protocol implemented comprises the steps of:
(5-2)Respectively carrying out simple hash on the private index sets to obtainEach boxThe elements in (A) are represented byWherein,The size of each box is simply hashed;
(5-3) Main participant clientWill be provided withThe arithmetic sharing is asAndwill beSent to the first auxiliary computingServerWill beSending to a second auxiliary computing server;
will be provided withSending to the first auxiliary computing server(ii) a Will be provided withSending to a second auxiliary computing server;
(5-5) forFirst auxiliary computing serverMultiple invocation of secure multiplication protocol, computing(ii) a Second auxiliary computing serverMultiple invocation of secure multiplication protocol, computing;
(5-6) forFirst auxiliary computing serverComputing(ii) a Second auxiliary computing serverComputing;
(5-7) forFirst auxiliary computing serverTo be provided withInvokingAgreement to get a corresponding Boolean fraction(ii) a Second auxiliary computing serverTo be provided withInvokingAgreement to get a corresponding Boolean fraction;
(5-8) forFirst auxiliary computing serverTo be provided withCalling an arithmetic sharing equivalence test protocol to obtain(ii) a Second auxiliary computing serverTo be provided withThe Boolean fraction ofCalling an arithmetic sharing equivalence test protocol to obtain;
(5-9) useTo representA set of corresponding values for the middle element; main participant clientWill be provided withThe arithmetic sharing is asAndthe master participant client sendsTo the first auxiliary computing serverThe master participant client sendsTo a second auxiliary computing server;
(5-10) forFirst auxiliary computing serverTo be provided withFor input, a second auxiliary computing serverTo be provided withFor input, both parties invoke a secure multiplication protocol, a first helper computing serverObtaining an output arithmetic quotaSecond auxiliary computing serverObtaining an output arithmetic quota;
(5-11) first auxiliary computing ServerCalculating the arithmetic fraction of the size of the intersectionAndsecond auxiliary computing serverCalculating the arithmetic fraction of the size of the intersectionAnd;
(5-12) first auxiliary computing ServerTo be provided withFor input, a second auxiliary computing serverTo be provided withFor input, both parties callThe protocol is such that the protocol is,obtaining the corresponding share of YaoSecond assistanceComputing serverObtaining the corresponding share of Yao;
(5-13) first auxiliary computing ServerTo be provided withFor input, a second auxiliary computing serverTo be provided withFor input, calling the Yao's chaotic circuit protocol to calculate the averageBoth parties respectively get the averageShare of YaoAnd;representing the size of the intersection;
(5-14) first auxiliary computing ServerTo be provided withFor input, a second auxiliary computing serverTo be provided withCalling for inputProtocol, first auxiliary computing serverObtain an outputSecond auxiliary computing serverShare of Yao to get average output;
(5-15) first auxiliary computing ServerTo be provided withFor input, a second auxiliary computing serverTo be provided withInvoking Security for inputMultiplication protocol calculationOf the first auxiliary computing serverObtaining the arithmetic contribution of the square of the output meanSecond auxiliary computing serverObtaining the arithmetic contribution of the square of the output mean;
(5-16) forFirst auxiliary computing serverTo be provided withFor input, a second auxiliary computing serverTo be provided withInvoking secure multiplication protocol computations for inputOf the first auxiliary computing serverObtaining an output arithmetic quotaSecond auxiliary computing serverObtaining an output arithmetic quota;
First auxiliary computing serverTo be provided withFor input, a second auxiliary computing serverTo be provided withTo input, callProtocol, first auxiliary computing serverObtain an outputSecond auxiliary computing serverObtain an output;
(5-18) first auxiliary computing ServerTo be provided withFor input, a second auxiliary computing serverTo be provided withCalling the calculation function of the Yao's chaotic circuit protocol for inputBoth parties respectively obtainFraction of YaoAnd;
(5-19) first auxiliary computing ServerTo be provided withFor input, a second auxiliary computing serverTo be provided withCalling for inputProtocol, first auxiliary computing serverObtain an outputSecond auxiliary computing serverObtain an output;
7. The method of claim 1, wherein the privacy preserving method is applied to the computation process of multi-client intersection data,
when the calculation requirements are to calculate the maximum value of the intersection set and the minimum value of the intersection set, the executed safety statistic calculation protocol comprises the following steps:
(6-2)Respectively carrying out simple hash on the private index sets to obtainEach boxThe elements in (A) are represented byWherein,The size of each box is simply hashed;
(6-3) Main participant clientWill be provided withThe arithmetic sharing is asAndwill beSending to the first auxiliary computing serverWill beSending to a second auxiliary computing server;
from the participant client to the clientSending to the first auxiliary computing server(ii) a Will be provided withSending to a second auxiliary computing server;
(6-5) forFirst auxiliary computing serverMultiple invocation of secure multiplication protocol, computing(ii) a Second auxiliary computing serverMultiple invocation of secure multiplication protocol, computing;
(6-6) forFirst auxiliary computing serverComputing(ii) a Second auxiliary computing serverComputing;
(6-7) forFirst auxiliary computing serverTo be provided withInvokingAgreement to get a corresponding Boolean fraction(ii) a Second auxiliary computing serverTo be provided withInvokingAgreement to get a corresponding Boolean fraction;
(6-8) forFirst auxiliary computing serverTo be provided withCalling an arithmetic sharing equivalence test protocol to obtain(ii) a Second auxiliary computing serverTo be provided withCalling an arithmetic sharing equivalence test protocol to obtain;
(6-9) useTo representA set of corresponding values for the middle element;will be provided withThe arithmetic sharing is asAndsending outTo the first auxiliary computing serverSending outTo give;
(6-10) forFirst auxiliary computing serverTo be provided withFor input, a second auxiliary computing serverTo be provided withFor input, both parties invoke a secure multiplication protocol, a first helper computing serverObtain an outputSecond auxiliary computing serverObtain an output;
(6-11) forOf 1 atAn auxiliary computing serverTo be provided withTo input, callProtocol, first auxiliary computing serverObtain an output(ii) a Second auxiliary computing serverTo be provided withTo input, callProtocol, second helper computing serverObtain an output;
(6-12) first auxiliary computing ServerTo be provided withFor input, a second auxiliary computing serverTo be provided withFor input, both use to find the maximum valueAnd minimum valueThe Yao's chaotic circuit protocol is respectively obtainedThe fraction of yao with the maximum and minimum values of;
8. Privacy protection system in many client intersection data computational process, characterized by includes:
a random assignment module configured to: randomly appointing one participant client as a main participant client, and other participant clients as auxiliary participant clients; setting an additional data set in the main participant client;
an acquisition module configured to: acquiring a calculation demand;
a privacy protection module configured to: according to the calculation requirement, a plurality of participant clients participating in the calculation of the intersection statistical data of the multi-party private index set initiate communication link requests to a main participant client and two auxiliary calculation servers, execute a safety statistical calculation protocol, and finally output the statistical calculation result of the intersection set of the plurality of participant clients corresponding to the calculation requirement by the main participant client;
a feedback module configured to: the main participant client sends the statistical calculation result to the slave participant client;
when the computational requirement is to compute the set of intersections itself, the secure statistical computation protocol implemented includes the steps of:
(1-1) Main participant clientSet its private indexPerforming hash of the grains to obtainOne box;Representing the total number of bins;
(1-2) slave participant clientRespectively carrying out simple hash on the private index sets to obtain the firstA slave clientOne boxOf 1 atA slave clientOne boxThe elements in (A) are represented byWherein, in the step (A),,the size of each box is simply hashed;
(1-3) Main participant clientWill be provided withArithmetic sharing as being sent to a first helper computing serverIs an arithmetic portion ofAnd to be sent to a second auxiliary computing serverIs an arithmetic portion ofRespectively sent to the first auxiliary computing serverAnd a second auxiliary computing server;
wherein the content of the first and second substances,representing secondary participant clientsCorresponds toA polynomial of the data in the individual bins;the expression of the independent variable is shown,show thatAndthen the difference result is multiplied together,coefficients representing a polynomial; if and only if handleWhen the data is substituted into the polynomial, the value of the polynomial is 0;
will be provided withThe arithmetic sharing is asAnd;to representA constituent set of all coefficients of (a);
dividing the polynomial coefficient fractionSending to the first auxiliary computing server(ii) a Dividing the polynomial coefficient fractionSending to a second auxiliary computing server;
(1-5) forFirst auxiliary computing serverAccording to the data received in the step (1-3) and the step (1-4), calling a safe multiplication protocol for multiple times, and calculating an arithmetic share(ii) a The second auxiliary computing server calls the safe multiplication protocol for multiple times according to the data received in the step (1-3) and the step (1-4) to compute the arithmetic share;
(1-6) forFirst auxiliary computing serverCalculating the sum of the judgment results of the first box of all the slave client sidesSecond auxiliary computing serverCalculating the sum of the judgment results of the first box of all the slave client sides;
(1-7) first auxiliary computing ServerAnd a second auxiliary computing serverWill be provided withAndsend to the Main participant client;
Main participant clientComputing,Is shown ifThen, thenIs an intersection element;representing the final sought set intersection;
introducing two collusion-free helper computing servers in a protocolAndthe auxiliary computing server has no input; in actual deployment, the auxiliary computing server selects two different public cloud platforms; the collusion means that both parties do not share their private data with each other, thereby protecting the private data.
9. The privacy protection system in the multi-client intersection data computation process of claim 8, wherein the computation requirements include: calculating the intersection set, the size of the intersection set, the sum of the intersection set, the mean of the intersection set, the variance of the intersection set, the maximum of the intersection set and the minimum of the intersection set.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110984789.9A CN113438078B (en) | 2021-08-26 | 2021-08-26 | Privacy protection method and system in multi-client intersection data calculation process |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110984789.9A CN113438078B (en) | 2021-08-26 | 2021-08-26 | Privacy protection method and system in multi-client intersection data calculation process |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113438078A CN113438078A (en) | 2021-09-24 |
CN113438078B true CN113438078B (en) | 2021-11-23 |
Family
ID=77797883
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110984789.9A Active CN113438078B (en) | 2021-08-26 | 2021-08-26 | Privacy protection method and system in multi-client intersection data calculation process |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113438078B (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114239074B (en) * | 2022-02-25 | 2022-05-31 | 蓝象智联(杭州)科技有限公司 | Private data hiding intersection method without exposing intermediate result |
CN114494803B (en) * | 2022-04-18 | 2022-07-05 | 山东师范大学 | Image data annotation method and system based on security calculation |
CN116522402B (en) * | 2023-07-04 | 2023-10-13 | 深圳前海环融联易信息科技服务有限公司 | Customer identification method, device, equipment and medium based on privacy calculation |
CN117692144B (en) * | 2024-02-04 | 2024-05-07 | 确信信息股份有限公司 | Privacy protection method and system for multi-party private set operation under threshold condition |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3419211A1 (en) * | 2017-06-23 | 2018-12-26 | Flytxt B.V. | Privacy preserving computation protocol for data analytics |
CN112910631A (en) * | 2021-02-08 | 2021-06-04 | 上海海洋大学 | Efficient privacy set intersection calculation method and system based on assistance of cloud server |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11250159B2 (en) * | 2018-11-29 | 2022-02-15 | International Business Machines Corporation | Secure data monitoring utilizing secure private set intersection |
CN110719159B (en) * | 2019-09-24 | 2023-06-30 | 河南师范大学 | Multi-party privacy set intersection method for resisting malicious adversaries |
CN112906030B (en) * | 2021-03-09 | 2023-05-16 | 浙江万里学院 | Data sharing method and system based on multi-party homomorphic encryption |
-
2021
- 2021-08-26 CN CN202110984789.9A patent/CN113438078B/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3419211A1 (en) * | 2017-06-23 | 2018-12-26 | Flytxt B.V. | Privacy preserving computation protocol for data analytics |
CN112910631A (en) * | 2021-02-08 | 2021-06-04 | 上海海洋大学 | Efficient privacy set intersection calculation method and system based on assistance of cloud server |
Also Published As
Publication number | Publication date |
---|---|
CN113438078A (en) | 2021-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113438078B (en) | Privacy protection method and system in multi-client intersection data calculation process | |
CN111512589B (en) | Method for fast secure multiparty inner product with SPDZ | |
CN111133719B (en) | Method for faster secure multiparty inner product computation with SPDZ | |
CN111064579A (en) | Block chain-based secure multi-party computing method, system and storage medium | |
CN112737772B (en) | Security statistical method, terminal device and system for private set intersection data | |
CN114175028B (en) | Cryptographic pseudonym mapping method, computer system, computer program and computer-readable medium | |
CN113420335B (en) | Block chain-based federal learning system | |
CN115688185B (en) | Multiparty privacy summation method, multiparty privacy summation device, electronic equipment and storage medium | |
CN113922957B (en) | Virtual cloud wallet system based on privacy protection calculation | |
CN113472513B (en) | Parallel secure multiparty computing method based on block chain | |
CN114650134A (en) | Longitudinal privacy protection logistic regression method based on secret sharing | |
CN108881449A (en) | A kind of anonymous call method and system of block chain | |
CN114580012A (en) | Federal grouping statistic calculation method based on privacy security intersection and secret sharing | |
CN105024821B (en) | Voidable Identity based encryption method on lattice | |
CN112685793A (en) | Data processing method, device and system based on block chain | |
US20220415455A1 (en) | Systems and methods for virtual clinical trials | |
CN112865980A (en) | Block chain encryption voting method, computer device and storage medium | |
CN106301791B (en) | A kind of realization method and system of the unifying user authentication authorization based on big data platform | |
Cha et al. | A blockchain-based privacy preserving ticketing service | |
JP4305049B2 (en) | Secret sharing method, secret sharing system, and distributed computing device | |
CN117614618A (en) | Cross-domain multi-authority collaborative attribute-based encryption access control method | |
CN112615838A (en) | Extensible block chain cross-chain communication method | |
CN117134945A (en) | Data processing method, system, device, computer equipment and storage medium | |
Feng et al. | A new public remote integrity checking scheme with user and data privacy | |
CN116992480A (en) | Method for providing publicly verifiable outsourcing computing service |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220402 Address after: 250102 floor 17, building 4, future entrepreneurship Plaza, north section of Gangxing Third Road, Jinan area, China (Shandong) pilot Free Trade Zone, Jinan City, Shandong Province Patentee after: Confident Information Co.,Ltd. Address before: 250014 No. 88, Wenhua East Road, Lixia District, Shandong, Ji'nan Patentee before: SHANDONG NORMAL University |