数据微粒结构和防篡改存储数据的方法技术

技术编号:24021046 阅读:106 留言:0更新日期:2020-05-02 05:22
本发明专利技术涉及一种在数据块结构(100)中防篡改存储数据(D

Data particle structure and anti tampering method for data storage

【技术实现步骤摘要】
【国外来华专利技术】数据微粒结构和防篡改存储数据的方法本专利技术涉及用于数据存储的一种方法和一种电子数据存储系统。本专利技术尤其涉及用于在数据块结构中防篡改存储数据的一种方法和一种电子数据存储系统。安全存储数字编码数据是一项技术挑战,其中,数字编码数据被有效保护以防止可能的改变或甚至有目的的篡改。从现有技术中例如知道了用于数据保护的区块链。例如采用这种区块链来记录比如在比特币支付系统内的密码货币交易。区块链此时提供可扩充的数据组名单,这些数据组以区块或数据块形式排列。单独数据块的完整性在现有技术中在采用这些数据块的呈哈希值形式的密码校验值情况下通过单向链接来保护。由于每个数据块包括在先数据块的密码校验值连同存储于在先数据块内的密码校验值,故得到所述区块的链接。在此,每个数据块包括基于所有在先数据块内容的校验值。因此难以事后篡改这种区块链,因为为此并非只需要篡改单独的数据块,而是要篡改所有后续区块,因为每个后续数据块的校验值尤其基于待篡改数据块的校验值。如果一数据块当前被篡改,则其校验值改变。这种改变后的校验值不再匹配于在后数据块的校验值,由此篡改可被识别并且在借助校验值的检查中引起注意。关于区块链的例子,参见https://en.wikipedia.org/wiki/Block_chain_(database)和“精通比特币”(第七章,区块链,第161页及后页)。区块链概念例如在2008年由笔者中本聪撰写的关于密码货币比特币的白皮书中加以描述(“比特币:P2P电子现金系统”(https://bitcoin.org/bitcoin.pdf))。在此实施例中,区块链的每个区块在其标题中包含全部在先区块标题的哈希。因此,区块的顺序被明确固定,因此出现一种链结构。通过如此实现的各自区块相互链接而做到了:在未同样改变所有在后区块的情况下无法随后改动在先区块。本专利技术基于以下任务,即,提供一种改进的用于防篡改存储数据的方法。本专利技术所基于的任务分别通过独立权利要求的特征来完成。在从属权利要求中说明了本专利技术的实施方式。在已知区块链情况下,数据块以线性链结构相互链接或关联。链接在此分别以单向方式在按顺序前后紧接的数据块之间进行。链接是单向的,因为分别在后续数据块中存储按顺序前一个数据块的数据的哈希值。如果相应的在先数据块的数据被改变,则存储于在后数据块中的哈希值不再匹配于相应在先数据块的数据。因此,可依据在后数据块的哈希值检查在先数据块的数据完整性,但反之不适用。换言之,在后数据块可被任意改变而没有影响到与前一个数据块的链接,只要存储的哈希值保持不变。在已知区块链的情况下,第一在先数据块的哈希值分别被存储在按照顺序的后一个数据块中。因此,所述后一个数据块的哈希值以及所有其它按照顺序在后的数据块的哈希值与第一在先数据块的哈希值相关。因此,为了成功篡改第一在先数据块的数据,所有在后数据块的哈希值也必须被篡改。因此,在后数据块的数量越大,数据块的安全性也相应提高,因为所需的篡改成本随着在后数据块的数量而增加。但这导致了数据块的安全等级与位置相关且因此可能是截然不同的。例如由于未通过其他数据块而受到相应保护,区块链的最后区块可能被篡改。最后,在已知区块链中无法改变现有数据。尤其是无法删除现有数据块。如果数据块曾被添加至区块链,则所有使用者相信其不再被改变。为此,用于区块链的新数据块比如在密码货币比特币情况下在一计算密集型过程中产生,即所谓的挖矿。实际上,比特币网络的整个计算能力在挖矿时分摊至密码任务的完成、即工作量证明。为此应保证有效区块的产生牵涉到一定工作量,从而实际上可排除例如在51%攻击场合下的区块链事后改动。工作量证明在比特币情况下在于找到低于某个阈值的哈希值。阈值与挖矿难度成反比。可通过该阈值控制用于解决工作量证明的工作量,因为该值越低,越不可能找到合适的哈希。根据已知区块链,区块链的各自数据块因为一维线性链结构而不具有相邻数据块(区块链的最后数据块)、具有一个相邻数据块(区块链的第一数据块)或者两个相邻数据块(区块链的中间数据块)。但在结构上排除了以下情况,即,其中一个数据块可以具有超过两个的相邻数据块。与此相比,本专利技术提供一种用于防篡改存储数据的方法,其容许创建和检查具有多维链接或关联的数据块结构。这种多维数据块结构以下也仿照分子或分子结构地被称为数据微粒或数据微粒结构。比方说,可采用周期表中的原子,其原子价对应于价电子数量。为了实现多重关联的数据块结构,限定具有不同配价的数据块。在这里,这意味着数据块具有不同大小(即数据块数量)的校验组。这种数据块结构允许在数据块关联时的较高灵活性:通过定义具有不同配价的数据块,因此可以实现高级互联的数据微粒。它们可以有利地被用于在分散式IT系统中具有可靠同一性的数据分布。“数据微粒结构”在此和在下面是指包含至少一组数据块的数据块结构,其中,相应组的所有数据块通过共同组合函数彼此相互关联,该共同组合函数包含相应组的所有数据块的单独函数的组合。单独函数分别被分配给其中一个数据块并且与存储在相应数据块中的数据相关。为了防篡改保护,在数据微粒结构中针对共同组合函数的每个单独函数存储明确的组合相关系数,在这里,共同组合函数以明确的组合相关系数满足预定条件、尤其是极端值条件。在此提出的方法容许将一数据块与超过两个的相邻数据块相关联。另外,多维关联可能性可以提高相互连结的数据块的潜在安全性。实施方式涉及一种用于在电子存储器中在采用数据块结构情况下防篡改存储数据的方法,该数据块结构包含若干数据块,其中,每个数据块分配有一个函数,该函数与存储在相应数据块中的数据相关,其中,为了将第一组数据块的所有数据块相互关联以致第一组的每个数据块与第一组的所有其它数据块相关,该方法包括:·对于第一组数据块:○确定分配给第一组数据块的函数,○创建配属于第一组数据块的所有函数的第一组合,○确定用于第一组合的每个函数的组合相关系数,从而使第一组合满足第一预定条件,·对于第一组的每个数据块:○确定第一组数据块的分配给相应数据块的校验组,○在该校验组的所有数据块中存储针对相应数据块的函数所确定的系数。“数据块结构”是指如下数据结构,其包含若干数据块。尤其是,数据块结构是指如下数据库,其完整性即防篡改安全性通过存储分配给单独数据块的数据相关函数的组合的系数被密码保护。在此,函数分别对应配属于存储在其中一个数据块中的数据并且明确表征这些数据。例如每个函数包含这些数据的校验值比如哈希值作为参数。哈希值例如可以是借助MD5、Sha-1或Sha-2哈希算法所计算出的哈希值。数据块结构可以包含一组或多组数据块。一组或多组数据块中的第一组数据块可以在采用前述方法情况下如此相互关联,即,这些数据块所含数据被防篡改存储。数据块之间的关联是密码关联。在密码关联中,密码运算被用到要相互关联的数据块的各自数据内容。在相互关联时,相应的密码运算被用于所有要相互关联的数据块。在一数据块中可以存储数据以及一个或多个系数,其对存储数据的完整性和/或其它数据块本文档来自技高网...

【技术保护点】
1.一种用于在电子存储器(206)中在采用数据块结构(100)的情况下防篡改存储数据(D

【技术特征摘要】
【国外来华专利技术】20170925 DE 102017216974.51.一种用于在电子存储器(206)中在采用数据块结构(100)的情况下防篡改存储数据(D1,…,DN)的方法,该数据块结构包含若干数据块(102,…,110),其中,每个所述数据块(102,…,110)分配有一个函数(ξ1,…,ξN),该函数与存储在相应数据块(102,…,110)中的所述数据(D1,…,DN)相关,其中,用于将第一组(120,…,126)数据块(102,…,110)的所有数据块(102,…,110)相互关联以致该第一组(120,…,126)的每个数据块(102,…,110)与该第一组(120,…,126)的所有其它数据块(102,…,110)相关的方法包括:
·对于该第一组(120,…,126)数据块(102,…,110):
ο确定分配给该第一组(120,…,126)数据块(102,…,110)的所述函数(ξ1,…,ξN),
ο创建配属于该第一组(120,…,126)数据块(102,…,110)的所有函数(ξ1,…,ξN)的第一组合(Ψ),
ο确定用于该第一组合(Ψ)每个函数(ξ1,…,ξN)的组合相关系数(c1,…,cN),从而使该第一组合(Ψ)满足第一预定条件,
·对于该第一组(120,…,126)的每个数据块(102,…,110):
ο确定分配给相应数据块(102,…,110)的、该第一组(120,…,126)数据块(102,…,110)的校验组,
ο在该校验组的所有数据块(102,…,110)中存储针对相应数据块(102,…,110)的函数(ξ1,…,ξN)所确定的该系数(c1,…,cN)。


2.根据权利要求1的方法,其中,每个所述校验组包含该第一组(120,…,126)的所有数据块(102,…,110),该校验组所属的该数据块(102,…,110)除外。


3.根据前述权利要求之一的方法,其中,分配给其中第一校验组的数据块(102,…,110)的所述校验组分别包含分配有该第一校验组的该数据块。


4.根据权利要求3的方法,其中,在每个校验组情况下,分别在分配有相应校验组的该数据块(102,…,110)与每个被该校验组包含的数据块(102,…,110)之间实现双向关联。


5.根据前述权利要求之一的方法,其中,该第一组(120,…,126)包含三个或更多个数据块(102,…,110)。


6.根据前述权利要求之一的方法,其中,至少其中一个校验组包含三个或更多个数据块(102,…,110)。


7.根据前述权利要求之一的方法,其中,该组合(Ψ)在采用将分配给该第一组(120,…,126)数据块(102,…,110)的所有函数(ξ1,…,ξN)相连结的连结函数的情况下来创建。


8.根据前述权利要求之一的方法,其中,该第一预定条件包括极端值条件。


9.根据前述权利要求之一的方法,其中,该第一组(120,…,126)所包含的所述数据块(102,…,110)的数量与该第一组(120,…,126)的至少一个数据块(102,…,110)的安全等级相关。


10.根据前述权利要求之一的方法,其中,将所述数据块(102,…,110)分配给该第一组(120,…,126)在采用第一分配标准的情况下进行。


11.根据权利要求10的方法,其中,该第一分配标准包括:将相应数据块(102,…,110)的内容分配给同一个内容分类、将相应数据块(102,…,110)的内容分配给同一个安全等级、将相应数据块(102,…,110)的所有权人分配给同一个所有权人组、将相应数据块(102,…,110)的内容分配给一依赖关系和/或将相应数据块(102,…,110)的所有权人分配给一依赖关系。


12.根据前述权利要求之一的方法,其中,每个校验组所含的所述数据块(102,…,110)的数量与分配有相应校验组的该数据块(102,…,110)的安全等级相关。


13.根据前述权利要求之一的方法,其中,每个校验组所包含的所述数据块(102,…,110)的确定在采用第二分配标准情况下进行。


14.根据权利要求13的方法,其中,该第二分配标准包含:将相应数据块(102,…,110)的内容分配给同一个内容分类、将相应数据块(102,…,110)的内容分配给同一个安全等级、将相应数据块(102,…,110)的所有权人分配给同一个所有权人组、将相应数据块(102,…,110)的内容分配给一依赖关系和/或将相应数据块(102,…,110)的所有权人分配给一依赖关系。


15.根据权利要求的方法,其中,每个数据块(102,…,110)分配有至少一个所有权人,并且其中,该系数(c1,…,cN)在所述数据块(102,…,110)中的存储分别以相应数据块(102,…,110)的至少一个所有权人的准许为前提。


16.根据权利要求15的方法,其中,所述准许分别包含利用该数据块(102,…,110)的所有权人的私人签名密钥对相应系数(c1,…,cN)的签名,该系数(c1,…,cN)应被添加给该数据块。


17.根据权利要求15或16之一的方法,其中,该数据块(102,…,110)的所有权人分别具备用于向各自数据块(102,…,110)添加数据(D1,…,DN)的排他写入权。


18.根据前述权利要求之一的方法,其中,为了检查该第一组(120,…,126)数据块(102,…,110)的其中一个数据块(102,…,110)的数据完整性,该方法还包括:
ο确定被分配给该第一组(120,…,126)数据块(102,…,110)的所述函数(ξ1,…,ξN),
ο创建被分配给该第一组(120,…,126)数据块(102,…,110)的所有函数(ξ1,…,ξN)的所述第一组合(Ψ),
ο针对该待检查数据块(102,…,110)的函数(ξ1,…,ξN)确定作为检查系数的该组合相关系数(c1,…,cN),从而使该第一组合(Ψ)满足该第一预定条件,
ο将该检查系数与针对相应数据块(102,…,110)的函数(ξ1,…,ξN)存储在该待检查数据块(102,…,110)的校验组的数据块(102,…,110)中的系数(c1,…,cN)相比较,
ο如果在该检查系数和所述存储系数(c1,…,cN)之间满足预定的一致性标准,则确认该待检查数据块(102,…,110)的数据完整性。


19.根据权利要求18的方法,其中,如果在该检查系数和至少其中一个存储系数(c1,…,cN)之间存在同一性,则该预定的一致性标准被满足。


20.根据权利要求19的方法,其中,如果在该检查系数与所有存储系数(c1,…,cN)之间存在同一性,则该预定的一致性标准被满足


21.根据权利要求18至20之一的方法,其中,该第一组(120,…,126)的所有数据块(102,…,110)的数据完整性被检查。


22.根据权利要求1至17之一的方法,其中,为了检查该第一组(120,…,126)数据块(102,…,110)中的数据块(102,…,110)的数据完整性,该方法还包括:
ο确定分配给该第一组数据块(102,…,110)的所述函数(ξ1,…,ξN),
ο创建被分配给该第一组(120,…,126)数据块(102,…,110)的所有函数(ξ1,…,ξN)的所述第一组合(Ψ),
ο检查所创建的第一组合(Ψ)是否以存储在该第一组(120,…,126)的校验组的数据块(102,…,110)中的系数(c1,…,cN)满足该第一预定条件,
ο如果该第一预定条件被满足,则确认该第一组(120,…,126)数据块(102,…,110)的数据完整性。


23.根据权利要求18至22之一的方法,其中,在从该第一组(120,…,126)的一个或多个数据块(102,…,110)中读取数据(D1,…,DN)之前,至少针对从中读取数据(D1,…,DN)的所述数据块(102,…,110)执行数据完整性检查。


24.根据前述权利要求之一的方法,其中,该方法还包括:
ο改变该第一组(120,…,126)的一数据块(102,…,110)的数据(D1,…,DN),
ο确定更新后函数(ξ1,…,ξN),其被分配给所述改变后数据块(102,…,110)并依赖于所述改变后数据块(102,…,110)的改变后数据(D1,…,DN),
ο创建被分配给该第一组(120,…,126)数据块(102,…,110)的所有函数(ξ1,…,ξN)的更新组合(Ψ),其中,用于所述改变后数据块(102,…,110)的该更新组合(Ψ)包括所述更新后函数(ξ1,…,ξN),
ο针对该更新组合(Ψ)的每个函数(ξ1,…,ξN)确定更新的组合相关系数(c1,…,cN),从而使该更新组合(Ψ)满足该第一预定条件,
ο分别用针对该更新组合(Ψ)所确定的更新系数(c1,…,cN)替换存储在该第一组(120,…,126)的校验组的数据块(102,…,110)中的、针对该第一组合(Ψ)所确定的系数(c1,…,cN)。


25.根据前述权利要求之一的方法,其中,该方法还包括:
ο确定该第一组(120,…,126)的待删除数据块(102,…,110),
ο删除在该待删除数据块(102,…,110)的校...

【专利技术属性】
技术研发人员:A·威尔克M·佩施克I·科马罗夫
申请(专利权)人:联邦印刷有限公司
类型:发明
国别省市:德国;DE

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

1