CN111539026A - Method and device for performing secure operation on private data - Google Patents

Method and device for performing secure operation on private data Download PDF

Info

Publication number
CN111539026A
CN111539026A CN202010567563.4A CN202010567563A CN111539026A CN 111539026 A CN111539026 A CN 111539026A CN 202010567563 A CN202010567563 A CN 202010567563A CN 111539026 A CN111539026 A CN 111539026A
Authority
CN
China
Prior art keywords
data
fragment
operation result
private data
result
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.)
Granted
Application number
CN202010567563.4A
Other languages
Chinese (zh)
Other versions
CN111539026B (en
Inventor
李漓春
张祺智
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202010567563.4A priority Critical patent/CN111539026B/en
Publication of CN111539026A publication Critical patent/CN111539026A/en
Application granted granted Critical
Publication of CN111539026B publication Critical patent/CN111539026B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

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

Landscapes

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

Abstract

An embodiment of the present specification provides a method and an apparatus for performing secure operation on private data, where the method includes: any party of the multiple parties masks the first fragment of the private data of the party by using the first random number of the party to obtain the first fragment of the masked data; sending the first fragment of the masked data to a service party except for multiple parties, so that the service party performs division operation according to the multiple fragments of the masked data sent by the multiple parties respectively to obtain a first operation result, and splitting the first operation result into multiple fragments based on a secret sharing mode; receiving a first fragment of a first operation result from a server; and removing the influence of the first random number aiming at the first fragment of the first operation result to obtain a first fragment of a second operation result, wherein the first fragment is used as a first fragment of a final result of division operation aiming at the private data. The performance can be improved when security operations are performed on private data.

Description

Method and device for performing secure operation on private data
Technical Field
One or more embodiments of the present specification relate to the field of computers, and more particularly, to a method and apparatus for performing secure operations on private data.
Background
The secure multi-party computation is also called multi-party secure computation, namely, a plurality of parties compute the result of a function together without revealing the input data of each party of the function, and the computed result is disclosed to one or more parties. Where the input data for the parties is often private data.
Secret sharing (secret sharing), also called secret splitting, secret sharing, is a cryptographic technique originally used for the management of secret information. The basic principle is to split a secret (e.g. a key) into multiple shards (shares), also called shares, which are respectively handed to different people for storage. Only if the number of people exceeding the threshold number combines their fragments, the secret can be recovered; no secret information can be recovered from less than a threshold number of slices. In multi-party security computing, the number of thresholds is typically the same as the number of participants.
When secret sharing is used for safe multi-party calculation, sometimes a safe division operation needs to be performed, that is, under the condition that private data is not leaked, division operation is performed on the private data, and the safe division performance in the prior art is poor.
Accordingly, improved solutions are desired that can improve performance when performing secure operations on private data.
Disclosure of Invention
One or more embodiments of the present specification describe a method and apparatus for performing a secure operation on private data, which can improve performance when performing a secure operation on private data.
In a first aspect, a method for performing secure operations on private data is provided, where the private data is split into multiple fragments based on a secret sharing manner, and each fragment of the private data is distributed among multiple parties, and the method is performed by any one of the multiple parties, and includes:
covering the first fragment of the private data of the self by using a first random number of the self to obtain a first fragment for covering the data;
sending the first fragment of the masked data to a service party except the multiple parties, so that the service party performs division operation according to the multiple fragments of the masked data sent by the multiple parties respectively to obtain a first operation result, and splitting the first operation result into multiple fragments based on a secret sharing mode, wherein the number of the fragments included in the first operation result is the same as the number of the fragments included in the masked data;
receiving a first fragment of the first operation result from the server, wherein the first fragment of the first operation result is any one of a plurality of fragments of the first operation result;
and removing the influence of the first random number aiming at the first fragment of the first operation result to obtain a first fragment of a second operation result, wherein the first fragment is used as a first fragment of a final result of division operation aiming at the private data.
In a possible implementation, each slice of the private data belongs to a modulo n space, a first slice of the first operation result belongs to a modulo m space, and m is not equal to n.
In a possible implementation manner, the final result of performing the division operation on the private data specifically is: and taking the privacy data as a dividend, and dividing the dividend by a preset divisor to obtain a result.
Further, the masking the first segment of the private data of the present party with the first random number of the present party to obtain the first segment of the masked data includes:
and carrying out summation operation on the first fragment of the private data of the user and the first random number of the user to obtain a first fragment for covering data.
Further, the private data is a signed integer of modulo n space; the first fragment of the private data belongs to a modulo n space and the first fragment of the masked data belongs to a modulo n space;
the first random number belongs to a first value interval, the first value interval takes a first numerical value as a minimum value and takes a second numerical value as a maximum value, the first numerical value is determined according to the n and the minimum value of the privacy data, and the second numerical value is determined according to the n and the maximum value of the privacy data.
Further, the private data is an unsigned integer of modulo n space; the first fragment of the private data belongs to a modulo n space and the first fragment of the masked data belongs to a modulo n space;
the first random number belongs to a second value interval, the second value interval takes a third value as a minimum value and takes a fourth value as a maximum value, the third value is determined according to the minimum value of the privacy data, and the fourth value is determined according to the n and the maximum value of the privacy data.
Further, the removing, for the first slice of the first operation result, the influence of the first random number includes:
dividing the first random number serving as a dividend by the preset divisor to obtain an intermediate result;
and subtracting the intermediate result from the first fragment of the first operation result to obtain a first fragment of the second operation result.
In a second aspect, a method for performing secure operation on private data is provided, where the private data is split into multiple fragments based on a secret sharing manner, and each fragment of the private data is distributed among multiple parties, and the method is performed by a service party other than the multiple parties, and includes:
receiving a plurality of fragments for covering data from the multiple parties respectively, wherein any fragment of the covering data is obtained by covering the fragment of the private data of a party by using a random number of the party by any party in the multiple parties;
merging the plurality of fragments of the covering data to obtain the covering data;
carrying out division operation on the covering data to obtain a first operation result;
splitting the first operation result into a plurality of fragments based on a secret sharing mode, wherein the number of the fragments included in the first operation result is the same as the number of the fragments included in the cloaking data;
and respectively sending the plurality of fragments of the first operation result to the multiple parties, so that any one of the multiple parties obtains the fragment of the final result of division operation on the private data according to the received fragment.
In a possible implementation, each slice of the private data belongs to a modulo n space, the plurality of slices of the first operation result belong to a modulo m space, and m is not equal to n.
In a possible embodiment, said merging the plurality of fragments of the masked data to obtain the masked data includes:
and carrying out summation operation on the plurality of fragments of the covering data to obtain the covering data.
In a possible implementation manner, the final result of the division operation performed on the private data is specifically: taking the privacy data as a dividend, and dividing the dividend by a preset divisor to obtain a result;
the dividing operation performed on the masked data to obtain a first operation result includes:
and taking the masking data as a dividend, and dividing the dividend by the preset divisor to obtain the first operation result.
In a third aspect, an apparatus for performing secure operations on private data is provided, where the private data is split into multiple pieces based on a secret sharing manner, and each piece of the private data is distributed among multiple parties, and the apparatus is disposed at any one of the multiple parties, and includes:
the concealing unit is used for concealing the first fragment of the private data of the self by using the first random number of the self to obtain the first fragment of the concealed data;
a sending unit, configured to send the first fragment of the masked data obtained by the masking unit to a service party other than the multiple parties, so that the service party performs division operation according to the multiple fragments of the masked data sent by the multiple parties respectively to obtain a first operation result, and splits the first operation result into multiple fragments based on a secret sharing manner, where the number of fragments included in the first operation result is the same as the number of fragments included in the masked data;
a receiving unit, configured to receive, from the server, a first segment of the first operation result, where the first segment of the first operation result is any one of multiple segments of the first operation result;
and the removing unit is used for removing the influence of the first random number aiming at the first fragment of the first operation result received by the receiving unit to obtain a first fragment of a second operation result, and the first fragment is used as a first fragment of a final result of division operation aiming at the private data.
In a fourth aspect, an apparatus for performing secure operations on private data is provided, where the private data is split into multiple segments based on a secret sharing manner, and each segment of the private data is distributed among multiple parties, and the apparatus is disposed at a service party other than the multiple parties, and includes:
a receiving unit, configured to receive multiple fragments for masking data from the multiple parties, respectively, where any fragment for masking data is obtained by masking, by using a random number of a party, a fragment of the private data that the party has by any of the multiple parties;
a merging unit, configured to merge multiple fragments of the masked data received by the receiving unit to obtain the masked data;
the division unit is used for carrying out division operation on the mask data obtained by the merging unit to obtain a first operation result;
the splitting unit is used for splitting a first operation result obtained by the dividing unit into a plurality of fragments based on a secret sharing mode, wherein the number of the fragments included in the first operation result is the same as the number of the fragments included in the cloaking data;
and the sending unit is used for respectively sending the plurality of fragments of the first operation result obtained by the splitting unit to the plurality of parties so that any one of the plurality of parties obtains the fragment of the final result of division operation aiming at the private data according to the received fragment.
In a fifth aspect, there is provided a computer readable storage medium having stored thereon a computer program which, when executed in a computer, causes the computer to perform the method of the first or second aspect.
In a sixth aspect, there is provided a computing device comprising a memory having stored therein executable code, and a processor that when executing the executable code, implements the method of the first or second aspect.
According to the method and the device provided by the embodiment of the specification, the private data is divided into a plurality of fragments based on a secret sharing mode, each fragment of the private data is distributed in multiple parties, any party in the multiple parties does not directly perform corresponding security operation on the fragment of the private data, but first the first fragment of the private data of the party is covered by a first random number of the party to obtain the first fragment of the covered data; then sending the first fragment of the masked data to a service party except the multiple parties, so that the service party performs division operation according to the multiple fragments of the masked data sent by the multiple parties respectively to obtain a first operation result, and splitting the first operation result into multiple fragments based on a secret sharing mode, wherein the number of the fragments included in the first operation result is the same as the number of the fragments included in the masked data; then receiving a first fragment of the first operation result from the server, wherein the first fragment of the first operation result is any one of a plurality of fragments of the first operation result; and finally, removing the influence of the first random number aiming at the first fragment of the first operation result to obtain a first fragment of a second operation result, wherein the first fragment is used as a first fragment of a final result of division operation aiming at the private data. As can be seen from the above, in the embodiment of the present specification, any one of the multiple parties sends the masked data to the server party, since the masked data masks the private data of the party by using the random number, the private data of the party cannot be revealed, and the division operation for the private data is converted into the division operation for the masked data, and subsequently, only the multiple parties need to remove the influence of the random number respectively, the fragment of the final result of the division operation for the private data can be obtained, and the performance can be improved when the security operation is performed on the private data.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings needed to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
FIG. 1 is a schematic diagram illustrating an implementation scenario of an embodiment disclosed herein;
FIG. 2 illustrates a flow diagram of a method of performing a secure operation on private data, according to one embodiment;
FIG. 3 illustrates a flow diagram of a method of performing a secure operation on private data, according to another embodiment;
FIG. 4 shows a schematic block diagram of an apparatus for performing secure operations on private data, according to one embodiment;
fig. 5 shows a schematic block diagram of an apparatus for performing secure operations on private data according to another embodiment.
Detailed Description
The scheme provided by the specification is described below with reference to the accompanying drawings.
Fig. 1 is a schematic view of an implementation scenario of an embodiment disclosed in this specification. This implementation scenario involves performing secure operations on private data. The private data is divided into a plurality of fragments based on a secret sharing mode, and the fragments of the private data are distributed in multiple parties. It is understood that the above-mentioned parties may be two or more parties, e.g., three parties, four parties, etc. In this embodiment of the present description, an example is described in which private data is split into two segments, and the two segments of the private data are distributed in two parties. Referring to fig. 1, a division operation, i.e. solving for x/y, is performed on the private data x. The first party 11 has a modulo n fragmentation of the private data x<x>1nThe second party 12 has a modulo n fragmentation of the private data x<x>2n. After division, the first party 11 obtains x/y slices modulo m<x/y>1mThe second party 12 obtains x/y slices modulo m<x/y>2m. Wherein the content of the first and second substances,y is a disclosed dividend. The d power of y being 2 is a special case of great importance, and x/y is the remaining part of x after the lowest d bits are removed.
The first party and the second party are only for distinguishing the two parties, and the first party may be referred to as the P1 party, the second party may be referred to as the P2 party, and so on.
The relationship between m and n may be m = = n, or m | = = n. When m | = n, the embodiments of this specification can achieve the additional effect of modulo conversion of the division result in addition to the division operation.
In the embodiments of the present specification, the meaning of the privacy data is not limited. The privacy data may represent a value corresponding to one item of privacy information, for example, the privacy data is 20, which represents the age of the user is 20 years old; or the private data is 15, and the income of the representative user is 15 ten thousand yuan; the privacy data may also represent values corresponding to a plurality of items of privacy information, for example, the privacy data is a vector, and each bit of the vector represents different privacy information, for example, a first bit of the vector represents whether the age of the user belongs to a preset age interval, and a second bit of the vector represents whether the income of the user belongs to a preset income interval.
It will be appreciated that the private data may be any data that is not convenient to disclose, and may be, but is not limited to, data representing personal information of the user, or trade secrets or the like.
In the embodiment of the specification, the security operation on the private data is realized by using a random number masking mode on the premise of not revealing the private data, and the performance can be improved.
Fig. 2 shows a flowchart of a method for performing a secure operation on private data according to an embodiment, which may be based on the implementation scenario shown in fig. 1, where the private data is split into multiple pieces based on a secret sharing manner, and the pieces of the private data are distributed among multiple parties, and the method is performed by any one of the multiple parties. As shown in fig. 2, the method for performing secure operation on private data in this embodiment includes the following steps: step 21, masking the first fragment of the private data of the own by using a first random number of the own to obtain a first fragment of masked data; step 22, sending the first fragment of the masked data to a service party other than the multiple parties, so that the service party performs division operation according to the multiple fragments of the masked data sent by the multiple parties respectively to obtain a first operation result, and splits the first operation result into multiple fragments based on a secret sharing manner, wherein the number of the fragments included in the first operation result is the same as the number of the fragments included in the masked data; step 23, receiving the first segment of the first operation result from the server, where the first segment of the first operation result is any one of the plurality of segments of the first operation result; and step 24, removing the influence of the first random number aiming at the first fragment of the first operation result to obtain a first fragment of a second operation result, wherein the first fragment is used as a first fragment of a final result of division operation aiming at the private data. Specific execution modes of the above steps are described below.
First, in step 21, the first segment of the private data of the own is masked with the first random number of the own, and a first segment of masked data is obtained. It is to be understood that both the first fragment of the private data and the first random number are unknown to the other party.
In one example, the pieces of private data belong to a modulo n space.
In one example, the masking the first segment of the private data of the present party with the first random number of the present party to obtain a first segment of masked data includes:
and carrying out summation operation on the first fragment of the private data of the user and the first random number of the user to obtain a first fragment for covering data.
For example, party P1 has a modulo n slicing of private data x<x>1nThe P2 party has a modulo n slicing of private data x<x>2n. The P1 side and the P2 side are respectively calculated<z>1n=<x>1n+ s% n and<z>2n=<x>2n+ r% n. Wherein,% is a modulo operationThe symbols s and r are random numbers selected by the party P1 and the party P2 respectively, the random numbers can be secret random integers, and the random numbers are selected again each time the safety operation is carried out.<z>1nFor one slice of the masked data obtained by the party P1,<z>2nanother slice of the masked data obtained for the P2 party.
Further, the private data is a signed integer of modulo n space; the first fragment of the private data belongs to a modulo n space and the first fragment of the masked data belongs to a modulo n space;
the first random number belongs to a first value interval, the first value interval takes a first numerical value as a minimum value and takes a second numerical value as a maximum value, the first numerical value is determined according to the n and the minimum value of the privacy data, and the second numerical value is determined according to the n and the maximum value of the privacy data.
Continuing with the previous example, the P1 party has a slice that masks the data<z>1n=<x>1n+ s% n, P2 side with another slice that masks the data<z>2n=<x>2n+ r% n, then the masking data z =<z>1n+<z>2n=<x>1n+<x>2n+r+s=x+r+s。
If the private data is a signed integer in a modulo-n space, the selection of the random integer needs to satisfy: -n/2= < x + r + s = < n/2-1.
The value ranges of r and s are [ -n/4-min (x)/2, (n/2-1-max (x))/2 ].
Further, the private data is an unsigned integer of modulo n space; the first fragment of the private data belongs to a modulo n space and the first fragment of the masked data belongs to a modulo n space;
the first random number belongs to a second value interval, the second value interval takes a third value as a minimum value and takes a fourth value as a maximum value, the third value is determined according to the minimum value of the privacy data, and the fourth value is determined according to the n and the maximum value of the privacy data.
Continuing with the previous example, the P1 side has a maskOne piece of cover data<z>1n=<x>1n+ s% n, P2 side with another slice that masks the data<z>2n=<x>2n+ r% n, then the masking data z =<z>1n+<z>2n=<x>1n+<x>2n+r+s=x+r+s。
If the private data is an unsigned integer in a modulo-n space, the selection of the random integer needs to satisfy: 0= < x + r + s = < n.
The value ranges of r and s are [ -min (x)/2, (n-1-max (x)/2 ].
Then, in step 22, the first segment of the masked data is sent to a service party other than the multiple parties, so that the service party performs a division operation according to the multiple segments of the masked data sent by the multiple parties respectively to obtain a first operation result, and the first operation result is split into multiple segments based on a secret sharing manner, where the number of segments included in the first operation result is the same as the number of segments included in the masked data. It can be understood that the masking data is obtained by masking the private data by the random number, and the masked data is sent to the service party without revealing the private data.
For example, the parties are specifically both the P1 party and the P2 party,<z>1nfor one slice of the masked data obtained by the party P1,<z>2nfor another slice of the masked data obtained by the P2 party, the P1 party and the P2 party respectively send<z>1nAnd<z>2nto the server S.
The service party may be a semi-trusted service party, which is not trusted enough to know the private data x and trusted enough to trust that the protocol is executed honestly.
Next, in step 23, a first slice of the first operation result is received from the server, where the first slice of the first operation result is any one slice of the multiple slices of the first operation result. It is understood that the first operation result is an operation result obtained by performing a division operation on the mask data.
In one example, each slice of the private data belongs to a modulo n space, a first slice of the first operation result belongs to a modulo m space, and m is not equal to n.
For example, the multiple parties are two parties, namely the party P1 and the party P2, the masked data is z, the divisor is y, the first operation result is z/y, and the service party splits the first operation result into two fragments<z/y>1mAnd<z/y>2m. The P1 party receives a slice of the first operation result from the server party<z/y>1mThe P2 side receives another piece of the first operation result from the server side<z/y>2m
Finally, in step 24, the influence of the first random number is removed for the first segment of the first operation result, and a first segment of a second operation result is obtained as a first segment of a final result of division operation for the private data. It will be appreciated that the private data is distributed among the parties in a secret sharing manner, and that the end result is also distributed among the parties in a secret sharing manner.
In an example, the final result of performing division operation on the private data specifically is: and taking the privacy data as a dividend, and dividing the dividend by a preset divisor to obtain a result.
It will be appreciated that the preset divisor is public to both the parties and the service.
Further, the removing, for the first slice of the first operation result, the influence of the first random number includes:
dividing the first random number serving as a dividend by the preset divisor to obtain an intermediate result;
and subtracting the intermediate result from the first fragment of the first operation result to obtain a first fragment of the second operation result.
For example, the multiple parties are two parties, i.e., the party P1 and the party P2, and the party P1 receives a slice of the first operation result from the server party<z/y>1mThe P2 side receives another piece of the first operation result from the server side<z/y>2mP1 directive<x/y>1m=<z/y>1m-s/y %m,To obtain a slice of the result of the second operation, instruction P2<x/y>2m=<z/y>2m-r/y% m to obtain another slice of the result of the second operation.
Fig. 3 shows a flowchart of a method for performing a secure operation on private data according to another embodiment, which may be based on the implementation scenario shown in fig. 1, where the private data is split into multiple pieces based on a secret sharing manner, and the pieces of the private data are distributed among multiple parties, and the method is performed by a service party outside the multiple parties. As shown in fig. 3, the method for performing secure operation on private data in this embodiment includes the following steps: step 31, receiving a plurality of fragments for masking data from the plurality of parties respectively, wherein any fragment for masking data is obtained by masking the fragment of the private data of the party by using the random number of the party by any party in the plurality of parties; step 32, merging the plurality of fragments of the masked data to obtain the masked data; step 33, performing division operation on the masked data to obtain a first operation result; step 34, splitting the first operation result into a plurality of fragments based on a secret sharing mode, wherein the number of the fragments included in the first operation result is the same as the number of the fragments included in the cloaking data; step 35, sending the plurality of fragments of the first operation result to the multiple parties respectively, so that any one of the multiple parties obtains a fragment of a final result of division operation on the private data according to the received fragment. Specific execution modes of the above steps are described below.
First, in step 31, a plurality of fragments of masked data are received from the plurality of parties, respectively, where any fragment of the masked data is obtained by masking, by a random number of the present party, a fragment of the private data that the present party has for any of the plurality of parties. It can be understood that the masked data is obtained by masking the private data by the random number, and the service side does not reason the private data after receiving the masked data.
For example, the parties are specifically both the P1 party and the P2 party,<z>1none of the masked data obtained for the P1 sideThe number of the sub-pieces is divided into pieces,<z>2nfor another fragment of the cloaked data obtained by the party P2, the service party S receives the data from the party P1 and the party P2, respectively<z>1nAnd<z>2n
in one example, the pieces of private data belong to a modulo n space. Accordingly, each slice of the masked data belongs to a modulo-n space.
Then, in step 32, the plurality of fragments of the masked data are merged to obtain the masked data. It will be appreciated that the service needs to acquire all the pieces of the masked data to obtain the masked data.
In one example, the merging the plurality of slices of the masked data to obtain the masked data includes:
and carrying out summation operation on the plurality of fragments of the covering data to obtain the covering data.
For example, the server S receives one slice of masked data from the P1 and P2 parties, respectively<z>1nAnd another slice of cloaking data<z>2n. Obtaining the masking data z =by summation operation<z>1n+<z>2n%n。
Next, in step 33, a division operation is performed on the masked data to obtain a first operation result. It will be appreciated that the service has the cloaking data and various operations may be performed on the cloaking data.
In one example, the dividing operation on the mask data to obtain a first operation result includes:
and taking the masked data as a dividend, and dividing the dividend by a preset divisor to obtain the first operation result.
It will be appreciated that the preset divisor is public to both the parties and the service.
For example, if the masking data is z and the predetermined divisor is y, the first operation result is z/y.
Wherein, y is the d power of 2 is a specific case of importance, and z/y is the remaining part of z after the lowest d bits are removed.
In step 34, the first operation result is divided into a plurality of fragments based on a secret sharing mode, and the number of the fragments included in the first operation result is the same as the number of the fragments included in the cloaking data.
In one example, each slice of the private data belongs to a modulo n space, a plurality of slices of the first operation result belong to a modulo m space, and m is not equal to n.
For example, if the number of the fragments to be split is b as the first operation result, b-1 independent random numbers in the modulo m space are generated and respectively written as (z/y)1m,(z/y)2m, ... (z/y)(b-1)m. If m =264Then the random number is 64 bits. Then z/y- ((z/y)1m+(z/y)2m+....+(z/y)(b-1)m) The value of% m is given as (z/y)bmThus obtaining b slices { (z/y)1m,(z/y)2m, ... (z/y)bm}。
Finally, in step 35, the multiple fragments of the first operation result are sent to the multiple parties respectively, so that any one of the multiple parties obtains a fragment of a final result of division operation on the private data according to the received fragments. It is to be understood that only one slice of the first operation result is received by any of the plurality of parties.
In an example, the final result of performing division operation on the private data specifically is: and taking the privacy data as a dividend, and dividing the dividend by a preset divisor to obtain a result.
According to the method provided by the embodiment of the specification, the private data is divided into a plurality of fragments based on a secret sharing mode, each fragment of the private data is distributed in multiple parties, any party in the multiple parties does not directly perform corresponding security operation on the fragment of the private data, but first the first fragment of the private data of the party is covered by a first random number of the party to obtain the first fragment covering the data; then sending the first fragment of the masked data to a service party except the multiple parties, so that the service party performs division operation according to the multiple fragments of the masked data sent by the multiple parties respectively to obtain a first operation result, and splitting the first operation result into multiple fragments based on a secret sharing mode, wherein the number of the fragments included in the first operation result is the same as the number of the fragments included in the masked data; then receiving a first fragment of the first operation result from the server, wherein the first fragment of the first operation result is any one of a plurality of fragments of the first operation result; and finally, removing the influence of the first random number aiming at the first fragment of the first operation result to obtain a first fragment of a second operation result, wherein the first fragment is used as a first fragment of a final result of division operation aiming at the private data. As can be seen from the above, in the embodiment of the present specification, any one of the multiple parties sends the masked data to the server party, since the masked data masks the private data of the party by using the random number, the private data of the party cannot be revealed, and the division operation for the private data is converted into the division operation for the masked data, and subsequently, only the multiple parties need to remove the influence of the random number respectively, the fragment of the final result of the division operation for the private data can be obtained, and the performance can be improved when the security operation is performed on the private data.
According to another aspect of the embodiments, there is also provided an apparatus for performing a secure operation on private data, where the private data is split into multiple pieces based on a secret sharing manner, each piece of the private data is distributed over multiple parties, and the apparatus is provided for any one of the multiple parties, and is configured to perform an action performed by any one of the multiple parties in the method provided in the embodiments of the present specification. Fig. 4 shows a schematic block diagram of an apparatus for performing secure operations on private data according to one embodiment. As shown in fig. 4, the apparatus 400 includes:
a masking unit 41, configured to mask the first segment of the private data of the present party with a first random number of the present party to obtain a first segment of masked data;
a sending unit 42, configured to send the first fragment of the masked data obtained by the masking unit 41 to a service party other than the multiple parties, so that the service party performs a division operation according to the multiple fragments of the masked data sent by the multiple parties respectively to obtain a first operation result, and splits the first operation result into multiple fragments based on a secret sharing manner, where the number of fragments included in the first operation result is the same as the number of fragments included in the masked data;
a receiving unit 43, configured to receive, from the server, a first segment of the first operation result, where the first segment of the first operation result is any one of multiple segments of the first operation result;
a removing unit 44, configured to remove, for the first segment of the first operation result received by the receiving unit 43, an influence of the first random number, to obtain a first segment of a second operation result, which is used as a first segment of a final result of performing a division operation on the private data.
Optionally, as an embodiment, each fragment of the private data belongs to a modulo n space, a first fragment of the first operation result belongs to a modulo m space, and m is not equal to n.
Optionally, as an embodiment, the final result of performing division operation on the private data specifically includes: and taking the privacy data as a dividend, and dividing the dividend by a preset divisor to obtain a result.
Further, the masking unit 41 is specifically configured to perform a summation operation on the first fragment of the private data of the present party and the first random number of the present party to obtain the first fragment of the masked data.
Further, the private data is a signed integer of modulo n space; the first fragment of the private data belongs to a modulo n space and the first fragment of the masked data belongs to a modulo n space;
the first random number belongs to a first value interval, the first value interval takes a first numerical value as a minimum value and takes a second numerical value as a maximum value, the first numerical value is determined according to the n and the minimum value of the privacy data, and the second numerical value is determined according to the n and the maximum value of the privacy data.
Further, the private data is an unsigned integer of modulo n space; the first fragment of the private data belongs to a modulo n space and the first fragment of the masked data belongs to a modulo n space;
the first random number belongs to a second value interval, the second value interval takes a third value as a minimum value and takes a fourth value as a maximum value, the third value is determined according to the minimum value of the privacy data, and the fourth value is determined according to the n and the maximum value of the privacy data.
Further, the removing unit 44 includes:
a division subunit, configured to divide the first random number by the preset divisor to obtain an intermediate result, where the first random number is used as a dividend;
and the subtraction subunit is used for subtracting the intermediate result obtained by the division subunit from the first fragment of the first operation result to obtain the first fragment of the second operation result.
According to another aspect of the embodiments, there is also provided an apparatus for performing a secure operation on private data, where the private data is split into multiple pieces based on a secret sharing manner, each piece of the private data is distributed over multiple parties, the apparatus is disposed at a service side other than the multiple parties, and the apparatus is configured to perform an action performed by the service side in the method provided in the embodiments of the present specification. Fig. 5 shows a schematic block diagram of an apparatus for performing secure operations on private data according to another embodiment. As shown in fig. 5, the apparatus 500 includes:
a receiving unit 51, configured to receive multiple fragments of masked data from the multiple parties respectively, where any fragment of the masked data is obtained by masking, by using a random number of the present party, a fragment of the private data that the present party has by any one of the multiple parties;
a merging unit 52, configured to merge the multiple slices of the masked data received by the receiving unit 51 to obtain the masked data;
a division unit 53, configured to perform division operation on the mask data obtained by the merging unit 52 to obtain a first operation result;
a splitting unit 54, configured to split the first operation result obtained by the dividing unit 53 into multiple fragments based on a secret sharing manner, where the number of fragments included in the first operation result is the same as the number of fragments included in the cloaking data;
a sending unit 55, configured to send the multiple fragments of the first operation result obtained by the splitting unit 54 to the multiple parties respectively, so that any one of the multiple parties obtains a fragment of a final result of division on the private data according to the received fragment.
Optionally, as an embodiment, each segment of the private data belongs to a modulo n space, the multiple segments of the first operation result belong to a modulo m space, and m is not equal to n.
Optionally, as an embodiment, the merging unit 52 is specifically configured to perform a summation operation on a plurality of slices of the mask data to obtain the mask data.
Optionally, as an embodiment, the final result of performing division operation on the private data specifically includes: taking the privacy data as a dividend, and dividing the dividend by a preset divisor to obtain a result;
the dividing unit 53 is specifically configured to divide the masked data as a dividend by the preset divisor to obtain the first operation result.
With the apparatus provided in this specification, the private data is split into multiple segments based on a secret sharing manner, where each segment of the private data is distributed among multiple parties, and any one of the multiple parties does not directly perform corresponding security operations on the segment of the private data, but a masking unit 41 first masks a first segment of the private data of the own party with a first random number of the own party, so as to obtain the first segment of the masked data; then, the sending unit 42 sends the first fragment of the masked data to a service party other than the multiple parties, so that the dividing unit 53 in the service party performs division operation according to the multiple fragments of the masked data sent by the multiple parties respectively to obtain a first operation result, and the splitting unit 54 splits the first operation result into multiple fragments based on a secret sharing manner, where the number of fragments included in the first operation result is the same as the number of fragments included in the masked data; then, the receiving unit 43 receives the first slice of the first operation result from the server, where the first slice of the first operation result is any one slice of the multiple slices of the first operation result; finally, the removing unit 44 removes the influence of the first random number with respect to the first segment of the first operation result to obtain a first segment of a second operation result, which is used as a first segment of a final result of division operation performed on the private data. As can be seen from the above, in the embodiment of the present specification, any one of the multiple parties sends the masked data to the server party, since the masked data masks the private data of the party by using the random number, the private data of the party cannot be revealed, and the division operation for the private data is converted into the division operation for the masked data, and subsequently, only the multiple parties need to remove the influence of the random number respectively, the fragment of the final result of the division operation for the private data can be obtained, and the performance can be improved when the security operation is performed on the private data.
According to an embodiment of another aspect, there is also provided a computer-readable storage medium having stored thereon a computer program which, when executed in a computer, causes the computer to perform the method described in connection with fig. 2 or fig. 3.
According to an embodiment of yet another aspect, there is also provided a computing device comprising a memory having stored therein executable code, and a processor that, when executing the executable code, implements the method described in connection with fig. 2 or fig. 3.
Those skilled in the art will recognize that, in one or more of the examples described above, the functions described in this invention may be implemented in hardware, software, firmware, or any combination thereof. When implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium.
The above-mentioned embodiments, objects, technical solutions and advantages of the present invention are further described in detail, it should be understood that the above-mentioned embodiments are only exemplary embodiments of the present invention, and are not intended to limit the scope of the present invention, and any modifications, equivalent substitutions, improvements and the like made on the basis of the technical solutions of the present invention should be included in the scope of the present invention.

Claims (24)

1. A method for performing secure operations on private data, the private data being split into a plurality of pieces based on a secret sharing manner, each piece of the private data being distributed among a plurality of parties, the method being performed by any one of the plurality of parties, comprising:
covering the first fragment of the private data of the self by using a first random number of the self to obtain a first fragment for covering the data;
sending the first fragment of the masked data to a service party except the multiple parties, so that the service party performs division operation according to the multiple fragments of the masked data sent by the multiple parties respectively to obtain a first operation result, and splitting the first operation result into multiple fragments based on a secret sharing mode, wherein the number of the fragments included in the first operation result is the same as the number of the fragments included in the masked data;
receiving a first fragment of the first operation result from the server, wherein the first fragment of the first operation result is any one of a plurality of fragments of the first operation result;
and removing the influence of the first random number aiming at the first fragment of the first operation result to obtain a first fragment of a second operation result, wherein the first fragment is used as a first fragment of a final result of division operation aiming at the private data.
2. The method of claim 1, wherein each slice of the private data belongs to a modulo n space, a first slice of the first operation result belongs to a modulo m space, m is not equal to n.
3. The method according to claim 1, wherein the final result of the division on the private data is specifically: and taking the privacy data as a dividend, and dividing the dividend by a preset divisor to obtain a result.
4. The method of claim 3, wherein the masking the first piece of private data with the present party using the first random number of the present party to obtain the first piece of masked data comprises:
and carrying out summation operation on the first fragment of the private data of the user and the first random number of the user to obtain a first fragment for covering data.
5. The method of claim 4, wherein the privacy data is a signed integer of modulo-n space; the first fragment of the private data belongs to a modulo n space and the first fragment of the masked data belongs to a modulo n space;
the first random number belongs to a first value interval, the first value interval takes a first numerical value as a minimum value and takes a second numerical value as a maximum value, the first numerical value is determined according to the n and the minimum value of the privacy data, and the second numerical value is determined according to the n and the maximum value of the privacy data.
6. The method of claim 4, wherein the privacy data is an unsigned integer of modulo-n space; the first fragment of the private data belongs to a modulo n space and the first fragment of the masked data belongs to a modulo n space;
the first random number belongs to a second value interval, the second value interval takes a third value as a minimum value and takes a fourth value as a maximum value, the third value is determined according to the minimum value of the privacy data, and the fourth value is determined according to the n and the maximum value of the privacy data.
7. The method of claim 4, wherein the removing the effect of the first random number for the first slice of the first operation result comprises:
dividing the first random number serving as a dividend by the preset divisor to obtain an intermediate result;
and subtracting the intermediate result from the first fragment of the first operation result to obtain a first fragment of the second operation result.
8. A method for performing secure operations on private data, the private data being split into a plurality of pieces based on a secret sharing manner, each piece of the private data being distributed among a plurality of parties, the method being performed by a service party other than the plurality of parties, comprising:
receiving a plurality of fragments for covering data from the multiple parties respectively, wherein any fragment of the covering data is obtained by covering the fragment of the private data of a party by using a random number of the party by any party in the multiple parties;
merging the plurality of fragments of the covering data to obtain the covering data;
carrying out division operation on the covering data to obtain a first operation result;
splitting the first operation result into a plurality of fragments based on a secret sharing mode, wherein the number of the fragments included in the first operation result is the same as the number of the fragments included in the cloaking data;
and respectively sending the plurality of fragments of the first operation result to the multiple parties, so that any one of the multiple parties obtains the fragment of the final result of division operation on the private data according to the received fragment.
9. The method of claim 8, wherein each slice of the private data belongs to a modulo n space, the plurality of slices of the first operation result belong to a modulo m space, and m is not equal to n.
10. The method of claim 8, wherein said merging the plurality of slices of the masked data to obtain the masked data comprises:
and carrying out summation operation on the plurality of fragments of the covering data to obtain the covering data.
11. The method according to claim 8, wherein the final result of the division operation performed on the private data is specifically: taking the privacy data as a dividend, and dividing the dividend by a preset divisor to obtain a result;
the dividing operation performed on the masked data to obtain a first operation result includes:
and taking the masking data as a dividend, and dividing the dividend by the preset divisor to obtain the first operation result.
12. An apparatus for performing secure operations on private data, the private data being split into a plurality of pieces based on a secret sharing manner, each piece of the private data being distributed among a plurality of parties, the apparatus being disposed at any one of the plurality of parties, comprising:
the concealing unit is used for concealing the first fragment of the private data of the self by using the first random number of the self to obtain the first fragment of the concealed data;
a sending unit, configured to send the first fragment of the masked data obtained by the masking unit to a service party other than the multiple parties, so that the service party performs division operation according to the multiple fragments of the masked data sent by the multiple parties respectively to obtain a first operation result, and splits the first operation result into multiple fragments based on a secret sharing manner, where the number of fragments included in the first operation result is the same as the number of fragments included in the masked data;
a receiving unit, configured to receive, from the server, a first segment of the first operation result, where the first segment of the first operation result is any one of multiple segments of the first operation result;
and the removing unit is used for removing the influence of the first random number aiming at the first fragment of the first operation result received by the receiving unit to obtain a first fragment of a second operation result, and the first fragment is used as a first fragment of a final result of division operation aiming at the private data.
13. The apparatus of claim 12, wherein each slice of the private data belongs to a modulo n space, a first slice of the first operation result belongs to a modulo m space, m is not equal to n.
14. The apparatus according to claim 12, wherein the final result of the division on the private data is specifically: and taking the privacy data as a dividend, and dividing the dividend by a preset divisor to obtain a result.
15. The apparatus according to claim 14, wherein the masking unit is specifically configured to sum the first slice of the private data of the present party with the first random number of the present party to obtain the first slice of the masked data.
16. The apparatus of claim 15, wherein the privacy data is a signed integer of modulo-n space; the first fragment of the private data belongs to a modulo n space and the first fragment of the masked data belongs to a modulo n space;
the first random number belongs to a first value interval, the first value interval takes a first numerical value as a minimum value and takes a second numerical value as a maximum value, the first numerical value is determined according to the n and the minimum value of the privacy data, and the second numerical value is determined according to the n and the maximum value of the privacy data.
17. The apparatus of claim 15, wherein the privacy data is an unsigned integer of modulo-n space; the first fragment of the private data belongs to a modulo n space and the first fragment of the masked data belongs to a modulo n space;
the first random number belongs to a second value interval, the second value interval takes a third value as a minimum value and takes a fourth value as a maximum value, the third value is determined according to the minimum value of the privacy data, and the fourth value is determined according to the n and the maximum value of the privacy data.
18. The apparatus of claim 15, wherein the removing unit comprises:
a division subunit, configured to divide the first random number by the preset divisor to obtain an intermediate result, where the first random number is used as a dividend;
and the subtraction subunit is used for subtracting the intermediate result obtained by the division subunit from the first fragment of the first operation result to obtain the first fragment of the second operation result.
19. An apparatus for performing secure operations on private data, the private data being split into a plurality of pieces based on a secret sharing manner, each piece of the private data being distributed among a plurality of parties, the apparatus being disposed at a service party other than the plurality of parties, comprising:
a receiving unit, configured to receive multiple fragments for masking data from the multiple parties, respectively, where any fragment for masking data is obtained by masking, by using a random number of a party, a fragment of the private data that the party has by any of the multiple parties;
a merging unit, configured to merge multiple fragments of the masked data received by the receiving unit to obtain the masked data;
the division unit is used for carrying out division operation on the mask data obtained by the merging unit to obtain a first operation result;
the splitting unit is used for splitting a first operation result obtained by the dividing unit into a plurality of fragments based on a secret sharing mode, wherein the number of the fragments included in the first operation result is the same as the number of the fragments included in the cloaking data;
and the sending unit is used for respectively sending the plurality of fragments of the first operation result obtained by the splitting unit to the plurality of parties so that any one of the plurality of parties obtains the fragment of the final result of division operation aiming at the private data according to the received fragment.
20. The apparatus of claim 19, wherein each slice of the private data belongs to a modulo n space, wherein a plurality of slices of the first operation result belong to a modulo m space, and wherein m is not equal to n.
21. The apparatus according to claim 19, wherein the merging unit is specifically configured to perform a summation operation on a plurality of slices of the mask data to obtain the mask data.
22. The apparatus according to claim 19, wherein the final result of the division on the private data is specifically: taking the privacy data as a dividend, and dividing the dividend by a preset divisor to obtain a result;
the division unit is specifically configured to divide the masked data by the preset divisor to obtain the first operation result, where the masked data is used as a dividend.
23. A computer-readable storage medium, on which a computer program is stored which, when executed in a computer, causes the computer to carry out the method of any one of claims 1-11.
24. A computing device comprising a memory having stored therein executable code and a processor that, when executing the executable code, implements the method of any of claims 1-11.
CN202010567563.4A 2020-06-19 2020-06-19 Method and device for performing secure operation on private data Active CN111539026B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010567563.4A CN111539026B (en) 2020-06-19 2020-06-19 Method and device for performing secure operation on private data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010567563.4A CN111539026B (en) 2020-06-19 2020-06-19 Method and device for performing secure operation on private data

Publications (2)

Publication Number Publication Date
CN111539026A true CN111539026A (en) 2020-08-14
CN111539026B CN111539026B (en) 2020-09-29

Family

ID=71974533

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010567563.4A Active CN111539026B (en) 2020-06-19 2020-06-19 Method and device for performing secure operation on private data

Country Status (1)

Country Link
CN (1) CN111539026B (en)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112000990A (en) * 2020-10-27 2020-11-27 支付宝(杭州)信息技术有限公司 Data processing method, device and equipment for privacy protection and machine learning system
CN112100680A (en) * 2020-11-16 2020-12-18 支付宝(杭州)信息技术有限公司 Multi-platform data processing method and device for protecting privacy
CN112560106A (en) * 2021-02-20 2021-03-26 支付宝(杭州)信息技术有限公司 Method, device and system for processing privacy matrix
CN112669150A (en) * 2020-12-25 2021-04-16 联想(北京)有限公司 Data processing method, device and system based on block chain
CN112685788A (en) * 2021-03-08 2021-04-20 支付宝(杭州)信息技术有限公司 Data processing method and device
CN112818337A (en) * 2021-01-22 2021-05-18 支付宝(杭州)信息技术有限公司 Program running method and system
CN112836211A (en) * 2021-01-22 2021-05-25 支付宝(杭州)信息技术有限公司 Program running method and system
CN112953700A (en) * 2021-01-26 2021-06-11 西安电子科技大学 Method, system and storage medium for improving safe multiparty computing efficiency
CN112949545A (en) * 2021-03-17 2021-06-11 中国工商银行股份有限公司 Method, apparatus, computing device and medium for recognizing face image
CN113065162A (en) * 2021-04-25 2021-07-02 支付宝(杭州)信息技术有限公司 Method and device for processing private data in shared form
CN113098840A (en) * 2021-02-25 2021-07-09 鹏城实验室 Efficient and safe linear rectification function operation method based on addition secret sharing technology
CN113708930A (en) * 2021-10-20 2021-11-26 杭州趣链科技有限公司 Data comparison method, device, equipment and medium for private data
CN114021198A (en) * 2021-12-29 2022-02-08 支付宝(杭州)信息技术有限公司 Method and device for determining common data for protecting data privacy
CN114239811A (en) * 2021-12-21 2022-03-25 支付宝(杭州)信息技术有限公司 Multi-party joint convolution processing method, device and system based on privacy protection
CN114244497A (en) * 2021-12-09 2022-03-25 支付宝(杭州)信息技术有限公司 Method and device for cooperatively generating fragments by two parties
CN115361131A (en) * 2022-10-21 2022-11-18 华控清交信息科技(北京)有限公司 Ciphertext data calculation method and device and electronic equipment

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109255247A (en) * 2018-08-14 2019-01-22 阿里巴巴集团控股有限公司 Secure calculation method and device, electronic equipment
CN109919318A (en) * 2018-12-14 2019-06-21 阿里巴巴集团控股有限公司 Data processing method, device and equipment
CN110071796A (en) * 2018-01-22 2019-07-30 中山大学 A kind of calculation method based on shared secret
CN110909387A (en) * 2019-11-25 2020-03-24 支付宝(杭州)信息技术有限公司 Method and device for saving and recovering private data based on secure multi-party computing
CN111064579A (en) * 2019-12-11 2020-04-24 北京金汤科技有限公司 Block chain-based secure multi-party computing method, system and storage medium
CN111177790A (en) * 2020-04-10 2020-05-19 支付宝(杭州)信息技术有限公司 Collaborative computing method, system and device for protecting data privacy of two parties

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110071796A (en) * 2018-01-22 2019-07-30 中山大学 A kind of calculation method based on shared secret
CN109255247A (en) * 2018-08-14 2019-01-22 阿里巴巴集团控股有限公司 Secure calculation method and device, electronic equipment
CN109919318A (en) * 2018-12-14 2019-06-21 阿里巴巴集团控股有限公司 Data processing method, device and equipment
CN110909387A (en) * 2019-11-25 2020-03-24 支付宝(杭州)信息技术有限公司 Method and device for saving and recovering private data based on secure multi-party computing
CN111064579A (en) * 2019-12-11 2020-04-24 北京金汤科技有限公司 Block chain-based secure multi-party computing method, system and storage medium
CN111177790A (en) * 2020-04-10 2020-05-19 支付宝(杭州)信息技术有限公司 Collaborative computing method, system and device for protecting data privacy of two parties

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112000990A (en) * 2020-10-27 2020-11-27 支付宝(杭州)信息技术有限公司 Data processing method, device and equipment for privacy protection and machine learning system
CN112100680A (en) * 2020-11-16 2020-12-18 支付宝(杭州)信息技术有限公司 Multi-platform data processing method and device for protecting privacy
CN112669150A (en) * 2020-12-25 2021-04-16 联想(北京)有限公司 Data processing method, device and system based on block chain
CN112818337A (en) * 2021-01-22 2021-05-18 支付宝(杭州)信息技术有限公司 Program running method and system
CN112836211A (en) * 2021-01-22 2021-05-25 支付宝(杭州)信息技术有限公司 Program running method and system
CN112953700A (en) * 2021-01-26 2021-06-11 西安电子科技大学 Method, system and storage medium for improving safe multiparty computing efficiency
CN112560106A (en) * 2021-02-20 2021-03-26 支付宝(杭州)信息技术有限公司 Method, device and system for processing privacy matrix
CN113098840A (en) * 2021-02-25 2021-07-09 鹏城实验室 Efficient and safe linear rectification function operation method based on addition secret sharing technology
CN112685788A (en) * 2021-03-08 2021-04-20 支付宝(杭州)信息技术有限公司 Data processing method and device
CN112949545A (en) * 2021-03-17 2021-06-11 中国工商银行股份有限公司 Method, apparatus, computing device and medium for recognizing face image
CN113065162A (en) * 2021-04-25 2021-07-02 支付宝(杭州)信息技术有限公司 Method and device for processing private data in shared form
CN113708930A (en) * 2021-10-20 2021-11-26 杭州趣链科技有限公司 Data comparison method, device, equipment and medium for private data
CN113708930B (en) * 2021-10-20 2022-01-21 杭州趣链科技有限公司 Data comparison method, device, equipment and medium for private data
CN114244497A (en) * 2021-12-09 2022-03-25 支付宝(杭州)信息技术有限公司 Method and device for cooperatively generating fragments by two parties
CN114244497B (en) * 2021-12-09 2024-02-13 支付宝(杭州)信息技术有限公司 Method and device for generating split chips by combining two parties
CN114239811A (en) * 2021-12-21 2022-03-25 支付宝(杭州)信息技术有限公司 Multi-party joint convolution processing method, device and system based on privacy protection
CN114239811B (en) * 2021-12-21 2024-05-31 支付宝(杭州)信息技术有限公司 Multiparty joint convolution processing method, device and system based on privacy protection
CN114021198A (en) * 2021-12-29 2022-02-08 支付宝(杭州)信息技术有限公司 Method and device for determining common data for protecting data privacy
CN115361131A (en) * 2022-10-21 2022-11-18 华控清交信息科技(北京)有限公司 Ciphertext data calculation method and device and electronic equipment
CN115361131B (en) * 2022-10-21 2022-12-13 华控清交信息科技(北京)有限公司 Ciphertext data calculation method and device and electronic equipment

Also Published As

Publication number Publication date
CN111539026B (en) 2020-09-29

Similar Documents

Publication Publication Date Title
CN111539026B (en) Method and device for performing secure operation on private data
CN111523145B (en) Method and device for performing secure operation on private data
CN114586313B (en) System and method for signing information
US7908641B2 (en) Modular exponentiation with randomized exponent
US20230327856A1 (en) Secure multi-party computation methods, apparatuses, and systems
CN111737757B (en) Method and device for performing secure operation on private data
JP7206324B2 (en) System and method for one-time Chinese Remainder Theorem exponentiation for cryptographic algorithms
US11063743B2 (en) Method of RSA signature of decryption protected using assymetric multiplicative splitting
CN111737767A (en) Method and device for performing secure operation on private data
CN114239019A (en) Method, device and system for determining number of shared data for protecting privacy data
CN113722734A (en) Method, device and system for determining selection result fragmentation by two-party security selection
US20110040963A1 (en) Secure computing system, secure computing method, secure computing apparatus, and program therefor
CN115580396A (en) System and method for inquiring hiding trace
JP2017526981A5 (en)
CN110971403A (en) Anti-quantum computation blockchain system based on secret shared public key pool and transaction method
CN114139197A (en) Proxy security multi-party computing method, system, processing equipment and storage medium
EP2738973A1 (en) System and method for cryptography using multiplicative masking using simultaneous exponentiation techniques
CN114205142A (en) Data transmission method and device, electronic equipment and storage medium
CN111475690B (en) Character string matching method and device, data detection method and server
CN114499845B (en) Multi-party secure computing method, system, device, storage medium and equipment
WO2019111319A1 (en) Secret equality determination system, secret equality determination method and secret equality determination program recording medium
CN113836595B (en) Method, device and system for two-party safety comparison
CN114221753B (en) Key data processing method and electronic equipment
EP3703305A1 (en) Method secured against side-channel attacks with a new masking scheme protecting linear operations of a cryptographic algorithm
CN112836239A (en) Method and device for cooperatively determining target object data by two parties for protecting privacy

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40035831

Country of ref document: HK