[发明专利]跨链调用方法、装置、系统与计算机可读存储介质有效
申请号: | 202011573440.8 | 申请日: | 2020-12-25 |
公开(公告)号: | CN112787999B | 公开(公告)日: | 2023-02-17 |
发明(设计)人: | 贺双洪;莫楠;石翔;王章;郭锐;李辉忠;张开翔;范瑞彬 | 申请(专利权)人: | 深圳前海微众银行股份有限公司 |
主分类号: | H04L67/562 | 分类号: | H04L67/562;H04L67/63;H04L9/40;H04L67/10 |
代理公司: | 深圳市世纪恒程知识产权代理事务所 44287 | 代理人: | 张志江 |
地址: | 518000 广东省深圳市前海深港合作区前*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 调用 方法 装置 系统 计算机 可读 存储 介质 | ||
1.一种跨链调用方法,其特征在于,所述跨链调用方法包括如下步骤:
基于第一区块链的业务合约调用桥接合约,以注册跨链调用请求,并基于桥接合约将所述跨链调用请求保存到任务队列;
基于第一区块链的第一跨链路由,轮询获取所述任务队列中的所述跨链调用请求,并将所述跨链调用请求路由至所述跨链调用请求对应的第二区块链的第二跨链路由;
基于第二跨链路由,调用第二区块链的入口合约,并基于第二区块链的入口合约,检测所述跨链调用请求是否为重复调用,其中,所述检测所述跨链调用请求是否为重复调用的步骤包括检测所述第二区块链的入口合约中是否存在一致对应的跨链序列号,或将所述跨链调用请求与历史对应的跨链调用请求进行比较;
基于检测结果,在第二区块链获取所述跨链调用请求对应的调用结果,并基于所述调用结果,完成回调;
其中,所述基于第一区块链的第一跨链路由,轮询获取所述任务队列中的所述跨链调用请求,并将所述跨链调用请求路由至所述跨链调用请求对应的第二区块链的第二跨链路由的步骤包括:
获取所述桥接合约的索引号,所述索引号用于记录所述任务队列中跨链调用请求的处理进度;
基于第一区块链的第一跨链路由和所述索引号,在所述任务队列中轮询索引所述跨链调用请求;
对所述跨链调用请求进行唯一化处理,并将处理后的所述跨链调用请求路由至所述跨链调用请求对应的第二区块链的第二跨链路由。
2.如权利要求1所述的跨链调用方法,其特征在于,所述基于第一区块链的业务合约调用桥接合约,以注册跨链调用请求的步骤包括:
确定所述业务合约的跨链参数,并将所述跨链参数传入所述桥接合约;
获取所述桥接合约的序列号,并基于所述序列号和所述跨链参数,注册所述业务合约的跨链调用请求。
3.如权利要求2所述的跨链调用方法,其特征在于,所述获取所述桥接合约的序列号,并基于所述序列号和所述跨链参数,注册所述业务合约的跨链调用请求的步骤包括:
获取所述桥接合约当前的序列号,所述序列号为自增序列号;
对所述跨链参数进行序列化处理,以得到序列化字符串,并将所述序列号和所述序列化字符串按照键值对的形式保存,以得到所述业务合约的跨链调用请求。
4.如权利要求3所述的跨链调用方法,其特征在于,所述对所述跨链调用请求进行唯一化处理的步骤包括:
对所述跨链调用请求进行反序列化处理,以得到跨链参数,并基于所述跨链参数和所述索引号,计算跨链序列号;
基于所述跨链序列号和所述跨链参数,重新生成跨链调用请求。
5.如权利要求4所述的跨链调用方法,其特征在于,所述基于检测结果,在第二区块链获取所述跨链调用请求对应的调用结果,并基于所述调用结果,完成回调的步骤包括:
若所述检测结果为不重复,则基于所述入口合约和所述跨链调用请求,调用所述跨链调用请求对应的目标业务合约,以获得所述跨链调用请求对应的调用结果,并将所述调用结果返回第二跨链路由,以基于第二跨链路由将所述调用结果转发至第一跨链路由,其中,若第二区块链的入口合约不存在所述跨链序列号,则检测结果为不重复;
基于第一跨链路由和所述调用结果,调用第一区块链的入口合约,以通过第一区块链的入口合约将所述调用结果返回至第一区块链的业务合约;
基于第一跨链路由和所述调用结果,调用第一区块链的桥接合约,以更新所述索引号。
6.如权利要求4所述的跨链调用方法,其特征在于,所述基于检测结果,在第二区块链获取所述跨链调用请求对应的调用结果,并基于所述调用结果,完成回调的步骤包括:
若所述检测结果为重复,则基于所述跨链序列号,查找上一次调用的调用结果,并将所述调用结果返回第二跨链路由,以基于第二跨链路由将所述调用结果转发至第一跨链路由,其中,若第二区块链的入口合约存在所述跨链序列号,则检测结果为重复;
基于第一跨链路由和所述调用结果,调用第一区块链的入口合约,以通过第一区块链的入口合约将所述调用结果返回至第一区块链的业务合约;
基于第一跨链路由和所述调用结果,调用第一区块链的桥接合约,以更新所述索引号。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳前海微众银行股份有限公司,未经深圳前海微众银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011573440.8/1.html,转载请声明来源钻瓜专利网。