[发明专利]区块链中轻节点的数据同步方法、节点、存储介质及设备有效
申请号: | 202310167843.X | 申请日: | 2023-02-27 |
公开(公告)号: | CN115860742B | 公开(公告)日: | 2023-06-27 |
发明(设计)人: | 王晓亮;姚鹏飞;宁志伟 | 申请(专利权)人: | 北京溪塔科技有限公司 |
主分类号: | G06Q20/38 | 分类号: | G06Q20/38;G06Q20/40;G06F16/27 |
代理公司: | 北京德崇智捷知识产权代理有限公司 11467 | 代理人: | 郭美丽 |
地址: | 100086 北京市海淀区青云里满庭*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 区块 链中轻 节点 数据 同步 方法 存储 介质 设备 | ||
1.一种区块链中轻节点的数据同步方法,其特征在于,所述方法包括:
当块高为n-1的轻节点需要同步第n个区块的数据时,向区块链中的全节点获取所述第n个区块的区块信息和默克尔山脉MMR头,所述MMR头包括当前区块的区块哈希、当前区块的交易根、状态根和前一区块的MMR根,所述交易根是根据当前区块内所有交易哈希计算得到的,所述MMR根是根据MMR算法对当前区块的MMR证明进行计算得到的,所述MMR证明包括对所有区块的MMR头进行二叉树排列后,位于所述二叉树中预定位置处的MMR头的哈希,n≥1,所述预定位置是perk位置,若当前区块的MMR头在所述二叉树中的位置position=2P0+2P1+…+2Pk,P0>P1>…>Pk,则perk位置为,其中,P表示position,Pk是当前区块的编号的二进制表达式中加法项的项数,Pi是所述加法项的序列号;
获取本地存储的第n-1个区块的MMR根;
根据所述第n-1个区块的MMR根、所述第n个区块的区块信息和MMR根进行验证;
当验证通过时,将所述第n个区块的MMR头和MMR证明同步至本地。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第n-1个区块的MMR根、所述第n个区块的区块信息和MMR根进行验证,包括:
从所述第n个区块的区块信息中获取所有交易哈希,根据所有交易哈希计算交易根,验证计算得到的交易根与所述第n个区块的MMR头中的交易根是否一致;
验证所述第n个区块的MMR头中的MMR根与本地存储的所述第n-1个区块的MMR根是否一致。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述轻节点的块高与需要同步的区块的块高m不连续时,向区块链中的全节点获取第m个区块的区块信息、MMR头和MMR证明,m≥1;
根据所述第m个区块的区块信息、MMR头和MMR证明进行验证;
当验证通过时,将所述第m个区块的MMR头和MMR证明同步至本地。
4.根据权利要求3所述的方法,其特征在于,所述根据所述第m个区块的区块信息、MMR头和MMR证明进行验证,包括:
从所述第m个区块的区块信息中获取所有交易哈希,根据所有交易哈希计算交易根,验证计算得到的交易根与所述第m个区块的MMR头中的交易根是否一致;
根据MMR算法对所述MMR证明进行计算,验证计算得到的MMR根与所述第m个区块的MMR头中的MMR根是否一致。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述方法还包括:
接收携带有对象标识的查询请求,所述对象标识是交易标识或区块标识;
根据所述对象标识向区块链中的全节点查询对象信息;
对所述对象信息进行验证;
在验证通过后,将所述对象信息同步至本地。
6.根据权利要求5所述的方法,其特征在于,当所述对象标识是交易标识时,所述对象信息包括交易信息、交易树的默克尔证明、所述交易所属区块的MMR头和MMR证明,则所述对所述对象信息进行验证,包括:
验证所述对象信息中的MMR头与本地存储的MMR头是否一致;
根据所述交易信息计算交易哈希,验证计算得到的交易哈希与根据所述默克尔证明得到的交易哈希是否一致;
根据所述默克尔证明获取所述交易所属区块的所有交易哈希,根据所有交易哈希计算交易根,验证计算得到的交易根与所述MMR头中的交易根是否一致;
根据MMR算法对所述MMR证明进行计算,验证计算得到的MMR根与所述MMR头中的MMR根是否一致。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京溪塔科技有限公司,未经北京溪塔科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310167843.X/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置