CN112765631B - Safe multi-party computing method based on block chain - Google Patents
Safe multi-party computing method based on block chain Download PDFInfo
- Publication number
- CN112765631B CN112765631B CN202110102816.5A CN202110102816A CN112765631B CN 112765631 B CN112765631 B CN 112765631B CN 202110102816 A CN202110102816 A CN 202110102816A CN 112765631 B CN112765631 B CN 112765631B
- Authority
- CN
- China
- Prior art keywords
- node
- nodes
- block chain
- calculation
- party
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/72—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
Abstract
A multi-party security computing method based on a block chain. The method comprises the steps that a certain node randomly generates a plurality of garbled circuits with the same function but different functions; the other nodes respectively run the disappearing transmission protocol with the node to respectively obtain one of the garbled circuits; the hash value of the confusion circuit of other nodes is compared with the corresponding hash value uploaded to the block chain by the node; the other nodes calculate the right according to the credit competition; and the nodes which acquire the competitive computation right acquire all encrypted data and corresponding garbled circuits and start computation, and upload the computation results to a block chain through an intelligent contract for public notice and the like. The block chain-based multi-party safety calculation method provided by the invention has the following beneficial effects: the method can solve the problems of few participants, low efficiency, incapability of guaranteeing trust, low safety and the like in the conventional safe multi-party computing technology, and has strong theoretical significance and practical significance for the development of safe multi-party computing.
Description
Technical Field
The invention belongs to the technical field of privacy protection, and particularly relates to a block chain-based multi-party security calculation method.
Background
Secure multiparty computing (SMPC) is a universal cryptographic primitive that can be jointly computed in a privacy-preserving manner. As an important fundamental research topic in the field of cryptography, SMPC solves the problem of multiple participants performing collaborative computing on private data in a secure manner in a distributed computing scenario. Informally, in an SMPC scenario, two or more parties holding private inputs wish to use those inputs to compute some federated function. In this task, maintaining security requires only that each participant obtain its own target output. Here, functionality is a generic concept, referring to any cryptographic task, such as encryption, authentication, zero knowledge proof, commitment planning, indifferent transfer, and other none-cryptographic agreements (e.g., application-oriented tasks including contract signing, electronic voting, machine learning, genome data processing, etc.). It can be said that SMPC is the most common and fundamental theoretical research topic in the field of cryptography. Any cryptographic task involving multiple parties can be considered an SMPC task. Intensive research on SMPC has facilitated the development of basic primitives such as zero knowledge proofs, forgetting to transfer, and secret sharing. SMPC establishes theoretical basis for testable security of interactive protocol, and greatly promotes development of modern cryptography.
Current secure multiparty computing protocols can be broadly divided into three categories:
universal secure multi-party computing protocol
The general safe multi-party calculation allows two parties or multiple parties to jointly calculate any function in a safe mode, and the safe multi-party calculation protocol under the semi-honest model can only calculate between two parties mostly, so that after the participants are added, the computation becomes extremely unsafe, and the significance of the safe multi-party calculation is greatly limited. Under the malicious model, to resist attacks by malicious adversaries, a generic zero-knowledge proof is typically applied to constrain the behavior of the participants. While these techniques help to design constant wheel safety protocols, these protocols are not practical. Literature exists on methods that avoid the use of general zero knowledge proofs, but the complexity of these protocols is linear in circuit depth. For more complicated calculation, huge calculation time and calculation power are often required, and therefore, the real requirements cannot be met.
Secure multi-party computing protocol based on cloud computing
The cloud computing-based secure multi-party computing protocol utilizes the strong computing capability of a cloud platform to outsource a high-strength computing part in general secure multi-party computing to the cloud platform, and although the protocol efficiency is obviously improved by doing so, cloud-assisted secure multi-party computing also faces new security challenges. For example, the cloud server may be in-line with a subset of parties to obtain additional information about other parties' inputs. In addition, a malicious or lazy cloud server may return forged computing results to the outsourcer.
Secure multi-party computing protocol based on trusted execution environment
The secure multi-party computing protocol based on the trusted execution environment essentially hands high-strength computing tasks to a trusted third party for computing, but the third party is a trusted execution environment, namely a so-called black box, but the supervision problem of the trusted execution environment is not effectively solved, the trusted execution environment is based on hardware, and if the trusted execution environment returns to reality, the ownership of the hardware still cannot effectively guarantee private data of a participant.
Disclosure of Invention
In order to solve the above problems, an object of the present invention is to provide a block chain-based multi-party secure computing method, so as to alleviate the problems that in the existing secure multi-party computing protocol, it is difficult to guarantee trust, protect privacy, and cannot really participate in computing in multiple parties.
In order to achieve the above object, the block chain-based multi-party security computing method provided by the present invention comprises the following steps performed in sequence:
1) in a block chain with a plurality of nodes A, B and C …, any node can be used as a calculation initiator, and the rest nodes have data required by calculation;
2) when multi-party safety calculation is needed, the node A is used as a calculation initiator and randomly generates a plurality of confusion circuits with the same function but different functions, namely Ca,Cb,Cc…, and then calculating a plurality of garbled circuits Ca,Cb,Cc… hash value Ha,Hb,Hc… and uploading the same to the block chain together with the own calculation method, and simultaneously generating corresponding intelligent contracts between any two nodes in all the nodes respectively, wherein the intelligent contracts are defined as follows: any party can terminate the execution of the whole multi-party secure computation protocol, confirm the authenticity of a certain garbled circuit issued by the node A and issue a final computation result;
3) the other nodes respectively operate the loss transmission protocol with the node A to respectively obtain one of the garbled circuits, and then respectively calculate the hash value H of each obtained garbled circuitB,HC…;
4) The other nodes respectively utilize the self-acquiredHash value H of the garbled circuitB,HC… hash value H corresponding to the upload by node A onto the blockchaina,Hb,Hc…, comparing, if the comparison result is consistent, confirming the node A is honest and credible through the intelligent contract, otherwise, confirming the node A is not honest, and terminating the protocol;
5) the other nodes calculate the right according to credit competition, wherein the node B obtains the calculation right;
6) the node B runs the ubiquitous transmission protocol with the rest of the nodes, and obtains the encrypted data E of the corresponding node A from the node Aa;
7) The node B runs the disappearing transmission protocol with the other nodes respectively and obtains the encrypted data E corresponding to the other nodes from the other nodesi(i∈[1,2,3…]);
8) The node B generates its own encrypted data E according to the corresponding garbled circuitb;
9) So far node B has possessed all the encrypted data E required for the calculationa,Eb,Ei(i∈[1,2,3…]) And a corresponding garbled circuit CbAnd at the moment, the node B starts to calculate, and uploads a calculation result to a block chain through an intelligent contract for display.
The block chain-based multi-party safety calculation method provided by the invention has the following beneficial effects:
the method can solve the problems of few participants, low efficiency, incapability of guaranteeing trust, low safety and the like in the conventional safe multi-party computing technology, and has strong theoretical significance and practical significance for the development of safe multi-party computing.
Drawings
Fig. 1 is a flowchart of a block chain-based multi-party security computing method provided by the present invention.
Detailed Description
The invention is described in detail below with reference to the figures and specific embodiments.
As shown in fig. 1, the block chain-based multi-party secure computation method provided by the present invention is performed in a semi-honest model, and all parties participating in computation in the semi-honest model can perform according to the correct flow of the protocol, and thus the sequential execution of the protocol cannot be destroyed without any reason. This embodiment takes the case that nodes a, B, and C in the blockchain perform secure multi-party computation by three parties as an example. The method comprises the following steps which are carried out in sequence:
1) in a block chain with three nodes A, B and C, any node can be used as a calculation initiator, and the rest nodes have data required by calculation;
2) when three-party safe calculation is needed, suppose that the node A is used as a calculation initiator and randomly generates three confusion circuits with the same function but different functions, namely Ca,Cb,CcThen calculate three garbled circuits Ca,Cb,CcHash value of Ha,Hb,HcAnd uploading the data to a block chain together with a self calculation method, and simultaneously generating corresponding intelligent contracts between the nodes B and C respectively, wherein the intelligent contracts are defined as follows: any party can terminate the execution of the whole multi-party secure computation protocol, confirm the authenticity of a certain garbled circuit issued by the node A and issue a final computation result;
garbled Circuit (GC), also known as Yao's Circuit (Yao's GC), is a solution proposed by Yao wisdom in 1986 to the problem of paul. The obfuscated circuit is a basic cryptology primitive, and the core technology of the obfuscated circuit is to compile a security calculation function participated by two parties into a Boolean circuit form and to scramble the truth table encryption, so that the normal output of the circuit is realized without leaking private information of the two parties participating in calculation. Any safety calculation function can be converted into a corresponding Boolean circuit form, and the safety calculation method has higher universality compared with other safety calculation methods. The garbled circuit may have multiple inputs.
3) Respectively running the disappearing transmission protocol with the node A by the nodes B and C to respectively obtain one of the garbled circuits, and respectively calculating the hash value H of the respectively obtained garbled circuitB,HC…;
The transmission protocol is at a loss: the ubiquitous transmission (OT), a basic cryptology primitive, is widely used for secure multi-party metersComputing, etc. OT was first proposed in 1981 by Michael o. rabin, in 1985 s.even, o.goldreich, and a.lempel by 1-out-2OT, in a new scheme where the information sender S sends 2 information m at a time0And m1And the information receiver R inputs one selection a at a time (a is equal to 0, 1)]). When the protocol is over, the information sender S cannot obtain any valuable information about the choice a, while the information receiver R can only obtain the information maFor information m1-aThe message receiver R is also unknown.
4) Nodes B and C respectively use the hash value H of the garbled circuit obtained by the nodes B and CB,HCHash value H corresponding to uploading of node A to block chaina,Hb,HcComparing, if the comparison result is consistent, confirming that the node A is honest and credible through the intelligent contract, otherwise, considering that the node A is not honest, and terminating the protocol;
5) the node B and the node C calculate the right according to credit competition, and the node B is assumed to obtain the calculation right;
6) node B and node A, node C running a ubiquitous transmission protocol and obtaining encrypted data E of the corresponding node A from the node Aa;
7) The node B runs a blank transmission protocol with the node A and the node C respectively, and obtains the encrypted data E of the corresponding node C from the node Cc;
8) The node B generates its own encrypted data E according to the corresponding garbled circuitb;
9) So far node B has possessed all the encrypted data E required for the calculationa,Eb,EcAnd a corresponding garbled circuit CbAnd at the moment, the node B starts to calculate, and uploads a calculation result to a block chain through an intelligent contract for display.
Claims (1)
1. A multi-party security computing method based on a block chain is characterized in that: the method comprises the following steps which are carried out in sequence:
1) in a block chain with a plurality of nodes A, B and C …, any node can be used as a calculation initiator, and the rest nodes have data required by calculation;
2) when multi-party safety calculation is needed, the node A is used as a calculation initiator and randomly generates a plurality of confusion circuits with the same function but different functions, namely Ca,Cb,Cc…, and then calculating a plurality of garbled circuits Ca,Cb,Cc… hash value Ha,Hb,Hc… and uploading the same to the block chain together with the own calculation method, and simultaneously generating corresponding intelligent contracts between any two nodes in all the nodes respectively, wherein the intelligent contracts are defined as follows: any party can terminate the execution of the whole multi-party secure computation protocol, confirm the authenticity of a certain garbled circuit issued by the node A and issue a final computation result;
3) the other nodes respectively operate the loss transmission protocol with the node A to respectively obtain one of the garbled circuits, and then respectively calculate the hash value H of each obtained garbled circuitB,HC…;
4) The hash values H of the garbled circuits obtained by other nodes are respectively utilized by other nodesB,HC… hash value H corresponding to the upload by node A onto the blockchaina,Hb,Hc…, comparing, if the comparison result is consistent, confirming the node A is honest and credible through the intelligent contract, otherwise, confirming the node A is not honest, and terminating the protocol;
5) the other nodes calculate the right according to credit competition, wherein the node B obtains the calculation right;
6) the node B runs the ubiquitous transmission protocol with the rest of the nodes, and obtains the encrypted data E of the corresponding node B from the node Aa;
7) The node B runs the disappearing transmission protocol with the other nodes respectively and obtains the encrypted data E corresponding to the other nodes from the other nodesi(i∈[1,2,3…]);
8) The node B generates its own encrypted data E according to the corresponding garbled circuitb;
9) So far node B has possessed all the encrypted data E required for the calculationa,Eb,Ei(i∈[1,2,3…]) And a corresponding garbled circuit CbAnd at the moment, the node B starts to calculate, and uploads a calculation result to a block chain through an intelligent contract for display.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110102816.5A CN112765631B (en) | 2021-01-26 | 2021-01-26 | Safe multi-party computing method based on block chain |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110102816.5A CN112765631B (en) | 2021-01-26 | 2021-01-26 | Safe multi-party computing method based on block chain |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112765631A CN112765631A (en) | 2021-05-07 |
CN112765631B true CN112765631B (en) | 2022-05-24 |
Family
ID=75705726
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110102816.5A Active CN112765631B (en) | 2021-01-26 | 2021-01-26 | Safe multi-party computing method based on block chain |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112765631B (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113472513B (en) * | 2021-06-11 | 2023-08-25 | 电子科技大学 | Parallel secure multiparty computing method based on block chain |
CN116595569B (en) * | 2023-07-19 | 2023-09-15 | 西南石油大学 | Government affair data security multiparty calculation method based on alliance chain |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109359470A (en) * | 2018-08-14 | 2019-02-19 | 阿里巴巴集团控股有限公司 | Secure calculation method and device, electronic equipment |
CN109886687A (en) * | 2019-02-28 | 2019-06-14 | 矩阵元技术(深圳)有限公司 | A kind of result verification method and system for realizing multi-party computations based on block chain |
CN111008256A (en) * | 2019-10-29 | 2020-04-14 | 矩阵元技术(深圳)有限公司 | Spatial data distribution pattern analysis method based on safe multi-party calculation |
CN111047450A (en) * | 2020-03-18 | 2020-04-21 | 支付宝(杭州)信息技术有限公司 | Method and device for calculating down-link privacy of on-link data |
EP3764266A1 (en) * | 2019-07-12 | 2021-01-13 | Robert Bosch GmbH | Method and device for trading on an electronic trading platform |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11716617B2 (en) * | 2019-05-02 | 2023-08-01 | Ares Technologies, Inc. | Systems and methods for cryptographic authorization of wireless communications |
-
2021
- 2021-01-26 CN CN202110102816.5A patent/CN112765631B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109359470A (en) * | 2018-08-14 | 2019-02-19 | 阿里巴巴集团控股有限公司 | Secure calculation method and device, electronic equipment |
CN109886687A (en) * | 2019-02-28 | 2019-06-14 | 矩阵元技术(深圳)有限公司 | A kind of result verification method and system for realizing multi-party computations based on block chain |
EP3764266A1 (en) * | 2019-07-12 | 2021-01-13 | Robert Bosch GmbH | Method and device for trading on an electronic trading platform |
CN111008256A (en) * | 2019-10-29 | 2020-04-14 | 矩阵元技术(深圳)有限公司 | Spatial data distribution pattern analysis method based on safe multi-party calculation |
CN111047450A (en) * | 2020-03-18 | 2020-04-21 | 支付宝(杭州)信息技术有限公司 | Method and device for calculating down-link privacy of on-link data |
Non-Patent Citations (1)
Title |
---|
区块链隐私保护技术;刘滋润;《计算机工程与设计》;20190630;第40卷(第6期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112765631A (en) | 2021-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhao et al. | Secure multi-party computation: theory, practice and applications | |
Zeng et al. | E-AUA: An efficient anonymous user authentication protocol for mobile IoT | |
Huang et al. | Blockchain-based multiple groups data sharing with anonymity and traceability | |
Miao et al. | Secure multi-server-aided data deduplication in cloud computing | |
CN110225023B (en) | Traceable anonymous authentication method and traceable anonymous authentication system | |
CN112765631B (en) | Safe multi-party computing method based on block chain | |
Eskandarian et al. | Clarion: Anonymous communication from multiparty shuffling protocols | |
CN115396115B (en) | Block chain data privacy protection method, device, equipment and readable storage medium | |
Tang et al. | Secure multi-party computation protocol for sequencing problem | |
Wang et al. | Information-theoretic secure multi-party computation with collusion deterrence | |
Alwen et al. | Collusion-free multiparty computation in the mediated model | |
CN115688185A (en) | Multi-party privacy summation method and device, electronic equipment and storage medium | |
CN116011014A (en) | Privacy computing method and privacy computing system | |
JP2022538697A (en) | Distributed network with blind identities | |
CN111245615B (en) | Digital signature password reverse firewall method based on identity | |
CN113438237A (en) | Data security collaborative computing method and system | |
CN110890961B (en) | Novel safe and efficient multi-authorization attribute-based key negotiation protocol | |
CN117353912A (en) | Three-party privacy set intersection base number calculation method and system based on bilinear mapping | |
Li et al. | Two-party attribute-based key agreement protocol with constant-size ciphertext and key | |
Han et al. | Public integrity auditing of shared encrypted data within cloud storage group | |
CN115525907A (en) | Vector similarity judgment method under malicious adversary model and communication equipment | |
Anceaume et al. | Extending signatures of reputation | |
Guo et al. | Scalable protocol for cross-domain group password-based authenticated key exchange | |
Cheng et al. | Secure Similar Sequence Query over Multi-source Genomic Data on Cloud | |
Zhang et al. | Universally composable three-party password authenticated key exchange |
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 |