本发明涉及区块链,具体涉及一种基于变色龙哈希的区块链资产循环跨链交换方法。
背景技术:
1、区块链是一种去中心化的分布式账本,数据以区块的形式存储并且以时间顺序通过哈希值链接。近年来,随着区块链技术的不断发展与成熟,越来越多的行业和领域开始将其纳入业务应用中。
2、随着应用场景的不断丰富,各种类型的区块链体系结构也在不断涌现。但是由于区块链结构的独立性,不同区块链之间如何实现安全互联互通成为了亟待解决的问题。
3、在此背景下,跨链技术应运而生,跨链技术旨在连接和协调不同区块链,实现数据传递和资产互操作性。特别地,涉及两个以上用户的交换被称为多方跨链,或者循环跨链。目前常见的跨链技术包括公证人机制、侧链/中继链、哈希锁定、分布式私钥控制、公证人+侧链混合机制等。其中哈希锁定无需依赖中心化的公证人,并且相较于侧链或中继链构建更为简单快速,成本更低,因此更适用于用户之间进行跨链资产交易。目前的哈希锁定技术虽然能够实现跨链交换,但仅限于两条链之间的资产交换。此外,在交换过程中存在着交易路径被分析的潜在风险,特别是在敏感场景下可能导致隐私泄露问题,从而给用户带来财产损失的风险。
技术实现思路
1、有鉴于此,本发明提供一种基于变色龙哈希的区块链资产循环跨链交换方法,以解决上述问题。
2、本发明提供的一种基于变色龙哈希的区块链资产循环跨链交换方法,包括如下三个阶段:
3、pre-swap phase阶段:用户将需求对应信息发送给交易匹配平台,交易匹配平台通过运行自动撮合交易算法匹配资产转移路径;commit phase阶段:从起始用户开始,所有用户中每个转移操作的发送者根据有向交换图的顺序将自身现有资产连续锁定;decommitphase阶段:基于变色龙哈希函数功能,用户在规定时间内依次逆序生成碰撞值并完成解锁操作,获得被锁定的资产。
4、pre-swap phase阶段包括:交易匹配平台检查用户资产的合法性,并为所有用户都找到匹配的交换对象;构建所有用户的有向交换图,并确定交易用户序列及对应的资产转移序列,选择一个用户作为起始用户;起始用户与其他用户完成密钥协商以建立私人信道网络连接;起始用户选取随机值,并为每个用户生成承诺值。
5、commit phase阶段包括:在交换的每个转移操作中,发送方将锁定交易广播到所在的区块链网络中;每个用户确认上一个用户的现有资产被锁定后,进行自身交易的创建和广播;当最后一个用户的锁定交易被广播到其所在的区块链中并被起始用户确认后,commit phase阶段结束。
6、decommit phase阶段包括:起始用户判断剩余时间是否足够解锁,如果剩余时间足够解锁,则生成针对承诺值的碰撞并填入由最后一个用户发起的锁定脚本;起始用户通过私人信道将pre-swap phase阶段生成的对应随机值发送给每个其他用户,使其能够解锁现有资产;当每个用户在获得需要的现有资产后,通过私人信道向起始用户发送资产到账信号,当起始用户收到信号后,才会继续向下一个用户发送对应随机值对进行资产解锁;直到起始用户将随机数通过私人信道发送给其用户序列上的后继者,使得后继者从起始用户的承诺合约中拿到资产时,pre-swap phase阶段结束。
7、在一种实现方式中,通过以下步骤为每个用户生成承诺值:用户u1选取一个随机值r1∈z*q,使用x和r1计算对应的变色龙哈希值μ1=h1(x,r1);对每个用户ui,u1选取一个随机值ri∈z*q,使用前一个用户的承诺值μ(i+1)modn和ri生成变色龙哈希值μi=hi(μ(i+1)modn,ri);对用户u2,u1选取一个随机值r0,计算μ0=hash(r0);用户u1按照用户资产交换的顺序生成并本地存储承诺值列表l、随机数列表r。
8、在交换的每个转移操作中,发送方将锁定交易广播到所在的区块链网络中通过以下步骤完成:将除起始用户外的每个用户作为发送方从起始用户处获取对应锁定值,使用锁定交易在其和接收方之间创建一个由智能合约实现的htlc承诺,htlc承诺在限定时间之前将现有资产暂时锁定,并使用承诺值设置解锁条件,解锁条件如下:如果接收者uj在t(i)之前可以提供值(pj,ri)使hi(hj(pj),ri)==μi,资产ai将被转移到uj;如果接收者uj未能在t(i)之前提供正确的值,则ui将撤回资产ai。
9、当发送方为u1,接收方为u2时,txu1locking创建的htlc承诺与其他用户不同,其解锁条件为:如果接收者u2在t(1)之前可以提供值r0使hash(r0)==μ0,资产a1将被转移到u2;如果接收者u2未能在t(1)之前提供正确的r0值,则u1将撤回资产a1。
10、资产解锁步骤包括:起始用户判断剩余时间是否足够解锁,如果剩余时间足够解锁,则生成针对承诺值的碰撞并填写txunlocking,对i=2,3,...,n-1和j=i+1mod n,u1通过私人信道将随机值ri发送给其他用户uj,使其能够解锁现有资产ai。
11、本发明提供了一种基于变色龙哈希的区块链资产循环跨链交换方法,实现了多条链之间的资产交换,通过变色龙哈希协议盲化了路径中用户之间的关联性和有关用户身份的信息,确保了跨链交换的原子性和隐私性。从理论和应用的角度来看,本发明解决了由于支付路径被分析而导致的隐私泄露问题,具有明显的优势。
1.一种基于变色龙哈希的区块链资产循环跨链交换方法,其特征在于:
2.根据权利要求1所述的基于变色龙哈希的区块链资产循环跨链交换方法,其特征在于,所述pre-swap phase阶段包括:
3.根据权利要求1所述的基于变色龙哈希的区块链资产循环跨链交换方法,其特征在于,所述commit phase阶段包括:
4.根据权利要求1所述的基于变色龙哈希的区块链资产循环跨链交换方法,其特征在于,所述decommit phase阶段包括:
5.根据权利要求2所述的方法,其特征在于,通过以下步骤为每个用户生成承诺值:
6.根据权利要求3所述的方法,其特征在于,所述在交换的每个转移操作中,发送方将锁定交易广播到所在的区块链网络中通过以下步骤完成:
7.根据权利要求6所述的方法,其特征在于,当发送方为u1,接收方为u2时,txu1locking创建的htlc承诺与其他用户不同,其解锁条件为:
8.根据权利要求4所述的方法,其特征在于,所述资产解锁步骤包括: