[发明专利]支持无分叉升级的区块链运行时环境系统、方法在审
申请号: | 201911357828.1 | 申请日: | 2019-12-25 |
公开(公告)号: | CN111831301A | 公开(公告)日: | 2020-10-27 |
发明(设计)人: | 王宸敏;范学鹏 | 申请(专利权)人: | 北京熠智科技有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65;G06F9/455 |
代理公司: | 北京睿康信诚知识产权代理事务所(普通合伙) 11685 | 代理人: | 李建国 |
地址: | 100085 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 支持 分叉 升级 区块 运行 环境系统 方法 | ||
本申请公开了一种支持无分叉升级的区块链运行时环境系统、方法。该系统包括协议表示管理模块,用于通过解析每个区块上的交易,处理协议的解析和协议表示的版本;编译器前端,用于从所述协议表示管理模块中接收协议源代码,并进行预设处理后将协议源代码翻译成协议表示;协议表示数据库,用于持久化不同类型以及不同版本的协议表示数据,其中所述协议元数据以及协议表示以键值对的形式持久化;中间表示管理模块,用于接收待执行的协议表示集合,并对所述协议表示集合进行解析以使与执行引擎适配;执行引擎,用于接收所述中间表示管理模块中的模块集合以及执行函数,执行并返回接口。本申请解决了用于区块链系统升级的方法效果不佳的技术问题。
技术领域
本申请涉及区块链系统领域,具体而言,涉及一种支持无分叉升级的区块链运行时环境系统、方法。
背景技术
传统分布式系统的升级方式通常由可信机构发布安装更新到中心化的升级节点,后者更新系统版本号并发布升级系统的下载服务;当分布式节点检查到新版本时,下载更新包并交由节点内部的更新管理模块完成更新升级。
发明人发现,目前大部分区块链系统的升级往往依赖于节点自发达成共识,而在升级过程中由于节点行为不可控等因素而产生分叉问题,会导致系统停止服务、社区分裂以及经济损失等严重后果。
针对相关技术中用于区块链系统升级的方法效果不佳的问题,目前尚未提出有效的解决方案。
发明内容
本申请的主要目的在于提供一种支持无分叉升级的区块链运行时环境系统、方法,以解决用于区块链系统升级的方法效果不佳的问题。
为了实现上述目的,根据本申请的一个方面,提供了一种支持无分叉升级的区块链运行时环境系统,支持无分叉升级的区块链运行时环境,通过将系统升级信息封装为特殊交易更新到各个节点从而保证一致性而避免硬分叉和软分叉,同时该运行时环境支持多协议版本的并发执行,最后执行引擎通过软件事物内存保证了并发请求下执行结果的正确性。
根据本申请的支持无分叉升级的区块链运行时环境系统包括:协议表示管理模块,用于通过解析每个区块上的交易,处理协议的解析和协议表示的版本;编译器前端,用于从所述协议表示管理模块中接收协议源代码,并进行预设处理后将协议源代码翻译成协议表示;协议表示数据库,用于持久化不同类型以及不同版本的协议表示数据,其中所述协议元数据以及协议表示以键值对的形式持久化;中间表示管理模块,用于接收待执行的协议表示集合,并对所述协议表示集合进行解析以使与执行引擎适配;执行引擎,用于接收所述中间表示管理模块中的模块集合以及执行函数,执行并返回接口。
进一步地,还包括:封装模块,用于将系统升级协议封装为特殊交易,
所述将系统升级协议封装为特殊交易的步骤包括:
将系统升级所需要的源代码以及元数据封装到区块链交易的数据字段中;其中,每条交易的数据字段只允许存放一份协议,但一个区块可以包含多条升级协议的交易,其中元数据包括:至少一个协议名称、协议版本、所依赖的协议及其版本。
进一步地,当交易类型为系统协议时,所述协议表示管理模块,用于解析交易中的数据字段,得到协议源代码以及元数据。
进一步地,当外部向区块链运行时环境请求一个协议的执行结果时,所述协议表示管理模块,用于从数据库中拿到对应的协议表示并接收执行协议表示的返回结果。
进一步地,所述协议表示数据库,用于当协议表示管理模块向所述协议表示数据库请求一个协议表示时,协议表示本身以及其依赖的协议表示集合将一起返回。
进一步地,所述中间表示管理模块,用于插入处理并发的代码到协议表示集合中;
当协议表示集合被解析成执行引擎的模块集合,并从所述模块集合中提取执行的函数入口,再交由执行引擎。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京熠智科技有限公司,未经北京熠智科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911357828.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:冲击工具
- 下一篇:用于去中心化应用的数据处理方法以及装置、设备、存储介质