基于多区块链的跨链交易方法、系统、设备及存储介质技术方案

技术编号:18459226 阅读:36 留言:0更新日期:2018-07-18 12:52
本发明专利技术提供了基于多区块链的跨链交易方法、系统、设备及存储介质,该方法包括以下步骤:第一应用客户端向第一区块链提交一跨链交易测试请求,第一区块链的多个节点分别将第一账户的值A1执行了转账事务后配置为测试值A2,第二区块链的多个节点分别将第二账户的值B1执行了转账事务后配置为测试值B2,当跨链交易测试请求背书成功,则第一账户的值A1、测试值A2和第二账户的值B1、测试值B2的锁定;第一区块链的多个节点分别将第一账户的测试值A2复制到值A1;第二区块链的多个节点分别将第二账户的测试值B2复制到值B1;当跨链交易执行请求背书成功,将第一账户的值A1和第二账户的值B1写入区块链并解锁。

Cross chain transaction method, system, equipment and storage medium based on multi block chain

The present invention provides a cross chain transaction method, system, device and storage medium based on a multi block chain. The method includes the following steps: first application client submits a cross chain transaction test request to the first block chain, and multiple nodes of the first block chain configure the value A1 of the first account to be configured to be test values after the transfer transactions are executed. A2, multiple nodes of the second block chain configure the value B1 of the second account to be configured to test value B2 respectively. When the cross chain transaction test request is endorsed successfully, the value A1 of the first account, the value A2 of the test value and the value B1 of the second account, the test value B2 are locked; the first block chain's multiple nodes respectively test the first account test. The value A2 is copied to the value A1; the multiple nodes of the second block chain copy the test value B2 of the second account to the value B1 respectively; when the cross chain transaction execution request is endorsed successfully, the value A1 of the first account and the value B1 of the second account are written to the block chain and unlocked.

【技术实现步骤摘要】
基于多区块链的跨链交易方法、系统、设备及存储介质
本专利技术涉及区块链领域,具体地说,涉及基于多区块链的跨链交易方法、系统、设备及存储介质。
技术介绍
2008年,化名为“中本聪”(SatoshiNakamoto)的学者,发表了《比特币:一种点对点电子现金系统》的论文,奠定了区块链技术的基础。狭义来讲,区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证不可篡改不可伪造的分布式账本。广义上来讲,区块链技术是利用块链式数据结构来验证与存储数据,利用分布式节点共识算法来生成更新数据,利用密码学的方式保证数据传输和方问安全,利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式。目前,区块链跨链交易问题直接交给链外应用,应用从将资产从区块链A转移到区块链B。由于区块链本身的不可篡改性,导致整个过程没有原子性难以保证。即当资产从链A中移出成功后,链B接受资产失败后的会有链A事务回滚问题。另一方面,由于应用本身不可信任,所以需要使得链A与链B在保护隐私功能的前提下保证数据一致性。即资产转移后,链A与链B之间的总资产量不增加也不减少。基于上述困难,本专利技术提供了一种基于多区块链的跨链交易方法、系统、设备及存储介质
技术实现思路
针对现有技术中的问题,本专利技术的目的在于提供基于多区块链的跨链交易方法、系统、设备及存储介质,能够提高基于多区块链的跨链交易的安全性和可靠性。本专利技术提供了一种基于多区块链的跨链交易方法,包括以下步骤:第一阶段:第一应用客户端向第一区块链提交一跨链交易测试请求,所述跨链交易测试请求包括将位于所述第一区块链的第一账户向位于第二区块链的第二账户进行转账;区块链系统根据预设配置将所述第一账户的值A1和第二账户的值B1加锁,所述第一区块链的多个节点分别将所述第一账户的值A1执行了转账事务后配置为测试值A2,所述第二区块链的多个节点分别将所述第二账户的值B1执行了转账事务后配置为测试值B2,当跨链交易请求测试背书成功,则所述第一账户的值A1、测试值A2和第二账户的值B1、测试值B2的锁定;以及第二阶段:所述第一区块链的多个节点分别将所述第一账户的测试值A2复制到值A1;所述第二区块链的多个节点分别将所述第二账户的测试值B2复制到值B1;当跨链交易执行请求背书成功,将所述第一账户的值A1和第二账户的值B1写入区块链并解锁。优选地,所述第一阶段包括以下步骤:S101、第一应用客户端向第一区块链提交一跨链交易测试请求,所述跨链交易请求将位于所述第一区块链的第一账户向位于第二区块链的第二账户进行转账,所述跨链交易请求包括唯一事务标示;S102、所述区块链系统将所述跨链交易请求向所述第一区块链的多个节点提交第一事务的背书请求,并和第二区块链的多个节点提交第二事务的背书请求;S103、将所述第一账户的值A1和第二账户的值B1加锁,所述第一区块链的多个节点分别将所述第一账户的值A1执行了所述第一事务后配置为测试值A2,所述第二区块链的多个节点分别将所述第二账户的值B1执行了所述第二事务后配置为测试值B2;S104、将所述第一事务的背书请求的读写集合和第二事务的背书请求的读写集合附带各节点的签名后发送给第一应用客户端;S105、判断第一应用客户端收到的多个节点的第一事务的背书请求的读写集合中各子集是否都相同,并且第一应用客户端收到的多个节点的第二事务的背书请求的读写集合中各子集是否也相同?若否,则执行步骤S106,若是,则执行步骤S107;S106、跨链交易测试请求背书失败,将所述第一账户的值A1和第二账户的值B1解锁;以及S107、跨链交易测试请求背书成功,将所述第一账户的值A1、测试值A2和第二账户的值B1、测试值B2的锁定,执行第二阶段。优选地,所述第二阶段包括以下步骤:S201、第一应用客户端向第一区块链提交一跨链交易执行请求,所述跨链交易执行请求中包括了所述跨链交易请求中的唯一事务标示;S202、所述区块链系统根据所述跨链交易执行请求向所述第一区块链的多个节点提交第三事务的背书请求,并向第二区块链的多个节点提交第四事务的背书请求;S203、当所述第一区块链的多个节点检测收到第三事务的背书请求是否包括之前跨链交易请求中的唯一事务标示,所述第一区块链的多个节点分别将所述第一账户的测试值A2复制到值A1;当所述第二区块链的多个节点检测收到第十事务的背书请求是否包括之前跨链交易请求中的唯一事务标示,所述第二区块链的多个节点分别将所述第二账户的测试值B2复制到值B1;S204、将所述第三事务的背书请求的读写集合和第四事务的背书请求的读写集合附带各节点的签名后发送给第一应用客户端;S205、判断第一应用客户端收到的多个节点的第三事务的背书请求的读写集合中各子集是否都相同,并且第一应用客户端收到的多个节点的第四事务的背书请求的读写集合中各子集是否也相同?若是,则执行步骤S206,若否,则执行步骤S207;S106、跨链交易执行请求背书成功,将所述第一账户的值A1和第二账户的值B1写入区块链并解锁,删除测试值A2和测试值B2;以及S107、跨链交易执行请求背书失败,将所述第一账户的值A1和第二账户的值B1解锁。优选地,所述第二阶段包括以下步骤:S301、第一应用客户端向第一区块链提交零知识证明请求;S302、所述区块链系统根据所述零知识证明请求向所述第一区块链的多个节点提交第五事务的背书请求,并向第二区块链的多个节点提交第六事务的背书请求;S303、当第一账户的原始值A1和测试值A2满足零知识证明公式,向第二应用证明所述第一区块链中的账户余额变动值(A1-A2)等于所述第二区块链中的账户余额变动值(B2-B1),则第二应用发送请求,通知所述第一区块链的多个节点分别将所述第一账户的测试值A2复制到值A1,所述第二区块链的多个节点分别将所述第二账户的测试值B2复制到值B1;S304、将所述第五事务的背书请求的读写集合发送给第一应用客户端,并将第六事务的背书请求的读写集合签名后发送给第二应用客户端;S305、判断第一应用客户端收到的多个节点的第五事务的背书请求的读写集合中各子集是否都相同,并且第二应用客户端收到的多个节点的第六事务的背书请求的读写集合中各子集是否也相同?若否,则执行步骤S306,若是,则执行步骤S307;S306、零知识证明背书失败,将所述第一账户的值A1和第二账户的值B1解锁;以及S307、零知识证明请求背书成功,将所述第一账户的值A1和第二账户的值B1写入区块链并解锁,删除测试值A2和测试值B2。优选地,所述步骤S303包括当第二应用客户端验证第一区块链中多个节点的第一账户的原始值A1和第一账户的测试值A2满足零知识证明公式,则第二应用客户端请求所述第一区块链的多个节点分别将所述第一账户的测试值A2复制到值A1;所述第二区块链的多个节点分别将所述第二账户的测试值B2复制到值B1。优选地,所述步骤S303中通过第二账户的余额变动值(B2-B1)验证第一账户的原始值A1和第一账户的测试值A2的零知识证明公式为f(B2-B1)=f(A1-A2)=g(f(A1),f(A2)),其中f和g为公开的已知函数。优选地,所述步骤S303中,第一应用对本文档来自技高网...

【技术保护点】
1.一种基于多区块链的跨链交易方法,其特征在于,包括以下步骤:第一阶段:第一应用客户端向第一区块链提交一跨链交易测试请求,所述跨链交易测试请求包括将位于所述第一区块链的第一账户向位于第二区块链的第二账户进行转账;区块链系统根据预设配置将所述第一账户的值A1和第二账户的值B1加锁,所述第一区块链的多个节点分别将所述第一账户的值A1执行了转账事务后配置为测试值A2,所述第二区块链的多个节点分别将所述第二账户的值B1执行了转账事务后配置为测试值B2,当跨链交易请求测试背书成功,则所述第一账户的值A1、测试值A2和第二账户的值B1、测试值B2的锁定;以及第二阶段:所述第一区块链的多个节点分别将所述第一账户的测试值A2复制到值A1;所述第二区块链的多个节点分别将所述第二账户的测试值B2复制到值B1;当跨链交易执行请求背书成功,将所述第一账户的值A1和第二账户的值B1写入区块链并解锁。

【技术特征摘要】
1.一种基于多区块链的跨链交易方法,其特征在于,包括以下步骤:第一阶段:第一应用客户端向第一区块链提交一跨链交易测试请求,所述跨链交易测试请求包括将位于所述第一区块链的第一账户向位于第二区块链的第二账户进行转账;区块链系统根据预设配置将所述第一账户的值A1和第二账户的值B1加锁,所述第一区块链的多个节点分别将所述第一账户的值A1执行了转账事务后配置为测试值A2,所述第二区块链的多个节点分别将所述第二账户的值B1执行了转账事务后配置为测试值B2,当跨链交易请求测试背书成功,则所述第一账户的值A1、测试值A2和第二账户的值B1、测试值B2的锁定;以及第二阶段:所述第一区块链的多个节点分别将所述第一账户的测试值A2复制到值A1;所述第二区块链的多个节点分别将所述第二账户的测试值B2复制到值B1;当跨链交易执行请求背书成功,将所述第一账户的值A1和第二账户的值B1写入区块链并解锁。2.根据权利要求1所述的基于多区块链的跨链交易方法,其特征在于,所述第一阶段包括以下步骤:S101、第一应用客户端向第一区块链提交一跨链交易测试请求,所述跨链交易请求将位于所述第一区块链的第一账户向位于第二区块链的第二账户进行转账,所述跨链交易请求包括唯一事务标示;S102、所述区块链系统将所述跨链交易请求向所述第一区块链的多个节点提交第一事务的背书请求,并和第二区块链的多个节点提交第二事务的背书请求;S103、将所述第一账户的值A1和第二账户的值B1加锁,所述第一区块链的多个节点分别将所述第一账户的值A1执行了所述第一事务后配置为测试值A2,所述第二区块链的多个节点分别将所述第二账户的值B1执行了所述第二事务后配置为测试值B2;S104、将所述第一事务的背书请求的读写集合和第二事务的背书请求的读写集合附带各节点的签名后发送给第一应用客户端;S105、判断第一应用客户端收到的多个节点的第一事务的背书请求的读写集合中各子集是否都相同,并且第一应用客户端收到的多个节点的第二事务的背书请求的读写集合中各子集是否也相同,若否,则执行步骤S106,若是,则执行步骤S107;S106、跨链交易测试请求背书失败,将所述第一账户的值A1和第二账户的值B1解锁;以及S107、跨链交易测试请求背书成功,将所述第一账户的值A1、测试值A2和第二账户的值B1、测试值B2的锁定,执行第二阶段。3.根据权利要求2所述的基于多区块链的跨链交易方法,其特征在于,所述第二阶段包括以下步骤:S201、第一应用客户端向第一区块链提交一跨链交易执行请求,所述跨链交易执行请求中包括了所述跨链交易请求中的唯一事务标示;S202、所述区块链系统根据所述跨链交易执行请求向所述第一区块链的多个节点提交第三事务的背书请求,并向第二区块链的多个节点提交第四事务的背书请求;S203、当所述第一区块链的多个节点检测收到第三事务的背书请求是否包括之前跨链交易请求中的唯一事务标示,所述第一区块链的多个节点分别将所述第一账户的测试值A2复制到值A1;当所述第二区块链的多个节点检测收到第十事务的背书请求是否包括之前跨链交易请求中的唯一事务标示,所述第二区块链的多个节点分别将所述第二账户的测试值B2复制到值B1;S204、将所述第三事务的背书请求的读写集合和第四事务的背书请求的读写集合附带各节点的签名后发送给第一应用客户端;S205、判断第一应用客户端收到的多个节点的第三事务的背书请求的读写集合中各子集是否都相同,并且第一应用客户端收到的多个节点的第四事务的背书请求的读写集合中各子集是否也相同,若是,则执行步骤S206,若否,则执行步骤S207;S106、跨链交易执行请求背书成功,将所述第一账户的值A1和第二账户的值B1写入区块链并解锁,删除测试值A2和测试值B2;以及S107、跨链交易执行请求背书失败,将所述第一账户的值A1和第二账...

【专利技术属性】
技术研发人员:陈垚亮陈柏良邱赟捷黄胜
申请(专利权)人:物数上海信息科技有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1