[发明专利]一种自动切换区块链共识协议的方法、系统和装置有效
申请号: | 202010849488.0 | 申请日: | 2020-08-21 |
公开(公告)号: | CN111726370B | 公开(公告)日: | 2020-11-27 |
发明(设计)人: | 李翰林 | 申请(专利权)人: | 支付宝(杭州)信息技术有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L29/08;G06Q40/04 |
代理公司: | 成都七星天知识产权代理有限公司 51253 | 代理人: | 杨永梅 |
地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 自动 切换 区块 共识 协议 方法 系统 装置 | ||
1.一种自动切换区块链共识协议的方法,所述方法由区块链节点执行,其包括:
接收与共识协议切换相关的交易请求,并基于所述交易请求调用共识协议切换的智能合约,将所述智能合约中共识协议切换的触发条件和目标共识协议的标识写入账本;
根据所述账本判断当前环境是否满足所述共识协议切换的触发条件,当判断结果为满足时,调用所述目标共识协议;
基于所述目标共识协议执行交易的共识。
2.根据权利要求1所述的方法,所述方法还包括:
当所述共识协议切换完成后,在所述账本中记录切换成所述目标共识协议的切换参数。
3.根据权利要求1所述的方法,所述目标共识协议为已经标准化的共识协议,所述已经标准化的共识协议包括:
创建模块,所述创建模块用于创建区块;
填充模块,所述填充模块用于将交易填充至所述区块并完成所述区块的打包;
广播模块,所述广播模块用于确定具有广播资格的节点,所述具有广播资格的节点将生成的所述区块广播给其他节点;
验证模块,所述验证模块用于验证所述区块。
4.根据权利要求1所述的方法,所述将所述智能合约中共识协议切换的触发条件和目标共识协议的标识写入账本,包括:
基于原始共识协议,对所述交易请求进行共识;
当所述交易请求完成共识后,将所述共识协议切换的触发条件和所述目标共识协议的标识写入所述账本。
5.根据权利要求1所述的方法,所述当前环境至少反映以下一种或多种信息:
当前区块的块高、当前时间、当前所述区块链中至少一个账户的账户金额、当前所述区块链中节点数量和当前所述区块链中至少一个节点对切换的投票结果。
6.根据权利要求5所述的方法,所述当前环境包括当前所述区块链中至少一个节点对切换的投票结果,
所述根据所述账本判断当前环境是否满足共识协议切换的触发条件,包括:
获取投票将原始共识协议切换为所述目标共识协议相关的投票交易请求;
调用投票的智能合约,确定将所述原始共识协议切换为所述目标共识协议的投票结果;
判断所述投票结果是否满足所述触发条件。
7.根据权利要求2所述的方法,所述方法还包括:
在所述区块链中加入新节点,所述新节点对区块进行验证,包括:
从所述新节点的账本中读取所述目标共识协议切换的切换参数;
基于生成所述区块时的相关信息和所述切换参数,确定验证所述区块的共识协议。
8.根据权利要求3所述的方法,所述当判断结果为满足时,调用所述目标共识协议,包括:
发起所述目标共识协议的调用请求,所述调用请求对应于所述创建模块、所述填充模块、所述广播模块和所述验证模块中一个或多个;
基于至少一个接口,根据所述调用请求调用对应的模块,以及获取所述对应的模块执行的结果。
9.一种自动切换区块链共识协议的系统,所述系统位于区块链节点上,所述系统包括:
记录模块,用于接收与共识协议切换相关的交易请求,并基于所述交易请求调用共识协议切换的智能合约,将所述智能合约中共识协议切换的触发条件和目标共识协议的标识写入账本;
调用模块,用于根据所述账本判断当前环境是否满足所述共识协议切换的触发条件,当判断结果为满足时,调用所述目标共识协议;
执行模块,用于基于所述目标共识协议执行交易的共识。
10.根据权利要求9所述的系统,所述记录模块还用于:
当所述共识协议切换完成后,在所述账本中记录切换成所述目标共识协议的切换参数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于支付宝(杭州)信息技术有限公司,未经支付宝(杭州)信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010849488.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:联合训练业务模型的方法及装置
- 下一篇:一种智能合约的更新方法和装置