[发明专利]区块链系统中状态证明及执行区块的方法及装置有效
申请号: | 202111040896.2 | 申请日: | 2021-09-06 |
公开(公告)号: | CN113505138B | 公开(公告)日: | 2021-12-21 |
发明(设计)人: | 谢桂鲁;邓福喜 | 申请(专利权)人: | 支付宝(杭州)信息技术有限公司 |
主分类号: | G06F16/23 | 分类号: | G06F16/23;G06F16/27;G06F21/64 |
代理公司: | 北京亿腾知识产权代理事务所(普通合伙) 11309 | 代理人: | 张静娟;周良玉 |
地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 区块 系统 状态 证明 执行 方法 装置 | ||
本说明书提供一种区块链系统中状态证明及执行区块方法及装置,根据该方法,由于区块链可以包括存储历史状态数据的第一状态数据库,在第一状态数据库中可以直接以键‑值的形式存储区块链中已执行完成的区块中所涉及的各个参数的各个历史写入状态,及各个历史写入状态各自对应的版本号。因此,在读取或写入参数的状态时,IO操作的次数仅为一次,同时,还能实现快速查询历史状态。并且,对查询的结果进行存在性证明,从而避免了恶意的区块链节点篡改数据或者故意返回错误的查询结果的情况。
技术领域
本说明书一个或多个实施例涉及区块链技术领域,特别涉及一种区块链系统中状态证明及执行区块的方法及装置。
背景技术
区块链(Blockchain)是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。由于区块链具有去中心化、信息不可篡改、自治性等特性,区块链也受到人们越来越多的重视和应用。
目前来说,以太坊区块链将世界状态以树的形式进行存储。虽然可以实现历史状态的查询,但读取或写入状态时,需要多次IO操作。而Hyperledger Fabric区块链(简称Fabric区块链)仅维护最新的世界状态,历史状态则被存入区块数据库中。
发明内容
本说明书一个或多个实施例提供一种区块链系统中状态证明及执行区块的方法及装置。
根据第一方面,提供一种区块链系统中的状态证明方法,所述方法包括:
区块链节点针对目标参数在目标区块的目标状态,确定待验证区块;
所述区块链节点基于第一状态数据库中所述待验证区块的状态更新数据,获取所述目标状态的证明数据,所述状态更新数据包括在所述待验证区块写入的各个参数各自对应的写入状态和版本号;
所述区块链节点将所述证明数据发送给所述区块链的链下设备;
所述链下设备获取所述待验证区块的区块头中包括的状态哈希根;所述状态哈希根基于所述待验证区块的状态更新数据得到;
所述链下设备基于所述证明数据和所述状态哈希根,对所述目标状态进行验证。
根据第二方面,提供一种区块链系统中的状态证明方法,由区块链节点执行,所述方法包括:
针对目标参数在目标区块的目标状态,确定待验证区块;
基于第一状态数据库中所述待验证区块的状态更新数据,获取所述目标状态的证明数据,所述状态更新数据包括在所述待验证区块写入的各个参数各自对应的写入状态和版本号;
将所述证明数据发送给所述区块链的链下设备,以使所述链下设备基于所述证明数据和所述待验证区块的区块头中包括的状态哈希根对所述目标状态进行验证;所述状态哈希根基于所述待验证区块的状态更新数据得到。
根据第三方面,提供一种区块链系统中的状态证明方法,由链下设备执行,所述方法包括:
从区块链节点接收目标状态的证明数据,所述目标状态为所述区块链节点提供的目标参数在目标区块的状态,所述证明数据基于待验证区块的状态更新数据获取,所述状态更新数据包括在所述待验证区块写入的各个参数各自对应的写入状态和版本号;
获取所述待验证区块的区块头中包括的状态哈希根;所述状态哈希根基于所述待验证区块的状态更新数据得到;
基于所述证明数据和所述状态哈希根,对所述目标状态进行验证。
根据第四方面,提供一种在区块链系统中执行区块的方法,所述方法由区块链节点执行,所述区块链节点存储第一状态数据库,所述方法包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于支付宝(杭州)信息技术有限公司,未经支付宝(杭州)信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111040896.2/2.html,转载请声明来源钻瓜专利网。