[发明专利]一种跨区块异步调用合约系统有效
申请号: | 201710402925.2 | 申请日: | 2017-05-31 |
公开(公告)号: | CN107193672B | 公开(公告)日: | 2020-01-14 |
发明(设计)人: | 陈小虎;徐卿;李正鹏 | 申请(专利权)人: | 无锡井通网络科技有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 32260 无锡市汇诚永信专利代理事务所(普通合伙) | 代理人: | 张欢勇 |
地址: | 214000 江苏省无锡市新*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 验证 验证单元 区块 调用请求 异步调用 分布式系统 预定义协议 发送请求 服务节点 缓存单元 结果返回 系统容错 支付请求 远端 并发 返回 通讯 | ||
1.一种跨区块异步调用合约系统,其特征在于包括以下单元:
分布式系统验证单元:包括一个或多个服务节点以及若干个验证节点,所述服务节点用于接收用户递交的交易请求集合{TX},所述验证节点用于验证共识过的所述交易请求集合{TX};所述交易请求集合{TX}包括合约调用请求TX和支付请求TX;
分布式合约执行单元:位于本地或所述分布式系统验证单元的远端,与所述分布式系统验证单元之间通过预定义协议进行通讯,用以获取合约执行所需信息,并在合约执行完毕后,将结果返回至所述验证节点;
合约执行缓存单元:包括用于接收来自所述验证节点的所述合约调用请求,发送所述合约调用请求至所述分布式合约执行单元,接收合约执行结果,返回当前合约执行状态至所述验证节点,以实现合约的异步调用;
每个所述验证节点对应一个或多个所述合约执行缓存单元,以及一个或多个所述分布式合约执行单元;
该系统实现方法如下:
A:所述服务节点接收用户递交的交易请求TX,每个所述验证节点收集上述TX并汇集成交易请求集合{TX}i;
B:所述{TX}i中包含的合约调用请求发送至所述合约执行缓存单元,所述合约执行缓存单元在收到上述请求后立即返回当前合约执行状态;
C:在所有验证节点收到所述{TX}i后,所述{TX}i在所有验证节点完成共识,区块i生成,所述验证节点对共识后的所述{TX}i进行验证,验证后的状态写入区块i;同时每个所述验证节点创建一个查询合约TXq,并将其加入到区块(i+k)的交易请求集合{TX}(i+k)中;
D:在进行B~C时,所述合约执行缓存单元采用异步调用的方式将所述合约调用请求发送至所述分布式合约执行单元,于后台执行合约,执行完毕后,所述合约执行缓存单元获得合约执行的最后结果,等待处理;
E:区块(i+k)处理周期开始,所述{TX}(i+k)中包含的合约调用请求发送至所述合约执行缓存单元,所述合约执行缓存单元立即返回当前合约执行状态,同时,所述验证节点从所述查询合约TXq中提取出合约相关信息,并向所述合约执行缓存单元发出查询请求,所述合约执行缓存单元向所述验证节点返回所述区块i的所述合约调用请求的执行结果,并更新所述查询合约TXq;
F:在所有验证节点收到所述{TX}(i+k)后,更新后的所述查询合约TXq和所述{TX}(i+k)合在一起形成一个新的集合,在所有验证节点完成共识,区块(i+k)生成,所述验证节点对共识过的TX进行验证,验证后的状态写入区块(i+k);同时每个所述验证节点创建一个新的查询合约TXq,并将其加入到区块(i+k+k)的交易请求集合{TX}(i+k+k)中;
G:在进行E~F时,所述合约执行缓存单元采用异步调用的方式将所述{TX}(i+k)中包含的合约调用请求发送至所述分布合约执行单元,于后台执行合约,执行完毕后,所述合约执行单元获得合约执行的最后结果,等待处理;
其中,所述i和k为大于或等于1的整数,所述k根据需要配置。
2.根据权利要求1所述的跨区块异步调用合约系统,其特征在于:所述分布式合约执行单元为位于分布式系统验证单元远端,与所述分布式系统验证单元去耦合的沙箱。
3.根据权利要求1所述的跨区块异步调用合约系统,其特征在于:所述当前合约执行状态包括但不限于:尚未完成,正常执行完毕或出错。
4.根据权利要求1所述的跨区块异步调用合约系统,其特征在于:所述k=1。
5.根据权利要求1所述的跨区块异步调用合约系统,其特征在于:所述共识采用的机制包括但不限于:BFT,POW或POS。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于无锡井通网络科技有限公司,未经无锡井通网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710402925.2/1.html,转载请声明来源钻瓜专利网。