[发明专利]一种基于区块链的区块共识方法以及相关设备有效
申请号: | 202110273266.3 | 申请日: | 2021-03-12 |
公开(公告)号: | CN112685796B | 公开(公告)日: | 2021-06-18 |
发明(设计)人: | 刘区城;李茂材;王宗友;蓝虎;朱耿良;周开班;刘攀;时一防;廖志勇;黄焕坤 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F21/64 | 分类号: | G06F21/64;G06Q20/38;G06Q40/04 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 熊永强;杜维 |
地址: | 518057 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 区块 共识 方法 以及 相关 设备 | ||
1.一种基于区块链的区块共识方法,其特征在于,包括:
获取区块高度为M且在第N轮生成的提议区块,对所述提议区块进行合法性验证;M和N均为正整数;
若所述提议区块的合法性验证结果为合法结果,则通过智能合约执行所述提议区块中的交易数据,得到目标合约执行结果,将所述提议区块的区块哈希值与所述目标合约执行结果关联缓存至临时列表中;所述临时列表包括区块高度为M的N个合约执行结果,所述N个合约执行结果包括所述目标合约执行结果;所述临时列表是通过键值对来存储所述提议区块的区块哈希值与所述目标合约执行结果,所述提议区块的区块哈希值为所述键值对中的键,所述目标合约执行结果为所述键值对中的值;
在通过所述智能合约执行所述交易数据的过程中,并行对所述提议区块进行两轮共识投票处理,得到第一共识结果;
若所述第一共识结果为共识通过结果,则在所述临时列表中获取所述提议区块的区块哈希值所映射的目标合约执行结果,将所述提议区块和所述目标合约执行结果关联存储至区块链中;
将所述临时列表中区块高度为M的N个合约执行结果删除。
2.根据权利要求1所述的方法,其特征在于,所述对所述提议区块进行合法性验证,包括:
获取所述提议区块中的交易数据,对所述交易数据进行哈希运算,得到待验证哈希值;
根据所述提议区块中的默克尔树路径对所述待验证哈希值进行哈希运算,得到待验证树根哈希值;
从所述提议区块的区块头中获取默克尔树根哈希值;
若所述待验证树根哈希值和所述默克尔树根哈希值相同,则确定所述提议区块的合法性验证结果为合法结果;
若所述待验证树根哈希值和所述默克尔树根哈希值不相同,则确定所述提议区块的合法性验证结果为非法结果。
3.根据权利要求1所述的方法,其特征在于,所述验证所述提议区块的合法性,包括:
获取所述提议区块中的交易数据;
调用交易验证函数对所述交易数据进行验证,得到交易验证结果;
若所述交易验证结果为有效结果,则确定所述提议区块的合法性验证结果为合法结果;
若所述交易验证结果为无效结果,则确定所述提议区块的合法性验证结果为非法结果。
4.根据权利要求1所述的方法,其特征在于,所述验证所述提议区块的合法性,包括:
在区块链中获取所述提议区块的父区块的区块哈希值,作为目标父区块哈希值;
从所述提议区块的区块头中获取父区块哈希值,作为待验证父区块哈希值;
若所述待验证父区块哈希值和所述目标父区块哈希值相同,则确定所述提议区块的合法性验证结果为合法结果;
若所述待验证父区块哈希值和所述目标父区块哈希值不相同,则确定所述提议区块的合法性验证结果为非法结果。
5.根据权利要求1所述的方法,其特征在于,所述验证所述提议区块的合法性,包括:
获取所述提议区块相关联的签名数据;
获取提议节点的公钥,通过所述公钥验证所述签名数据,得到签名验证结果;
若所述签名验证结果为验签成功,则确定所述提议区块的合法性验证结果为合法结果;属于验签成功的签名数据,是由所述提议节点通过所拥有的私钥对所述提议区块进行签名得到的;所述属于验签成功的签名数据相关联的提议区块是由所述提议节点生成的;
若所述签名验证结果为验签失败,则确定所述提议区块的合法性验证结果为非法结果。
6.根据权利要求1所述的方法,其特征在于,所述通过智能合约执行所述提议区块中的交易数据,得到目标合约执行结果,将所述提议区块的区块哈希值与所述目标合约执行结果关联缓存至临时列表中,包括:
获取所述提议区块中的交易数据,调用用于执行所述交易数据的智能合约中的交易执行函数;
根据所述交易执行函数获取针对所述交易数据的读取数据;
根据所述读取数据以及所述交易数据执行所述交易执行函数,得到所述交易数据的目标合约执行结果;
将所述提议区块的区块哈希值与所述目标合约执行结果关联缓存至临时列表中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110273266.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:感知数据获取方法和装置
- 下一篇:环保型废水处理系统