CN115174570B - 一种基于动态委员会的跨链共识方法及系统 - Google Patents
一种基于动态委员会的跨链共识方法及系统 Download PDFInfo
- Publication number
- CN115174570B CN115174570B CN202210747113.2A CN202210747113A CN115174570B CN 115174570 B CN115174570 B CN 115174570B CN 202210747113 A CN202210747113 A CN 202210747113A CN 115174570 B CN115174570 B CN 115174570B
- Authority
- CN
- China
- Prior art keywords
- committee
- node
- chain
- cross
- consensus
- 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
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000012795 verification Methods 0.000 claims description 15
- 239000012634 fragment Substances 0.000 claims description 14
- 230000003993 interaction Effects 0.000 claims description 5
- 230000002452 interceptive effect Effects 0.000 claims description 4
- 230000004931 aggregating effect Effects 0.000 claims description 3
- 230000007246 mechanism Effects 0.000 description 19
- 238000012790 confirmation Methods 0.000 description 17
- 238000012546 transfer Methods 0.000 description 13
- 238000005516 engineering process Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000005304 joining Methods 0.000 description 2
- LPLLVINFLBSFRP-UHFFFAOYSA-N 2-methylamino-1-phenylpropan-1-one Chemical compound CNC(C)C(=O)C1=CC=CC=C1 LPLLVINFLBSFRP-UHFFFAOYSA-N 0.000 description 1
- 241000132539 Cosmos Species 0.000 description 1
- 235000005956 Cosmos caudatus Nutrition 0.000 description 1
- 229920002430 Fibre-reinforced plastic Polymers 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000011151 fibre-reinforced plastic Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及一种基于动态委员会的跨链共识方法及系统。该方法包括:构建跨链中继共识委员会,并对第一委员会节点进行标号;令所有第一委员会节点各自本地生成第一f+1阶多项式,并根据所有第一f+1阶多项式生成第一委员会节点对应的密钥份额以及跨链中继共识委员会的公钥;当各个原链发起跨链交易时,利用公钥以及密钥份额认证跨链交易;当完成认证后,令标号最小的第一委员会节点退出跨链中继共识委员会,加入新的委员会节点,并利用更新后的跨链中继共识委员会内的委员会节点确定新的委员会节点的密钥份额,并将更新后的跨链中继共识委员会作为跨链中继共识委员会,返回跨链交易认证步骤。本发明能降低恶意跨链交易认证通过的风险,提高系统安全性。
Description
技术领域
本发明涉及区块链技术领域,特别是涉及一种基于动态委员会的跨链共识方法及系统。
背景技术
跨链数据与价值的流通需求将日益增长,构建支持异构多链互通的新型跨链体系在现阶段显得尤为迫切。“万链共存”使得多链互联互通成为区块链技术发展的重要趋势。越来越多的区块链团队开始研究跨链的新式应用场景,期待为跨链需求提供通用高效解决方案。此前,业内普遍将跨链技术总结为公证人机制、哈希时间锁定和侧链/中继机制。
1、公证人机制
公证人机制通过特定的共识算法,选举一个或多个团体作为公证人,由公证人就事件的发生与否达成共识。作为公证人对某个链A的事件与状态进行监听,并负责在某个特定事件发生时,对另一个链B进行相应操作。参考Ripple, BTS等代表项目,公证人机制强烈依赖于公证人的可靠性,虽然也存在多重签名公证人机制,即利用密码学多重签名技术在群体内随机选取以降低中心化依赖程度,但公证人设置常固定,仍旧存在较高的中心化程度,进而容易遭受相关攻击,丧失区块链技术的非中心化的优势。
2、哈希时间锁定
哈希锁定的跨链技术是在两条链之间通过特定的智能合约,并设置交易触发器,来实现跨链之间的资产信息流通交互。互操作的发生器可以设置为某个随机数的哈希值,例如hash(m)。交易过程中A用户生成随机数并计算哈希值发给用户B,如果在规定时间内用户A收到生成正确哈希值的m值,智能合约将预先锁定的资产进行转移。参考代表项目闪电网络,其本质是利用锁定时间运算猜测哈希原象实现资产的交互支付。但由于其交易前的互锁定机制只能实现资产互换而不能单纯实现资产转移。
3、侧链/中继机制
以原链代币的锚定币为基础构建侧链,在侧链A上验证来自链B的数据,即通过验证B的哈希树和区块头数据,在A上执行以轻客户端技术为基础的智能合约,判定原链B上的交易事件或状态信息。中继技术是指先将原链中的部分代币锁定,随后验证决定交易结果。中继的“中间人”仅仅充当数据收集者,目标链收到发送链数据后由接收链自行验证,其方式依据系统结构不同而不同,例如BTC-Relay依赖于SPV证明,Cosmos区块链依靠验证节点签名数量。参考上述项目,跨链交易确认时要完全对侧链和中继成员完全信任,使得技术的安全性遭受攻击与质疑。
在复杂任务下的多链跨链技术中,目前,由于异构链的共识机制各异,不同链的共识委员会成员难以互通,现有跨链技术例如侧链/中继机制过度依赖信任中心化成员等问题,设计实现高效安全的链间通信和状态认证的通用跨链共识机制较为困难;基于公证人和中继方案的跨链框架则是利用了中心化成员来实现数据的快速验证与操作,而中心化验证角色易被恶意节点腐化,导致恶意跨链交易认证通过的风险,降低了系统的安全性。
发明内容
本发明的目的是提供一种基于动态委员会的跨链共识方法及系统,以解决中心化验证角色易被恶意节点腐化,导致恶意跨链交易认证通过的风险大,系统安全性低的问题。
为实现上述目的,本发明提供了如下方案:
一种基于动态委员会的跨链共识方法,包括:
构建跨链中继共识委员会,并对第一委员会节点进行标号;所述第一委员会节点为所述跨链中继共识委员会内的委员会节点;所述第一委员会节点的哈希值小于目标值;
令所有第一委员会节点各自本地生成第一f+1阶多项式,并根据所有第一 f+1阶多项式生成每个所述第一委员会节点对应的密钥份额以及所述跨链中继共识委员会的公钥;f为恶意节点数量的最大值;
当各个原链发起跨链交易时,利用所述公钥以及所述密钥份额认证所述跨链交易;
当完成认证后,令标号最小的第一委员会节点退出所述跨链中继共识委员会,并加入新的委员会节点,生成更新后的跨链中继共识委员会;
利用更新后的跨链中继共识委员会内的委员会节点确定所述新的委员会节点的密钥份额,并将所述更新后的跨链中继共识委员会作为所述跨链中继共识委员会,返回步骤“当各个原链发起跨链交易时,利用所有所述密钥以及所述密钥份额认证所述跨链交易”。
可选的,所述令所有第一委员会节点各自本地生成第一f+1阶多项式,并根据所有第一f+1阶多项式生成每个所述第一委员会节点对应的密钥份额以及所述跨链中继共识委员会的公钥,具体包括:
确定任一所述第一f+1阶多项式在0处的取值,并根据所述第一f+1阶多项式在0处的取值确定任一所述第一委员会节点的公钥;
生成所述第一f+1阶多项式的承诺,并确定一个所述第一委员会节点的所述第一f+1阶多项式在任一剩余的第一委员会节点处的第一密钥份额;
将所述公钥、所述第一f+1阶多项式的承诺以及所述第一密钥份额发送至任一剩余的所述第一委员会节点进行认证;
若认证通过,将所有第一密钥份额相加生成一个所述第一委员会节点对应的密钥份额;
根据所有所述密钥份额各自生成每个所述第一委员会节点对应的公钥份额;
将所有所述公钥份额之积作为所述跨链中继共识委员会的公钥;
若认证未通过,移除未通过的第一委员会节点,并将哈希值小于目标值的新的委员会节点添加至所述跨链中继共识委员会。
可选的,所述当各个原链发起跨链交易时,利用所述公钥以及所述密钥份额认证所述跨链交易,具体包括:
当各个原链发起跨链交易时,令一个所述第一委员会节点根据所述第一委员会节点对应的所述密钥份额,利用BLS签名对所述跨链交易进行签名并向剩余的所述第一委员会节点进行广播;
当一个所述第一委员会节点接收到剩余的所述第一委员会节点超过设定数量的签名碎片时,利用拉格朗日算法将接收到的所有所述签名碎片聚合成一个签名,并利用所述公钥验证所述签名;
若所述签名正确,确认对所述跨链交易认证成功,并将所述跨链交易保存至中继区块链中;
若所述签名不准确,确认对所述跨链交易认证失败。
可选的,所述利用更新后的跨链中继共识委员会内的委员会节点确定所述新的委员会节点的密钥份额,具体包括:
令第二委员会节点各自生成第二f+1阶多项式以及第二f+1阶多项式的承诺;所述第二委员会节点为所述更新后的跨链中继共识委员会内的委员会节点;所述第二委员会节点在所述新的委员会节点处的取值为0;
根据所述第二f+1阶多项式确定所述第二委员会节点对应的第二密钥份额;
将所述第二f+1阶多项式、所有所述第二密钥份额之和以及所述第二 f+1阶多项式的承诺在所述更新后的跨链中继共识委员会内进行交互,验证所述更新后的跨链中继共识委员会是否满足更新密钥条件;其中,所述新的委员会节点只发送剩余所述第二委员会节点的第二f+1阶多项式在所述新的委员会节点对应的取值;
若满足,根据所述第二f+1阶多项式以及所述第二f+1阶多项式的承诺更新所述新的委员会节点的密钥;
若不满足,删除所述新的委员会节点。
一种基于动态委员会的跨链共识系统,包括:
委员会选举模块,用于构建跨链中继共识委员会,并对第一委员会节点进行标号;所述第一委员会节点为所述跨链中继共识委员会内的委员会节点;所述第一委员会节点的哈希值小于目标值;
委员会分布式密钥生成模块,用于令所有第一委员会节点各自本地生成第一f+1阶多项式,并根据所有第一f+1阶多项式生成每个所述第一委员会节点对应的密钥份额以及所述跨链中继共识委员会的公钥;f为恶意节点数量的最大值;
委员会交易认证模块,用于当各个原链发起跨链交易时,利用所述公钥以及所述密钥份额认证所述跨链交易;
委员会动态更新模块,用于当完成认证后,令标号最小的第一委员会节点退出所述跨链中继共识委员会,并加入新的委员会节点,生成更新后的跨链中继共识委员会;
委员会密钥更新模块,用于利用更新后的跨链中继共识委员会内的委员会节点确定所述新的委员会节点的密钥份额,并将所述更新后的跨链中继共识委员会作为所述跨链中继共识委员会,返回步骤“当各个原链发起跨链交易时,利用所有所述密钥以及所述密钥份额认证所述跨链交易”。
可选的,所述委员会分布式密钥生成模块,具体包括:
第一委员会节点的公钥确定单元,用于确定任一所述第一f+1阶多项式在 0处的取值,并根据所述第一f+1阶多项式在0处的取值确定任一所述第一委员会节点的公钥;
第一密钥份额生成单元,用于生成所述第一f+1阶多项式的承诺,并确定一个所述第一委员会节点的所述第一f+1阶多项式在任一剩余的第一委员会节点处的第一密钥份额;
认证单元,用于将所述公钥、所述第一f+1阶多项式的承诺以及所述第一密钥份额发送至任一剩余的所述第一委员会节点进行认证;
密钥份额生成单元,用于若认证通过,将所有第一密钥份额相加生成一个所述第一委员会节点对应的密钥份额;
公钥份额生成单元,用于根据所有所述密钥份额各自生成每个所述第一委员会节点对应的公钥份额;
跨链中继共识委员会的公钥生成单元,用于将所有所述公钥份额之积作为所述跨链中继共识委员会的公钥;
委员会节点添加单元,用于若认证未通过,移除未通过的第一委员会节点,并将哈希值小于目标值的新的委员会节点添加至所述跨链中继共识委员会。
可选的,所述委员会交易认证模块,具体包括:
广播单元,用于当各个原链发起跨链交易时,令一个所述第一委员会节点根据所述第一委员会节点对应的所述密钥份额,利用BLS签名对所述跨链交易进行签名并向剩余的所述第一委员会节点进行广播;
签名验证单元,用于当一个所述第一委员会节点接收到剩余的所述第一委员会节点超过设定数量的签名碎片时,利用拉格朗日算法将接收到的所有所述签名碎片聚合成一个签名,并利用所述公钥验证所述签名;
交易认证成功单元,用于若所述签名正确,确认对所述跨链交易认证成功,并将所述跨链交易保存至中继区块链中;
交易认证失败单元,用于若所述签名不准确,确认对所述跨链交易认证失败。
可选的,所述委员会密钥更新模块,具体包括:
第二f+1阶多项式及承诺生成单元,用于令第二委员会节点各自生成第二f+1阶多项式以及第二f+1阶多项式的承诺;所述第二委员会节点为所述更新后的跨链中继共识委员会内的委员会节点;所述第二委员会节点在所述新的委员会节点处的取值为0;
第二密钥份额确定单元,用于密钥份额根据所述第二f+1阶多项式确定所述第二委员会节点对应的第二密钥份额;
交互验证单元,用于将所述第二f+1阶多项式、所有所述第二密钥份额之和以及所述第二f+1阶多项式的承诺在所述更新后的跨链中继共识委员会内进行交互,验证所述更新后的跨链中继共识委员会是否满足更新密钥条件;其中,所述新的委员会节点只发送剩余所述第二委员会节点的第二f+1阶多项式在所述新的委员会节点对应的取值;
更新单元,用于若满足,根据所述第二f+1阶多项式以及所述第二f+1 阶多项式的承诺更新所述新的委员会节点的密钥;
删除单元,用于若不满足,删除所述新的委员会节点。
根据本发明提供的具体实施例,本发明公开了以下技术效果:本发明提供了一种基于动态委员会的跨链共识方法及系统,针对公证人机制中心化,单点依赖风险,设计了动态委员会公证人机制,每次跨链交易区块确认后更新跨链中继共识委员会,利用所有委员会节点的私钥和私钥认证跨链交易,防止公证人的被腐化,错误的跨链交易被确认,降低了恶意跨链交易认证通过的风险,提高了系统的安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明所提供的基于动态委员会的跨链共识方法流程示意图;
图2为本发明所提供的跨链交易认证流程示意图;
图3为本发明所提供的基于动态委员会的跨链共识系统结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种基于动态委员会的跨链共识方法及系统,降低了恶意跨链交易认证通过的风险,提高了系统的安全性。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本发明所提供的基于动态委员会的跨链共识方法流程示意图,如图 1所示,一种基于动态委员会的跨链共识方法,包括:
步骤101:构建跨链中继共识委员会,并对第一委员会节点进行标号;所述第一委员会节点为所述跨链中继共识委员会内的委员会节点;所述第一委员会节点的哈希值小于目标值。
区块链网络节点运行工作量证明机制,计算小于目标值的哈希值,最先计算出满足要求的节点pi其中1≤i≤n,形成跨链中继共识委员会C0;其中,i 为节点标号,n为跨链中继共识委员会C0的节点总数。
选择使用用于跨链交易验证的初始委员会成员,为下一阶段成员合作分布式密钥生成做准备。该步骤用于区块链间的数据流转、价值转移公证人委员会的选举,确定委员会人选,不仅包括初次选举,而且用于后期委员会成员更新的新加入成员选举。
步骤102:令所有第一委员会节点各自本地生成第一f+1阶多项式,并根据所有第一f+1阶多项式生成每个所述第一委员会节点对应的密钥份额以及所述跨链中继共识委员会的公钥;f为恶意节点数量的最大值。
所述步骤102具体包括:确定任一所述第一f+1阶多项式在0处的取值,并根据所述第一f+1阶多项式在0处的取值确定任一所述第一委员会节点的公钥;生成所述第一f+1阶多项式的承诺,并确定一个所述第一委员会节点的所述第一f+1阶多项式在任一剩余的第一委员会节点处的第一密钥份额;将所述公钥、所述第一f+1阶多项式的承诺以及所述第一密钥份额发送至任一剩余的所述第一委员会节点进行认证;若认证通过,将所有第一密钥份额相加生成一个所述第一委员会节点对应的密钥份额;根据所有所述密钥份额各自生成每个所述第一委员会节点对应的公钥份额;将所有所述公钥份额之积作为所述跨链中继共识委员会的公钥;若认证未通过,移除未通过的第一委员会节点,并将哈希值小于目标值的新的委员会节点添加至所述跨链中继共识委员会。
首先,pi节点各自本地生成f+1阶多项式ployi(z),ployi(z)为第一f+1 阶多项式,即:pi节点生成的多项式,变量为z。其中,ployi(0)=xi,即:pi节点生成的多项式在0处取值为私钥xi。pi节点各自生成密钥碎片,该密钥碎片可以用作跨链交易的验证。
其次,跨链中继共识委员会C0中委员会节点pi向委员会节点pj发送消息pi发送公钥和pj在生成多项式处的取值,并对多项式承诺,j为另一节点标号。委员会节点pj收到委员会节点pi发送的消息后,验证/>和是否成立,j∈z。如果不成立,分布式密钥生成委员会节点pj向跨链中继共识委员会C0中其他委员会节点发送委员会节点pi的错误证据,并将委员会节点pi移除跨链中继共识委员会,添加新完成步骤101的成员进入委员会。通过承诺验证pi发送公钥和pj在生成多项式处的取值是否正确,确保pi发送的公钥与多项式取值一致,防止委员会成员作恶发送错误的密钥信息。
最后,验证成立后pj计算 经过上述委员会分布式密钥生成过程,委员会成员pj共享密钥 x=ploy(0)=ploy1(0)+…+ployi(0)对应的密钥份额sj=ploy(j),ploy(j) 为多项式之和ployi(j)。委员会分布式合作生成私钥x和对应的公钥/> 并且第二委员会节点pj拥有密钥x对应的秘密分享多项式ploy(x 在j处的取值sj,ploy(x)为/>
步骤102可以令跨链中继共识委员会节点可信的生成交易确认门限签名基础设施,委员会节点可以根据自己保存的私钥对跨链交易签名验证,委员会签名份额组合成签名,实现跨链交易确认。该步骤用于区块链间的数据流转、价值转移公证人委员会的成员确认工具的生成,根据生成的消息,委员会成员既可以拥有私有信息表示对交易的确认,也可以根据公开信息验证委员会其余成员是否确认。
步骤103:当各个原链发起跨链交易时,利用所述公钥以及所述密钥份额认证所述跨链交易。
所述步骤103具体包括:当各个原链发起跨链交易时,令一个所述第一委员会节点根据所述第一委员会节点对应的所述密钥份额,利用BLS签名对所述跨链交易进行签名并向剩余的所述第一委员会节点进行广播;当一个所述第一委员会节点接收到剩余的所述第一委员会节点超过设定数量的签名碎片时,利用拉格朗日算法将接收到的所有所述签名碎片聚合成一个签名,并利用所述公钥验证所述签名;若所述签名正确,确认对所述跨链交易认证成功,并将所述跨链交易保存至中继区块链中;若所述签名不准确,确认对所述跨链交易认证失败。
图2为本发明所提供的跨链交易认证流程示意图,如图2所示,当各原生链发起跨链交易TX时,筛选后的委员会节点pi验证TX的正确性。如果验证通过,则对跨链交易TX使用BLS签名sigi(TX,si),表示对跨链交易确认TX 并向委员会节点广播{TX,sigi(TX,si)},当pi节点收到f+2个签名碎片,pi节点可以使用拉格朗日算法将签名碎片聚合成一个签名σ,pi可以使用公钥验证聚合签名的正确性,并将交易TX保存在中继区块链中。当节点收到满足门限f+2的pi节点确认后对跨链交易进行确认,由于/>因此每个交易都需要委员会超过2/3的节点确认。实现委员会超过2/3的节点确认跨链建议,保证跨链建议的安全性。认证过程的实际作用为用于区块链间的数据流转、价值转移公证人委员会的成员达到预先设定好的满足条件后,委员会成员根据确认信息会对区块链间的交易达成一致,是否确认。满足条件可以事先设定,常需要达到多数人同意的情况。
步骤104:当完成认证后,令标号最小的第一委员会节点退出所述跨链中继共识委员会,并加入新的委员会节点,生成更新后的跨链中继共识委员会。
当跨链中继共识委员会C0完成中继链完成一个区块打包后,委员会中标号最小的节点p1退出委员会,新完成步骤101证明的节点加入节点pn+1。此时委员会为C1,其中,节点为{p2,…,pn+1}。跨链中继委员会成员不断更新,防止成员固定,恶意节点腐化委员会成员,合谋对跨链事务作恶,保障跨链委员会对跨链确认的安全可信。该步骤用于区块链间的数据流转、价值转移公证人委员会的新增成员选举工作,调用步骤101的过程,确定新加入委员会的成员。同时删除部分旧委员会的成员。
步骤105:利用更新后的跨链中继共识委员会内的委员会节点确定所述新的委员会节点的密钥份额,并将所述更新后的跨链中继共识委员会作为所述跨链中继共识委员会,返回步骤103。
所述步骤105具体包括:令第二委员会节点各自生成第二f+1阶多项式以及第二f+1阶多项式的承诺;所述第二委员会节点为所述更新后的跨链中继共识委员会内的委员会节点;所述第二委员会节点在所述新的委员会节点处的取值为0;根据所述第二f+1阶多项式确定所述第二委员会节点对应的第二密钥份额;将所述第二f+1阶多项式、所有所述第二密钥份额之和以及所述第二f+1阶多项式的承诺在所述更新后的跨链中继共识委员会内进行交互,验证所述更新后的跨链中继共识委员会是否满足更新密钥条件;其中,所述新的委员会节点只发送剩余所述第二委员会节点的第二f+1阶多项式在所述新的委员会节点对应的取值;若满足,根据所述第二f+1阶多项式以及所述第二f+1阶多项式的承诺更新所述新的委员会节点的密钥;若不满足,删除所述新的委员会节点。
当pn+1加入委员会后,此时委员会为C2,更新后的跨链中继共识委员会内的委员会成员{p2,…,pn}帮助pn+1获得密钥x对应的密钥碎片。{p2,…,pn}成员每人生成f+1阶多项式ploy′i(z),其中ploy′i(n+1)=0,ploy′i(z)为第二f+1 阶多项式。
首先,{p2,…,pn}成员内部完成交互,pi给pj发送消息其中1<i≤n,1<i≤n,pj验证/>承诺和/>是否成立,其中, ploy′i(j)为pi给pj发送ploy′i(z)多项式在j处的取值,/>为ploy′i(z)多项式的承诺,/>为验证ploy′i(z)多项式是否存在。
其次,验证成立后,{p2,…,pn}成员pi收集收到的ploy′2(i)+…+ploy′n(i),给新加入委员会pn+1发送消息{si+ploy′2(i)+…+ploy′n(i)}。
最后当pn+1收到满足门限f-1个消息后使用拉格朗日重构得到多项式 ploy(x)+ploy′2(x)+…+ploy′n(x),其中,ploy(x)为第一委员会秘密多项式, ploy′2(x)为第二委员会中节点2生成的多项式,ploy′n(x)为第n委员会中节点 2生成的多项式。pn+1对多项式赋值x=n+1,由于ploy′2(x)+…+ploy′n(x) 在n+1处取值为0,那么pn+1得到共享密钥x对应的密钥份额sn+1= ploy(n+1)+ploy′2(n+1)+…+ploy′n(n+1),其中,ploy(n+1)为第一委员会秘密多项式在n+1处的取值,ploy′2(n+1)为第二委员会中节点2生成的多项式在n+1处的取值,ploy′n(n+1)为第二委员会中节点2生成的多项式在 n+1处的取值。
委员会成员{p2,…,pn}帮助新加入委员会pn+1获得密钥x对应的秘密碎片,新加入节点可以参与到新的跨链事务确认中,保障了跨链交易的认证过程。
步骤105用于区块链间的数据流转、价值转移公证人委员会中旧节点帮助新增节点拥有交易确认的能力(参与步骤102)的过程,这样保证了新增节点加入交易的确认,真正的实现了动态的公证人委员会。
与本发明所提供的基于动态委员会的跨链共识方法对应的系统如下,图3 为本发明所提供的基于动态委员会的跨链共识系统结构图,如图3所示,一种基于动态委员会的跨链共识系统,包括:
委员会选举模块301,用于构建跨链中继共识委员会,并对第一委员会节点进行标号;所述第一委员会节点为所述跨链中继共识委员会内的委员会节点;所述第一委员会节点的哈希值小于目标值;
委员会分布式密钥生成模块302,用于令所有第一委员会节点各自本地生成第一f+1阶多项式,并根据所有第一f+1阶多项式生成每个所述第一委员会节点对应的密钥份额以及所述跨链中继共识委员会的公钥;f为恶意节点数量的最大值;
委员会筛选模块302用于区块链间的数据流转、价值转移公证人委员会的成员确认工具的生成,根据生成的消息,委员会成员既可以拥有私有信息表示对交易的确认,也可以根据公开信息验证委员会其余成员是否确认。
委员会交易认证模块303,用于当各个原链发起跨链交易时,利用所述公钥以及所述密钥份额认证所述跨链交易。
实际作用:该模块用于区块链间的数据流转、价值转移公证人委员会的成员达到预先设定好的满足条件后,委员会成员根据确认信息会对区块链间的交易达成一致,是否确认。满足条件可以事先设定,常需要达到多数人同意的情况。
委员会动态更新模块304,用于当完成认证后,令标号最小的第一委员会节点退出所述跨链中继共识委员会,并加入新的委员会节点,生成更新后的跨链中继共识委员会。
该委员会动态更新模块304用于区块链间的数据流转、价值转移公证人委员会的新增成员选举工作,调用委员会选举模块301的过程,确定新加入委员会的成员。同时删除部分旧委员会的成员。
委员会密钥更新模块305,用于利用更新后的跨链中继共识委员会内的委员会节点确定所述新的委员会节点的密钥份额,并将所述更新后的跨链中继共识委员会作为所述跨链中继共识委员会,返回步骤“当各个原链发起跨链交易时,利用所有所述密钥以及所述密钥份额认证所述跨链交易”。
所述委员会密钥更新模块305,具体包括:第二f+1阶多项式及承诺生成单元,用于令第二委员会节点各自生成第二f+1阶多项式以及第二f+1 阶多项式的承诺;所述第二委员会节点为所述更新后的跨链中继共识委员会内的委员会节点;所述第二委员会节点在所述新的委员会节点处的取值为0;第二密钥份额确定单元,用于密钥份额根据所述第二f+1阶多项式确定所述第二委员会节点对应的第二密钥份额;交互验证单元,用于将所述第二f+1阶多项式、所有所述第二密钥份额之和以及所述第二f+1阶多项式的承诺在所述更新后的跨链中继共识委员会内进行交互,验证所述更新后的跨链中继共识委员会是否满足更新密钥条件;其中,所述新的委员会节点只发送剩余所述第二委员会节点的第二f+1阶多项式在所述新的委员会节点对应的取值;更新单元,用于若满足,根据所述第二f+1阶多项式以及所述第二f+1阶多项式的承诺更新所述新的委员会节点的密钥;删除单元,用于若不满足,删除所述新的委员会节点。
完成委员会密钥更新模块后新节点可以参与到跨链验证中去,对新的跨链交易进行确认,循环完成跨链交易确认模块和委员会动态更新模块,以处理正常的跨链交易。
该委员会密钥更新模块305用于区块链间的数据流转、价值转移公证人委员会中旧节点帮助新增节点拥有交易确认的能力(参与模块302)的过程。这样保证了新增节点加入交易的确认,真正的实现了动态的公证人委员会。
本发明在充分调研现有区块链跨链技术的基础上,设计发明基于动态委员会的跨链共识方法及系统,保证跨链交易中继认证功能的正常运转的基础上,研究支持中继委会成员动态变化。随着中继链出块后更新委员会成员,防止委员会成员固定带来的验证成员腐化风险和中心化风险,在一定程度上提升了当前区块链跨链共识的安全性,为多条区块链间的状态共识难题提供新的解决思路。
在实际应用方面,现有各单独的区块链承载了很多有价值数据,但是由于共识机制各异、数据结构各异导致区块链间数据流转、价值转移难度很大。在上述机制中,本发明采用了公证人机制对区块链间的数据流转、价值转移进行确认,公证人常以一个群体委员会的形式存在。但是过去的公证人机制往往公证人成员固定,容易产生公证人权利过大,将非法交易确认。因此本发明设计了一种公证人动态更新的机制,结合密码学方法实现委员会成员的动态更新并且不影响正常的交易确认。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (8)
1.一种基于动态委员会的跨链共识方法,其特征在于,包括:
构建跨链中继共识委员会,并对第一委员会节点进行标号;所述第一委员会节点为所述跨链中继共识委员会内的委员会节点;所述第一委员会节点的哈希值小于目标值;
令所有第一委员会节点各自本地生成第一f+1阶多项式,并根据所有第一f+1阶多项式生成每个所述第一委员会节点对应的密钥份额以及所述跨链中继共识委员会的公钥;f为恶意节点数量的最大值;
当各个原链发起跨链交易时,利用所述公钥以及所述密钥份额认证所述跨链交易;
当完成认证后,令标号最小的第一委员会节点退出所述跨链中继共识委员会,并加入新的委员会节点,生成更新后的跨链中继共识委员会;
利用更新后的跨链中继共识委员会内的委员会节点确定所述新的委员会节点的密钥份额,并将所述更新后的跨链中继共识委员会作为所述跨链中继共识委员会,返回步骤“当各个原链发起跨链交易时,利用所有所述密钥以及所述密钥份额认证所述跨链交易”。
2.根据权利要求1所述的基于动态委员会的跨链共识方法,其特征在于,所述令所有第一委员会节点各自本地生成第一f+1阶多项式,并根据所有第一f+1阶多项式生成每个所述第一委员会节点对应的密钥份额以及所述跨链中继共识委员会的公钥,具体包括:
确定任一所述第一f+1阶多项式在0处的取值,并根据所述第一f+1阶多项式在0处的取值确定任一所述第一委员会节点的公钥;
生成所述第一f+1阶多项式的承诺,并确定一个所述第一委员会节点的所述第一f+1阶多项式在任一剩余的第一委员会节点处的第一密钥份额;
将所述公钥、所述第一f+1阶多项式的承诺以及所述第一密钥份额发送至任一剩余的所述第一委员会节点进行认证;
若认证通过,将所有第一密钥份额相加生成一个所述第一委员会节点对应的密钥份额;
根据所有所述密钥份额各自生成每个所述第一委员会节点对应的公钥份额;
将所有所述公钥份额之积作为所述跨链中继共识委员会的公钥;
若认证未通过,移除未通过的第一委员会节点,并将哈希值小于目标值的新的委员会节点添加至所述跨链中继共识委员会。
3.根据权利要求1所述的基于动态委员会的跨链共识方法,其特征在于,所述当各个原链发起跨链交易时,利用所述公钥以及所述密钥份额认证所述跨链交易,具体包括:
当各个原链发起跨链交易时,令一个所述第一委员会节点根据所述第一委员会节点对应的所述密钥份额,利用BLS签名对所述跨链交易进行签名并向剩余的所述第一委员会节点进行广播;
当一个所述第一委员会节点接收到剩余的所述第一委员会节点超过设定数量的签名碎片时,利用拉格朗日算法将接收到的所有所述签名碎片聚合成一个签名,并利用所述公钥验证所述签名;
若所述签名正确,确认对所述跨链交易认证成功,并将所述跨链交易保存至中继区块链中;
若所述签名不准确,确认对所述跨链交易认证失败。
4.根据权利要求1所述的基于动态委员会的跨链共识方法,其特征在于,所述利用更新后的跨链中继共识委员会内的委员会节点确定所述新的委员会节点的密钥份额,具体包括:
令第二委员会节点各自生成第二f+1阶多项式以及第二f+1阶多项式的承诺;所述第二委员会节点为所述更新后的跨链中继共识委员会内的委员会节点;所述第二委员会节点在所述新的委员会节点处的取值为0;
根据所述第二f+1阶多项式确定所述第二委员会节点对应的第二密钥份额;
将所述第二f+1阶多项式、所有所述第二密钥份额之和以及所述第二f+1阶多项式的承诺在所述更新后的跨链中继共识委员会内进行交互,验证所述更新后的跨链中继共识委员会是否满足更新密钥条件;其中,所述新的委员会节点只发送剩余所述第二委员会节点的第二f+1阶多项式在所述新的委员会节点对应的取值;
若满足,根据所述第二f+1阶多项式以及所述第二f+1阶多项式的承诺更新所述新的委员会节点的密钥;
若不满足,删除所述新的委员会节点。
5.一种基于动态委员会的跨链共识系统,其特征在于,包括:
委员会选举模块,用于构建跨链中继共识委员会,并对第一委员会节点进行标号;所述第一委员会节点为所述跨链中继共识委员会内的委员会节点;所述第一委员会节点的哈希值小于目标值;
委员会分布式密钥生成模块,用于令所有第一委员会节点各自本地生成第一f+1阶多项式,并根据所有第一f+1阶多项式生成每个所述第一委员会节点对应的密钥份额以及所述跨链中继共识委员会的公钥;f为恶意节点数量的最大值;
委员会交易认证模块,用于当各个原链发起跨链交易时,利用所述公钥以及所述密钥份额认证所述跨链交易;
委员会动态更新模块,用于当完成认证后,令标号最小的第一委员会节点退出所述跨链中继共识委员会,并加入新的委员会节点,生成更新后的跨链中继共识委员会;
委员会密钥更新模块,用于利用更新后的跨链中继共识委员会内的委员会节点确定所述新的委员会节点的密钥份额,并将所述更新后的跨链中继共识委员会作为所述跨链中继共识委员会,返回步骤“当各个原链发起跨链交易时,利用所有所述密钥以及所述密钥份额认证所述跨链交易”。
6.根据权利要求5所述的基于动态委员会的跨链共识系统,其特征在于,所述委员会分布式密钥生成模块,具体包括:
第一委员会节点的公钥确定单元,用于确定任一所述第一f+1阶多项式在0处的取值,并根据所述第一f+1阶多项式在0处的取值确定任一所述第一委员会节点的公钥;
第一密钥份额生成单元,用于生成所述第一f+1阶多项式的承诺,并确定一个所述第一委员会节点的所述第一f+1阶多项式在任一剩余的第一委员会节点处的第一密钥份额;
认证单元,用于将所述公钥、所述第一f+1阶多项式的承诺以及所述第一密钥份额发送至任一剩余的所述第一委员会节点进行认证;
密钥份额生成单元,用于若认证通过,将所有第一密钥份额相加生成一个所述第一委员会节点对应的密钥份额;
公钥份额生成单元,用于根据所有所述密钥份额各自生成每个所述第一委员会节点对应的公钥份额;
跨链中继共识委员会的公钥生成单元,用于将所有所述公钥份额之积作为所述跨链中继共识委员会的公钥;
委员会节点添加单元,用于若认证未通过,移除未通过的第一委员会节点,并将哈希值小于目标值的新的委员会节点添加至所述跨链中继共识委员会。
7.根据权利要求5所述的基于动态委员会的跨链共识系统,其特征在于,所述委员会交易认证模块,具体包括:
广播单元,用于当各个原链发起跨链交易时,令一个所述第一委员会节点根据所述第一委员会节点对应的所述密钥份额,利用BLS签名对所述跨链交易进行签名并向剩余的所述第一委员会节点进行广播;
签名验证单元,用于当一个所述第一委员会节点接收到剩余的所述第一委员会节点超过设定数量的签名碎片时,利用拉格朗日算法将接收到的所有所述签名碎片聚合成一个签名,并利用所述公钥验证所述签名;
交易认证成功单元,用于若所述签名正确,确认对所述跨链交易认证成功,并将所述跨链交易保存至中继区块链中;
交易认证失败单元,用于若所述签名不准确,确认对所述跨链交易认证失败。
8.根据权利要求5所述的基于动态委员会的跨链共识系统,其特征在于,所述委员会密钥更新模块,具体包括:
第二f+1阶多项式及承诺生成单元,用于令第二委员会节点各自生成第二f+1阶多项式以及第二f+1阶多项式的承诺;所述第二委员会节点为所述更新后的跨链中继共识委员会内的委员会节点;所述第二委员会节点在所述新的委员会节点处的取值为0;
第二密钥份额确定单元,用于密钥份额根据所述第二f+1阶多项式确定所述第二委员会节点对应的第二密钥份额;
交互验证单元,用于将所述第二f+1阶多项式、所有所述第二密钥份额之和以及所述第二f+1阶多项式的承诺在所述更新后的跨链中继共识委员会内进行交互,验证所述更新后的跨链中继共识委员会是否满足更新密钥条件;其中,所述新的委员会节点只发送剩余所述第二委员会节点的第二f+1阶多项式在所述新的委员会节点对应的取值;
更新单元,用于若满足,根据所述第二f+1阶多项式以及所述第二f+1阶多项式的承诺更新所述新的委员会节点的密钥;
删除单元,用于若不满足,删除所述新的委员会节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210747113.2A CN115174570B (zh) | 2022-06-28 | 2022-06-28 | 一种基于动态委员会的跨链共识方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210747113.2A CN115174570B (zh) | 2022-06-28 | 2022-06-28 | 一种基于动态委员会的跨链共识方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115174570A CN115174570A (zh) | 2022-10-11 |
CN115174570B true CN115174570B (zh) | 2023-06-27 |
Family
ID=83490057
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210747113.2A Active CN115174570B (zh) | 2022-06-28 | 2022-06-28 | 一种基于动态委员会的跨链共识方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115174570B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115860744B (zh) * | 2023-02-20 | 2023-05-09 | 中国信息通信研究院 | 跨区块链交易的处理方法和装置、区块链系统和设备 |
CN116527684B (zh) * | 2023-07-03 | 2023-09-05 | 江西农业大学 | 基于1+1+n中继共识委员会的多链信息交互方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107862216A (zh) * | 2017-10-13 | 2018-03-30 | 布比(北京)网络技术有限公司 | 用于匿名跨链交易的隐私保护方法、装置和存储介质 |
CN109360100A (zh) * | 2018-11-13 | 2019-02-19 | 北京航空航天大学 | 基于区块链技术的交易快速确认方法及装置 |
WO2021092434A1 (en) * | 2019-11-08 | 2021-05-14 | Algorand Inc. | Performing transactions using private and public blockchains |
CN114329621A (zh) * | 2021-12-15 | 2022-04-12 | 南京航空航天大学 | 一种区块链跨链交互数据完整性验证方法 |
WO2022121851A1 (zh) * | 2020-12-09 | 2022-06-16 | 中兴通讯股份有限公司 | 区块链数据请求处理方法、装置、服务器及存储介质 |
-
2022
- 2022-06-28 CN CN202210747113.2A patent/CN115174570B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107862216A (zh) * | 2017-10-13 | 2018-03-30 | 布比(北京)网络技术有限公司 | 用于匿名跨链交易的隐私保护方法、装置和存储介质 |
CN109360100A (zh) * | 2018-11-13 | 2019-02-19 | 北京航空航天大学 | 基于区块链技术的交易快速确认方法及装置 |
WO2021092434A1 (en) * | 2019-11-08 | 2021-05-14 | Algorand Inc. | Performing transactions using private and public blockchains |
WO2022121851A1 (zh) * | 2020-12-09 | 2022-06-16 | 中兴通讯股份有限公司 | 区块链数据请求处理方法、装置、服务器及存储介质 |
CN114329621A (zh) * | 2021-12-15 | 2022-04-12 | 南京航空航天大学 | 一种区块链跨链交互数据完整性验证方法 |
Also Published As
Publication number | Publication date |
---|---|
CN115174570A (zh) | 2022-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107395403B (zh) | 一种适用于大规模电子商务的基于信用的区块链共识方法 | |
CN115174570B (zh) | 一种基于动态委员会的跨链共识方法及系统 | |
CN112003889B (zh) | 分布式跨链系统及跨链信息交互与系统访问控制方法 | |
CN109447795B (zh) | 一种支持快速达成最终确认性的拜占庭共识方法 | |
CN110380847B (zh) | 一种区块链共识方法和装置 | |
CN112583917B (zh) | 一种基于cscp的混合链构建方法 | |
CN113271204B (zh) | 一种基于量子密钥分发的拜占庭容错共识方法 | |
CN113746858B (zh) | 一种基于可验证随机函数的跨链通信方法 | |
CN114499898B (zh) | 一种区块链跨链安全接入方法及装置 | |
CN108737105B (zh) | 私钥的找回方法、装置、私钥设备和介质 | |
Wan et al. | Electronic contract signing without using trusted third party | |
CN115051985B (zh) | 一种基于动态节点的拜占庭容错共识协议的数据共识方法 | |
Backes et al. | Asynchronous MPC with a strict honest majority using non-equivocation | |
WO2023024487A1 (zh) | 一种基于区块链的互联车辆认证系统和方法 | |
CN111582843A (zh) | 一种基于聚合签名的区块链隐私交易方法 | |
CN113783700B (zh) | 一种分片区块链下安全可监管的权益证明方法及系统 | |
CN111539718A (zh) | 一种基于侧链的区块链跨链身份认证方法 | |
CN113612604A (zh) | 面向异步网络的安全分布式随机数生成方法及装置 | |
CN112583598A (zh) | 一种复杂物联网联盟链系统通信机制 | |
CN112396421A (zh) | 一种基于区块链通证的身份认证系统及方法 | |
CN114463009B (zh) | 一种用于提高大规模能源节点交易安全性的方法 | |
CN113627906A (zh) | 哈希锁定和侧链技术的跨链交易方法、系统、可存储介质 | |
CN116961892A (zh) | 基于区块链的密钥生成方法、装置、电子设备和可读介质 | |
CN114172661B (zh) | 一种数字资产的双向跨链方法、系统及装置 | |
CN114640500B (zh) | 一种基于服务的联盟链高效共识方法 |
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 |