A secure multi-party computation interaction method, device and equipment
By writing calculation formulas on the blockchain and generating protocol code off-chain, combined with on-chain verification and arbitration mechanisms, the problems of high computational overhead and lack of accountability in existing technologies are solved, achieving efficient, flexible, and secure multi-party computational interaction, which is suitable for data privacy protection and accountability between enterprises.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- GUANGZHOU ZHONGKE YIDE TECH CO LTD
- Filing Date
- 2023-02-07
- Publication Date
- 2026-04-24
AI Technical Summary
Existing secure multi-party computation techniques suffer from problems such as high computational overhead, low performance, inability to customize calculation formulas, and lack of accountability. In particular, they cannot guarantee the accuracy of calculation results under semi-honest models.
By writing calculation formulas and connection information of off-chain interactive nodes into the blockchain, a multi-party secure computation protocol code is generated. Data interaction is performed off-chain, encrypted, and then uploaded to the blockchain for verification. Regulatory nodes are introduced for arbitration to ensure consistency and accountability of the results.
It achieves efficient, flexible, and secure multi-party computation interaction, supports multiple computation types, provides reliability and accountability mechanisms under a semi-honest model, and improves computational efficiency and security.
Smart Images

Figure CN116208325B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of data processing technology, and more specifically, to a secure multi-party computation interaction method, apparatus, and device. Background Technology
[0002] Currently, secure multi-party computation technology has become a hot research topic. It achieves data usability without visibility through basic tools such as secret sharing and unintentional transmission, creating a secure interaction method that can effectively solve the privacy protection problem of data interaction between enterprises and make data more valuable.
[0003] Blockchain is a decentralized, tamper-proof database, widely used in electronic evidence storage due to its tamper-proof properties. Currently, most secure multi-party computation applications designed based on blockchain technology use homomorphic encryption. This involves uploading encrypted data to a smart contract, performing operations on the ciphertext using homomorphic encryption, and finally decrypting the result, thus protecting the privacy of the original data.
[0004] However, the existing data processing method has the following drawbacks:
[0005] 1. Using a combination of homomorphic encryption and blockchain is an option, but full homomorphic encryption is computationally expensive and cannot be used in practice at present. Limited homomorphic encryption supports limited computations, and existing solutions require all parties to upload the homomorphically encrypted ciphertext to the blockchain. The computation using the upload and synchronization method requires waiting for all parties to complete their interaction before the result can be obtained, resulting in low performance.
[0006] 2. Most secure multi-party computation protocols designed using basic components such as obfuscated circuits and accidental transmission assume a semi-honest model. However, in real-world applications, if a participant uses incorrect input, it will produce incorrect results. Due to the nature of secure multi-party computation, it is impossible to hold the participant who used incorrect input accountable.
[0007] 3. Most existing solutions use specific protocols for calculation, which do not allow for the customization of calculation formulas and lack flexibility.
[0008] Therefore, a more efficient and secure multi-party computation interaction method is needed. Summary of the Invention
[0009] To address the above problems, the present invention provides a secure multi-party computation interaction method, apparatus, and device.
[0010] To achieve the above objectives, the present invention provides a secure multi-party computation interaction method, which is applied to a first participant, and the method includes:
[0011] Write the calculation formula and the connection information required for off-chain interaction nodes into the blockchain. If the calculation formula is accepted by the second participant, the first participant and the second participant reach a calculation agreement.
[0012] Generate the multi-party secure computation protocol code for the computation formula on the off-chain node;
[0013] Based on the aforementioned multi-party secure computation protocol code, an established computation formula is selected for data interaction, and the data generated in this interaction is encrypted.
[0014] The encrypted interaction data and output results are uploaded to the blockchain so that the smart contract can verify whether the output results uploaded by the first participant and the output results uploaded by the second participant are consistent.
[0015] In one implementation, the method further includes, before writing the calculation formula and the connection information required for off-chain interaction nodes into the blockchain:
[0016] Generate an asymmetric key and upload the public key of the asymmetric key to the monitoring node.
[0017] In one implementation, if the output result uploaded by the first participant and the output result uploaded by the second participant are inconsistent, the method further includes:
[0018] An arbitration request is initiated to the regulatory node, the arbitration request including the interaction number and the plaintext data of the interaction number, so that the regulatory node can verify the encrypted interaction data uploaded by the first participant on the blockchain;
[0019] After verifying the encrypted interaction data uploaded by the first participant and the encrypted interaction data uploaded by the second participant, the supervisory node uses the calculation formula corresponding to the interaction number to restore the on-chain data and compare whether the restoration results are consistent.
[0020] Based on the comparison results, the regulatory node issues the arbitration result.
[0021] In one implementation, the verification of encrypted interactive data uploaded by the first participant on the blockchain by the supervisory node includes:
[0022] The monitoring node decrypts the encrypted interactive data uploaded by the first participant based on the public key uploaded by the first participant, and obtains the decrypted data.
[0023] Determine whether the decrypted data is consistent with the plaintext data. If they are consistent, the verification is deemed successful; otherwise, the verification is deemed unsuccessful.
[0024] In one implementation, the monitoring node uses the calculation formula corresponding to the interaction number to reconstruct the on-chain data, including:
[0025] For the first participant, the regulatory node obtains the calculation formula corresponding to the interaction number of the first participant, and uses the calculation formula to process the plaintext data uploaded by the first participant to obtain the restored on-chain data.
[0026] For the second participant, the regulatory node obtains the calculation formula corresponding to the interaction number of the second participant, and uses the calculation formula to process the plaintext data uploaded by the second participant to obtain the restored on-chain data.
[0027] In one implementation, the arbitration result issued by the regulatory node includes:
[0028] If the on-chain data restored by the first participant differs from the actual on-chain data, an arbitration result in favor of the second participant will be issued.
[0029] If the on-chain data restored by the second participant differs from the actual on-chain data, an arbitration result in favor of the first participant will be issued.
[0030] In another aspect, the present invention provides a secure multi-party computational interaction device, the device being applied to a first participating party, the device comprising:
[0031] The information writing unit is used to write the calculation formula and the connection information required by the off-chain interaction node into the blockchain. If the calculation formula is recognized by the second participant, the first participant and the second participant reach a calculation agreement.
[0032] The code generation unit is used to generate the multi-party secure computation protocol code for the computation formula in the off-chain node;
[0033] The encryption unit is used to select an established calculation formula for data interaction based on the multi-party secure computation protocol code, and to encrypt the data generated in this interaction.
[0034] The data upload unit is used to upload the encrypted interactive data and output results to the blockchain, so that the smart contract can verify whether the output results uploaded by the first participant and the output results uploaded by the second participant are consistent.
[0035] In another aspect, the present invention provides an electronic device, which includes a memory and a processor. The memory is used to store a computer program, and when the computer program is executed by the processor, it implements the above-described secure multi-party computation interaction method.
[0036] In another aspect, the present invention provides a computer storage medium for storing a computer program, which, when executed by a processor, implements the above-described secure multi-party computation interaction method.
[0037] The technical solution provided by this invention offers a flexible, efficient, and accountable secure multi-party computation interaction system. On one hand, it directly provides an interaction privacy protection mechanism for enterprises and departments with computational interaction needs, while also offering flexible formula definitions to improve computational flexibility and efficiency, enabling data to realize greater value. On the other hand, it provides an evidence verification mechanism that can audit participants who input erroneous data, ensuring more effective accuracy protection in a semi-honest environment. Attached Figure Description
[0038] Figure 1 This diagram illustrates the steps of a secure multi-party computation interaction method according to one embodiment of the present invention.
[0039] Figure 2 An interactive flowchart of secure multi-party computation in one embodiment of the present invention is shown;
[0040] Figure 3 This illustrates a flowchart of accountability for secure multi-party computation in one embodiment of the present invention;
[0041] Figure 4 A schematic diagram of the functional modules of a secure multi-party computational interaction device according to one embodiment of the present invention is shown. Detailed Implementation
[0042] To make the objectives, technical solutions, and advantages of this invention clearer, the technical solutions of this invention will be further described clearly and completely below in conjunction with the embodiments of this invention. It should be noted that the described embodiments are merely some embodiments of this invention, and not all embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention.
[0043] This invention employs a consortium blockchain approach, comprising data exchange companies and regulatory authorities, with the data exchange companies acting as ordinary nodes. New nodes joining must provide relevant supporting documentation and undergo approval by the regulatory nodes.
[0044] Each enterprise joining the consortium blockchain needs to deploy off-chain multi-party computation nodes and on-chain nodes for blockchain notarization. Off-chain multi-party computation nodes can accelerate protocol computation, shorten interaction time, and improve interaction performance. On-chain notarization of interaction calculation formulas and input / output provides an accountability mechanism, making data interaction between enterprises more reliable. The combination of on-chain and off-chain methods effectively meets the needs of data interaction and accountability.
[0045] The privacy requirements for data interaction between enterprises can be divided into two aspects: off-chain data interaction privacy and on-chain evidence storage privacy.
[0046] Off-chain data interaction privacy refers to the fact that both parties involved in the data interaction can only obtain the final interaction result and cannot obtain the other party's original data. Only the two parties involved can obtain the final result.
[0047] On-chain evidence privacy: Only the two parties involved in the data transaction can obtain the calculation formula corresponding to the on-chain interaction or the interaction result corresponding to a certain interaction.
[0048] The privacy policy for off-chain data interaction is as follows:
[0049] When data exchange parties perform protocol calculations, methods such as unintentional transmission, obfuscated circuits, and secret sharing are used to protect the original data exchanged between the parties from being leaked. If the exchanging parties choose a pre-established formula for protocol calculation, it is not necessary to establish a protocol through the blockchain every time; data exchange can be carried out off-chain, and only needs to be uploaded to the blockchain after the exchange, thereby improving the efficiency of data exchange.
[0050] The privacy policy for on-chain evidence storage is as follows:
[0051] Off-chain interaction and evidence storage are linked through a "protocol number." Initially, both companies negotiate the interaction formula via a blockchain smart contract. Once agreed upon, each generates corresponding protocol code on its off-chain node. After each interaction, both parties use the bcypt algorithm to encrypt the data (including the random number seed of the obfuscated circuit and the encrypted data that can reconstruct the calculation process) and upload the output to the blockchain for evidence storage. If problems are subsequently discovered in the calculation, regulatory authorities can arbitrate and hold those responsible accountable by reconstructing the calculation from the on-chain data, thus resolving the accountability issues inherent in the semi-honest model.
[0052] Specifically, please refer to Figure 1 The present invention provides a secure multi-party computation interaction method, which is applied to a first participant and includes the following steps.
[0053] S1: Write the calculation formula and the connection information required for off-chain interaction nodes into the blockchain. If the calculation formula is recognized by the second participant, the first participant and the second participant reach a calculation agreement.
[0054] S2: Generate the multi-party secure computation protocol code for the computation formula on the off-chain node;
[0055] S3: Based on the multi-party secure computation protocol code, select the established calculation formula for data interaction, and encrypt the data generated in this interaction;
[0056] S4: Upload the encrypted interaction data and output results to the blockchain so that the smart contract can verify whether the output results uploaded by the first participant and the output results uploaded by the second participant are consistent.
[0057] It should be noted that the data processing procedures implemented by the first and second participants can be identical. For practical applications, please refer to [link / reference needed]. Figure 2 The workflow of this invention will be described below using data interaction between Company A and Company B as an example:
[0058] 1) Both parties generate a pair of asymmetric keys and upload the public key to the monitoring node.
[0059] 2) The first stage is the creation of the calculation formula, which can be initiated by any party. The initiator interacts with the smart contract to input the calculation formula and the necessary connection information for the off-chain interactive nodes. If the other participating party agrees with the calculation formula, they interact with the smart contract to reach an agreement.
[0060] 3) After both parties reach an agreement on the calculation formula, each party generates the corresponding multi-party secure computation protocol code for the calculation formula on its off-chain node.
[0061] 4) Both parties select the established calculation formula in the console to exchange data.
[0062] 5) A and B each encrypt the data generated by this interaction locally using the bcypt algorithm.
[0063] 6) A uploads the encrypted interaction data and output results to the blockchain.
[0064] 7) B uploads the encrypted interaction data and output results to the blockchain, and the smart contract verifies whether the results of both parties are consistent.
[0065] 8) If the results of the two parties are inconsistent, the intervention of the regulatory node is required for coordination.
[0066] Please see Figure 3In a specific application scenario, if any party involved in a data exchange believes that the result is problematic after using it, they can apply for arbitration with the regulatory node. This accountability process may include the following steps.
[0067] 1) The arbitration initiator provides the regulatory node with the interaction order number and the plaintext data of the interaction order number. The regulatory node uses the bcypt algorithm to compare and verify the correctness of the encrypted input data on the blockchain.
[0068] 2) After verifying the data of the initiator, the regulatory node requires the other participant to provide corresponding data and verifies the other participant's data in the same way.
[0069] 3) After both parties have verified the data, the regulatory node uses the formula corresponding to the interaction number to restore the corresponding calculation process of the data and compares the results on the verification chain to see if they are consistent.
[0070] 4) The regulatory node announces the arbitration result.
[0071] As can be seen, in one implementation, before writing the calculation formula and the connection information required by the off-chain interaction nodes into the blockchain, the method further includes:
[0072] Generate an asymmetric key and upload the public key of the asymmetric key to the monitoring node.
[0073] In one implementation, if the output result uploaded by the first participant and the output result uploaded by the second participant are inconsistent, the method further includes:
[0074] An arbitration request is initiated to the regulatory node, the arbitration request including the interaction number and the plaintext data of the interaction number, so that the regulatory node can verify the encrypted interaction data uploaded by the first participant on the blockchain;
[0075] After verifying the encrypted interaction data uploaded by the first participant and the encrypted interaction data uploaded by the second participant, the supervisory node uses the calculation formula corresponding to the interaction number to restore the on-chain data and compare whether the restoration results are consistent.
[0076] Based on the comparison results, the regulatory node issues the arbitration result.
[0077] In one implementation, the verification of encrypted interactive data uploaded by the first participant on the blockchain by the supervisory node includes:
[0078] The monitoring node decrypts the encrypted interactive data uploaded by the first participant based on the public key uploaded by the first participant, and obtains the decrypted data.
[0079] Determine whether the decrypted data is consistent with the plaintext data. If they are consistent, the verification is deemed successful; otherwise, the verification is deemed unsuccessful.
[0080] In one implementation, the monitoring node uses the calculation formula corresponding to the interaction number to reconstruct the on-chain data, including:
[0081] For the first participant, the regulatory node obtains the calculation formula corresponding to the interaction number of the first participant, and uses the calculation formula to process the plaintext data uploaded by the first participant to obtain the restored on-chain data.
[0082] For the second participant, the regulatory node obtains the calculation formula corresponding to the interaction number of the second participant, and uses the calculation formula to process the plaintext data uploaded by the second participant to obtain the restored on-chain data.
[0083] In one implementation, based on the comparison results, the regulatory node issues the arbitration result including:
[0084] If the on-chain data restored by the first participant differs from the actual on-chain data, an arbitration result in favor of the second participant will be issued.
[0085] If the on-chain data restored by the second participant differs from the actual on-chain data, an arbitration result in favor of the first participant will be issued.
[0086] Please see Figure 4 The present invention also provides a secure multi-party computational interaction device, which is applied in a first participating party, and the device includes:
[0087] The information writing unit is used to write the calculation formula and the connection information required by the off-chain interaction node into the blockchain. If the calculation formula is recognized by the second participant, the first participant and the second participant reach a calculation agreement.
[0088] The code generation unit is used to generate the multi-party secure computation protocol code for the computation formula in the off-chain node;
[0089] The encryption unit is used to select an established calculation formula for data interaction based on the multi-party secure computation protocol code, and to encrypt the data generated in this interaction.
[0090] The data upload unit is used to upload the encrypted interactive data and output results to the blockchain, so that the smart contract can verify whether the output results uploaded by the first participant and the output results uploaded by the second participant are consistent.
[0091] The present invention also provides an electronic device, the electronic device including a memory and a processor, the memory being used to store a computer program, and when the computer program is executed by the processor, implementing the above-described secure multi-party computation interaction method.
[0092] The present invention also provides a computer storage medium for storing a computer program, which, when executed by a processor, implements the above-described secure multi-party computation interaction method.
[0093] As can be seen from the above description, the present invention can achieve the following technical effects:
[0094] 1. Secure multi-party computation data interaction is carried out through on-chain and off-chain collaboration, which not only ensures the efficiency of secure multi-party computation, but also provides higher security.
[0095] 2. The two parties interact by using methods such as unintentional transmission and obfuscated circuits to exchange data, supporting a wide range of calculation types and having a broad range of application scenarios.
[0096] 3. The use of blockchain smart contracts for collaboration enables both parties to coordinate calculation formulas and generate multi-party calculation protocols corresponding to the calculation formulas on local nodes, resulting in high flexibility.
[0097] 4. Encrypting the input data using the bcypt algorithm before uploading it to the blockchain ensures that the original input data is not leaked. Decryption is only required when arbitration is needed.
[0098] 5. After each data interaction, both parties encrypt their input data using the bcypt algorithm and upload the encrypted interaction data and the results of the multi-party computation protocol to the blockchain, enabling the supervisory node to arbitrate a particular computation by reproducing the computation.
[0099] Furthermore, compared with existing solutions, the present invention has the following advantages:
[0100] 1. The calculation formula is negotiable, and there is no need to design a specific protocol for a specific formula, which is highly flexible.
[0101] 2. You can directly select a pre-negotiated protocol to interact with, without having to interact with the blockchain every time, which is highly efficient.
[0102] 3. The input data is encrypted and uploaded to the blockchain to ensure that the original data is not leaked, achieving data usability without visibility while introducing an accountability mechanism.
[0103] 4. The introduction of a blockchain-based evidence storage mechanism better ensures the reliability of computation results under the semi-honest model. It provides security approaching that of a malicious model while maintaining interactive performance.
[0104] The technical solution provided by this invention offers a flexible, efficient, and accountable secure multi-party computation interaction system. On one hand, it directly provides an interaction privacy protection mechanism for enterprises and departments with computational interaction needs, while also offering flexible formula definitions to improve computational flexibility and efficiency, enabling data to realize greater value. On the other hand, it provides an evidence verification mechanism that can audit participants who input erroneous data, ensuring more effective accuracy protection in a semi-honest environment.
[0105] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. The storage medium can be a magnetic disk, optical disk, read-only memory (ROM), random access memory (RAM), flash memory, hard disk drive (HDD), or solid-state drive (SSD), etc.; the storage medium can also include combinations of the above types of memory.
[0106] The various embodiments in this specification are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, the system embodiments are basically similar to the method embodiments, so the description is relatively simple; relevant parts can be referred to the descriptions of the method embodiments.
[0107] The embodiments described above are merely illustrative of several implementations of the present invention, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of the present invention. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of the present invention, and these modifications and improvements all fall within the scope of protection of the present invention. Therefore, the scope of protection of this patent should be determined by the appended claims.
Claims
1. A secure multi-party computation interaction method, characterized in that, The method is applied to the first participant, and the method includes: Write the calculation formula and the connection information required by the node into the blockchain. If the calculation formula is recognized by the second participant, the first participant and the second participant reach a calculation agreement. The node generates the multi-party secure computation protocol code for the computation formula. Based on the aforementioned multi-party secure computation protocol code, an established computation formula is selected for data interaction, and the data generated in this interaction is encrypted. The encrypted interaction data and output results are uploaded to the blockchain so that the smart contract can verify whether the output results uploaded by the first participant and the output results uploaded by the second participant are consistent. If the output results uploaded by the first participant and the second participant are inconsistent, the first participant initiates an arbitration request to the regulatory node. The arbitration request includes the interaction number and the corresponding plaintext data of this interaction, so that the regulatory node can verify the encrypted interaction data uploaded by the first participant on the blockchain. After verifying the encrypted interaction data uploaded by the first participant and the encrypted interaction data uploaded by the second participant, the regulatory node uses the calculation formula corresponding to the interaction number to process the plaintext data uploaded by the first and second participants respectively, obtain their respective restoration calculation results, and compare the two restoration calculation results. Based on the comparison results, the regulatory node issues an arbitration result. The verification of encrypted interactive data uploaded by the first participant on the blockchain by the supervisory node includes: the supervisory node decrypting the encrypted interactive data uploaded by the first participant based on the public key uploaded by the first participant to obtain decrypted data; determining whether the decrypted data is consistent with the plaintext data; if they are consistent, the verification is deemed successful; if they are inconsistent, the verification is deemed unsuccessful.
2. The method according to claim 1, characterized in that, Before writing the calculation formula and the connection information required by the off-chain interaction nodes into the blockchain, the method further includes: Generate an asymmetric key and upload the public key of the asymmetric key to the monitoring node.
3. The method according to claim 1, characterized in that, The monitoring node uses the calculation formula corresponding to the interaction number to process the plaintext data uploaded by the first participant and the second participant respectively, and obtains their respective restoration calculation results, including: For the first participant, the regulatory node obtains the calculation formula corresponding to the interaction number of the first participant, and uses the calculation formula to process the plaintext data uploaded by the first participant to obtain the restored calculation result. For the second participant, the regulatory node obtains the calculation formula corresponding to the interaction number of the second participant, and uses the calculation formula to process the plaintext data uploaded by the second participant to obtain the restored calculation result.
4. The method according to claim 3, characterized in that, Based on the comparison results, the arbitration results issued by the regulatory node include: If the calculation result restored by the first participant is inconsistent with the output result of the participant stored on the blockchain, an arbitration result in favor of the second participant will be issued. If the calculation result restored by the second participant is inconsistent with the output result of the participant stored on the blockchain, an arbitration result in favor of the first participant will be issued.
5. A secure multi-party computational interaction device, characterized in that, The device is used in the first participating party, and the device includes: The information writing unit is used to write the calculation formula and the connection information required by the node into the blockchain. If the calculation formula is recognized by the second participant, the first participant and the second participant reach a calculation agreement. A code generation unit is used to generate multi-party secure computation protocol code for the computation formula at the node; The encryption unit is used to select an established calculation formula for data interaction based on the multi-party secure computation protocol code, and to encrypt the data generated in this interaction. A data upload unit is used to upload encrypted interaction data and output results to the blockchain, so that the smart contract can verify whether the output results uploaded by the first participant and the second participant are consistent. If the output results uploaded by the first participant and the second participant are inconsistent, the first participant initiates an arbitration request to the regulatory node. The arbitration request includes the interaction number and its corresponding plaintext data of this interaction, so that the regulatory node verifies the encrypted interaction data uploaded by the first participant on the blockchain. If the encrypted interaction data uploaded by the first participant is verified, and the encrypted interaction data uploaded by the second participant is also verified... Subsequently, the supervisory node uses the calculation formula corresponding to the interaction number to process the plaintext data uploaded by the first participant and the second participant respectively, obtaining their respective restoration calculation results, and compares the two restoration calculation results; based on the comparison results, the supervisory node issues an arbitration result; wherein, the supervisory node verifies the encrypted interaction data uploaded by the first participant on the blockchain, including: the supervisory node decrypts the encrypted interaction data uploaded by the first participant based on the public key uploaded by the first participant, obtaining decrypted data; and determines whether the decrypted data is consistent with the plaintext data. If they are consistent, the verification is deemed successful; if they are inconsistent, the verification is deemed unsuccessful.
6. An electronic device, characterized in that, The electronic device includes a memory and a processor, the memory being used to store a computer program that, when executed by the processor, implements the method as described in any one of claims 1 to 4.
7. A computer storage medium, characterized in that, The computer storage medium is used to store a computer program, which, when executed by a processor, implements the method as described in any one of claims 1 to 4.
Citation Information
Patent Citations
Under-chain multi-party trusted computing method, device and equipment and storage medium
CN115118411A