一种基于中继设备跨链中转消息的方法和装置制造方法及图纸

技术编号:28477318 阅读:13 留言:0更新日期:2021-05-15 21:46
本说明书实施例提供一种基于中继设备跨链中转消息的方法和装置,所述中继设备中包括预言机,所述方法由所述中继设备执行,包括:从第一区块链获取所述第一数据及其证明数据,其中,所述第一数据中包括第一消息数据;由所述预言机使用所述证明数据对所述第一数据进行验证;在验证通过的情况中,由所述预言机对所述第一消息数据进行数字签名;基于所述第一消息数据确定所述第一消息数据的接收链为第二区块链;以及将所述第一消息数据及对其的数字签名提供给所述第二区块链。签名提供给所述第二区块链。签名提供给所述第二区块链。

【技术实现步骤摘要】
一种基于中继设备跨链中转消息的方法和装置


[0001]本说明书实施例涉及区块链
,更具体地,涉及一种基于中继设备跨链中转消息的方法和装置。

技术介绍

[0002]区块链技术也被称之为分布式账本技术,是一种去中心化的分布式数据库技术,其特点是去中心化、公开透明、不可篡改、可信任。区块链的每笔交易,都会广播到全网的区块链节点,每个全节点都有全量的、一致的数据。随着区块链技术的火热,出现了许多不同类型的链,应用在金融、健康医疗、供应链、资产管理和溯源等领域。然而大部分链上应用(加密货币或者智能合约)都无法跨越当前链的边界,不能与其他链协同合作实现价值的流通,从而限制了区块链的发挥空间。如何能让不同类型的链协同合作实现价值的流通成了探索的方向。
[0003]在现有的一种跨链技术中,在第一区块链中将跨链消息写入区块链的收据,链下的中继设备从第一区块链获取收据,将收据提供给第二区块链。假设第一区块链中通过简单支付验证(Spv验证)方式对收据进行验证,从而,第二区块链中可通过调用与Spv验证对应的消息验证合约,从而以Spv验证的方式对所述收据进行验证,在验证通过之后,可从收据中取出跨链消息并提供给消息接收账户。在该方案中,第二区块链对收据的验证过程复杂,效率低下。
[0004]因此,需要一种更有效的跨链中转消息的方案。

技术实现思路

[0005]本说明书实施例旨在提供一种更有效的跨链中转消息的方案,以解决现有技术中的不足。
[0006]为实现上述目的,本说明书一个方面提供一种基于中继设备跨链中转消息的方法,所述中继设备与第一区块链和第二区块链连接,并且所述中继设备中包括预言机,所述方法由所述中继设备执行,包括:从第一区块链获取所述第一数据及其证明数据,其中,所述第一数据中包括第一消息数据,所述第一消息数据中包括该第一消息数据的接收链标识;由所述预言机使用所述证明数据对所述第一数据进行验证;在验证通过的情况中,由所述预言机对所述第一消息数据进行数字签名;基于所述第一消息数据确定所述第一消息数据的接收链为第二区块链;以及将所述第一消息数据及对其的数字签名提供给所述第二区块链。
[0007]在一种实施方式中,在验证通过的情况中,由所述预言机对所述第一消息数据进行数字签名包括,在验证通过的情况中,由所述预言机将所述第一消息数据的格式转换为预定格式,由所述预言机对具有预定格式的第一消息数据进行数字签名。
[0008]在一种实施方式中,所述预言机为可信执行环境。
[0009]在一种实施方式中,所述可信执行环境中预先设置有与所述证明数据对应的验证算法,其中,使用所述证明数据对所述第一数据进行验证包括,通过执行所述验证算法,使用所述证明数据对所述第一数据进行验证。
[0010]在一种实施方式中,所述证明数据为Spv证明数据。
[0011]在一种实施方式中,所述预言机为中继链,所述中继链包括多个中继节点,其中,所述数字签名包括每个中继节点的数字签名。
[0012]在一种实施方式中,所述第一数据为所述第一区块链中的以下任一种数据:区块头数据、交易数据、收据数据、账户状态数据。
[0013]本说明书另一方面提供一种基于中继设备跨链接收消息的方法,所述中继设备与第一区块链和第二区块链连接,并且,所述中继设备中包括预言机,所述方法由第二区块链执行,所述第二区块链中预先存储有所述预言机的公钥,所述方法包括:从所述中继设备获取第一消息数据及所述预言机对所述第一消息数据的数字签名,其中,所述第一消息数据由所述中继设备从所述第一区块链获取;使用所述预言机的公钥对所述数字签名进行验证;以及在验证通过之后,从所述第一消息数据解析获取所述第一消息。
[0014]在一种实施方式中,所述方法在第二区块链中执行由所述中继设备发送的第一交易时执行,其中,在所述第一交易中,以所述第一消息及其数字签名作为传入参数调用消息接收合约。
[0015]在一种实施方式中,所述方法还包括,基于所述第一消息内容,确定所述第一消息的接收账户为第一智能合约的合约账户,以所述第一消息作为传入参数调用所述第一智能合约。
[0016]本说明书另一方面提供一种基于中继设备跨链中转消息的装置,所述中继设备与第一区块链和第二区块链连接,并且所述中继设备中包括预言机,所述装置部署于所述中继设备,包括:获取单元,配置为,从第一区块链获取所述第一数据及其证明数据,其中,所述第一数据中包括第一消息数据,所述第一消息数据中包括该第一消息数据的接收链标识;验证单元,配置为,由所述预言机使用所述证明数据对所述第一数据进行验证;签名单元,配置为,在验证通过的情况中,由所述预言机对所述第一消息数据进行数字签名;确定单元,配置为,基于所述第一消息数据确定所述第一消息数据的接收链为第二区块链;以及提供单元,配置为,将所述第一消息数据及对其的数字签名提供给所述第二区块链。
[0017]在一种实施方式中,所述签名单元还配置为,在验证通过的情况中,将所述第一消息数据的格式转换为预定格式,对具有预定格式的第一消息数据进行数字签名。
[0018]在一种实施方式中,所述可信执行环境中预先设置有与所述证明数据对应的验证算法,其中,所述验证单元还配置为,通过执行所述验证算法,使用所述证明数据对所述第一数据进行验证。
[0019]本说明书另一方面提供一种基于中继设备跨链接收消息的装置,所述中继设备与
第一区块链和第二区块链连接,并且所述中继设备中包括预言机,所述装置部署于所述第二区块链中,所述第二区块链中预先存储有所述预言机的公钥,所述装置包括:获取单元,配置为,从所述中继设备获取第一消息数据及所述预言机对所述第一消息数据的数字签名,其中,所述第一消息数据由所述中继设备从所述第一区块链获取;验证单元,配置为,使用所述预言机的公钥对所述数字签名进行验证;以及解析单元,配置为,在验证通过之后,从所述第一消息数据解析获取所述第一消息。
[0020]在一种实施方式中,所述装置在第二区块链中执行由所述中继设备发送的第一交易时部署,其中,在所述第一交易中,以所述第一消息及其数字签名作为传入参数调用消息接收合约。
[0021]在一种实施方式中,所述装置还包括,确定单元,配置为,基于所述第一消息内容,确定所述第一消息的接收账户为第一智能合约的合约账户,以及调用单元,配置为,以所述第一消息作为传入参数调用所述第一智能合约。
[0022]本说明书另一方面提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行上述任一项方法。
[0023]本说明书另一方面提供一种计算设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器在执行所述计算机程序时,实现上述任一项方法。
[0024]通过根据本说明书实施例的跨链中转消息的方案,在中继设备进行对消息的验证,从而将消息验证转化为简单的验证方式,提升了接收消息的区块链对消息的验证效率,另外,在本说明书实施例中,在中继设备本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于中继设备跨链中转消息的方法,所述中继设备与第一区块链和第二区块链连接,并且所述中继设备中包括预言机,所述方法由所述中继设备执行,包括:从第一区块链获取所述第一数据及其证明数据,其中,所述第一数据中包括第一消息数据,所述第一消息数据中包括该第一消息数据的接收链标识;由所述预言机使用所述证明数据对所述第一数据进行验证;在验证通过的情况中,由所述预言机对所述第一消息数据进行数字签名;基于所述第一消息数据确定所述第一消息数据的接收链为第二区块链;以及将所述第一消息数据及对其的数字签名提供给所述第二区块链。2.根据权利要求1所述的方法,其中,在验证通过的情况中,由所述预言机对所述第一消息数据进行数字签名包括,在验证通过的情况中,由所述预言机将所述第一消息数据的格式转换为预定格式,以及由所述预言机对具有预定格式的第一消息数据进行数字签名。3.根据权利要求1所述的方法,其中,所述预言机为可信执行环境。4.根据权利要求3所述的方法,所述可信执行环境中预先设置有与所述证明数据对应的验证算法,其中,使用所述证明数据对所述第一数据进行验证包括,通过执行所述验证算法,使用所述证明数据对所述第一数据进行验证。5.根据权利要求1所述的方法,其中,所述证明数据为Spv证明数据。6.根据权利要求1所述的方法,其中,所述预言机为中继链,所述中继链包括多个中继节点,其中,所述数字签名包括每个中继节点的数字签名。7.根据权利要求1所述的方法,所述第一数据为所述第一区块链中的以下任一种数据:区块头数据、交易数据、收据数据、账户状态数据。8.一种基于中继设备跨链接收消息的方法,所述中继设备与第一区块链和第二区块链连接,并且,所述中继设备中包括预言机,所述方法由第二区块链执行,所述第二区块链中预先存储有所述预言机的公钥,所述方法包括:从所述中继设备获取第一消息数据及所述预言机对所述第一消息数据的数字签名,其中,所述第一消息数据由所述中继设备从所述第一区块链获取;使用所述预言机的公钥对所述数字签名进行验证;以及在验证通过之后,从所述第一消息数据解析获取所述第一消息。9.根据权利要求8所述的方法,其中,所述方法在第二区块链中执行由所述中继设备发送的第一交易时执行,其中,在所述第一交易中,以所述第一消息及其数字签名作为传入参数调用消息接收合约。10.根据权利要求8所述的方法,还包括,基于所述第一消息内容,确定所述第一消息的接收账户为第一智能合约的合约账户,以所述第一消息作为传入参数调用所述第一智能合约。11.一种基于中继设备跨链中转消息的装置,所述中继设备与第一区块链和第二区块链连接,并且所述中继设备中包括预言机,所述装置部署于所述中继设备,包括:获取单元,配置为,从第一区块链获取所述第一数据及其证明数据,其中,所述第一数据中包括第一消息数据,所述第一消息...

【专利技术属性】
技术研发人员:邱鸿霖余逸荣
申请(专利权)人:蚂蚁区块链科技上海有限公司
类型:发明
国别省市:

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

1