预览加载中,请您耐心等待几秒...
1/9
2/9
3/9
4/9
5/9
6/9
7/9
8/9
9/9

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN108170449A(43)申请公布日2018.06.15(21)申请号201711449386.4(22)申请日2017.12.27(71)申请人邵美地址100083北京市海淀区清华科技园创业大厦109(72)发明人邵美(74)专利代理机构北京易正达专利代理有限公司11518代理人陈桂兰(51)Int.Cl.G06F8/65(2018.01)权利要求书1页说明书5页附图2页(54)发明名称一种区块链系统中核心协议的升级方法(57)摘要本发明公开了一种区块链系统中核心协议的升级方法,该方法包括如下步骤:A、在区块链的区块结构中,增加核心协议代码ProtocolCode和投票统计Votes域;B将ProtocolCode的发布者设置为所述区块链核心开发组保留地址,规定该地址在创世区块内部硬编码无法变更;所有记账节点均验证ProtocolCode签名,签名不通过则视为非法数据;C、通过区块链客户端节点从当前最新区块的ProtocolCode存储区获取编译后的虚拟机字节码,如果当前最新区块有ProtocolCode数据,将升级代码通过公开渠道进行讨论和投票;如果同意核心协议升级,则将ProtocolCode数据上链后开始投票,投票通过则生效。采用本发明,可以避免区块链开发者和社区的分裂或产生软、硬分叉的可能性。CN108170449ACN108170449A权利要求书1/1页1.一种区块链系统中核心协议的升级方法,其特征在于,包括如下步骤:A、在区块链的区块结构中,增加新的数据类型,即增加核心协议代码ProtocolCode和投票统计Votes域;B、将ProtocolCode的发布者设置为所述区块链核心开发组保留地址,规定该地址在创世区块内部硬编码无法变更;所有记账节点均验证ProtocolCode签名,签名不通过则视为非法数据;C、通过区块链客户端节点从当前最新区块的ProtocolCode存储区获取编译后的虚拟机字节码,如果当前最新区块有ProtocolCode数据,说明核心协议需要升级,则将升级代码通过公开渠道进行讨论和投票;如果所述投票统计Votes域中投票结果显示超过一定比例的社区成员同意核心协议升级,则将ProtocolCode数据上链后开始投票,投票通过则生效。2.根据权利要求1所述区块链系统中核心协议的升级方法,其特征在于,步骤B之后还包括:通过区块链客户端节点从当前最新区块的ProtocolCode存储区获取编译后的虚拟机字节码,如果当前最新区块没有ProtocolCode数据,说明核心协议没有变更,就往前追溯到最近区块的ProtocolCode。3.根据权利要求2所述区块链系统中核心协议的升级方法,其特征在于,所述追溯的ProtocolCode,是指上一个投票通过的ProtocolCode,投票结果也在链上,用于保证全网在ProtocolCode上的一致性。4.根据权利要求1所述区块链系统中核心协议的升级方法,其特征在于,步骤A所述增加的核心协议代码ProtocolCode域,包括如下子域:哈希值Hash;核心协议的字节码Code;签名Signature;标识核心协议版本号Version;标识唯一性Nonce。5.根据权利要求1所述区块链系统中核心协议的升级方法,其特征在于,步骤A所述增加的投票统计Votes域,用于核心协议是否需要升级的投票;其包括如下子域:投票人From;投票区块哈希值VoteHash;核心协议代码哈希值ProtocolCodeHash;投票类型VoteType;投票签名Signature。6.根据权利要求1所述区块链系统中核心协议的升级方法,其特征在于,步骤C所述将升级代码通过公开渠道进行讨论和投票,具体包括:通过智能合约或者论坛投票的形式进行,当绝大部分社区成员同意核心协议升级。7.根据权利要求1或6所述区块链系统中核心协议的升级方法,其特征在于,还包括:将描述区块链核心协议的代码保存在区块链上,通过修改ProtocolCode,增加区块容量,然后将新的ProtocolCode打包到区块中,提交到链上;当同意升级的赞成票票数大于2/3时,ProtocolCode开始生效;通过各个节点的虚拟机加载新的ProtocolCode,之后扩容后的区块将能被所有区块接受,区块链得到升级。2CN108170449A说明书1/5页一种区块链系统中核心协议的升级方法技术领域[0001]本发明涉及区块链技术,尤其涉及一种区块链系统中核心协议的升级方法。背景技术[0002]当前区块链技术被认为是继蒸汽机、电力、互联网之后的下一代颠覆性的核心技术。如果说蒸汽机释放了人们的生产力,电力解决了人们基本的生活需求,互联网彻底改变了信息传递的