CN113541946B - Multi-party security calculation method and device and electronic equipment - Google Patents

Multi-party security calculation method and device and electronic equipment Download PDF

Info

Publication number
CN113541946B
CN113541946B CN202111048609.2A CN202111048609A CN113541946B CN 113541946 B CN113541946 B CN 113541946B CN 202111048609 A CN202111048609 A CN 202111048609A CN 113541946 B CN113541946 B CN 113541946B
Authority
CN
China
Prior art keywords
sub
calculation
data
computation
rule
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
Application number
CN202111048609.2A
Other languages
Chinese (zh)
Other versions
CN113541946A (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.)
Huakong Tsingjiao Information Technology Beijing Co Ltd
Original Assignee
Huakong Tsingjiao Information Technology Beijing 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 Huakong Tsingjiao Information Technology Beijing Co Ltd filed Critical Huakong Tsingjiao Information Technology Beijing Co Ltd
Priority to CN202111048609.2A priority Critical patent/CN113541946B/en
Publication of CN113541946A publication Critical patent/CN113541946A/en
Application granted granted Critical
Publication of CN113541946B publication Critical patent/CN113541946B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/46Secure multiparty computation, e.g. millionaire problem

Abstract

The application discloses a multi-party security calculation method, a device and electronic equipment, wherein the method comprises the following steps: selecting an initial computing subtask from tasks to be computed; generating a calculation rule representing an initial calculation subtask; generating n computation sub-rules forming the computation rule based on the computation rule, wherein n is the number of a plurality of computation nodes participating in multi-party security computation; respectively sending the n computation sub-rules to the n computation nodes, wherein each computation node receives one computation sub-rule; according to the privacy calculation scheme, processed data aiming at the original data are sent to the n calculation nodes, the n calculation nodes calculate according to the calculation sub-rules received by the n calculation nodes respectively to obtain calculation sub-results, and the n calculation nodes use the obtained n calculation sub-results to continue to perform multi-party safe calculation on the task to be calculated. By adopting the scheme, the situation that the original data is acquired through collusion among part of computing nodes can be avoided.

Description

Multi-party security calculation method and device and electronic equipment
Technical Field
The present application relates to the field of multi-party secure computing technologies, and in particular, to a multi-party secure computing method and apparatus, and an electronic device.
Background
SS-MPC (Secret Sharing-Multi-Party Secure computing) is a common Multi-Party Secure computing scheme at present. The reason is that SS-MPC has some practical advantages over other privacy computing schemes, such as: compared with a multi-party security computing scheme of GC (Garbled Circuits), the SS-MPC has the advantage of low communication; compared with HE (Homomorphic Encryption), SS-MPC has the advantage of low computational complexity; while a TEE (Trusted Execution Environment) generally has a small space and a weak computing power, and cannot cope with a large-scale computing task.
Currently, in a general flow of performing multi-party secure computation by using an SS-MPC scheme, a data provider delivers data to a computing node (or other data providers) in the form of a secret sharing factor, and the other data providers or the computing node execute a corresponding computation protocol based on the secret sharing factor to complete multi-party secure computation.
In such a secret sharing scheme, if collusion occurs to more than a certain threshold number of computing nodes, they can restore original data based on the secret sharing factors each holds, thereby causing leakage of the original data, and particularly in a scenario where the computing nodes are centrally managed, it is more likely to cause a concern of a data provider.
Disclosure of Invention
The embodiment of the application provides a multi-party security computing method, a multi-party security computing device and electronic equipment, which are used for solving the problem that original data is easy to leak when multi-party security computing is performed based on secret sharing in the prior art.
The embodiment of the application provides a multiparty security computing method, which is applied to data provider equipment in a plurality of data provider equipment participating in multiparty security computing, and comprises the following steps:
cooperating with other data provider equipment, and selecting an initial computing subtask from the tasks to be computed;
generating a calculation rule representing the initial calculation subtask in cooperation with other data provider devices;
based on the calculation rule, generating n calculation sub-rules forming the calculation rule in cooperation with other data provider equipment, wherein n is the number of a plurality of calculation nodes participating in multi-party safety calculation;
the n computation sub-rules are respectively sent to n computation nodes in cooperation with other data provider equipment, wherein each computation node receives one computation sub-rule;
according to a privacy calculation scheme, sending processed data aiming at held original data to the n calculation nodes, enabling the n calculation nodes to calculate the processed data sent by the multiple data provider devices according to the respective received calculation sub-rules to obtain the calculation sub-results of the respective received calculation sub-rules, and enabling the n calculation nodes to use the obtained n calculation sub-results to continuously perform multi-party safety calculation on the task to be calculated.
Further, the generating n computation sub-rules forming the computation rule in cooperation with other data provider devices based on the computation rule includes:
generating n calculation sub-rules forming the calculation rule by the device in cooperation with other data provider devices; or
Generating m calculation sub-rules of n calculation sub-rules forming the calculation rule in cooperation with other data provider devices, wherein m is an integer greater than 0 and less than n, and the other calculation sub-rules of the n calculation sub-rules are generated by other data provider devices; or
And generating n calculation sub-rules forming the calculation rule by each other data provider device in cooperation with each other data provider device.
Further, the sending, according to the privacy computation scheme, the processed data for the held original data to the n computing nodes includes:
adopting a homomorphic encryption scheme, and homomorphic encrypting the held original data by using a homomorphic encryption public key to obtain homomorphic ciphertext data; sending the homomorphic ciphertext data to the n computing nodes; or
Encrypting the held original data by adopting a Trusted Execution Environment (TEE) scheme and respectively using TEE keys of the n computing nodes to obtain TEE ciphertext data; respectively sending the corresponding TEE ciphertext data to the TEEs of the n computing nodes; or
Adopting a garbled circuit scheme, and respectively manufacturing garbled circuits according to n calculation sub-rules; and respectively sending the input identification corresponding to the held original data to the corresponding computing node according to each garbled circuit.
The embodiment of the present application further provides a multiparty security computing method, which is applied to a computing node in a plurality of computing nodes participating in multiparty security computing, where the number of the computing nodes is n, and the method includes:
receiving one computation sub-rule in n computation sub-rules cooperatively sent by a plurality of data provider devices, wherein the other n-1 computation sub-rules are sent to other n-1 computation nodes, each computation node receives one computation sub-rule, the n computation sub-rules form a computation rule, and the computation rule represents an initial computation sub-task selected from tasks to be computed;
receiving processed data of the original data sent by the plurality of data provider devices according to a privacy calculation scheme;
calculating the processed data sent by the plurality of data provider devices according to the received calculation sub-rule to obtain a calculation sub-result of the received calculation sub-rule;
and cooperating with other computing nodes, and using the obtained n computing sub-results to continuously perform multi-party safe computing on the task to be computed.
Further, the receiving processed data of the raw data sent by the plurality of data provider devices according to the privacy computation scheme includes:
adopting a homomorphic encryption scheme to receive homomorphic ciphertext data sent by the plurality of data provider devices, wherein the homomorphic ciphertext data sent by each data provider device is obtained by homomorphic encrypting held original data by using a homomorphic encryption public key for the data provider device; or
Adopting a Trusted Execution Environment (TEE) scheme, receiving TEE ciphertext data sent by the data provider equipment by the TEE of the computing node, wherein the TEE ciphertext data sent by each data provider equipment is obtained by encrypting the held original data by using the TEE key of the computing node for the data provider equipment; or
And receiving input identifications corresponding to the held original data sent by the plurality of data provider devices by adopting a garbled circuit scheme, wherein the input identification sent by each data provider device is sent by the data provider device according to the garbled circuit corresponding to the computing node, and the garbled circuit corresponding to the computing node is manufactured by the data provider device according to the computing sub-rule received by the computing node.
Further, the calculating the processed data sent by the multiple data provider devices according to the received calculation sub-rule to obtain a calculation sub-result of the received calculation sub-rule includes:
when the received processed data is the homomorphic ciphertext data, calculating the homomorphic ciphertext data sent by the plurality of data provider devices according to the received calculation sub-rule to obtain homomorphic ciphertext calculation sub-results; decrypting the homomorphic ciphertext computation sub-result to obtain a computation sub-result of the received computation sub-rule; or
When the received processed data is the TEE ciphertext data, decrypting the TEE ciphertext data sent by the data provider equipment in the TEE of the computing node to obtain corresponding original data; in the TEE of the computing node, computing the original data obtained by decryption according to the received computing sub-rule to obtain a computing sub-result of the received computing sub-rule; or
When the received processed data is the input identification, calculating an output identification based on the input identifications sent by the multiple data provider devices and the received confusion circuit corresponding to the calculation sub-rule; and querying the plurality of data provider devices by using the output identification to obtain a calculation sub-result of the received calculation sub-rule.
An embodiment of the present application further provides a multi-party secure computing apparatus, applied to a data provider device of a plurality of data provider devices participating in multi-party secure computing, including:
the task selection module is used for cooperating with other data provider equipment to select an initial calculation subtask from the tasks to be calculated;
the rule generating module is used for generating a computing rule representing the initial computing sub task in cooperation with other data provider equipment;
the sub-rule generating module is used for generating n calculation sub-rules forming the calculation rule based on the calculation rule and other data provider equipment in a cooperative mode, wherein n is the number of a plurality of calculation nodes participating in multi-party safety calculation;
the sub-rule sending module is used for cooperating with other data provider equipment and respectively sending the n calculation sub-rules to n calculation nodes, wherein each calculation node receives one calculation sub-rule;
the data sending module is configured to send processed data for original data held to the n computing nodes according to a privacy computation scheme, so that the n computing nodes compute the processed data sent by the multiple data provider devices according to the respective received computation sub-rules to obtain computation sub-results of the respective received computation sub-rules, and the n computing nodes continue to perform multi-party security computation on the task to be computed by using the shared n computation sub-results.
Further, the sub-rule generating module is specifically configured to generate, by itself, n calculation sub-rules constituting the calculation rule in cooperation with other data provider devices; or
Generating m calculation sub-rules of n calculation sub-rules forming the calculation rule in cooperation with other data provider devices, wherein m is an integer greater than 0 and less than n, and the other calculation sub-rules of the n calculation sub-rules are generated by other data provider devices; or
And generating n calculation sub-rules forming the calculation rule by each other data provider device in cooperation with each other data provider device.
Further, the data sending module is specifically configured to perform homomorphic encryption on held original data by using a homomorphic encryption public key by using a homomorphic encryption scheme to obtain homomorphic ciphertext data; sending the homomorphic ciphertext data to the n computing nodes; or
Encrypting the held original data by adopting a Trusted Execution Environment (TEE) scheme and respectively using TEE keys of the n computing nodes to obtain TEE ciphertext data; respectively sending the corresponding TEE ciphertext data to the TEEs of the n computing nodes; alternatively, the first and second electrodes may be,
adopting a garbled circuit scheme, and respectively manufacturing garbled circuits according to n calculation sub-rules; and respectively sending the input identification corresponding to the held original data to the corresponding computing node according to each garbled circuit.
An embodiment of the present application further provides a multi-party secure computing apparatus, which is applied to a computing node of a plurality of computing nodes participating in multi-party secure computing, where the number of the computing nodes is n, and the apparatus includes:
the sub-rule receiving module is used for receiving one computation sub-rule in n computation sub-rules cooperatively sent by a plurality of data provider devices, and the other n-1 computation sub-rules are sent to other n-1 computation nodes, wherein each computation node receives one computation sub-rule, the n computation sub-rules form a computation rule, and the computation rule represents an initial computation sub-task selected from tasks to be computed;
the data receiving module is used for receiving processed data of the original data sent by the plurality of data provider devices according to a privacy calculation scheme;
the sub-result calculation module is used for calculating the processed data sent by the plurality of data provider devices according to the received calculation sub-rule to obtain a calculation sub-result of the received calculation sub-rule;
and the result calculation module is used for cooperating with other calculation nodes, using the obtained n calculation sub-results and continuing to perform multi-party safety calculation on the task to be calculated.
Further, the data receiving module is specifically configured to receive homomorphic ciphertext data sent by the multiple data provider devices by using a homomorphic encryption scheme, where the homomorphic ciphertext data sent by each data provider device is obtained by homomorphic encrypting the held original data by using a homomorphic encryption public key for the data provider device; or
Adopting a Trusted Execution Environment (TEE) scheme, receiving TEE ciphertext data sent by the data provider equipment by the TEE of the computing node, wherein the TEE ciphertext data sent by each data provider equipment is obtained by encrypting the held original data by using the TEE key of the computing node for the data provider equipment; or
And receiving input identifications corresponding to the held original data sent by the plurality of data provider devices by adopting a garbled circuit scheme, wherein the input identification sent by each data provider device is sent by the data provider device according to the garbled circuit corresponding to the computing node, and the garbled circuit corresponding to the computing node is manufactured by the data provider device according to the computing sub-rule received by the computing node.
Further, the sub-result calculation module is specifically configured to, when the received processed data is the homomorphic ciphertext data, calculate the homomorphic ciphertext data sent by the multiple data provider devices according to a received calculation sub-rule, to obtain a homomorphic ciphertext calculation sub-result; decrypting the homomorphic ciphertext computation sub-result to obtain a computation sub-result of the received computation sub-rule; or
When the received processed data is the TEE ciphertext data, decrypting the TEE ciphertext data sent by the data provider equipment in the TEE of the computing node to obtain corresponding original data; in the TEE of the computing node, computing the original data obtained by decryption according to the received computing sub-rule to obtain a computing sub-result of the received computing sub-rule; or
When the received processed data is the input identification, calculating an output identification based on the input identifications sent by the multiple data provider devices and the received confusion circuit corresponding to the calculation sub-rule; and querying the plurality of data provider devices by using the output identification to obtain a calculation sub-result of the received calculation sub-rule.
Embodiments of the present application further provide an electronic device, including a processor and a machine-readable storage medium storing machine-executable instructions executable by the processor, where the processor is caused by the machine-executable instructions to: the method is applied to any one of the multi-party security computing methods applied to the data provider equipment, or any one of the multi-party security computing methods applied to the computing node.
An embodiment of the present application further provides a computer-readable storage medium, where a computer program is stored in the computer-readable storage medium, and when executed by a processor, the computer program implements any one of the above-mentioned multiparty security computing methods applied to a data provider device, or implements any one of the above-mentioned multiparty security computing methods applied to a computing node.
Embodiments of the present application further provide a computer program product containing instructions, which when run on a computer, cause the computer to perform any one of the above-mentioned multiparty security computing methods applied to a data provider device, or to perform any one of the above-mentioned multiparty security computing methods applied to a computing node.
The beneficial effect of this application includes:
in the method provided by the embodiment of the application, an initial computation subtask is selected from tasks to be computed, a computation rule representing the initial computation subtask is constructed, n computation subtasks forming the computation rule are generated, the n computation subtasks are respectively sent to n computation nodes, processed data aiming at held original data are sent to the n computation nodes according to a privacy computation scheme, the n computation nodes can compute the received processed data according to the received computation subtasks respectively to obtain computation subtasks of the received computation subtasks respectively, and then the n computation nodes use the obtained n computation subtasks to continue to perform multi-party safe computation on the tasks to be computed. In the process, each data provider device does not need to send the original data to each computing node in the form of secret sharing factors, so that the situation that part of computing nodes obtain the original data through collusion is avoided.
Additional features and advantages of the application will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by the practice of the application. The objectives and other advantages of the application may be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings.
Drawings
The accompanying drawings are included to provide a further understanding of the application and are incorporated in and constitute a part of this specification, illustrate embodiments of the application and together with the description serve to explain the principles of the application and not to limit the application. In the drawings:
fig. 1 is a flowchart of a multiparty security computing method applied to a data provider device according to an embodiment of the present application;
FIG. 2 is a flowchart of a multi-party secure computing method applied to a computing node according to an embodiment of the present application;
FIG. 3 is a diagram illustrating a prior art SS-MPC scheme for multi-party security calculation;
FIG. 4 is a diagram illustrating a multi-party security computation performed in an embodiment of the present application;
FIG. 5 is a flowchart of a multi-party security computation method provided in an embodiment of the present application;
FIG. 6 is a schematic structural diagram of a multi-party secure computing device applied to a data provider device according to an embodiment of the present application;
FIG. 7 is a schematic structural diagram of a multi-party secure computing device applied to a computing node according to an embodiment of the present application;
fig. 8 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
In order to provide an implementation scheme for avoiding acquiring original data through collusion among partial computing nodes in a process of performing multi-party secure computing based on secret sharing, embodiments of the present application provide a multi-party secure computing method, apparatus and electronic device. And the embodiments and features of the embodiments in the present application may be combined with each other without conflict.
An embodiment of the present application provides a multiparty security computing method, which is applied to a data provider device among a plurality of data provider devices participating in multiparty security computing, and as shown in fig. 1, the method includes:
and 11, cooperating with other data provider equipment, and selecting an initial computing subtask from the tasks to be computed.
And 12, generating a calculation rule representing the initial calculation subtask in cooperation with other data provider equipment.
And step 13, based on the calculation rule, generating n calculation sub-rules forming the calculation rule in cooperation with other data provider equipment, wherein n is the number of a plurality of calculation nodes participating in multi-party safety calculation.
And step 14, cooperating with other data provider devices, respectively sending the n computation sub-rules to the n computation nodes, wherein each computation node receives one computation sub-rule.
Step 15, according to the privacy computation scheme, sending the processed data aiming at the original data to the n computation nodes, so that the n computation nodes compute the processed data sent by the multiple data provider devices according to the computation sub-rules received by the n computation nodes, obtain the computation sub-results of the computation sub-rules received by the n computation nodes, and enable the n computation nodes to use the obtained n computation sub-results to continue to perform the multi-party security computation on the task to be computed.
Correspondingly, an embodiment of the present application further provides a multiparty security computing method, which is applied to a computing node in a plurality of computing nodes participating in multiparty security computing, where the number of the computing nodes is n, as shown in fig. 2, and the method includes:
and step 21, receiving one of the n computation sub-rules cooperatively sent by the multiple data provider devices, and sending the other n-1 computation sub-rules to the other n-1 computation nodes, wherein each computation node receives one computation sub-rule, the n computation sub-rules form a computation rule, and the computation rule represents an initial computation sub-task selected from the tasks to be computed.
And step 22, receiving processed data of the original data sent by the plurality of data provider devices according to the privacy calculation scheme.
And step 23, calculating the processed data sent by the plurality of data provider devices according to the received calculation sub-rule to obtain a calculation sub-result of the received calculation sub-rule.
And 24, cooperating with other computing nodes, using the obtained n computing sub-results to continue the multi-party security computing on the task to be computed.
By adopting the multi-party security computing method provided by the embodiment of the application, the initial computing subtask is selected from the tasks to be computed, the computing rule representing the initial computing subtask is constructed, the n computing subtasks forming the computing rule are generated, the n computing subtasks are respectively sent to the n computing nodes, the processed data aiming at the original data are sent to the n computing nodes according to the privacy computing scheme, the n computing nodes can compute the received processed data according to the received computing subtasks respectively to obtain the computing subtasks of the received computing subtasks respectively, and then the n computing nodes use the obtained n computing subtasks to continue multi-party security computing on the tasks to be computed. In the process, each data provider device does not need to send the original data to each computing node in the form of secret sharing factors, so that the situation that part of computing nodes obtain the original data through collusion is avoided.
The method and apparatus provided herein are described in detail below with reference to the accompanying drawings using specific embodiments.
In the multi-party security computing scheme, the devices participating in multi-party security computing include a plurality of data provider devices and a plurality of computing nodes, where the number of the computing nodes is n, and for example, the computing nodes include 2 data provider devices and 3 computing nodes, that is, a data provider device 1, a data provider device 2, a computing node 1, a computing node 2, and a computing node 3, each data provider device holds original data belonging to itself, for example, the data provider device 1 holds original data x, and the data provider device 2 holds original data y.
Tasks that need to use the raw data x and the raw data y for multi-party secure computation may be called tasks to be computed, and may be various types of tasks in practical applications, and are represented by f (x, y).
In the existing SS-MPC scheme, as shown in fig. 3, the data provider device 1 generates secret sharing factors x1, x2, and x3 according to original data x, and x = x1+ x2+ x3, transmits x1, x2, and x3 to the compute node 1, the compute node 2, and the compute node 3, respectively, and each compute node receives one secret sharing factor. Similarly, the data provider device 2 generates secret sharing factors y1, y2, and y3 according to the original data y, and y = y1+ y2+ y3, and transmits y1, y2, and y3 to the computing node 1, the computing node 2, and the computing node 3, respectively, each of which receives one secret sharing factor. The computing node 1, the computing node 2 and the computing node 3 execute a corresponding computing protocol of multi-party secure computing based on the received secret sharing factor, complete the computing of the task f (x, y) to be computed, and obtain a computing result.
In the scenario illustrated in fig. 3 above, if collusion occurs in more than a certain threshold number of computing nodes, they can recover the original data based on the respective held secret sharing factors, thereby causing leakage of the original data.
To solve this problem, another embodiment of the present application provides a multi-party secure computing method, where as shown in fig. 4, taking 2 data provider devices and 3 computing nodes as an example, a flow of the method is shown in fig. 5, and may include the following steps:
and 51, the multiple data provider devices cooperate to select an initial computing subtask from the tasks to be computed.
In the embodiment of the present application, for the task f (x, y) to be calculated, a sub-function f0(x, y) of the initial step may be selected as an initial calculation sub-task. The selection of the initial calculation subtask does not affect the calculation result of the original integral task to be calculated, and all the original data are required to participate in the calculation of the initial calculation subtask.
For example, for a neural network computational task, the top 1 or 2 layers of the network may be chosen as the initial computational subtask. Taking a common neural network calculation task at present as an example, an inner product of a data vector and a weight vector can be obtained first to serve as an initial calculation subtask.
In the embodiment of the application, various feasible cooperation manners can be adopted for cooperation manners of a plurality of data provider devices, negotiation is performed through information interaction, and operations are completed together.
Step 52, the plurality of data provider devices cooperate to generate a calculation rule representing an initial calculation subtask.
In the embodiment of the present application, the generated calculation rule representing the initial calculation sub task is represented by T, i.e. T = f0(x, y), which may also be referred to as circuit T.
Based on the calculation rule, the multiple data provider devices cooperatively generate n calculation sub-rules forming the calculation rule, where n is the number of the multiple calculation nodes participating in the multi-party security calculation.
In the embodiment of the present application, as shown in fig. 4, when 3 computation nodes are included, 3 computation sub-rules are generated, including computation sub-rules T1, T2, and T3, and T = T1+ T2+ T3, this step may also be understood as generating circuit T with true values in the form of secret sharing circuit T1, T2, and T3.
In this embodiment of the application, the n generated calculation sub-rules may be generated by one data provider device of the multiple data provider devices, or may be generated by some data provider devices, or may be generated by at least one calculation sub-rule by each data provider device.
That is, for any one of the plurality of data provider devices, the execution of this step may specifically be as follows:
the method is characterized in that the method is cooperated with other data provider equipment, and n calculation sub-rules forming a calculation rule are generated by the method, namely other data provider equipment does not need to generate the calculation sub-rules; or
Generating m calculation sub-rules of n calculation sub-rules forming the calculation rule in cooperation with other data provider devices, wherein m is an integer greater than 0 and less than n, and other calculation sub-rules of the n calculation sub-rules are generated by other data provider devices; or
And generating n calculation sub-rules forming the calculation rule by each other data provider device in cooperation with each other data provider device.
In this step, the cooperation between the multiple data provider devices may be that the multiple data provider devices negotiate which data provider devices generate which computation sub-rules.
And step 54, the multiple data provider devices cooperate to respectively send the n computation sub-rules to the n computation nodes, wherein each computation node receives one computation sub-rule.
As shown in FIG. 4, compute sub-rule T1 is sent to compute node 1, compute sub-rule T2 is sent to compute node 2, and compute sub-rule T3 is sent to compute node 3.
And step 55, each data provider device sends processed data aiming at the original data to the n computing nodes according to the privacy computing scheme.
In the embodiment of the present application, various feasible privacy calculation schemes may be adopted, specifically as follows:
a first privacy computation scheme: adopting a Homomorphic Encryption (HE) scheme, and homomorphic encrypting the held original data by using a homomorphic encryption public key to obtain homomorphic ciphertext data;
and sending homomorphic ciphertext data to the n computing nodes.
A second privacy computation scheme: adopting a Trusted Execution Environment (TEE) scheme, respectively using TEE keys of n computing nodes to encrypt held original data to obtain TEE ciphertext data;
and respectively sending corresponding TEE ciphertext data to the TEEs of the n computing nodes.
It can be understood that, for each computing node, the TEE key of the computing node is used to encrypt the held original data to obtain TEE ciphertext data, and the TEE ciphertext data is sent to the computing node.
The third privacy computation scheme: adopting a Garbled Circuit (GC) scheme to respectively manufacture garbled circuits according to n calculation sub-rules;
and respectively sending the input identification corresponding to the held original data to the corresponding computing node according to each garbled circuit.
It is understood that a garbled circuit is made for each computation sub-rule, and according to the garbled circuit, the corresponding input identifier of the held original data is sent to the computation node receiving the computation sub-rule.
In the embodiment of the present application, each computing node receives the processed data sent by each data provider device, where in fig. 4, < x > represents processed data of original data x held by the data provider device 1, and < y > represents processed data of original data y held by the data provider device 2.
In this embodiment of the application, the privacy calculation scheme used in this step may be preset, or may be selected from a plurality of privacy calculation schemes to be selected based on the calculation rule or the n calculation sub-rules, and specifically, the privacy calculation scheme with a smaller calculation amount and a smaller communication amount for executing the calculation rule or the n calculation sub-rules may be selected.
And step 56, after receiving the processed data of the original data sent by the multiple data provider devices, the computing node computes the processed data sent by the multiple data provider devices according to the received computation sub-rule to obtain the computation sub-result of the received computation sub-rule.
A first privacy computation scheme: when a Homomorphic Encryption (HE) scheme is adopted, homomorphic ciphertext data sent by a plurality of data provider devices are calculated according to the received calculation sub-rule to obtain homomorphic ciphertext calculation sub-results;
and decrypting the homomorphic ciphertext calculation sub-result to obtain the calculation sub-result of the received calculation sub-rule.
A second privacy computation scheme: when a Trusted Execution Environment (TEE) scheme is adopted, TEE ciphertext data sent by a plurality of data provider equipment are decrypted in the TEE of the computing node to obtain corresponding original data;
and in the TEE of the computing node, computing the original data obtained by decryption according to the received computing sub-rule to obtain a computing sub-result of the received computing sub-rule, and outputting the computing sub-result to the exterior of the TEE to be obtained by the computing node.
The third privacy computation scheme: when a Garbled Circuit (GC) scheme is adopted, calculating an output identifier based on input identifiers sent by a plurality of data provider devices and a garbled circuit corresponding to the received calculation sub-rule;
and querying a plurality of data provider devices by using the output identification to obtain a calculation sub-result of the received calculation sub-rule.
In the embodiment of the present application, the n computation sub-results obtained by the n computation nodes may be understood as a secret sharing factor of the computation result of the initial computation sub-task f0(x, y).
And step 57, the n computing nodes cooperate, and the obtained n computing sub-results are used for continuing the multi-party security computing on the task to be computed.
That is, in this step, the n computing nodes may continue to complete subsequent computations according to the SS-MPC protocol based on the secret sharing factor of the computation result of the initial computation subtask f0(x, y), that is, the n computation subtasks, to obtain the computation result of the task to be computed.
By adopting the method shown in fig. 5 provided by the embodiment of the present application, as shown in fig. 4, in this process, each data provider device no longer needs to send the original data to each computing node in the form of a secret sharing factor, thereby avoiding obtaining the original data through collusion among some computing nodes, and improving the security of the original data in multi-party security computation.
Based on the same inventive concept, according to the multiparty security computing method applied to the data provider device provided in the foregoing embodiment of the present application, correspondingly, another embodiment of the present application further provides a multiparty security computing apparatus applied to a data provider device among a plurality of data provider devices participating in multiparty security computing, a schematic structural diagram of which is shown in fig. 6, specifically including:
the task selection module 61 is used for cooperating with other data provider equipment to select an initial computing subtask from the tasks to be computed;
a rule generating module 62, configured to generate, in cooperation with each other data provider device, a calculation rule representing an initial calculation subtask;
a sub-rule generating module 63, configured to generate, based on the computation rule, n computation sub-rules forming the computation rule in cooperation with other data provider devices, where n is the number of multiple computation nodes participating in the multi-party security computation;
a sub-rule sending module 64, configured to cooperate with other data provider devices to send n computation sub-rules to n computation nodes, respectively, where each computation node receives one computation sub-rule;
the data sending module 65 is configured to send processed data for the held original data to the n computing nodes according to the privacy computation scheme, so that the n computing nodes compute the processed data sent by the multiple data provider devices according to the respective received computation sub-rules to obtain computation sub-results of the respective received computation sub-rules, and the n computing nodes continue to perform multiparty security computation on the task to be computed by using the shared n computation sub-results.
Further, the sub-rule generating module 63 is specifically configured to generate n calculation sub-rules forming the calculation rule by itself in cooperation with other data provider devices; or
Generating m calculation sub-rules of n calculation sub-rules forming the calculation rule in cooperation with other data provider devices, wherein m is an integer greater than 0 and less than n, and other calculation sub-rules of the n calculation sub-rules are generated by other data provider devices; or
And generating n calculation sub-rules forming the calculation rule by each other data provider device in cooperation with each other data provider device.
Further, the data sending module 65 is specifically configured to perform homomorphic encryption on the held original data by using a homomorphic encryption public key by using a homomorphic encryption scheme to obtain homomorphic ciphertext data; sending homomorphic ciphertext data to the n computing nodes; or
Adopting a trusted execution environment TEE scheme, respectively using TEE keys of n computing nodes to encrypt held original data to obtain TEE ciphertext data; respectively sending corresponding TEE ciphertext data to the TEEs of the n computing nodes; alternatively, the first and second electrodes may be,
adopting a garbled circuit scheme, and respectively manufacturing garbled circuits according to n calculation sub-rules; and respectively sending the input identification corresponding to the held original data to the corresponding computing node according to each garbled circuit.
Based on the same inventive concept, according to the multi-party secure computing method applied to the computing nodes provided in the foregoing embodiments of the present application, correspondingly, another embodiment of the present application further provides a multi-party secure computing apparatus applied to a computing node of a plurality of computing nodes participating in multi-party secure computing, where the number of the plurality of computing nodes is n, and a schematic structural diagram of the multi-party secure computing apparatus is shown in fig. 7, and specifically includes:
a sub-rule receiving module 71, configured to receive one computation sub-rule of n computation sub-rules cooperatively sent by multiple data provider devices, where the other n-1 computation sub-rules are sent to other n-1 computation nodes, where each computation node receives one computation sub-rule, and the n computation sub-rules form a computation rule, where the computation rule represents an initial computation sub-task selected from tasks to be computed;
a data receiving module 72, configured to receive processed data of original data sent by multiple data provider devices according to a privacy calculation scheme;
a sub-result calculating module 73, configured to calculate, according to the received calculation sub-rule, the processed data sent by the multiple data provider devices, so as to obtain a calculation sub-result of the received calculation sub-rule;
and the result calculation module 74 is configured to cooperate with other calculation nodes, and use the obtained n calculation sub-results to continue the multi-party security calculation for the task to be calculated.
Further, the data receiving module 72 is specifically configured to receive homomorphic ciphertext data sent by multiple data provider devices by using a homomorphic encryption scheme, where the homomorphic ciphertext data sent by each data provider device is obtained by homomorphic encrypting the held original data by using a homomorphic encryption public key for the data provider device; or
Adopting a trusted execution environment TEE scheme, receiving TEE ciphertext data sent by a plurality of data provider devices by a TEE of the computing node, wherein the TEE ciphertext data sent by each data provider device is obtained by encrypting held original data for the data provider device by using a TEE key of the computing node; or
And receiving input identifications corresponding to the held original data sent by a plurality of data provider devices by adopting a garbled circuit scheme, wherein the input identification sent by each data provider device is sent by the data provider device according to the garbled circuit corresponding to the calculation node, and the garbled circuit corresponding to the calculation node is manufactured by the data provider device according to the calculation sub-rule received by the calculation node.
Further, the sub-result calculating module 73 is specifically configured to, when the received processed data is homomorphic ciphertext data, calculate homomorphic ciphertext data sent by the multiple data provider devices according to the received calculating sub-rule, to obtain a homomorphic ciphertext calculating sub-result; decrypting the homomorphic ciphertext computation sub-result to obtain the computation sub-result of the received computation sub-rule; or
When the received processed data is TEE ciphertext data, decrypting the TEE ciphertext data sent by the data provider equipment in the TEE of the computing node to obtain corresponding original data; in the TEE of the computing node, computing the original data obtained by decryption according to the received computing sub-rule to obtain a computing sub-result of the received computing sub-rule; or
When the received processed data is an input identifier, calculating an output identifier based on the input identifiers sent by the multiple data provider devices and the received confusion circuit corresponding to the calculation sub-rule; and querying a plurality of data provider devices by using the output identification to obtain a calculation sub-result of the received calculation sub-rule.
The functions of the above modules may correspond to the corresponding processing steps in the flows shown in fig. 1 to fig. 5, and are not described herein again.
The multi-party secure computing device provided by the embodiment of the application can be realized by a computer program. It should be understood by those skilled in the art that the above-mentioned module division is only one of many module division, and if the division is performed into other modules or not, it is within the scope of the present application as long as the wall painting and printing apparatus has the above-mentioned functions.
An electronic device is further provided in an embodiment of the present application, as shown in fig. 8, and includes a processor 81 and a machine-readable storage medium 82, where the machine-readable storage medium 82 stores machine-executable instructions that can be executed by the processor 81, and the processor 81 is caused by the machine-executable instructions to: the method is applied to any one of the multi-party security computing methods applied to the data provider equipment, or any one of the multi-party security computing methods applied to the computing node.
An embodiment of the present application further provides a computer-readable storage medium, in which a computer program is stored, and when executed by a processor, the computer program implements any one of the above-mentioned multiparty security computing methods applied to a data provider device, or implements any one of the above-mentioned multiparty security computing methods applied to a computing node.
Embodiments of the present application further provide a computer program product containing instructions, which when run on a computer, cause the computer to perform any one of the above-mentioned multiparty security computing methods applied to a data provider device, or to perform any one of the above-mentioned multiparty security computing methods applied to a computing node.
The machine-readable storage medium in the electronic device may include a Random Access Memory (RAM) and a Non-Volatile Memory (NVM), such as at least one disk Memory. Optionally, the memory may also be at least one memory device located remotely from the processor.
The Processor may be a general-purpose Processor, including a Central Processing Unit (CPU), a Network Processor (NP), and the like; but also Digital Signal Processors (DSPs), Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs) or other Programmable logic devices, discrete Gate or transistor logic devices, discrete hardware components.
All the embodiments in the present specification are described in a related manner, and the same and similar parts among the embodiments may be referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, for the apparatus, the electronic device, the computer-readable storage medium, and the computer program product embodiment, since they are substantially similar to the method embodiment, the description is relatively simple, and for the relevant points, reference may be made to the partial description of the method embodiment.
It is noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present application without departing from the spirit and scope of the application. Thus, if such modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is intended to include such modifications and variations as well.

Claims (10)

1. A multiparty security computing method, applied to a data provider device of a plurality of data provider devices participating in multiparty security computing, comprising:
cooperating with other data provider equipment, and selecting an initial computing subtask from the tasks to be computed;
generating a calculation rule representing the initial calculation subtask in cooperation with other data provider devices;
based on the calculation rule, generating n calculation sub-rules forming the calculation rule in cooperation with other data provider equipment, wherein n is the number of a plurality of calculation nodes participating in multi-party safety calculation;
the n computation sub-rules are respectively sent to n computation nodes in cooperation with other data provider equipment, wherein each computation node receives one computation sub-rule;
according to a privacy calculation scheme, processed data aiming at the original data are sent to the n calculation nodes, the processed data of the original data which are respectively held by other data provider equipment are all sent to the n calculation nodes, the n calculation nodes calculate the processed data sent by the data provider equipment according to the calculation sub-rules which are respectively received, calculation sub-results of the calculation sub-rules which are respectively received are obtained, and the n calculation nodes continue to carry out multiparty security calculation on the task to be calculated by using the obtained n calculation sub-results.
2. The method of claim 1, wherein generating n computation sub-rules that make up the computation rule in cooperation with other data provider devices based on the computation rule comprises:
generating n calculation sub-rules forming the calculation rule by the device in cooperation with other data provider devices; or
Generating m calculation sub-rules of n calculation sub-rules forming the calculation rule in cooperation with other data provider devices, wherein m is an integer greater than 0 and less than n, and the other calculation sub-rules of the n calculation sub-rules are generated by other data provider devices; or
And generating n calculation sub-rules forming the calculation rule by each other data provider device in cooperation with each other data provider device.
3. The method of claim 1, wherein said sending processed data for held raw data to the n compute nodes according to a privacy computation scheme comprises:
adopting a homomorphic encryption scheme, and homomorphic encrypting the held original data by using a homomorphic encryption public key to obtain homomorphic ciphertext data; sending the homomorphic ciphertext data to the n computing nodes; or
Encrypting the held original data by adopting a Trusted Execution Environment (TEE) scheme and respectively using TEE keys of the n computing nodes to obtain TEE ciphertext data; respectively sending the corresponding TEE ciphertext data to the TEEs of the n computing nodes; or
Adopting a garbled circuit scheme, and respectively manufacturing garbled circuits according to n calculation sub-rules; and respectively sending the input identification corresponding to the held original data to the corresponding computing node according to each garbled circuit.
4. A multi-party security computing method is applied to a computing node in a plurality of computing nodes participating in multi-party security computing, the number of the computing nodes is n, and the method comprises the following steps:
receiving one computation sub-rule in n computation sub-rules cooperatively sent by a plurality of data provider devices, wherein the other n-1 computation sub-rules are sent to other n-1 computation nodes, each computation node receives one computation sub-rule, the n computation sub-rules form a computation rule, and the computation rule represents an initial computation sub-task selected from tasks to be computed;
receiving processed data of the original data sent by the plurality of data provider devices according to a privacy calculation scheme, wherein the processed data of the original data owned by each of the plurality of data provider devices are all sent to other calculation nodes;
calculating the processed data sent by the plurality of data provider devices according to the received calculation sub-rule to obtain a calculation sub-result of the received calculation sub-rule;
and cooperating with other computing nodes, and using the obtained n computing sub-results to continuously perform multi-party safe computing on the task to be computed.
5. The method of claim 4, wherein receiving processed data of the raw data transmitted by the plurality of data provider devices according to the privacy computation scheme comprises:
adopting a homomorphic encryption scheme to receive homomorphic ciphertext data sent by the plurality of data provider devices, wherein the homomorphic ciphertext data sent by each data provider device is obtained by homomorphic encrypting held original data by using a homomorphic encryption public key for the data provider device; or
Adopting a Trusted Execution Environment (TEE) scheme, receiving TEE ciphertext data sent by the data provider equipment by the TEE of the computing node, wherein the TEE ciphertext data sent by each data provider equipment is obtained by encrypting the held original data by using the TEE key of the computing node for the data provider equipment; or
And receiving input identifications corresponding to the held original data sent by the plurality of data provider devices by adopting a garbled circuit scheme, wherein the input identification sent by each data provider device is sent by the data provider device according to the garbled circuit corresponding to the computing node, and the garbled circuit corresponding to the computing node is manufactured by the data provider device according to the computing sub-rule received by the computing node.
6. The method of claim 5, wherein said computing said processed data sent by said plurality of data provider devices in accordance with a received computation sub-rule to obtain a computation sub-result of the received computation sub-rule comprises:
when the received processed data is the homomorphic ciphertext data, calculating the homomorphic ciphertext data sent by the plurality of data provider devices according to the received calculation sub-rule to obtain homomorphic ciphertext calculation sub-results; decrypting the homomorphic ciphertext computation sub-result to obtain a computation sub-result of the received computation sub-rule; or
When the received processed data is the TEE ciphertext data, decrypting the TEE ciphertext data sent by the data provider equipment in the TEE of the computing node to obtain corresponding original data; in the TEE of the computing node, computing the original data obtained by decryption according to the received computing sub-rule to obtain a computing sub-result of the received computing sub-rule; or
When the received processed data is the input identification, calculating an output identification based on the input identifications sent by the multiple data provider devices and the received confusion circuit corresponding to the calculation sub-rule; and querying the plurality of data provider devices by using the output identification to obtain a calculation sub-result of the received calculation sub-rule.
7. A multi-party secure computing apparatus, for use with a data provider device of a plurality of data provider devices participating in a multi-party secure computing, comprising:
the task selection module is used for cooperating with other data provider equipment to select an initial calculation subtask from the tasks to be calculated;
the rule generating module is used for generating a computing rule representing the initial computing sub task in cooperation with other data provider equipment;
the sub-rule generating module is used for generating n calculation sub-rules forming the calculation rule based on the calculation rule and other data provider equipment in a cooperative mode, wherein n is the number of a plurality of calculation nodes participating in multi-party safety calculation;
the sub-rule sending module is used for cooperating with other data provider equipment and respectively sending the n calculation sub-rules to n calculation nodes, wherein each calculation node receives one calculation sub-rule;
the data sending module is configured to send processed data for the held original data to the n computing nodes according to a privacy computation scheme, where the processed data of the original data held by each of the other data provider devices is sent to the n computing nodes, so that the n computing nodes compute the processed data sent by the multiple data provider devices according to the respective received computation sub-rule to obtain the respective received computation sub-result of the computation sub-rule, and the n computing nodes continue to perform multi-party security computation on the task to be computed by using the shared n computation sub-results.
8. A multi-party secure computing apparatus, applied to a computing node of a plurality of computing nodes participating in multi-party secure computing, the number of the plurality of computing nodes being n, the apparatus comprising:
the sub-rule receiving module is used for receiving one computation sub-rule in n computation sub-rules cooperatively sent by a plurality of data provider devices, and the other n-1 computation sub-rules are sent to other n-1 computation nodes, wherein each computation node receives one computation sub-rule, the n computation sub-rules form a computation rule, and the computation rule represents an initial computation sub-task selected from tasks to be computed;
the data receiving module is used for receiving processed data of the original data sent by the plurality of data provider devices according to a privacy calculation scheme, and the processed data of the original data owned by each of the plurality of data provider devices is sent to other calculation nodes;
the sub-result calculation module is used for calculating the processed data sent by the plurality of data provider devices according to the received calculation sub-rule to obtain a calculation sub-result of the received calculation sub-rule;
and the result calculation module is used for cooperating with other calculation nodes, using the obtained n calculation sub-results and continuing to perform multi-party safety calculation on the task to be calculated.
9. An electronic device comprising a processor and a machine-readable storage medium storing machine-executable instructions executable by the processor, the processor being caused by the machine-executable instructions to: carrying out the method of any one of claims 1 to 3, or carrying out the method of any one of claims 4 to 6.
10. A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, carries out the method of any one of claims 1 to 3 or carries out the method of any one of claims 4 to 6.
CN202111048609.2A 2021-09-08 2021-09-08 Multi-party security calculation method and device and electronic equipment Active CN113541946B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111048609.2A CN113541946B (en) 2021-09-08 2021-09-08 Multi-party security calculation method and device and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111048609.2A CN113541946B (en) 2021-09-08 2021-09-08 Multi-party security calculation method and device and electronic equipment

Publications (2)

Publication Number Publication Date
CN113541946A CN113541946A (en) 2021-10-22
CN113541946B true CN113541946B (en) 2022-01-04

Family

ID=78093078

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111048609.2A Active CN113541946B (en) 2021-09-08 2021-09-08 Multi-party security calculation method and device and electronic equipment

Country Status (1)

Country Link
CN (1) CN113541946B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113849844B (en) * 2021-11-26 2022-03-04 杭州安恒信息技术股份有限公司 Multi-party data security calculation method, system, device and storage medium
CN113992439B (en) * 2021-12-27 2022-05-06 支付宝(杭州)信息技术有限公司 Distributed multi-party secure computing system, method and node
CN114721804A (en) * 2022-04-15 2022-07-08 支付宝(杭州)信息技术有限公司 Task scheduling method and device and electronic equipment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109241016A (en) * 2018-08-14 2019-01-18 阿里巴巴集团控股有限公司 Secure calculation method and device, electronic equipment
CN110752924A (en) * 2019-10-30 2020-02-04 四川长虹电器股份有限公司 Key safety management method based on safety multi-party calculation
CN112184219A (en) * 2020-09-22 2021-01-05 远光软件股份有限公司 Secure multiparty computing method, electronic device and storage medium

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190139045A1 (en) * 2012-07-23 2019-05-09 Its, Inc. Securing Multi-Part Network Transactions with Automated Multi-Phase Network Traversal
CN112184220A (en) * 2020-09-22 2021-01-05 远光软件股份有限公司 Secure multiparty computing method, electronic device and storage medium

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109241016A (en) * 2018-08-14 2019-01-18 阿里巴巴集团控股有限公司 Secure calculation method and device, electronic equipment
CN110752924A (en) * 2019-10-30 2020-02-04 四川长虹电器股份有限公司 Key safety management method based on safety multi-party calculation
CN112184219A (en) * 2020-09-22 2021-01-05 远光软件股份有限公司 Secure multiparty computing method, electronic device and storage medium

Also Published As

Publication number Publication date
CN113541946A (en) 2021-10-22

Similar Documents

Publication Publication Date Title
CN113541946B (en) Multi-party security calculation method and device and electronic equipment
CN111512589B (en) Method for fast secure multiparty inner product with SPDZ
Gai et al. Blend arithmetic operations on tensor-based fully homomorphic encryption over real numbers
CN108768607B (en) Voting method, device, equipment and medium based on block chain
Wang et al. Secure optimization computation outsourcing in cloud computing: A case study of linear programming
Liu et al. Privacy of outsourced k-means clustering
Wang et al. Secure and practical outsourcing of linear programming in cloud computing
CN111371545B (en) Encryption method and system based on privacy protection
CN112287377A (en) Model training method based on federal learning, computer equipment and storage medium
CN107196919B (en) Data matching method and device
Jayapandian et al. Secure and efficient online data storage and sharing over cloud environment using probabilistic with homomorphic encryption
Kang et al. Controlled mutual quantum entity authentication with an untrusted third party
Li et al. Asymmetric group key agreement protocol based on blockchain and attribute for industrial internet of things
US11902432B2 (en) System and method to optimize generation of coprime numbers in cryptographic applications
Alexandru et al. Secure multi-party computation for cloud-based control
CN115694777A (en) Privacy set intersection method, device, equipment and medium based on homomorphic encryption
CN114691167A (en) Method and device for updating machine learning model
Harishma et al. POSTER: Authenticated key-exchange protocol for heterogeneous CPS
CN111712816B (en) Using cryptographic masking for efficient use of Montgomery multiplications
CN107196918A (en) A kind of method and apparatus of matched data
WO2022141014A1 (en) Security averaging method based on multi-user data
Chen et al. Cryptanalysis and improvement of DeepPAR: Privacy-preserving and asynchronous deep learning for industrial IoT
CN116861477A (en) Data processing method, system, terminal and storage medium based on privacy protection
EP3323220B1 (en) Encryption scheme using multiple parties
CN115118411A (en) Method, device and equipment for down-link multi-party trusted computing and storage medium

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