CN109219816B - 在数据结构中创建可被加密证明包含有效数据的数据链的设备和方法 - Google Patents

在数据结构中创建可被加密证明包含有效数据的数据链的设备和方法 Download PDF

Info

Publication number
CN109219816B
CN109219816B CN201780032097.6A CN201780032097A CN109219816B CN 109219816 B CN109219816 B CN 109219816B CN 201780032097 A CN201780032097 A CN 201780032097A CN 109219816 B CN109219816 B CN 109219816B
Authority
CN
China
Prior art keywords
data
chain
data chain
node
group
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201780032097.6A
Other languages
English (en)
Other versions
CN109219816A (zh
Inventor
大卫·欧文
维维卡南德·拉杰库马尔
安德里亚斯·法克勒
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MaidSafe Foundation
Original Assignee
MaidSafe Foundation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by MaidSafe Foundation filed Critical MaidSafe Foundation
Publication of CN109219816A publication Critical patent/CN109219816A/zh
Application granted granted Critical
Publication of CN109219816B publication Critical patent/CN109219816B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Hardware Redundancy (AREA)
  • Storage Device Security (AREA)

Abstract

公开了一种用于实现创建可被加密地证明包含有效数据的数据链的方法的设备。该方法包括以下步骤:(a)创建没有元素的数据链;(b)在接收数据链之前验证节点的数据链;(c)检验闭合群组的大小以添加数据链;(d)向数据链添加数据块;(e)仅当链式共识不会被打断时才从数据链移除条目的旧副本,否则保留条目并将条目标记为删除;(f)验证大多数预先存在的节点;以及(g)经由签名元素的数据链验证数据链的签名。设备可操作以支持数据通信系统,其中,设备可操作以在流失事件期间在将数据从关闭节点重新定位到活动节点的同时,确保给定的数据结构具有加密的有效数据。这样的设备能够提供使数据处理系统对数据损坏、数据丢失、数据通信同步失败和类似的实际操作问题更具鲁棒性的技术效果。

Description

在数据结构中创建可被加密证明包含有效数据的数据链的设 备和方法
技术领域
本公开总体涉及可操作为在数据结构中创建可被加密证明包含有效数据的数据链的设备;这种设备能够提供使数据处理系统对数据损坏、数据丢失、数据通信同步失败和类似的实际操作问题具有鲁棒性的技术效果。此外,本公开涉及在数据结构中创建可被加密证明包含有效数据标识符的数据链的方法,该数据标识符可以安全地允许将实际数据重新发布到分散式网络上。此外,本公开涉及计算机程序产品,计算机程序产品包括其上存储有计算机可读指令的非暂时性计算机可读存储介质,这些计算机可读指令可由包括处理硬件以运行前述方法的计算机化装置运行。
背景技术
用于编码输入数据以生成相应编码数据的各种设备以及同样用于解码编码数据以生成相应解码数据的各种设备已经在已经授予专利权的早期专利申请中进行了描述,即使输入数据可能具有抽象本质(例如,计算机生成的图形图像数据)并且编码器仅操作存在于输入数据中的位,也能将输入数据有效地转换成其它类型的数据。专利权威机构认为这种数据操作和用于执行这种数据操作的设备涉及技术效果。例如,这种编码器和解码器频繁用于已被授予专利权保护的电信系统中。
对等(P2P)计算或对等网络是划分对等体之间的任务或工作量的分布式应用体系结构。对等体在应用体系结构中享有同样的特权、为同等的参与者。据称,对等体形成节点的对等网络。此外,对等体使对等体的资源的一部分(诸如,处理能力、磁盘存储或网络带宽)可被其它网络参与者直接使用,而无需服务器或稳定的主机进行中央协调。分散式网络是使用VPN和软件/硬件BGP路由器向各个个人工作站或办公地点构建的对等网络。
Figure GDA0004086701190000021
是用于分散式对等计算机网络的分布式散列表(hash table)。此外,/>
Figure GDA0004086701190000022
通过节点查找指定给定网络的结构和信息的交换。此外,/>
Figure GDA0004086701190000023
节点使用UDP(用户数据报协议)在节点之间进行通信。这些参与者节点形成虚拟网络或覆盖网络。数字ID或节点ID识别每个参与者节点。通常,在通信网络中,节点是连接点、再分配点或通信端点。在物理网络中,节点是附接至网络的有源电子装置,并且能够通过通信信道创建、接收或发送信息。
散列表是用于实现关联阵列的数据结构,即为可将键映射到值的结构。散列表使用散列函数将索引计算至从中可以找到期望值的桶(bucket)或槽(slot)的阵列中。分布式散列表(DHT)是提供类似于散列表的查找服务的一类分散的分布式系统;成对存储在DHT中,并且任何参与节点都可高效地检索与给定的键相关联的值。加密的散列函数是将任意大小的数据映射到固定大小的位串(例如,散列函数)的数学算法,这种函数也被设计为单向函数(即,反向不可行的函数)。
流失事件(churn event)是由关闭节点并将数据重新定位到活动节点而产生的数据移动。在这样的流失事件期间,必须传输大量数据以备份或复制活动节点,这是一个重要挑战。加密地证明数据的有效性非常重要。此外,大量数据必须以安全的方式重新发布,这是在分散式网络中待解决的特别具有挑战性的问题。在保持大量数据的同时,需要启动节点并且必须使数据在节点中可用。分散式网络通常缺乏从完全系统中断(诸如,整个网络崩溃或全球断电)轻松恢复的能力。此外,在分散式网络中也不可能立即进行全系统升级。
因此,鉴于与已知系统和方法相关的前述缺点,特别是由于数据必须被加密证明为包含先前被安全放在网络上且未被攻击者攻入或错误攻入的有效数据,需要克服与用于在分散式网络上的节点处的数据结构中存储数据的现有方法有关的上述缺点。
发明内容
本公开旨在提供包括一个或多个处理器的设备,其中,一个或多个处理器可操作为利用存储有一个或多个序列的指令的一个或多个非暂时性计算机可读存储介质,其特征在于,一个或多个序列的指令在一个或多个处理器中的运行致使创建能够被加密地证明包含有效数据的数据链,所述指令配置成执行以下步骤:
创建没有元素的数据链;
在接收数据链之前验证节点的数据链;
检验闭合群组的大小以添加数据链;
向数据链添加数据块;
将新元素注入代表数据元素的当前闭合群组的链中;
验证大多数预先存在的节点;以及
经由签名元素的数据链验证数据链的签名。
本公开旨在提供包括一个或多个处理器的设备,其中,一个或多个处理器可操作为利用存储有一个或多个序列的指令的一个或多个非暂时性计算机可读存储介质,其特征在于,一个或多个序列的指令在一个或多个处理器中的运行致使创建能够被加密地证明包含有效数据的数据链,所述指令配置成执行以下步骤:
创建没有元素的数据链;
在接收数据链之前验证节点的数据链;
检验闭合群组的大小以添加数据链;
向数据链添加数据块;
将新元素注入代表数据元素的当前闭合群组的链中;
验证大多数预先存在的节点;以及
经由签名元素的数据链验证数据链的签名。
本公开的实施方式能够大致消除或至少部分解决现有技术中的上述缺点(即,问题),并且能够在待实现的分散式网络上进行加密验证以在流失事件期间在将数据从关闭节点重新定位到活动节点的同时,确保数据结构具有加密的有效数据。
根据另一方面,提供了在包括一个或多个处理器的设备中创建可被加密地证明包含有效数据的数据链的方法,其特征在于,该方法包括:
创建没有元素的数据链;
在接收数据链之前验证节点的数据链;
检验闭合群组的大小以添加数据链;
向数据链添加数据块;
仅当链式共识不会被打断时才从数据链移除条目的旧副本,否则保留条目并将条目标记为删除;
验证大多数预先存在的节点;以及
经由签名元素的数据链验证数据链的签名。
根据另一方面,提供了计算机程序产品,其包括其上存储有计算机可读指令的非暂时性计算机可读存储介质,计算机可读指令可由计算机化装置运行,计算机化装置包括运行前述方法的处理硬件。
通过附图和结合所附权利要求解释的说明性实施方式的详细描述,本公开的其它方面、有益效果、特征和目的变得显而易见。
应理解的是,在不背离由所附权利要求限定的本公开的范围的情况下,本公开的特征易于以各种组合形式进行组合。
附图说明
当结合附图阅读时,将会更好地理解上文的发明内容以及下文的说明性实施方式的详细描述。出于说明本公开的目的,在附图中示出了本公开的示例性构造。然而,本公开不限于本文中公开的具体方法和具体手段。此外,本领域技术人员将理解,附图不是按比例绘制的。在任何可能的情况下,相同的元件由相同的附图标记表示。
现将参照以下附图仅通过示例的方式来描述本公开的实施方式,在附图中:
图1是根据本公开的实施方式的用于创建在分散式网络中被加密验证的数据链的设备的模块的图示;
图2A和图2B是示出了根据本公开的实施方式的创建在分散式网络中被加密验证的数据链的方法的流程图;
图3是用于实践本公开的实施方式的硬件环境的图示;以及
图4是示出了根据本公开的实施方式的创建数据链的方法的示例性流程图。
在附图中,下划线数字用于表示下划线数字定位在其上的项目或下划线数字邻近的项目。未加下划线的数字表示由将未加下划线的数字链接到项目的线所标识的项目。当数字没有下划线并伴有相关箭头时,未加下划线的数字用于标识箭头指向的一般项目。
具体实施方式
下文的详细描述示出了本公开的实施方式及可实施这些实施方式的方式。尽管已经公开了实施本公开的一些模式,但是本领域技术人员将认识到,用于实施或实践本公开的其它实施方式也是可能的。
本公开中使用的定义描述如下:
分散式网络(decentralised network)为XOR空间中使用
Figure GDA0004086701190000051
类型寻址的对等(“P2P”)网络。散列(hash)是可产生任何输入的固定长度表示的加密单向函数。不可变数据(Immutable data)是具有名称和数据内容的散列的数据类型。其是不可变的,由于更改内容会创建一个新的不可变数据。结构化数据(Structured data)是具有固定名称但具有可变内容的数据类型。GROUP_SIZE是网络地址周围的节点的数目。QUORUM是被认为足够大以使决策有效的GROUP的数目,并且该数目被认为是多数的(即(GROUP_SIZE/2)+1)。链共识(Chain consensus)基于以下事实:签名者的QUORUM数量存在于下一个链接(数据块)中,也存在于前一个块中。流失事件(churn event)是由关闭节点并将数据重新定位到“活动”节点而产生的数据移动。数据标识符(data identifier)是加密确保数据标识符精确地指向一个唯一的数据片段的标识符,并且其它数据片段不能与该标识符匹配。简单表示(simple representation)将是包含给定的数据元素本身的散列的数据标识符。
在一方面,提供了存储一个或多个序列的指令的一个或多个非暂时性计算机可读存储介质,当一个或多个序列的指令由一个或多个处理器运行时使得创建可被加密证明包含有效数据的数据链,指令配置成执行以下步骤:
(a)创建不具有元素的数据链,
(b)在接收数据链之前验证节点的数据链,
(c)检验闭合群组(close group)的大小以添加数据链,
(d)将数据块添加至数据链,
(e)确保将新元素注入代表数据元素的当前闭合群组的链中(即,链接),
(f)验证大多数现有节点,以及
(g)通过签名元素的数据链验证数据链的签名。
步骤(a)至(g)例如在数据处理设备中运行,该数据处理设备可操作为例如在数据处理系统中断或意外运行崩溃的情况下确保数据处理系统的稳定和可靠的操作。
在实施方式中,指令还配置成检验未删除的块。
根据一个实施方式,数据标识符验证数据链。
根据另一实施方式,数据标识符加密地验证数据链。
根据另一实施方式,数据标识符是可以唯一标识和验证数据链的对象。
根据另一实施方式,数据标识符的节点数据块包括公钥或签名对。
根据另一实施方式,指令还配置成使用签名作为证据来证明公钥是对数据标识符签名的密钥。
根据另一实施方式,这些指令还配置成:
(i)检查以下二者中的条目:(a)一个或多个数据块的缓存;以及(b)数据链,其中,接收节点检查(a)一个或多个数据块的缓存中的条目和(b)接收到节点数据块时数据链中的条目;
(ii)当找到(a)一个或多个数据块的缓存中的条目和(b)数据链中的条目时,将节点添加至数据块;以及
(iii)在缓存中创建新的数据块条目,并在未标识条目时等待来自数据标识符的群组成员的进一步通知。
根据另一实施方式,这些指令还配置成:
(i)当大多数签名者累积在数据链中时,将数据块插入数据链中;
(ii)经由其中具有大多数签名的签名元素的链来验证数据链;以及
(iii)通过在当前群组中的数据链中对入口进行签名来在新群组中维持每个节点中的各个流失事件的安全性。
根据另一实施方式,在每个步骤处验证数据链。多数签名的链可显示整个链从第一元素到最后一个元素都是有效的。
根据另一实施方式,将数据描述符(即,数据链)添加至保持在分散式网络上的数据节点。
根据另一实施方式,使用一致的加密签名在锁定步骤中对数据链进行加密保护。
根据另一实施方式,签名具有特定大小的GROUP_SIZE(例如,12个节点),其中,QUORUM(例如,7个节点)需要被认为是有效的(非常类似于P共享的N)。
根据另一实施方式,包括安全群组的分散式网络和安全群组的这些签名最接近于数据链的持有者(holder)。
根据另一实施方式,如果数据链在多于GROUP_SIZE之前被重新发布,则该数据链包括现有群组成员的大多数。
根据另一实施方式,群组大小为U64。
根据另一实施方式,数据的加密证明对于改变QUORUM节点有效。
根据另一实施方式,当数据链启动时,条目由不断变化的大多数预先存在的节点签名。
根据另一实施方式,当数据链弹出时,大多数不同的签名者被加密确认和/或加密验证。
根据另一实施方式,加密验证继续至数据链的顶部、其包括由节点的当前闭合群组中的大多数进行签名的条目。
根据另一实施方式,节点的当前群组加密地验证整个链和与数据链相关联的每个数据元素。
根据另一实施方式,群组改变和网络增长(或者甚至收缩),使得与各种节点相关联的许多链包括允许数据链被交叉引用的共同元素,以从分散式网络启动时开发数据的完整图片。
根据另一实施方式,可验证数据元素的数据链提供可证明的数据有效性序列,并且也提供出现在分散式网络上的这种数据的序列。
根据另一实施方式,链式的多数一致验证待被验证的数据链的能力,并允许数据被重新发布在分散式网络上。
根据另一实施方式,数据结构包括数据标识符对象、节点数据块、数据块和数据链。
根据另一实施方式,在数据标识符对象中:数据链是包括已被加密验证的数据标识符的一个或多个数据块的链式列表。
根据另一实施方式,数据标识符是唯一标识并验证数据项的对象。
根据另一实施方式,数据标识符包括底层数据项的加密散列。
根据另一实施方式,数据标识符包括诸如名称、版本等的附加信息。
根据另一实施方式,在节点数据块中:每个节点数据块的数据标识符包括公钥/签名对。
根据另一实施方式,公钥被证明是使用签名作为证据来对数据标识符签名的密钥。
根据另一实施方式,节点数据块包括公钥,该公钥实际上是接近于数据标识符的节点的节点名称。
根据另一实施方式,当在群组中的数据为‘输入’、‘发布’或‘删除’时,数据标识符由任何群组成员通信。
根据另一实施方式,与节点数据块相关联的UTC时间戳记录数据被放置在分散式网络上的时间。
根据另一实施方式,在最终一致性网络中,UTC时间戳是每个数据块的时间戳的排序列表的中值。
根据另一实施方式,使用分散式网络中的数据节点来创建数据块。
根据另一实施方式,使用分散式网络将数据节点通信给数据链的持有者。
根据另一实施方式,在数据块中:接收节点检查以下项中的条目:
(i)一个或多个数据块的缓存;以及
(ii)数据链。
根据另一实施方式,接收节点检查以下项中的条目:
(i)一个或多个数据块的缓存;以及
(ii)接收到节点数据块时的数据链。
根据另一实施方式,当接收节点在找到以下项中的条目时,接收节点将节点添加至数据块:
(i)一个或多个数据块的缓存;以及
(ii)数据链。
根据另一实施方式,接收节点在缓存中创建新的数据块条目,并在条目未被是不是时等待来自数据标识符的群组成员的进一步通知。
根据另一实施方式,节点阵列至少包括QUORUM成员并具有CLOSE_GROUP长度。
根据另一实施方式,节点阵列包括接近由数据标识符描述的数据元素的节点。
根据另一实施方式,在数据链中:在大多数签名者积累时,数据块被插入至数据链中。
根据另一实施方式,如果数据块由于缺乏多数共识而尚不能被添加至数据链,则数据块保留在缓存中并等待另外的节点数据块。
根据另一实施方式,在每个步骤处经由其中具有大多数一致的签名的签名元素链对数据链进行验证。
根据另一实施方式,多数签名链表明整个链从第一元素到最后一个元素都是有效的。
根据另一实施方式,由于上述原因,与多数当前成员相关联的当前群组与先前的条目一致。
根据另一实施方式,对当前群组中的数据链中的条目签名,以维持新群组中的每个节点中的各个流失事件的安全性。
根据另一实施方式,当前群组中的节点包括与数据链的关系。
根据另一实施方式,在每个流失事件上,新群组中的每个节点必须对数据链中的条目签名,以确保以后没有节点可以被插入数据链中。
根据另一实施方式,存在几种机制以允许在数据链中插入节点作为节点和群组的并行数据链或者甚至插入实际上为群组一致块的特定数据块的数据链中。
根据另一实施方式,允许在数据链中存在重复的条目以维持数据链的完整性。
根据另一实施方式,在正常情况下数据链中不存在重复条目,原因在于,数据链仅在成功放置(Put)、发布(Post)或删除(Delete)的情况下生长。
根据另一实施方式,删除事件在不破坏数据链共识的情况下从数据链中移除条目。
根据另一实施方式,删除条目致使在数据链共识中产生缺口。
根据另一实施方式,为了有效地打断链,将条目维持在数据链中并标记为已删除。
根据另一实施方式,从任何磁盘缓存中删除实际数据。
根据另一实施方式,在分散式网络中,在稳定性上可大幅提高,并可提高故障恢复能力。
根据另一实施方式,分散式网络的每个节点存储连接至分散式网络的节点的节点。
根据另一实施方式,节点将公钥和安全密钥与其数据一起存储在磁盘上并且与数据链相关联。
根据另一实施方式,在给定的分散式网络启动时,该节点尝试重新连接至记录在节点中并存在于数据链中的最后一个地址。
根据另一实施方式,群组可决定是否允许节点加入该群组。
根据另一实施方式,节点可能必须通过分配新地址再次加入网络。
根据另一实施方式,群组决定节点数据链的长度。
根据另一实施方式,每组可存在三个(例如)大节点(存档节点(Archive node)),如果该节点具有比该群组中的第三长数据链长的数据链,则该节点可加入该群组。
根据另一实施方式,节点试图保持永久数据,并且所有本地数据可在命名目录中累积。
根据另一实施方式,在分散式网络启动时,如果节点可以重新加入群组,则该数据将是有用的。
根据另一实施方式,如果节点被拒绝并被迫使以新的ID重新加入网络,则可创建新命名的目录,并且这允许节点有效地清理未使用的目录。
根据另一实施方式,节点保留先前连接的节点的列表以及先前尝试重新加入群组的节点。
根据另一实施方式,每个节点可以在不存在其它节点的情况下使用先前已知节点名称的各节点记忆的列表来验证大多数。
根据另一实施方式,节点的离线验证不允许将验证发送至另一节点。
根据另一实施方式,旧群组的其余部分应当必须再次形成以提供完全验证。
本公开可以应用于任何电子数据。例如,实施方式可用于以安全方式高效地重新发布数据。实施方式也可用于提高分散式网络上的稳定性和故障恢复能力。实施方式也可用于在分散式网络中安全地重新发布数据。
附图详细描述
在图1中示出了模块图100,模块图100示出了根据本公开的实施方式的创建在分散式网络中加密验证的数据链(即,数据链的创建)的过程。模块图100包括数据链验证数据库102、数据链创建模块104、数据链验证模块106、闭合群组检验模块108、数据块添加模块110、旧数据删除模块112、多数验证模块114和签名验证模块116;应理解的是,模块104、106、108、110、112、114、116易于实施为数字硬件和软件产品的组合。数据链验证数据库102存储节点数据、节点数据的名称、节点数据的版本、公钥/签名对、数据标识符等。
在操作中,数据链创建模块104创建不具有元素的数据链。数据链验证模块106在接收数据链之前验证节点的数据链。闭合群组检验模块108检验闭合群组的大小以添加数据链。数据块添加模块110将数据块添加至数据链。旧数据删除模块112从数据链中删除/移除数据的旧副本。旧数据删除模块112通过将数据保持在数据链中并标记为已删除来维持数据链的一致性。多数验证模块114验证大多数预先存在的节点。签名验证模块116经由签名元素的数据链来验证数据链的签名。
在图2A和图2B中示出了流程图,该流程图示出了根据本公开的实施方式的用于在分散式网络中创建被加密验证的数据链的方法(即,创建数据链的方法)。在步骤202处,在分散式网络的数据结构中创建没有元素的数据链。在步骤204处,在接收数据链之前通过数据节点对数据链进行验证。在步骤206处,检验闭合群组的大小以将数据链添加至数据节点。在步骤208处,由表示数据元素的闭合群组将数据块(即,链接)添加至数据链。在步骤210处,从数据链中移除数据的旧副本。在步骤212处,验证大多数预先存在的节点以将数据链添加至数据节点。在步骤214处,经由签名元素的数据链验证数据链的签名。
图3中示出了用于实践本文中的实施方式的代表性硬件环境。该示意性附图示出了用于根据本文的实施方式加密地检验图1的分散式网络中的数据结构的计算机体系结构/系统的硬件配置。该系统包括至少一个处理器或中央处理单元(CPU)10。CPU 10经由系统总线12互连至诸如随机存取存储器(RAM)14、只读存储器(ROM)16和输入/输出(I/O)适配器18的各种装置。I/O适配器18可选地连接至诸如磁盘单元11和磁带驱动器13的外围装置,或连接至系统可读的其它程序存储装置。系统可以读取程序存储装置上的本发明的指令,并按照这些指令运行本文中描述的实施方式的方法。
该系统还包括用户接口适配器19,用户接口适配器19将键盘15、鼠标17、扬声器24、麦克风22和/或诸如触摸屏装置(未示出)或遥控器的其它用户接口装置连接至系统总线12,以收集用户输入。另外,通信适配器20将系统总线12连接至数据处理网络25,以及显示适配器21将系统总线12连接至显示装置23,显示装置23例如可选地实施为诸如显示屏、打印机或发射器的输出装置。
在图4中示出了示例性流程图400,该流程图400示出了根据本公开的实施方式的数据链的创建。
在图3的硬件环境(即,用于实施本公开的实施方式的示例设备)中,LinkBlock用于具体地识别群组成员资格的变化。这种识别是通过给定节点发送NodeAdded(nodename)或NodeLost(nodename)消息(节点添加(节点名称)或节点丢失(节点名称)消息)在操作中实现;例如,准备好消息并作为投票发送。随后,由群组成员对上述消息投票,直到法定数量的与群组成员相关的节点同意。这样的一致性形成了下一个LinkBlock,并且其相关的群组成员资格随后被隐含在链中。
在不背离由所附权利要求限定的本公开的范围的情况下,可以对前文中描述的本公开的实施方式作出修改。用于描述并要求保护本公开的诸如“包括(including)”、“包含(comprising)”、“结合(incorporating)”、“具有(have)”、“为(is)”的表述旨在以非排他的方式解释,即也允许未明确描述的项、部件或元件的存在。对单数的引用也应被解释为涉及复数。

Claims (9)

1.包括一个或多个处理器的设备,其中,所述一个或多个处理器可操作为利用存储一个或多个序列的指令的一个或多个非暂时性计算机可读存储介质,其中,所述一个或多个序列的指令在所述一个或多个处理器中的运行致使在流失事件期间,在将数据从关闭节点重新定位到活动节点的同时创建能够被加密证明包含有效数据的数据链,所述指令配置成执行以下步骤:
创建没有元素的数据链;
在接收所述数据链之前验证节点的数据链,其中,所述数据链由数据标识符进行验证,其中,所述数据标识符加密地验证所述数据链,其中,所述数据标识符是能够唯一地标识和验证所述数据链的对象;
检验闭合群组的大小以添加所述数据链;
向所述数据链添加数据块,其中,所述数据块包括公钥或签名对;
将新元素注入至表示所述数据元素的当前闭合群组的链中;
验证大多数预先存在的节点;
经由其中具有大多数签名的签名元素的数据链验证所述数据链的签名;以及
通过在所述当前群组中的所述数据链中对条目进行签名来在新群组中维持每个节点中的每个流失事件的安全性。
2.根据权利要求1所述的设备,其特征在于,所述指令还配置成验证未删除的块。
3.根据权利要求1所述的设备,其特征在于,所述指令还配置成使用所述签名作为证据来证明所述公钥是对所述数据标识符进行签名的密钥。
4.根据权利要求1所述的设备,其特征在于,在操作中,所述指令还配置成:
(i)检查一个或多个数据块的缓存中的条目;以及所述数据链中的条目,其中,接收节点检查一个或多个数据块的缓存中的条目以及接收到节点数据块时数据链中的条目;
(ii)当找到一个或多个数据块的缓存中的条目和所述数据链中的条目时,将所述节点添加至数据块;以及
(iii)在所述缓存中创建新的数据块条目,并在所述条目未被识别时,等待来自数据标识符的群组成员的进一步通知。
5. 根据权利要求1所述的设备,其特征在于,在操作中,所述指令还配置成:
(i)当大多数签名者在所述数据链中累积时,将所述数据块插入所述数据链中;以及
(ii)经由其中具有大多数签名的签名元素的链来验证所述数据链,其中,所述数据链在每个步骤处被验证,其中,多数签名的链显示出整个链从第一元素到最后一个元素均有效。
6.根据权利要求1所述的设备,其特征在于,所述设备可操作为采用LinkBlock,所述LinkBlock用于具体识别群组成员资格中的变化,其中,所述识别通过给定节点发送NodeAdded消息或NodeLost消息作为投票来实现,以及其中,随后由群组成员在消息上投票,直到法定数量的与所述群组成员相关的节点同意,从而形成下一LinkBlock及与所述下一LinkBlock关联的群组成员资格。
7.在包括一个或多个处理器的设备中创建数据链的方法,在流失事件期间,在将数据从关闭节点重新定位到活动节点的同时,所述数据链能够被加密证明包含有效数据,其中,所述方法包括:
创建没有元素的数据链;
在接收所述数据链之前验证节点的数据链,其中,所述数据链由数据标识符进行验证,其中,所述数据标识符加密地验证所述数据链,其中,所述数据标识符是能够唯一地标识和验证所述数据链的对象;
检验闭合群组的大小以添加所述数据链;
向所述数据链添加数据块,其中,所述数据块包括公钥或签名对;
将新元素注入至表示所述数据元素的当前闭合群组的链中;
验证大多数预先存在的节点;
经由其中具有大多数签名的签名元素的数据链验证所述数据链的签名;以及
通过在所述当前群组中的所述数据链中对条目进行签名来在新群组中维持每个节点中的每个流失事件的安全性。
8.根据权利要求7所述的方法,其特征在于,所述方法可操作为在流失事件期间在将所述数据从关闭节点重新定位到活动节点的同时,确保数据结构具有加密的有效数据。
9.计算机程序产品,包括其上存储有计算机可读指令的非暂时性计算机可读存储介质,所述计算机可读指令能够由计算机化装置运行,所述计算机化装置包括运行权利要求7或8的方法的处理硬件。
CN201780032097.6A 2016-05-23 2017-05-23 在数据结构中创建可被加密证明包含有效数据的数据链的设备和方法 Active CN109219816B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB1609059.9A GB2552453A (en) 2016-05-23 2016-05-23 Method of creating a data chain in a data structure that can be cryptographically proven to contain valid data
GB1609059.9 2016-05-23
PCT/EP2017/025142 WO2017202503A1 (en) 2016-05-23 2017-05-23 Apparatus and method of creating a data chain in a data structure that can be cryptographically proven to contain valid data

Publications (2)

Publication Number Publication Date
CN109219816A CN109219816A (zh) 2019-01-15
CN109219816B true CN109219816B (zh) 2023-06-02

Family

ID=56369832

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780032097.6A Active CN109219816B (zh) 2016-05-23 2017-05-23 在数据结构中创建可被加密证明包含有效数据的数据链的设备和方法

Country Status (5)

Country Link
US (1) US11461502B2 (zh)
EP (1) EP3465528B1 (zh)
CN (1) CN109219816B (zh)
GB (1) GB2552453A (zh)
WO (1) WO2017202503A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201811263D0 (en) * 2018-07-10 2018-08-29 Netmaster Solutions Ltd A method and system for managing digital using a blockchain
SG11202001890UA (en) * 2019-05-14 2020-03-30 Alibaba Group Holding Ltd Methods and devices for data traversal
KR102372718B1 (ko) * 2019-11-05 2022-03-11 한국전자통신연구원 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법
CN117688594B (zh) * 2024-02-02 2024-04-16 北京华云安信息技术有限公司 数据库加密混淆的方法、装置、设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009115903A1 (en) * 2008-03-20 2009-09-24 Kinamik Data Integrity, S.L. Method and system to provide fine granular integrity to digital data

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110083015A1 (en) * 2009-10-05 2011-04-07 Eidgenossiche Technische Hochschule Zurich System and method for an electronic signature for quick and efficient data authentication
EP4148642A1 (en) * 2014-05-09 2023-03-15 Veritaseum, Inc. Devices, systems, and methods for facilitating low trust and zero trust value transfers
US10304143B2 (en) * 2016-05-05 2019-05-28 Lance Timothy Kasper Consensus system for manipulation resistant digital record keeping
US10164952B2 (en) * 2016-02-16 2018-12-25 Xerox Corporation Method and system for server based secure auditing for revisioning of electronic document files

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009115903A1 (en) * 2008-03-20 2009-09-24 Kinamik Data Integrity, S.L. Method and system to provide fine granular integrity to digital data

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ARVIND NARAYANAN等.Bitcoin and Cryptocurrency Technologies.《bitcoinbook》.2016, *
Bitcoin and Cryptocurrency Technologies;ARVIND NARAYANAN等;《bitcoinbook》;20160209;第1-13页 *
Majority is not Enough:Bitcoin Mining is Vulnerable;ITTAY EYAL等;《arxiv》;20131115;第1-17页 *

Also Published As

Publication number Publication date
GB2552453A (en) 2018-01-31
WO2017202503A1 (en) 2017-11-30
US11461502B2 (en) 2022-10-04
CN109219816A (zh) 2019-01-15
GB201609059D0 (en) 2016-07-06
EP3465528A1 (en) 2019-04-10
US20200320225A1 (en) 2020-10-08
EP3465528B1 (en) 2023-01-11

Similar Documents

Publication Publication Date Title
TWI705690B (zh) 分布式網路中進行主節點變更的系統
JP6821053B2 (ja) ブロックチェーンネットワークにおけるデータ隔離
AU2018348334C1 (en) Achieving consensus among network nodes in a distributed system
EP3560142B1 (en) Performing a recovery process for a network node in a distributed system
TWI737392B (zh) 電腦實現的用於由區塊鏈網路的區塊鏈節點在可信賴執行環境tee中處理區塊鏈資料的方法、通信共享區塊鏈資料的系統及用於通信共享區塊鏈資料的裝置
CN109002725B (zh) 基于区块链的数据处理系统
CN110059494B (zh) 一种区块链交易数据的隐私保护方法及区块链系统
CN110612700B (zh) 基于恢复的公钥进行认证
CN109219816B (zh) 在数据结构中创建可被加密证明包含有效数据的数据链的设备和方法
CN111045855B (zh) 备份数据的方法、装置和计算机程序产品
US8316240B2 (en) Securing computer log files
CN111786812B (zh) 节点管理方法、装置、计算机设备和存储介质
TW202111568A (zh) 可信賴執行環境中基於錯誤校正編碼的共享區塊鏈資料儲存
Kuppusamy et al. Mercury:{Bandwidth-Effective} Prevention of Rollback Attacks Against Community Repositories
Kollmann et al. Snapdoc: Authenticated snapshots with history privacy in peer-to-peer collaborative editing
Pardeshi et al. Improving data integrity for data storage security in cloud computing
CN110737725A (zh) 电子信息检验方法、装置、设备、介质及系统
CN112131041A (zh) 用于管理数据放置的方法、设备和计算机程序产品
Hwang et al. A mutual nonrepudiation protocol for cloud storage with interchangeable accesses of a single account from multiple devices
Hwang et al. Efficient real-time auditing and proof of violation for cloud storage systems
Bonnaire et al. A scalable architecture for highly reliable certification
CN117155658A (zh) 一种支持数据更新与审计者更换的云安全审计系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant