[发明专利]控制区块链运行的方法、设备以及存储介质有效
申请号: | 202011098194.5 | 申请日: | 2020-10-14 |
公开(公告)号: | CN112114872B | 公开(公告)日: | 2023-09-26 |
发明(设计)人: | 曹珍富;张华君;董晓蕾 | 申请(专利权)人: | 鹏城实验室 |
主分类号: | G06F8/71 | 分类号: | G06F8/71;G06F8/65 |
代理公司: | 深圳市世纪恒程知识产权代理事务所 44287 | 代理人: | 薛福玲 |
地址: | 518000 广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 控制 区块 运行 方法 设备 以及 存储 介质 | ||
本发明公开了控制区块链运行的方法、设备以及存储介质,该方法包括:判断区块链是否满足全局统一更新条件;若区块链未满足全局统一更新条件,则继续以当前区块链协议运行区块链;若区块链满足全局统一更新条件,则更新当前区块链协议为新的区块链协议,并以新的区块链协议运行。解决了现有技术中区块链升级中分叉所带来的协议版本不一致的技术问题,达到了协议版本一致的技术效果。
技术领域
本发明涉及区块链,尤其涉及控制区块链运行的方法、设备以及存储介质。
背景技术
大多数区块链协议被设计成长期运行的,甚至是永久运行的。这种长期运行不仅仅是因为设计者希望协议中的日志(或称共识数据)保持增长,还往往是因为协议的安全性很可能依赖于这种长期的运行。但是,这就带来一个问题。在这种长时间的运行情况下,如果协议中的密码组件被发现了安全漏洞,或者协议的本身已经不再满足场景的需要,那么协议就需要一种在运行中升级的办法。
对于一个运行中的区块链协议,如果存在两个诚实的参与者,在他们眼中系统中当前日志有区别,那么我们就称之为分叉。
现有的区块链升级技术主要有两种:硬分叉升级和软分叉升级。如果一个升级必然会导致分叉,我们称之为硬分叉升级。如果一个可能会导致分叉,我们称之为软分叉升级。
软分叉升级不易导致系统分裂,但是使用范围有限,很多功能的升级无法使用软分叉升级完成。硬分叉升级可以完成绝大部分功能的升级要求。但是硬分叉升级很容易导致系统分裂。
发明内容
本申请实施例通过提供一种控制区块链运行的方法、设备以及存储介质,解决了现有技术中区块链升级中分叉所带来的协议版本不一致的问题,实现了协议版本一致。
本申请实施例提供了一种控制区块链运行的方法,包括:
判断区块链是否满足全局统一更新条件;
若区块链未满足全局统一更新条件,则继续以当前区块链协议运行区块链;
若区块链满足全局统一更新条件,则更新当前区块链协议为新的区块链协议,并以新的区块链协议运行。
在其中一个实施例中,所述判断区块链是否满足全局统一更新条件,包括:
判断当前区块链协议是否到期。
在其中一个实施例中,还包括:
为区块链设置理想闹钟功能;
当任意参与方初始化时,调用所述理想闹钟功能,为所述参与方的区块链协议的实例设置基于当前区块链协议的统一到期时间。
在其中一个实施例中,所述理想闹钟功能通过卫星导航系统或安全网络授时协议获得全局同步时间。
在其中一个实施例中,所述继续以当前协议运行区块链,或以新的区块链协议运行,包括:
当新的参与方初始化时,考察所述新的参与方的区块链协议;
若所述新的参与方的区块链协议与当前区块链协议相同,则将新的参与方加入参与方集合。
在其中一个实施例中,所述继续以当前协议运行区块链,或以新的区块链协议运行,包括:
当接收到任意参与方的扩展请求时,获取所述扩展请求中携带的区块;
若发送扩展请求的参与方来自于已有的参与方集合,且请求合法,则将所述区块加入区块链。
在其中一个实施例中,所述继续以当前协议运行区块链,或以新的区块链协议运行,包括:
当接收到任意参与方的读取日志请求时,判断发送读取日志请求的参与方是否来自于已有的参与方集合;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于鹏城实验室,未经鹏城实验室许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011098194.5/2.html,转载请声明来源钻瓜专利网。