[发明专利]基于存储证明的区块链方法及系统有效
申请号: | 201911106988.9 | 申请日: | 2019-11-13 |
公开(公告)号: | CN111078686B | 公开(公告)日: | 2023-06-06 |
发明(设计)人: | 邓尧;刘志强;龙宇;刘振;谷大武;周琪武 | 申请(专利权)人: | 上海交通大学 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/27;G06Q20/38;G06Q40/04 |
代理公司: | 上海汉声知识产权代理有限公司 31236 | 代理人: | 胡晶 |
地址: | 200240 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 存储 证明 区块 方法 系统 | ||
1.一种基于存储证明的区块链方法,其特征在于,包括:
存储数据生成步骤:每个新加入网络的新矿工利用生成需要存储的数据;
空间声明交易广播步骤:新加入网络的新矿工根据存储的数据生成梅克尔承诺,新矿工再生成并广播一笔空间声明交易,向全网宣布自己投入硬盘空间的大小以及对所存储的数据的梅克尔承诺;
主链确定步骤:空间声明交易被其他矿工收到后,新加入网络的新矿工从网络中收到一系列区块,验证一系列区块的合法性后保留合法的区块,计算保留的合法的区块中每个区块的分数,进而计算每条链的分数,链分数最高的链被确定为主链,并在主链上继续挖矿;
交易接收与验证步骤:新矿工持续接收网络中的交易,并对交易进行合法性验证,将验证通过的交易选入交易池,等待被打包进区块;
区块广播步骤:新矿工从交易池中选择一些交易,以它们为叶节点得到梅克尔树根tx_root,新矿工用主链上最新区块的哈希值hash作为随机源,随机生成之前所用pebblinggraph图中的节点序号作为挑战节点,旷工将hash、空间证明space_proof、交易的梅克尔树根tx_root和所有交易打包成一个新区块并广播;
区块验证步骤:除新旷工以外的其他矿工收到该新区块之后,验证新区块的合法性,验证通过后,其他矿工更新本地的区块链,并在更新后的区块链的主链基础上继续挖矿;
所述存储数据生成步骤:
利用pebbling graph图来生成需要存储的数据;
pebbling graph图中每个节点都有一个标记值L,pebbling graph图中所有节点的标记值即为矿工需要存储的数据,标记值的计算方法如下:
设pebbling graph图共有N个节点,序号分别为1至N,则每个节点的标记值为:
H(pk,该节点序号,该节点所有父节点的标记值)(1)
其中,H为一个密码学哈希函数,pk为矿工的公钥,节点i的父节点意味着拥有一条指向节点i的有向边的节点,i为节点的序号,逗号表示字符串联。
2.根据权利要求1所述的基于存储证明的区块链方法,其特征在于,所述空间声明交易广播步骤:
所述梅克尔承诺是以所有数据为叶节点所形成的梅克尔树的树根,梅克尔树是一种用哈希函数建立的二叉树结构,最底层的叶子节点是数据块,每个非叶节点的内容等于其子节点串联起来后的哈希值,最终得到一个梅克尔树根;
根据哈希函数的抗碰撞性,只要梅克尔树根确定,那么所有的数据块都不可被篡改;
所述空间声明交易的交易格式为(N,pk,γ),其中,γ为梅克尔树的树根。
3.根据权利要求2所述的基于存储证明的区块链方法,其特征在于,所述主链确定步骤:
所述验证一系列区块的合法性包括:
验证梅克尔树根tx_root字段是否正确计算;
验证空间证明space_proof字段是否合法,包括:挑战节点和它们所有父节点的标记值是否满足标记值的计算公式(1);验证挑战节点的梅克尔证明是否合法;
对交易进行合法性验证,包括:验证交易的签名是否合法;验证转账交易是否被双重花费;
所述挑战节点指:矿工用主链上最新区块的哈希值hash作为随机源,随机生成之前所用pebbling graph图中的节点序号;
所述空间证明包括:挑战节点及其所有父节点的标记值,挑战节点及其所有父节点的梅克尔证明;
所述计算保留的合法的区块中每个区块的分数包括:
先引入一个随机种子Δ=(space_proof,pk,pre_hash),其中space_proof即为该区块的空间证明,pk为该矿工公钥,pre_hash为前一个区块的哈希值,进而每个区块分数S的计算公式如下:
其中,T为哈希函数H的输出长度;M为该产生该区块的矿工声明的硬盘空间大小;
进而计算每条链的分数,即将每条链上的区块分数叠加获得链的分数,链分数最高的链被确定为主链。
4.根据权利要求1所述的基于存储证明的区块链方法,其特征在于,所述交易接收与验证步骤:
所述交易包括:转账交易和空间声明交易;
对交易进行合法性验证,验证内容如下:
交易的签名是否合法;
转账交易是否被双重花费。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海交通大学,未经上海交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911106988.9/1.html,转载请声明来源钻瓜专利网。