一种跨链发送可认证消息的方法和装置制造方法及图纸

技术编号:22471160 阅读:27 留言:0更新日期:2019-11-06 12:57
本说明书实施例提供了一种跨链发送可认证消息的方法和装置,所述跨链发送为从第一区块链的第一账户向其它区块链发送,所述第一区块链与中继端连接,所述中继端还与至少一个其它区块链连接,所述至少一个其它区块链中包括第二区块链,所述方法由所述第一区块链执行,包括:通过所述第一账户向第一区块链中存入经共识的第一数据,其中,所述第一数据中包括可认证消息,所述可认证消息满足预定协议栈,并且,所述第一数据被标注有预定标志;以及将所述第一数据和第一位置信息提供给所述中继端,以用于将所述可认证消息提供给所述第二区块链中的所述第二账户,其中,所述第一位置信息指示第一数据在第一区块链中的位置。

A method and device of sending authenticated message across chain

【技术实现步骤摘要】
一种跨链发送可认证消息的方法和装置
本说明书实施例涉及区块链
,更具体地,涉及一种跨链发送可认证消息的方法和装置。
技术介绍
区块链技术也被称之为分布式账本技术,是一种去中心化的分布式数据库技术,其特点是去中心化、公开透明、不可篡改、可信任。区块链的每笔数据,都会广播到全网的区块链节点,每个全节点都有全量的、一致的数据。随着区块链技术的火热,出现了许多不同类型的链,应用在金融、健康医疗、供应链、资产管理和溯源等领域。然而大部分链上应用(加密货币或者智能合约)都无法跨越当前链的边界,不能与其他链协同合作实现价值的流通,从而限制了区块链的发挥空间。如何能让不同类型的链协同合作实现价值的流通成了探索的方向。目前已出现多种跨链技术,然而,每种跨链技术都有自己独特设计,应对的场景也各不相同,针对不同场景下的跨链,一条链可能需要接入多种跨链平台。因此,需要一种更有效的跨链传递信息的方案。
技术实现思路
本说明书实施例旨在提供一种更有效的跨链传递信息的方案,以解决现有技术中的不足。为实现上述目的,本说明书一个方面提供一种跨链发送可认证消息的方法,所述跨链发送为从第一区块链的第一账户向其它区块链发本文档来自技高网...

【技术保护点】
1.一种跨链发送可认证消息的方法,所述跨链发送为从第一区块链的第一账户向其它区块链发送,所述第一区块链与中继端连接,所述中继端还与至少一个其它区块链连接,所述至少一个其它区块链中包括第二区块链,所述方法由所述第一区块链执行,包括:通过所述第一账户向第一区块链中存入经共识的第一数据,其中,所述第一数据中包括可认证消息,所述可认证消息满足预定协议栈,所述预定协议栈包括由外向内的第一至第三层协议,其中,第一层协议包括发送区块链标识字段、接收区块链标识字段和第二层协议,第二层协议包括发送账户字段、接收账户字段和第三层协议,第三层协议包括消息内容字段,其中,发送区块链标识、发送账户、接收区块链标识、接收...

【技术特征摘要】
1.一种跨链发送可认证消息的方法,所述跨链发送为从第一区块链的第一账户向其它区块链发送,所述第一区块链与中继端连接,所述中继端还与至少一个其它区块链连接,所述至少一个其它区块链中包括第二区块链,所述方法由所述第一区块链执行,包括:通过所述第一账户向第一区块链中存入经共识的第一数据,其中,所述第一数据中包括可认证消息,所述可认证消息满足预定协议栈,所述预定协议栈包括由外向内的第一至第三层协议,其中,第一层协议包括发送区块链标识字段、接收区块链标识字段和第二层协议,第二层协议包括发送账户字段、接收账户字段和第三层协议,第三层协议包括消息内容字段,其中,发送区块链标识、发送账户、接收区块链标识、接收账户字段分别对应于以下字段值:第一区块链标识、第一账户、第二区块链标识、第二账户;以及将所述第一数据和第一位置信息提供给所述中继端,以用于将所述可认证消息提供给所述第二区块链中的所述第二账户,其中,所述第一位置信息指示第一数据在第一区块链中的位置。2.根据权利要求1所述的方法,其中,通过所述第一账户向第一区块链中存入经共识的第一数据包括,通过由所述第一账户调用第一智能合约向第一区块链中存入所述第一数据,其中,所述第一账户在调用第一智能合约时向第一智能合约传入至少以下参数:第二区块链标识、第二账户及消息内容。3.根据权利要求2所述的方法,其中,所述第一数据被标注有预定标志。4.根据权利要求3所述的方法,其中,所述第一数据为收据,所述收据中包括在执行所述第一智能合约之后生成的日志,所述日志的数据字段为所述可认证消息。5.根据权利要求4所述的方法,其中,所述日志被标注有预定主题,所述预定标志为所述预定主题。6.根据权利要求4所述的方法,所述预定标志为所述第一智能合约的账户标识。7.根据权利要求1所述的方法,其中,所述第一层协议中还包括协议版本号字段和预留字段。8.根据权利要求1所述的方法,其中,所述第三层协议中还包括类型字段,用于指示该可认证消息的使用场景类型。9.根据权利要求8所述的方法,其中,所述类型为以下任一类型:消息类型、远程过程调用类型、发布/订阅类型。10.根据权利要求1所述的方法,其中,所述第三层协议中还包括序号字段,用于在所述第一账户向所述第二账户多次发送可认证消息的情况中表示当前发送序号。11.根据权利要求1所述的方法,其中,所述第一账户为第二智能合约的合约账户。12.一种跨链中转可认证消息的方法,所述方法由中继端执行,所述中继端与至少两个区块链连接,所述至少两个区块链中包括第一区块链和第二区块链,其中,所述第一区块链中预存有经共识的第一数据,其中,所述第一数据中包括可认证消息,所述可认证消息满足预定协议栈,所述预定协议栈包括由外向内的第一至第三层协议,其中,第一层协议包括发送区块链标识字段、接收区块链标识字段和第二层协议,第二层协议包括发送账户字段、接收账户字段和第三层协议,第三层协议包括消息内容字段,其中,发送区块链标识、发送账户、接收区块链标识、接收账户字段分别对应于以下字段值:第一区块链标识、第一账户、第二区块链标识、第二账户,所述方法包括:从所述第一区块链获取所述第一数据和第一位置信息,所述第一位置信息指示第一数据在第一区块链中的位置;以及基于所述可认证消息中的第二区块链标识,将所述第一数据和所述第一位置信息发送给所述第二区块链。13.根据权利要求12所述的方法,其中,所述第一数据被标注有预定标志,其中,从所述第一区块链获取所述第一数据和第一位置信息包括,基于所述预定标志从所述第一区块链获取所述第一数据和第一位置信息。14.一种跨链接收可认证消息的方法,所述跨链接收为由第二区块链的第二账户从其它区块链接收,所述第二区块链与中继端连接,所述第二区块链中通过所述中继端同步有与至少一个其它区块链分别相关的至少一个第二数据,其中,所述至少一个其它区块链中包括第一区块链,所述方法由第二区块链执行,包括:从所述中继端接收第一数据和第一位置信息,其中,所述第一数据中包括可认证消息,所述可认证消息满足预定协议栈,所述预定协议栈包括由外向内的第一至第三层协议,其中,第一层协议包括发送区块链标识字段、接收区块链标识字段和第二层协议,第二层协议包括发送账户字段、接收账户字段和第三层协议,第三层协议包括消息内容字段,其中,发送区块链标识、发送账户、接收区块链标识、接收账户字段分别对应于以下字段值:第一区块链标识、第一账户、第二区块链标识、第二账户,所述第一位置信息指示所述第一数据在所述第一区块链中的位置;基于所述可认证消息中的第一区块链标识,获取与所述第一区块链相关的第二数据;基于所述第一数据、与所述第一区块链相关的第二数据以及所述第一位置信息,对所述可认证消息进行验证;以及在验证通过之后,基于所述可认证消息中的第二账户,向所述第二账户提供所述可认证消息。15.根据权利要求14所述的方法,其中,所述第一数据为第一区块链的第一区块中的第一收据,所述第一位置信息包括第一区块的区块编号和第一收据在第一区块中的收据编号,所述与第一区块链相关的第二数据为第一区块链中的各个区块的区块头,其中,基于所述第一数据、与所述第一区块链相关的第二数据以及所述第一位置信息,对所述可认证消息进行验证包括,基于所述第一收据、所述各个区块的区块头和第一区块中的与第一收据相关联的默克尔树路径,通过简单支付验证方法验证:所述第一收据来自于第一区块链中的第一区块,其中,所述默克尔树路径基于所述第一位置信息获取。16.根据权利要求15所述的方法,所述可认证消息位于所述第一收据中的第一日志中,其中,基于所述第一数据、与所述第一区块链相关的第二数据以及所述第一位置信息,对所述可认证消息进行验证还包括,基于所述第一日志的发送字段,验证所述第一账户为发送所述可认证消息的账户。17.根据权利要求14所述的方法,其中,所述第二账户为第三智能合约的合约账户,向所述第二账户提供所述可认证消息包括,通过以所述可认证消息为传入参数调用第三智能合约,向第二账户提供所述可认证消息。18.一种跨链中转可认证消息的方法,所述方法由中继端执行,所述中继端与至少两个区块链连接,所述至少两个区块链中包括第一区块链和第二区块链,其中,所述第一区块链中预存有经共识的第一数据,其中,所述第一数据中包括可认证消息,所述可认证消息满足预定协议栈,所述预定协议栈包括由外向内的第一至第三层协议,其中,第一层协议包括发送区块链标识字段、接收区块链标识字段和第二层协议,第二层协议包括发送账户字段、接收账户字段和第三层协议,第三层协议包括消息内容字段,其中,发送区块链标识、发送账户、接收区块链标识、接收账户字段分别对应于以下字段值:第一区块链标识、第一账户、第二区块链标识、第二账户,所述中继端同步有与各个区块链分别相关的各个第二数据,所述方法包括:从所述第一区块链获取所述第一数据和第一位置信息,所述第一位置信息指示第一数据在第一区块链中的位置;基于所述可认证消息中的第一区块链标识,获取与所述第一区块链相关的第二数据;基于所述第一数据、与所述第一区块链相关的第二数据以及所述第一位置信息,对所述可认证消息进行验证;在验证通过的情况中,对所述可认证消息进行数字签名;以及基于所述可认证消息中的第二区块链标识,将所述可认证消息及其数字签名发送给所述第二区块链。19.一种跨链接收可认证消息的方法,所述跨链接收为由第二区块链的第二账户从其它区块链接收,所述第二区块链与中继端连接,所述中继端还与至少一个其它区块链连接,所述至少一个其它区块链中包括第一区块链,所述第二区块链中预先存储有所述中继端的公钥,所述方法由第二区块链执行,包括:从所述中继端接收可认证消息、及所述中继端对所述可认证消息的数字签名,所述可认证消息满足预定协议栈,所述预定协议栈包括由外向内的第一至第三层协议,其中,第一层协议包括发送区块链标识字段、接收区块链标识字段和第二层协议,第二层协议包括发送账户字段、接收账户字段和第三层协议,第三层协议包括消息内容字段,其中,发送区块链标识、发送账户、接收区块链标识、接收账户字段分别对应于以下字段值:第一区块链标识、第一账户、第二区块链标识、第二账户;使用所述中继端的公钥对所述数字签名进行验证;以及在验证通过之后,基于所述可认证消息中的第二账户,向所述第二账户提供所述可认证消息。20.一种跨链发送可认证消息的装置,所述跨链发送为从第一区块链的第一账户向其它区块链发送,所述第一区块链与中继端连接,所述中继端还与至少一个其它区块链连接,所述至少一个其它区块链中包括第二区块...

【专利技术属性】
技术研发人员:邱鸿霖
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

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

1