一种基于孪生链的区块链数据跨链交互方法与流程

文档序号:33634872发布日期:2023-03-29 00:13阅读:109来源:国知局
一种基于孪生链的区块链数据跨链交互方法与流程

1.本发明涉及一种基于多孪生链的异构区块链跨链数据交互方法,可助力基于多异构链的群体学习。


背景技术:

2.作为一种代表性的去中心化隐私保护机器学习范式,sl引起了巨大的关注,它已经被用于车联网、去中心化医疗等多个场景。sl将机器学习与许可区块链结合起来,安全地分享参数,减轻了集中式学习方式存在的模型合并和数据合并中的隐私问题。模型在sl节点的私有本地数据上独立训练。基于许可区块链,授权参与者能够以去中心化的方式分享和更新本地模型。
3.然而,现有的sl应用依赖于一个许可区块链,这限制了参与者的可操作范围。本发明考虑了一个由多组织维护的多个区块链的sl框架。在这种假设下,全局和局部模型的更新需要通过区块链的互操作来完成。模型更新的工作流程可以概括为两个主要步骤。首先,在每个组织内部,本地模型由sl节点进行训练和更新,并通过许可区块链分别进行合并。其次,组织之间通过多个基于区块链的群体网络进行互动,以更新其本地合并的模型并维护全局模型的状态信息。
4.sl中的模型共享可以被表述为各组织者维护的区块链之间的数据传输。因此关键问题是设计异构区块链间的数据互操作方法,并保证数据传输的安全性。每个组织可能以不同的数据结构、共识协议等来部署和应用区块链,这使得区块链之间的互动具有挑战性。为了使异构区块链能够以去中心化的方式相互操作,本发明提出了孪生链,一种新颖的跨链交互平台,其基本思想是将异构区块链通信转换成同构链交互,且不引入第三方。本发明引入了一个去中心化的多链方案作为孪生链的关键组成部分,并提出了孪生链区块格式规则、构建机制、交易生成方法和分层混合共识。在混合共识中,系统给予积极、合法、有贡献的角色相应的奖励。具体的,将参与角色的行为建模为stackelberg博弈。通过理论分析,得到了带有均衡约束的纳什均衡。在此基础上,我们知道角色之间的最优策略可以实现。


技术实现要素:

5.本发明的目的是设计异构区块链的数据跨链交互方法,以拓展现有的sl框架。提出基于孪生链的区块链数据跨链交互架构。孪生链是由多个轻量级同构区块链组成的多链架构,独立于源链而存在。共包含三个角色,分别为连接者、验证者和投资者。连接者负责源链和孪生链之间的连接和映射。群体学习中的每个组织将被分配多个连接者,连接者有权限访问、阅读和修改组织管理的区块链。验证者负责生成包含目标参数数据的区块,并验证交易和区块的合法性,根据共识协议实现目标区块的上传。它从目标孪生链获取参数,实现包含目标数据的交易的生成,并将其放入接受参数的孪生链的共享交易池。验证者能够验证孪生链内的交易和跨孪生链的交易。投资者负责投资和背书验证者生成的交易。在包含目标参数的交易生成并写入区块后,投资者可以选择是否对该区块投资一定数量的资金。
当区块最终被确认时,投资者将被系统支付与投资金额相应的奖励。相反,如果该区块没有发布,投资者将损失之前投入的资金。
6.提出基于孪生链的跨链sl参数共享方法,包括映射阶段、目标交易生成生成阶段、目标交易共识阶段和反映射阶段。映射阶段是参数共享的开始,连接者实现每个源链和相应的孪生链之间的映射。映射后,所有孪生链都使用相同的块结构和链内共识协议。源链之间的参数共享被转换为孪生链之间的数据传输。在目标交易生成阶段,验证者在需要互操作的孪生链之间实现包含目标参数的交易的生成,并将其放入接收数据的孪生链的共享交易池中。投资者选择是否为目标交易所在的区块投入资金以及投入的具体金额。在目标交易共识阶段,验证者根据共识协议实现交易验证,并将其发布到请求参数的孪生链中。当交易被成功发布并被后续区块确认后,投资者将从系统中获得与他投资金额相对应的奖励。在反映射阶段,连接者实现孪生链与源链的反映射。在这个阶段,包含在目标交易中的目标参数被存储在接受方的区块链中。
7.映射阶段包含两个方向,涉及源链和孪生链相互映射。sl参数通过不同的机制存储在这两个链上。在源链中,参数以增量形式存储,每轮训练后,参数的变化会在链上记录。在孪生链中,完整的参数值被存储。两条链之间的相互映射是目标数据跨链交互的第一步和最后一步。
8.在从源链向孪生链的映射中,转换条件被触发时,连接者进行块映射操作。映射过程分为三个步骤。第一步,连接者根据源链中记录的增量参数,计算当前模型的全局参数block
t
。第二步,连接者选取源链中区块的特定字段,包括当前区块的哈希值、默克尔树根,在孪生链中结合完整参数block
t
构建合法区块。第三步,依据孪生链的共识机制实现block
t
的上传。连接者可以选择是否结合外部分布式数据库。在孪生链向源链的映射中,转换条件被触发时,连接者负责孪生链和源链之间的转换。映射过程也包括三个步骤。第一步,连接者根据block
t
中记录的参数字段,获得目标模型的完整参数θ

。第二步,连接者基于θ

在源链中构建合法的块blocks,其中blocks存储完整的参数并设置块标签。当再次映射到孪生链时,连接者将使用区块标签所在的区块作为初始区块,并通过组合参数的增量计算新一轮互动的完整参数。第三步,源链中的共识机制实现了blocks的上传。
9.在目标交易的生成过程中,孪生链间通信的有效性问题尤其需要被关注。作为一种分布式智能计算方法,sl在计算过程中,除了基本的模型训练时间,等待来自于其他机构的模型所带来的时延也不可忽略。时延包含机构内部区块链共识以及机构间跨区块链通信的共识带来的时间消耗。因而在孪生的通信协议设计中,结合源链的安全机制和孪生链的安全假设,以较少的交互次数实现交互功能。本发明提出了孪生链间通信协议(itcp)。两个孪生链中完整通信包含八个操作。为了表述清楚,本发明称参数请求的发送方为a

,响应方为孪生链b


10.操作1:发送请求,从目标孪生链中获取参数。a

试图获取b

中记录的模型参数,因此a

向b

发送请求ψ1。
11.ψ1=《l
sender
,l
receiver
, nonce,h
nonce
》,
12.其中l
sender
是请求模型的孪生链的id,l
receiver
是持有目标模型的孪生链的id。此时,l
sender
=a

,l
receiver
=b

。nonce是当前操作的随机数,h
nonce
是nonce的哈希值。
13.操作2:验证触发条件。b

收到请求ψ1后,孪生链间共享的验证者验证是否满足开
始通信的触发条件。包括以下三个步骤。(1)使用h
nonce
验证nonce。(2)验证与i
sender
的前一轮通信是否完成。(3)验证i
recevier
中记录的模型参数在上一轮通信完成后是否被更新。然后验证者将触发条件的验证结果发送给b


14.操作3:向发送方回应是否开始新的通信。在收到验证者的验证结果后,b

向a

发送ψ3回应是否根据该结果开始新一轮的通信。
[0015][0016]
其中i
chain
是ψ3的发送者,psi3=b

。φs代表验证结果,φs=ack表示验证通过,后续操作可以继续。phis=noack意味着后续操作被拒绝。nonce1=nonce+1,是nonce1的哈希值。
[0017]
操作4:传递发送方的密钥信息。当psi3中的φs=ack时,a

向b

发送构建交易所需的密钥信息ψ4。
[0018][0019]
其中l
chain
是发送ψ4的链的唯一id,在这种情况下i
chain
=a

。σr是当前请求的回合,在每一轮通信中递增。η
wt
是最大等待时间,用于限制a

发送请求后的延迟。nonce2=nonce1+1,是nonce2的哈希值。
[0020]
操作5:生成跨链交易tx。在b

收到来自a

的ψ4后,验证者将使用智能合约生成跨链交易tx。在tx生成后,它将被放置在所有孪生链共享的交易池中。
[0021]
操作6:发送跨链交易tx的验证信息。当b

观察到跨链交易tx被创建后,它向a

发送ψ6。
[0022][0023]
其中i
chain
代表ψ6的发送者,在这种情况下ψ6=a

。σr指的是当前请求的轮次,与ψ4相同,是tx的默克尔树根,用于验证交易。nonce3=nonce2+1,是nonce3的哈希值。
[0024]
操作7:验证数据交互的正确性。在tx成功发布到a

后执行。当a

和共享的验证者观察到tx被a

中的后续区块成功确认后,将验证tx。这包括两个步骤。(1)根据ψ6中的验证交易的合法性。(2)当区块被确认时,确定是否满足ψ4中的最大等待时间η
wt

[0025]
操作8:发送当前通信的确认。在a

完成验证后,它向b

发送ψ8。
[0026][0027]
其中sigmar与ψ4中σr的含义和取值相同。nonce4=nnonce3+1,是nonce4的哈希值。在收到ψ4后,b

更新与a

通信的现有轮次为σr。
[0028]
带有目标数据的区块通过共识机制实现在孪生链中的上链操作。本发明提出了一种分层的共识协议框架,实现参数共享中的一致性要求。其中,一致性要求包括多个孪生链间的全局一致性以及单个孪生链内的局部一致性。
[0029]
每一轮共识包含四步,分别为1)孪生链间共享的验证者竞争委员会和投资者这两种角色。其中,角色不能在相邻共识轮中重复担任。2)对委员会进行动态划分,将其划分为领导者和成员。其中对于同一个节点,只能在一轮中担任一个角色。动态划分能够防止出现
部分代表节点权力中心化的情况。3)实现分层共识。4)所有验证者的状态更新。包括所有验证者的身份清零、报酬结算等。第四步完成后,进入下一轮共识的第一步,重新实现角色的分配。
[0030]
验证者需要实现两个功能。第一是维护孪生链的运行,包括区块验证、区块传播、区块上链等。第二是保证在所有的孪生链中,无双花问题。在一轮共识中,当验证者完成了角色的竞争,将进行委员会的动态划分和分层共识。
[0031]
在动态划分中,对于n个参与方,每个参与方维护一条源链,对应一条孪生链。将在委员会中选取n个领导者。由领导者代表成员,和其他领导者通信以达成共识,完成孪生链间的全局一致性。每个领导者在一轮共识中,完成包括生成区块、广播区块、验证区块和确认区块这四个任务。首先,在区块生成时,将共享的交易池中输出相同的交易一同入块。在所有孪生链共享的交易池中,交易的输入表示数据的提供方,交易的输出表示数据的接收方。输出相同的交易入块保证了孪生链在数据读取中的有效性。在广播区块时,领导者向所有的其他领导者发送区块。接收到区块的领导者验证交易的合法性,并对通过验证的区块给予确认。当领导者接收到来自多于2/3n个领导者的确认消息后,区块在领导者间的共识完成。其中,在区块生成后,验证者中的投资者制定投资策略,选择是否向该区块投资。投资的最终目标是获得更高的报酬。如果在此阶段投资的区块能够最终得到孪生链中节点的确认,那么投资者将获得与投资金额相关的报酬。反之,投资者投入的金额将全部损失。
[0032]
成员内部实现共识完成孪生链内的局部一致性。该层实现由领导者发布的、在前面步骤实现共识的区块。每个成员只维护一条孪生链。在一轮共识中,完成广播区块、验证区块和确认区块。其中在广播区块阶段,由领导者向成员发送区块。成员验证区块的合法性,包括区块内交易的正确性和交易的身份验证。身份验证通过交易的输出判断。成员将验证通过的区块向其他成员广播。当区块得到超过2/3成员数量的确认后,共识完成。区块得到孪生链中节点的确认后,系统对参与区块确认过程的多个角色发放报酬。
[0033]
在层混合共识中,投资者和成员之间的互动是分阶段依次进行的。参与者角色之间相互激励,每个角色都追求自己的利润最大化。满足上述特征的多个参与者角色之间的互动过程可以用stackelberg博弈来模拟。在本发明中,我们考虑多参与人员的stackelberg博弈,多个投资者和成员分别在第一和第二阶段做出策略,在stackelberg博弈的不同阶段充当领导者和追随者。投资者就是否为打包的区块投资做出策略。成员根据投资者提供的信用承诺和投资者收取的信用费用,选择是否验证和传播区块。
[0034]
令分别表示投资者和成员的集合,其中p,k表示投资者和成员的数量。令表示所有p投资者的策略集。策略yi代表ii在投资阶段投入的自有预算的比例,这反映了ii的努力。因此,投资的金额为yi|bi|,其中|bi|是ii拥有的总预算。投资者在第一阶段中投入的资金越多,其提供的安全承诺就越高,对后续第二阶段的成员的吸引力更高。为了描述对成员的吸引力和安全保证,本发明定义了一个信用函数
[0035][0036]
其中s
ki
是验证者mk对投资者ii的信任值,取值区间为(0,1),|bi|是投资者ii拥有
的总资产值,η是参数,yi是投资者ii的投资比例。投资者ii的效用函数为:
[0037][0038]
其中k是验证者的数量。给定所有成员的策略概况投资者ii的目标函数如下:
[0039][0040]
s.t.0<yi<1,
[0041]
其中,代表不包括ii的策略集。
[0042]
中的每个成员mk根据投资者投资的金额,制定传播和验证区块的策略。令根据投资者投资的金额,制定传播和验证区块的策略。令表示成员mk的策略概况,其中s
ki
代表成员对投资者的投资做出的回应,并且满足∑
i∈pski
≤1。本发明用表示不包括的策略集。成功传播和验证的可能性与成员mk的努力和mk获得的信用成正比。因此,mk的获胜可能性为:
[0043][0044]
其中p是投资者的数量。验证者mk的效用函数为:
[0045][0046]
给定投资者的策略集成员mk的优化问题为:
[0047][0048]
s.t.0<s
ki
<1对于
[0049]
本发明采用admm算法来求解所提出的多领导多追随者stackelberg博弈的最优策略,该博弈由两阶段迭代组成。在内循环迭代中,根据第一阶段投资者的投资确定的信用函数,每个成员采用admm算法来获得能使效用最大化的最优策略。在外循环迭代中,投资者作为领导者,根据每个成员的决定制定最优策略。
[0050]
在内层循环迭代中,每个成员mk都知道的投资比例和在迭代q开始时所有投资者的信用函数值。考虑到和每个mk寻求获得能使其效用最大化的最佳策略。每个mk在内循环的每个迭代中更新如下所示:
[0051][0052]
其中是mk的策略。
[0053][0054]
t是当前迭代的第t次循环,ρ是惩罚项的系数,λ是对偶系数。
[0055][0056]
当所有验证者的策略和所有λ的值都满足时,内循环结束。∈s和∈
p
是预定义的参数。
[0057]
在外层循环中,投资者已经知道了成员的选择,并且可以预测每个的策略对于每个投资者通过调用admm算法来调整yi的值使其效用最大化:
[0058][0059]
更新后的将被公布给内循环中的成员,以便进行下一次迭代。当满足以下条件时,外循环结束:
[0060][0061]
其中∈
p
是预先定义的阈值。
附图说明
[0062]
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
[0063]
图1为本发明方法提出的基于孪生链实现跨链参数共享的群体学习框架
[0064]
图2为不同孪生链数量下的数据跨链平均延迟时间和数据跨链传输能力
[0065]
图3为不同η值下成员总效益、投资者总效益、系统的信用价值的值
[0066]
图4为不同挖矿奖励下,成员总效益、投资者总效益、系统的信用价值的值
[0067]
图5为不同策略下成员和投资者的总效益值
具体实施方式
[0068]
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
[0069]
本发明实施了孪生链之间的交互,模拟孪生链中参与者角色的决策过程。网络传播延迟遵循指数分布。本发明关注关键参数对系统指标的影响,包括平均确认延迟和传输速度,这代表了孪生链结构的吞吐量。在孪生链角色的决策过程中,设置投资者的数量|p|=3,成员的数量|k|=12。β1和β2设定为0.5。分析了投资者和成员的效用函数中参数η、gamma和rv对效益的影响。
[0070]
本发明研究了数量不同时,孪生链的平均延迟和传输能力。图2(a)显示,当孪生链数量从5增加到25时,平均延迟增加。这是因为当孪生链数量增加时,目标块需要由更多的
孪生链来确认和验证,这消耗了时间。在保持交易到达率不变的情况下,我们还比较了验证者数量对确认延迟时间的影响。改变验证者的数量从10到20,可以看出更多的验证人将带来更多的延迟消耗。在交易到达率为每秒1000个交易,25个孪生链,每个孪生链有10个验证者时,平均延迟为175.35ms。当每个孪生链有20个验证者时,平均延迟为206.88ms。图2(b)显示了传输能力与孪生链数量、验证者数量以及验证者传输速率的关系。孪生链数量相同时,设置10个验证者,传输速度为每秒4个交易,交易到达率与设置20个验证者,传输速度为每秒2个交易相同。可以看到,在相同的交易到达率下,配备的验证者越多,传输能力越高。验证者可以并行处理目标块从而提高传输能力。
[0071]
本发明评估了在不同信用函数系数η、γ和rv下,所有成员、投资者的总奖励,以及当前系统的总信用值和所有成员的总参与水平。具体的,成员的预算|b|从10到40之间设置了四个比较组,η的范围是2到9。如图3(a)所示,在成员预算|bi|固定的情况下,对于所有成员的总奖励随着η的增加而减少。η代表了为实现承诺所付出的成本。当η提高时,投资者提供的承诺的单位价格也升高。更高的承诺也将花费更多的成本。因此,总回报呈现下降趋势。η对不同预算的成员的影响是不同的。从图3(a)中观察到,当η从2上升到9,在成员的平均预算为10的情况下,成员的总回报下降最多,从170.28下降到102.68,下降39.7%。而对于平均预算为40的情况,总奖励从108.18降至80.28,减少了25.8%。η的上升对低预算成员的影响程度更高。在图3(b)和图3(c)中,我们可以看到,投资者的总奖励随着η的增加而增加,系统的总信用值也增加。更高的η意味着当前系统的信用承诺更高,也意味着投资者单位工作的回报更高,这将吸引投资者更加努力地工作,通过信用函数获得报酬。η的上升对低预算的投资者的影响程度更高。当η从2到9变化时,预算为10的投资者的总回报从44.14增加到154.92,增加了110.78。而预算为40的投资者的总回报从21.54增加到109.84,增加88.3。从图3(c)中,可以观察到,固定η后,系统的总信用价值随着成员的平均预算增加而减少。这是因为,投资者提供的相同信贷对不同预算的成员有不同的影响。对于预算较低的成员,与预算较高的成员相比,相同的信贷对选择区块的确认有更大的影响。
[0072]
图4反映了挖矿奖励对成员效益、投资者效益和成员参与水平的影响。固定η的值为15。在本发明的激励机制中,挖矿奖励由γ和rv决定。为了简化描述,令函数决定。为了简化描述,令函数代表系统为成员支付的固定采矿奖励,其中|k|、β1和β2分别设置为12、0.5、0.5。在成员的平均预算|b|上设置了四个比较实验:{25,65,105,150}。从图4(a)和(b)可以看出,随着固定采矿奖励t从75增加到250,成员和投资者的总奖励也在增加。更高的最终确认奖励将鼓励成员和投资者在孪生链的共识中积极工作。在固定挖矿奖励的情况下,平均预算较低的成员往往会从系统中获得更高的奖励。这是因为对于低预算的成员来说,共识失败的损失成本很低。而选择区块最终确认的回报对它的影响更大。相反,区块最终确认的报酬对预算较高的成员没有吸引力。当采矿奖励t为75时,对于预算为25的成员,所有成员的总奖励为55.01。一个成员的平均奖励是4.58。奖励和初始预算的比率为19.4%。而对于预算为150的成员,奖励和初始预算的比率为1.97%。这一趋势在图4(b)中是相同的。由于较高的采矿奖励会吸引更多的成员和投资者在当前的区块链上,如图4(c)中。此时所有成员在共识中总参与水平也较高。
[0073]
为了验证本发明中的激励机制能够鼓励所有角色按照规定的流程工作,本发明计
算了所有成员和投资者的总奖励,与随机策略和固定策略进行了比较。结果显示在图4。对于成员的固定策略,我们假设所有成员在其选择的空间中选择中位数。让所有成员的平均预算在{25、27.5、30、32.5、35、37.5、40、42.5}中变化,η和t固定为5和100。可以从图5(a)中观察到,激励策略在随机策略和固定策略中的表现是最好的。对于投资者的固定策略,假设所有的投资者在其选择的空间中选择最大的元素。从图5(b)中可以看出,激励策略在随机策略和固定策略中表现最好。在图4中,当成员的平均预算值设定为42.5时,三种策略之间的差异最大。在激励策略下,所有投资者的回报是66.48,而随机策略和固定策略下的回报是65.26和61.97。策略将奖励提高了1.22和4.51。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1