This specification provides a method and system to verify the results of secure multi-party computing based on block chains. It combines block chains with secure multi-party computing, and adopts the strategy of under-chain computing and on-chain verification as a whole. The calculation of data is implemented by secure multi-party computation, which ensures the privacy of the original data. The correctness of the calculation results under the chain is verified by the nodes on the block chain. Only the data label of the calculation part under the chain and the calculation results are linked, so that the calculation results can be publicly verified. Thus, it is not necessary to store a large amount of data in the block chain, and it can transfer all the heavy computing tasks to the chain, which greatly improves the scalability of the whole system and makes the block chain only complete the purest part of consensus verification. The privacy computing method provided in the embodiment of this specification solves the scalability problem of block chains and ensures the reliability of the calculation results.
【技术实现步骤摘要】
一种基于区块链实现安全多方计算的结果验证方法及系统
本说明书属于计算机
,尤其涉及一种基于区块链实现安全多方计算的结果验证方法及终端。
技术介绍
区块链可以理解为一个不可篡改的数据库,并且通过图灵完备的智能合约可以实现链上任何逻辑的执行。但是在区块链上的任何行为,包括交易转账和合约执行,不仅需要花费经济成本,而且要经由链上所有共识节点执行一次逻辑,造成链上资源的极大浪费,也影响了区块链本身的性能,因此,区块链本质上不适用于计算。MPC(SecureMulti-PartyComputation,安全多方计算)可以表示用户在无需进行数据归集的情况下,完成数据协同计算,同时保护数据所有方的原始数据隐私。参与各方在数据保留在各自本地的情况下,执行共同的既定计算逻辑(算法),得到计算结果。计算完成,参与各方除了自己的输入数据和输出结果外,无法获知任何额外信息。安全多方计算(MPC)作为一个隐私计算技术,与区块链本身无任何关系。但若有区块链中的需求方对数据隐私计算后的结果也有着需求,那么如何保证安全多方计算的结果对于需求方是可信的,提高数据处理的准确性和可信性,是本领域亟需解决的技术问题。
技术实现思路
本说明书实施例目的在于提供一种基于区块链实现安全多方计算的结果验证方法及系统,提高数据处理的准确性和可信性。第一方面本说明书实施例提供了一种基于区块链实现安全多方计算的结果验证方法,包括:第一终端基于安全多方计算生成加密电路和所述加密电路中各条输出线对应的输出线标签;所述第一终端根据所述输出线标签生成加密信息,并将所述第一终端的第一输入信息转换为第一输入标签;所述第 ...
【技术保护点】
1.一种基于区块链实现安全多方计算的结果验证方法,其特征在于,包括:第一终端基于安全多方计算生成加密电路和所述加密电路中各条输出线对应的输出线标签;所述第一终端根据所述输出线标签生成加密信息,并将所述第一终端的第一输入信息转换为第一输入标签;所述第一终端将所述加密电路、所述加密信息、所述第一输入标签、所述输出线标签对应的真值表发送给第二终端;所述第二终端与所述第一终端利用不经意传输协议,获取与所述第二终端的第二输入信息相对应的第二输入标签;所述第二终端利用所述第一输入标签、第二输入标签对所述加密电路进行解密,获得输出线解密标签;所述第二终端判断所述输出线解密标签和所述加密信息是否匹配,若匹配,则将计算结果信息存储到区块链中,所述计算结果信息包括:所述加密信息、计算输出结果、所述输出线解密标签、所述真值表;所述区块链中的节点根据所述计算结果信息对所述安全多方计算的结果进行正确性验证。
【技术特征摘要】
1.一种基于区块链实现安全多方计算的结果验证方法,其特征在于,包括:第一终端基于安全多方计算生成加密电路和所述加密电路中各条输出线对应的输出线标签;所述第一终端根据所述输出线标签生成加密信息,并将所述第一终端的第一输入信息转换为第一输入标签;所述第一终端将所述加密电路、所述加密信息、所述第一输入标签、所述输出线标签对应的真值表发送给第二终端;所述第二终端与所述第一终端利用不经意传输协议,获取与所述第二终端的第二输入信息相对应的第二输入标签;所述第二终端利用所述第一输入标签、第二输入标签对所述加密电路进行解密,获得输出线解密标签;所述第二终端判断所述输出线解密标签和所述加密信息是否匹配,若匹配,则将计算结果信息存储到区块链中,所述计算结果信息包括:所述加密信息、计算输出结果、所述输出线解密标签、所述真值表;所述区块链中的节点根据所述计算结果信息对所述安全多方计算的结果进行正确性验证。2.一种基于区块链实现安全多方计算的结果验证系统,其特征在于,包括:第一终端、第二终端、区块链,其中,所述第一终端基于安全多方计算生成加密电路和所述加密电路中各条输出线对应的输出线标签;所述第一终端根据所述输出线标签生成加密信息,并将所述第一终端的第一输入信息转换为第一输入标签;所述第一终端将所述加密电路、所述加密信息、所述第一输入标签、所述输出线标签对应的真值表发送给第二终端;所述第二终端与所述第一终端利用不经意传输协议,获取与所述第二终端的第二输入信息相对应的第二输入标签;所述第二终端利用所述第一输入标签、第二输入标签对所述加密电路进行解密,获得输出线解密标签;所述第二终端判断所述输出线解密标签和所述加密信息是否匹配,若匹配,则将计算结果信息存储到区块链中,所述计算结果信息包括:所述加密信息、计算输出结果、所述输出线解密标签、所述真值表;所述区块链中的节点根据所述计算结果信息对所述安全多方计算的结果进行正确性验证。3.一种基于区块链实现安全多方计算的结果验证方法,其特征在于,包括:利用安全多方计算生成加密电路,和所述加密电路中各条输出线对应的输出线标签;根据所述输出线标签生成加密信息,并将第一输入信息转换为第一输入标签;将所述加密电路、所述加密信息、所述第一输入标签、所述输出线标签对应的真值表发送给第二终端,以使得所述第二终端根据所述加密电路、所述第一输入标签、所述真值表对所述加密电路进行解密,获得输出线解密标签,所述第二终端将计算结果信息存储到区块链中,所述计算结果信息包括:所述加密信息、计算输出结果、所述输出线解密标签、所述真值表。4.如权利要求3所述的方法,其特征在于,所述根据所述输出线标签生成加密信息,包括:将各所述输出线标签分别进行哈希计算,将获得的哈希计算结果作为所述加密信息。5.如权利要求3所述的方法,其特征在于,所述根据所述输出线标签生成加密信息,包括:利用承诺协议将各所述输出线标签分别生成对应的承诺值,将获得的所述承诺值作为所述加密信息。6.如权利要求3所述的方法,其特征在于,所述方法还包括:将所述加密信息、所述输出线标签和所述真值表的哈希真值表存储到区块链中;或,将所述输出线标签和所述真值表的哈希真值表存储到区块链中,并将所述加密信息发送给第二终端,以使得所述第二终端对所述加密信息统一进行哈希计算,获得所述输出线标签的统一哈希值,所述第二终端将所述输出线标签哈希值存储到区块链中。7.一种基于区块链实现安全多方计算的结果验证终端,其特征在于,包括:加密电路生成模块,用于利用安全多方计算生成加密电路,和所述加密电路中各条输出线对应的输出线标签;信息加密模块,用于根据所述输出线标签生成加密信息,并将第一输入信息转换为第一输入标签;信息发送模块,用于将所述加密电路、所述加密信息、所述第一输入标签、所述输出线标签对应的真值表发送给第二终端,以使得所述第二终端根据所述加密电路、所述第一输入标签、所述真值表对所述加密电路进行解密,获得输出线解密标签,所述第二终端将计算结果信息存储到区块链中,所述计算结果信息包括:所述加密信息、计算输出结果、所述输出线解密标签、所述真值表。8.一种基于区块链实现安全多方计算的结果验证方法,其特征在于,包括:接收第一终端基于安全多方计算生成并发送的加密电路、第一输入标签、所述加密电路的输出线标签对应的真值表、所述输出线标签对应的加密信息;利用不经意传输协议,获得第二输入信息对应的第二输入标签;利用所述第一输入标签、第二输入标签对所述加密电路进行解密,获得输出线解密标签;将计算结果信息存储到区块链中,以使得所述区块链的节点根据所述计算结果信息对所述安全多方计算的结果进行正确性验证;其中,所述加密信息为所述第一终端根据所述输出线标签生成的,所述计算结果信息包括:所述加密信息、计算输出结果、所述输出...
【专利技术属性】
技术研发人员:安瑞,谢翔,孙立林,谢红军,
申请(专利权)人:矩阵元技术深圳有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。