双向链接的区块链结构制造技术

技术编号:24297555 阅读:35 留言:0更新日期:2020-05-26 21:30
本发明专利技术涉及一种用于在双向链接的区块链结构(100)中防篡改存储数据(210)的方法。该方法包括:创建用于扩充区块链结构(100)的附加区块B

Blockchain structure of two-way link

【技术实现步骤摘要】
【国外来华专利技术】双向链接的区块链结构本专利技术涉及用于存储数据的一种方法和一种电子数据存储系统。本专利技术尤其涉及用于在双向链接的区块链结构中防篡改存储数据的一种方法和一种电子数据存储系统。改变或甚至有目的地篡改电子存储器中的数字编码数据的可能性是一项技术挑战。从现有技术中知道了用于保护数据的区块链结构即区块链接结构。这些区块链结构是单向链接的区块链结构。例如采用相应的区块链结构以记录密码货币交易比如比特币支付系统的交易。在此,区块链结构提供了以区块形式布置的数据组的可扩充名单。各自区块的完整性在现有技术中在采用各自区块的呈哈希值形式的密码校验值的情况下通过单向链接来保护。由于每个区块包含在前区块的密码校验值连同存储于在前区块中的密码校验值,故得到所述区块的链接。在此,每个区块包括基于所有在先区块内容的校验值。因此难以事后篡改这种区块链,因为为此不是只须篡改单独的区块,而是要篡改全部的在后区块,因为每个在后区块的校验值尤其基于要篡改的区块。如果要篡改的区块被实际篡改,则其校验值改变。这种改变后的校验值不再匹配于在后区块的校验值,由此可识别篡改并且在借助校验值检查时引起注意。但是,已知的区块链结构仅实现单向链接和进而数据保护,因为在链接时总是只考虑在前区块的数据内容。因此,可以依据链接来检查是否已篡改了已公开的区块链结构的在先区块。但无法检查已公开的区块链结构是否完整。尤其是无法检查区块链结构的一部分是否可能已裁减。还无法检查最后区块是否已被篡改。另外,在区块链结构的检查和保护中采用常见的哈希法。区块链结构的各自区块通过哈希值单向相互关联。为了能检查这种具有单向相互关联区块的区块链结构是否被篡改,人们不仅需要各自区块的全部信息,也需要其各自的哈希值。另外,这种区块链结构的检查需要以相应区块链结构的第一区块开始并以最后区块结束。本专利技术基于以下任务,即,提供一种改进的用于防篡改存储数据的方法。本专利技术所基于的任务分别利用独立权利要求的特征来完成。在从属权利要求中说明本专利技术的实施方式。实施方式涉及一种用于在采用双向链接的区块链结构情况下在电子存储器中防篡改存储数据的方法。该区块链结构包含若干区块,每个区块包含有用数据和关联数据,其中,该区块链结构的每个区块的有用数据能依据该区块链结构的、与相应区块双向链接的预定数量的区块的关联数据来验证。该方法包括:·提供双向链接的区块链结构,·提供待存储数据,·创建用于扩充该区块链结构的附加区块Bi,该附加区块包含作为有用数据的待存储数据,·创建附加区块Bi与预定数量的在前区块的双向链接,所述在前区块在区块链结构中位于该附加区块之前,其中,该双向链接的创建包括:执行附加区块至预定数量的在前区块的反向关联和执行预定数量的在前区块至附加区块的正向关联。该反向关联包含:○计算待存储数据的校验值,○从待存储数据的校验值中抽取若干具有校验值片段的第一组,其中,所述第一组的数量对应于所述在前区块的预定数量,○根据分布图在预定数量的在前区块的其中一个区块的关联数据中分散存储所述第一组中各自一个第一组的校验值片段,其中,该分布图与待存储数据相关。此外,针对预定数量的在前区块中每个单独区块的正向关联包含:○计算相应在前区块的有用数据的校验值,○从相应在前区块的有用数据的校验值中抽取具有校验值片段的第二组,○根据分布图在附加区块的关联数据中分散存储第二组的校验值片段,其中,该分布图与相应在前区块的有用数据相关。实施方式可以具有以下优点,即,它们允许提供一种双向链接的区块链,其区块借助与区块相关的双向链接函数相互链接。链接此时允许区块链结构被双向检查是否真实或被篡改。在此,该区块链结构不是只能在一个方向上被检查,而是可在两个方向上被检查。“区块链结构”是指形成区块链的数据结构。“区块链”是指有序排列的数据结构,其包括若干相互链接的数据块。尤其是,区块链是指如下数据库,其完整性即防随后篡改的安全性通过在各自在后数据组中存储在先数据组的校验值比如哈希值来保护。校验值在此对应配属于在先数据组的内容且明确表征该内容。如果在先数据组的内容被改变,则它不再满足检查特征,由此察知所述改变。在已知区块链结构的情况下,比如区块链的每个区块通过哈希值被明确识别并关联到区块链中的包含其哈希值的在前区块。关于区块链的例子,参见https://en.wikipedia.org/wiki/Block_chain_(database)和“精通比特币”(第七章,区块链,第161页及后页)。区块链概念例如在2008年由笔者中本聪撰写的关于密码货币比特币的白皮书中加以描述(“比特币:P2P电子现金系统”(https://bitcoin.org/bitcoin.pdf))。在此实施例中,区块链的每个区块在其标题中包含全部在前区块标题的哈希。因此,区块的顺序被明确固定,因此出现一种链结构。通过如此实现的各自区块相互链接而做到了:在未同样改变所有在后区块的情况下无法随后改动在前区块。例如可以如此提高区块链结构的安全性,即,其被公布或者说公众可获得,因此允许将区块链结构的现有副本与同一区块链结构的其它公布的或可获得的副本相比较。数据用校验值是对应配属于相应数据的值,其如此明确表征该数据,即,数据完整性可以依据校验值被检查。例如根据相应数据获得校验值。呈校验和形式的校验值例如提供如下值,该值已根据作为初始数据的相应数据算出且被配置用于识别数据中的至少一个误码。根据校验和用计算规则的复杂性,可以识别或也纠正超过一个的错误。已知的校验值或校验和例如可以基于数据值加和、横额计算、奇偶校验位计算、数据权重平均值的计算或者更复杂的计算方法,比如像循环冗余检查或使用哈希函数。校验值包括例如一串字符。它能以数字形式作为位串被示出。校验值片段是校验值串列的子串。这种子串包含一个或多个位。一组校验值片段是校验值串列的一组子串。在此,该子串可以分别包含同样数量的位或至少有时包含不同数量的位。例如,第一组校验值片段包含一串校验值的每个第n位、比如每个第2位、第3位或第4位,以该串的第一位开始;而第二组至第(n-1)组的校验值片段包含该串校验值的每个第n位比如每个第2位、第3位或第4位,以该串的第二、第三…第(n-1)位开始。“将一组校验值片段分散存储在区块的关联数据中”表示根据分布图如下存储,即,各自校验值片段没有直接前后相继。因此,为了能识别在区块关联数据中的校验值片段而需要知道相应的分布图。“将若干组校验值片段分散存储至区块链结构的若干区块”表示在若干区块的不同区块的关联数据中存储各自组。各自组又能分别分散存储在相应区块的关联数据中。有用数据表示要防篡改存储在区块链结构的区块中的数据。有用数据包括例如语音数据、文字数据、符号数据、图形数据和/或声音数据、另外,有用数据也可以包含关于区块的或存储在区块中的其它数据的附加信息即元数据。例如附加信息包含对处理存储在区块中的其它数据的说明(比如数据格式或字符编码)和/本文档来自技高网...

【技术保护点】
1.一种用于在采用双向链接的区块链结构(100)的情况下在电子存储器(206)中防篡改存储数据(210)的方法,其中,该区块链结构(100)包含若干区块(102,…,108),每个区块包含有用数据和关联数据,其中,该区块链结构(100)的每个区块(102,…,108)的有用数据能依据该区块链结构(100)的、与相应区块(102,…,108)双向链接的预定数量的区块(102,…,108)的所述关联数据来验证,其中,该方法包括:/n·提供该双向链接的区块链结构(100),/n·提供所述待存储的数据(210),/n·创建用于扩充该区块链结构(100)的附加区块B

【技术特征摘要】
【国外来华专利技术】20171019 DE 102017218736.01.一种用于在采用双向链接的区块链结构(100)的情况下在电子存储器(206)中防篡改存储数据(210)的方法,其中,该区块链结构(100)包含若干区块(102,…,108),每个区块包含有用数据和关联数据,其中,该区块链结构(100)的每个区块(102,…,108)的有用数据能依据该区块链结构(100)的、与相应区块(102,…,108)双向链接的预定数量的区块(102,…,108)的所述关联数据来验证,其中,该方法包括:
·提供该双向链接的区块链结构(100),
·提供所述待存储的数据(210),
·创建用于扩充该区块链结构(100)的附加区块Bi(110),该附加区块包含作为有用数据(150)的所述待存储数据(210),
·创建该附加区块Bi(110)与预定数量的在前区块的双向链接(109),所述在前区块在该区块链结构(100)中位于该附加区块(110)之前,
其中,该双向链接(109)的创建包括:执行该附加区块(110)至所述预定数量的在前区块的反向关联和执行所述预定数量的在前区块至该附加区块(110)的正向关联,
其中,该反向关联包含:
o计算所述待存储数据(210)的校验值,
o从所述待存储数据(210)的校验值中抽取若干具有校验值片段的第一组,其中,所述第一组的数量对应于所述在前区块的预定数量,
o根据分布图在所述预定数量的在前区块的其中一个区块的关联数据中分散存储所述第一组中各自一个第一组的校验值片段,其中,该分布图与待存储数据相关,
其中,针对所述预定数量的在前区块中每个单独区块的正向关联包括:
o计算相应在前区块的有用数据的校验值,
o从相应在前区块的有用数据的校验值中抽取第二组的校验值片段,
o根据分布图在该附加区块的关联数据(152)中分散存储第二组的校验值片段,其中,该分布图与相应在前区块的有用数据相关。


2.根据权利要求1的方法,其中,该区块链结构(100)的每个区块(102,…,108)分别与该区块链结构(100)的若干在前区块和/或在后区块双向链接,其中,两个双向相互链接的区块分别包含关联数据,所述关联数据与两个双向相互链接的区块的各自另一个区块的有用数据相关。


3.根据前述权利要求之一的方法,其中,该方法还在创建该双向链接(109)之前包括:
·将所述待存储数据(210)分为若干数据组,
·对于每个数据组计算校验值(PW1,…,PW8),
·作为关联数据(152)在该附加区块Bi(110)中存储该数据组的校验值(PW1,...,PW8),
其中,在所述关联数据中存储所述校验值片段分别包含:至少部分覆写已有关联数据的片段。


4.根据前述权利要求之一的方法,其中,所述待存储数据(210)的划分包括:将待存储在该区块链结构(100)的附加区块Bi(110)中的数据(210)Di分为等长的b个数据组,其中,针对每个数据组计算作为校验值(PW1,…,PW8)的哈希值Hx:



其中,表示在将字符串s分为r个等长数据片段时的所述字符串s的第l个数据片段,表示所述第l个数据片段的哈希值。


5.根据前述权利要求之一的方法,其中,所述数据组的校验值(PW1,...,PW8)的存储还包括:
·对于所述数据组的待存储的校验值(PW1,...,PW8)创建纠错代码(FC1,...,FC4),
·作为关联数据(152)在该附加区块Bi(110)中存储该纠错代码(FC1,…,FC4)。


6.根据权利要求5的方法,其中,所述待存储的校验值(FC1,...,FC4)按照所述关联数据(152)的两个串V1(154)和V2(156)布置,并且该纠错代码(FC1,...,FC4)作为关联数据(152)的第三串V3(158)以所述前两个串(154,156)的按位XOR关联的形式来创建:
V3[x]=XOR(V1[x],V2[x]),
其中,x表示在各自串(154,156,158)中的第x位。


7.根据前述权利要求之一的方法,其中,该区块链结构(100)的每个区块分别分配有所有权人,其中,每个所有权人分别分配有包含私人密码密钥和公用密码密钥的非对称密码密钥对,其中,具有校验值片段的所述第一和第二组分别用配属于该区块链结构(100)中如下区块的所有权人的私人密码密钥被加密,在该区块的关联数据中存储有相应组的校验值片段。


8.根据前述权利要求之一的方法,其中,具有校验值片段的所述第一和第二组分别按位分散存储在该区块链结构(100)的相应区块的关联数据中。


9.根据前述权利要求之一的方法,其中,在该第一组中的校验值片段数量分别依据该区块链结构(100)的、相应组的校验值片段存储在其关联数据中的区块(102,…,108)与该附加区块Bi(100)的间距而改变,其中,在该第二组中的校验值片段数量分别依据该区块链结构(100)的、根据其有用数据算出并抽取相应组校验值片段的区块(102,…,108)与该附加区块Bi(110)的间距而改变。


10.根据权利要求9的方法,其中,该附加区块Bi(110)的双向链接(109)的创建包含与该区块链结构(100)的k个区块Bv(102,…,108)的双向链接,其中,v=i-x并且x=1,…,k,这些区块紧接在该附加区块Bi(110)之前,
其中,为了针对所述k个区块Bv(102,…,108)中每一个区块的反向关联而根据所述待存储数据Di分别按照下式计算反向关联数据Verw:



其中,H(Bi.Di)表示该区块Bi(110)的数据Di的哈希值,表示从偏移值g开始从字符串s中选择并接连排列每第x个字符,O(Bv).KPr表示该区块Bv(102,…,108)的所有权人O(Bv)的私人密码密钥KPr,E(m,K)表示用该密码密钥K加密的字符串m,
对于反向关联数据Verw按照下式计算用于反向关联的定位子Porw:



该定位子实现与所述待存储数据Di相关的分布图,其中,表示所述字符串s1和s2的接连排列,
其中,所述k个区块Bv(102,…,108)的关联数据分别被分为个片段,并且其中,针对所述k个区块Bv(102,…,108)中每一个区块的反向关联包含以下方法步骤,以p=0、q=1开始:
4)q=(((q+Porw[p]+1)%w)+1),
5)Bv,Vq[o+p]=Verw[p],此时
6)p=p+1,如果p≤|Verw|,其中,|Verw|表示反向关联数据Verw的长度,则反向关联以步骤1)继续,否则结束执行针对相应区块Bv(102,…,108)的反向关联,
其中,为了针对所述k个区块Bv(102,…,108)中每一个区块的正向关...

【专利技术属性】
技术研发人员:I·科马罗夫M·佩施克P·贾纳西克
申请(专利权)人:联邦印刷有限公司柏林工业大学
类型:发明
国别省市:德国;DE

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1