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

亲,该文档总共13页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

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

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

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

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

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN113760353A(43)申请公布日2021.12.07(21)申请号202110993450.5G06F9/455(2006.01)(22)申请日2021.08.27(71)申请人浙商银行股份有限公司地址311200浙江省杭州市萧山区鸿宁路1788号(72)发明人陈权臧铖陈嘉俊尤士豪(74)专利代理机构杭州求是专利事务所有限公司33200代理人刘静(51)Int.Cl.G06F8/71(2018.01)G06F8/65(2018.01)G06F16/27(2019.01)G06Q40/04(2012.01)G06Q20/38(2012.01)权利要求书2页说明书6页附图4页(54)发明名称一种区块链智能合约版本控制方法及区块链系统(57)摘要本发明公开了一种区块链智能合约版本控制方法及区块链系统。使用节点构造智能合约版本控制交易,交易类型包括升级合约、切换合约版本、灰度控制、合约冻结、合约解冻和快速回滚,使用节点将智能合约版本控制交易发送给验证节点,验证节点验证通过后将交易广播至区块链网络中的其他验证节点;收到智能合约版本控制交易的验证节点将交易写入区块中,相互对区块进行共识,共识通过后所有验证节点执行区块中的智能合约版本控制交易,根据交易类型,对交易中目标合约地址对应的合约内容进行相应操作。本发明方法将智能合约地址与智能合约代码解耦,智能合约地址保持不变。本发明在虚拟机层实现智能合约版本控制,性能优异,功能完善,具有技术创新。CN113760353ACN113760353A权利要求书1/2页1.一种区块链智能合约版本控制方法,其特征在于,该方法包括:使用节点构造智能合约版本控制交易,所述交易的类型包括:升级合约、切换合约版本、灰度控制、合约冻结、合约解冻和快速回滚;交易类型为升级合约时,交易中包含新版本智能合约;交易类型为切换合约版本时,交易中包含待切换智能合约版本标签;交易类型为灰度控制时,交易中的目标智能合约需要提前部署对应的版本控制策略合约,所述版本控制策略合约用于控制灰度升级的具体策略;验证节点为每个智能合约维护一个当前生效版本指针、一个历史版本指针列表、一个合约状态标识、一个版本控制策略合约指针和一个版本计数器;所述当前生效版本指针指向最新生效版本的智能合约的地址;所述历史版本指针列表中的指针分别指向旧版本的智能合约的地址;所述合约状态标识包括正常和冻结状态;所述版本控制策略合约指针指向该智能合约的版本控制策略合约;所述版本计数器用于记录智能合约版本变更次数;使用节点将智能合约版本控制交易发送给区块链网络中的主验证节点,主验证节点校验交易的合法性,验证通过后将交易排序后打包并广播至区块链网络中的其他验证节点;收到智能合约版本控制交易的其他验证节点将再次验证交易合法性,验证通过后将交易写入区块中,相互对区块进行共识,共识通过后所有验证节点执行区块中的智能合约版本控制交易,根据交易的类型,对交易中目标合约地址对应的合约内容进行相应操作,具体为:(1)合约升级操作,验证节点验证新版本智能合约并存储,将当前生效版本指针添加至历史版本指针列表,并将当前生效版本指针指向存储的新版本智能合约,然后将当前的版本计数器加一;(2)版本切换操作,通过交易中的版本标签信息检索历史版本指针列表,检索到待切换智能合约后将当前生效版本指针添加至历史版本指针列表,并将当前生效版本指针替换为检索到的历史版本指针,并将该历史版本指针从历史版本指针列表删除,版本计数器不进行调整;(3)合约冻结操作,将当前生效版本指针添加至历史版本指针列表,并将当前生效版本指针指向一个空值,并将合约状态标识置为冻结状态,冻结智能合约后,用户将无法调用;(4)合约解冻操作,将当前生效版本指针替换为历史版本指针列表中最新加入的历史版本指针,并将该历史版本指针从历史版本指针列表删除,智能合约解冻后用户可正常调用;(5)快速回滚操作,从历史版本指针列表中获取最新加入的历史版本指针,并将该历史版本指针从历史版本指针列表删除,然后将当前生效版本指针替换为获取到的最新历史版本指针,并将版本计数器减一;(6)灰度控制操作,根据版本控制策略合约指针指向的版本控制策略合约进行策略选择,根据返回结果执行当前生效版本指针或历史版本指针列表中合约返回结果指定的特定版本智能合约。2.根据权利要求1所述的区块链智能合约版本控制方法,其特征在于,所述使用节点成功部署智能合约后,智能合约地址不会再发生变化,基于单一的智能合约地址,对智能合约进行版本控制。3.根据权利要求1所述的区块链智能合约版本控制方法,其特征在于,所述版本控制交2CN113760353A权利要求书2/2页易和普通交易一样需要经过验证后再通过共识达成一致