[发明专利]一种基于区块链跨链的数据交叉存储方法有效
申请号: | 201910908631.6 | 申请日: | 2019-09-25 |
公开(公告)号: | CN110719322B | 公开(公告)日: | 2021-06-22 |
发明(设计)人: | 信俊昌;姚钟铭;郝琨;王之琼;蒋忠中;范子嘉;罗艺栖;李云飞 | 申请(专利权)人: | 东北大学 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 沈阳东大知识产权代理有限公司 21109 | 代理人: | 梁焱 |
地址: | 110819 辽宁*** | 国省代码: | 辽宁;21 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 区块 链跨链 数据 交叉 存储 方法 | ||
1.一种基于区块链跨链的数据交叉存储方法,其特征在于,包括下述步骤:
步骤1:建立n条区块链,基于PBFT共识机制向区块链中添加区块,若有区块链添加至触发转移区块条件的区块,执行步骤2至步骤5;若没有区块链添加至触发转移区块条件的区块,继续基于PBFT共识机制向区块链中添加区块;
步骤2:选取一条添加至触发转移区块条件的区块的区块链记为original链,将original链添加至的触发转移区块条件的区块记为transition块,将除original链之外的n-1条区块链构成非original链集合;
步骤3:在非original链集合中选取一条用于original链转移transition块的区块链记为select链;
步骤3.1:初始化k=1、途径区块链集合S为空集,记K为非original链集合中的区块链总数;
步骤3.2:利用随机函数从非original链集合中随机选取一条不属于途径区块链集合S的区块链记为sk,将区块链sk添加进途径区块链集合S中;
步骤3.3:若区块链sk添加至触发转移区块条件的区块,则进入步骤3.4;若区块链sk未添加至触发转移区块条件的区块,则将区块链sk作为select链,将区块链sk从途径区块链集合S中剔除,进入步骤4;
步骤3.4:若k=K,则将区块链sk作为select链,将区块链sk从途径区块链集合S中剔除;若kK,则令k=k+1,返回步骤3.2;
步骤4:在select链中添加完整的transition块;
步骤4.1:在select链中添加transition块,用select链添加的transition块的区块头中的PrevBlockHash字段记录transition块在select链的前块哈希;
步骤4.2:在select链添加的transition块中额外添加ConnectBlockHash字段,用ConnectBlockHash字段记录transition块原来在original链的前块哈希;
步骤5:在original链及途径区块链集合S中的区块链中添加区块头;所述区块头包括PrevBlockHash字段、NextBlockHash字段、TransLocation字段、Merkle Root字段;
区块链中添加的区块头的PrevBlockHash字段用于记录该区块头在该区块链的前块哈希;Merkle Root字段用于记录transition块的Merkle树根,Merkle树根为transition块的数据摘要;
若途径区块链集合为空集,original链添加的区块头的NextBlockHash字段用于记录select链添加的transition块在select链的前块哈希,original链添加的区块头的TransLocation字段用于记录select链添加的transition块的位置信息ChainID,Height;其中,ChainID为select链的ID,Height为select链添加的transition块在select链上的位置;
若途径区块链集合为非空,记途径区块链集合S={s1,...,sr,...,sR},sr为途径区块链集合S中的第r条区块链,r∈{1,...,R},R为途径区块链集合S中的区块链总数,区块链sr添加的区块头的位置信息为ChainIDr,Heightr,ChainIDr为区块链sr的ID,Heightr为区块链sr添加的区块头在区块链sr上的位置,
original链添加的区块头的NextBlockHash字段用于记录区块链s1添加的区块头在区块链s1的前块哈希,original链添加的区块头的TransLocation字段用于记录区块链s1添加的区块头的位置信息ChainID1,Height1,
若R=1,区块链s1添加的区块头的NextBlockHash字段用于记录select链添加的transition块在select链的前块哈希,区块链s1添加的区块头的TransLocation字段用于记录select链添加的transition块的位置信息ChainID,Height,
若R1,区块链sii∈{1,...,R-1}添加的区块头的NextBlockHash字段用于记录区块链si+1添加的区块头在区块链si+1的前块哈希,区块链si添加的区块头的TransLocation字段用于记录区块链si+1添加的区块头的位置信息ChainIDi+1,Heighti+1,区块链sR添加的区块头的NextBlockHash字段用于记录select链添加的transition块在select链的前块哈希,区块链sR添加的区块头的TransLocation字段用于记录select链添加的transition块的位置信息ChainID,Height。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东北大学,未经东北大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910908631.6/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置