CN109417478A - 多链路密码逻辑区块链 - Google Patents
多链路密码逻辑区块链 Download PDFInfo
- Publication number
- CN109417478A CN109417478A CN201780031862.2A CN201780031862A CN109417478A CN 109417478 A CN109417478 A CN 109417478A CN 201780031862 A CN201780031862 A CN 201780031862A CN 109417478 A CN109417478 A CN 109417478A
- Authority
- CN
- China
- Prior art keywords
- block chain
- data
- key
- block
- integrality
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/062—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/062—Securing storage systems
- G06F3/0622—Securing storage systems in relation to access
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/061—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0637—Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
- H04L9/0841—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3218—Cryptographic 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 proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
- H04L9/3221—Cryptographic 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 proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs interactive zero-knowledge proofs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3226—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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 cryptographic hash functions
- H04L9/3242—Cryptographic 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 cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/46—Secure multiparty computation, e.g. millionaire problem
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic 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)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Power Engineering (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Storage Device Security (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
一种密码逻辑系统包括用于使用由受信任方持有的密钥在非防篡改操作或防篡改操作中重写区块链的电路。区块链可以包括由多个完整性代码保护的一系列块,多个完整性代码可以防止由不拥有密钥的不受信任方的非防篡改重写。在一些情况下,密钥可以允许由受信任实体对区块链进行有效但防篡改的重写。此外,在一些实现中,防篡改重写可以通过多方批准被转换成非防篡改重写。
Description
优先权
本申请要求于2017年5月16日提交的标题为“Rewritable Blockchain”的美国专利申请第15/596,904号、代理人案号15718/112的优先权。本申请还要求于2017年5月16日提交的标题为“Distributed Key Secret for Rewritable Blockchain”的美国专利申请第15/596,899号、代理人案号15718/189的优先权。本申请还要求于2017年5月16日提交的标题为“Multiple-Link Blockchain”的美国专利申请第15/596,922号、代理人案号15718/190的优先权。本申请还要求于2017年5月16日提交的标题为“Rewritable Blockchain”的美国专利申请第15/596,932号、代理人案号15718/191的优先权。本申请还要求于2017年2月17日提交的标题为“Rewritable Blockchain”的欧洲专利申请第17425018.3号、代理人案号A8344EU-ds的优先权。本申请还要求于2016年8月11日提交的标题为“RewritableBlockchain”的欧洲专利申请第16425086.2号、代理人案号A8282EU-ds的优先权。本申请还要求于2016年5月23日提交的标题为“Rewritable Blockchain”的欧洲专利申请第16425044.1、代理人案号A8195EU-ds的优先权。
技术领域
本公开涉及多链路密码逻辑区块链,尤其涉及复杂现实世界系统中的数据验证、检验和重写。
背景技术
由巨大的客户需求驱动的电子和通信技术的迅速发展已经使得电子交易和记录保持的广泛采用。作为一个示例,电子货币(诸如比特币)在每年数百万的交易中已经取代纸币。对这种电子交易的验证和记录的改进将继续增加从事电子交易的运营商可用的特征和选项。
附图说明
图1示出了区块链的两个示例视图。
图2示出了对图1的示例区块链的两个示例重写。
图3示出了示例区块链处理系统。
图4示出了示例区块链重写系统。
图5示出了示例重写管理逻辑。
图6示出了示例重写逻辑。
图7A示出了两个示例冲突搜索。
图7B示出了使用冲突对区块链的示例重写。
图8示出了与示例更新的区块链部分配对的示例区块链部分。
图9示出了示例双链路区块链部分。
图10示出了示例混合区块链。
图11示出了示例可重写区块链场景。
图12示出了示例分布式密钥区块链重写场景。
图13示出了示例区块链记录维护场景。
图14示出了示例物联网可重写区块链场景。
图15示出了示例区块链环路。
具体实施方式
区块链可以包括一系列数据块,这些块包括代码(诸如密码散列或校验和),该代码可以与序列中的先前块的内容编码一致。在一些情况下,确定产生相同完整性代码的多个不同的块集合可能是不可解决的、计算复杂得令人望而却步的、或者工作强度足以挫败在保持完整性代码的自我一致性的同时篡改区块链内容的企图。然而,在一些实现中,受信任方可以访问密钥或密钥的一部分,使得独自行动或者与拥有密钥其他部分的参与方一起行动的该受信任方可以编辑区块链内容而不留下篡改的指示。
在各种系统中,多方可以使用基于区块链的文件或分类账来维持事件、交易或其他更新的防篡改记录。在一些情况下,区块链可以在由不受信任方(例如,不拥有密钥的当事方)对区块链进行更改之后注册篡改。因此,当事方可以单独地验证由其他当事方的更新是否有效以及是否与区块链的先前数据块编码一致。完整性代码的自我一致性允许验证对区块链的更新,即使该当事方缺少区块链的归档版本来用作参考。当对区块链中的一个或多个数据块的重写没有在区块链中的块的完整性输出和数据块内容之中引入编码不一致时,重写可以被表征为保持区块链的有效性。
区块链可以由完整性代码来保护。当提供特定数据作为完整性代码的输入时,完整性代码可以产生特定的完整性输出。在一些情况下,当将不同于特定数据的数据提供给完整性代码作为输入时,完整性代码可产生不同的完整性输出。在示例场景中,存储从来自数据块的特定输入数据生成的完整性代码的完整性输出,并且随后更改数据块。如果所更改的数据作为输入被提供给完整性代码,则完整性代码可以产生与所存储的完整性输出不同或编码不一致的完整性输出。因此,在该示例场景中可以检测到变化。
区块链可以包括一系列块,其中序列中的每个后续块保持用于前一块的完整性输出。该系列可以形成块的链,其中每个后续块保持从紧接在之前的块中存在的数据生成的完整性输出。相应地,如果块被改变,则可以检测到与被存储在后续块中的完整性输出的编码不一致。由于完整性输出是块中的所存储数据的一部分,因此也可以通过编码不一致检测完整性输出本身的变化。完整性代码的这种自我一致性可以被用来保护区块链关于免受隐蔽篡改。
当由完整性代码保护时,防篡改变化可以包括可以检测到针对区块链的完整性代码的完整性输出与区块链内的数据之间的编码不一致的几乎任何变化。例如,区块链的块中的数据可以被散列、通过校验和来运行或者应用另一完整性代码。如果稍后发现块中的数据与散列、校验和或其他完整性代码的完整性输出冲突,则这种变化可以被标识为防篡改。当完整性代码被应用于块中的当前数据时块中当前的数据不产生与先前所获得的完整性输出相同或等效的完整性输出时,可能发生冲突。当对块进行更改并且之后没有检测到与完整性代码的先前存储的完整性输出的编码不一致时,该更改可以是非防篡改的。在一些情况下,可以通过利用具有不同数据内容的第二块替换第一块来实现非防篡改重写,其中该不同数据内容产生相同的(或等效的)完整性输出。
在一些情况下,在录入之后,区块链中的一些块可以包括不再适合包括在区块链中的信息。例如,块可能在时间之后或在确定数量的后续条目之后过期,私有信息可能被包括在块中,不准确的条目可能被包括在块中,对使用区块链的一方或多方不利的信息可能被包括在块中,可能包括不完整的信息或者可能包括其他不适当的信息。相应地,受信任方(例如,中立的第三方、管理方或者单独不受信任方的组)可以以非防篡改方式重写、移除或补充被包括在块中的数据。下面所描述的系统和技术实施用于在区块链中重写块的技术解决方案,以允许受信任方编辑来自区块链的信息,而不会导致区块链不能达到其预期目的。例如,各方可以使用经修改的区块链犹如其是较早且未经修改的区块链。
区块链重写可以被用来执行低等级(例如,从硬件架构角度)的操作,诸如存储器重写、删除和添加。相应地,这些技术和架构可以改进计算机系统的底层硬件的操作,因为系统可以利用区块链协议以用于存储实施可验证性的数据。例如,用于安全系统的操作系统软件可以被存储在区块链有效载荷中,以保护数据免受恶意软件、未授权方、未授权设备或其他意外/未授权更改的操作。
附加地或备选地,块可以表示可以在进行更新时被分配的数据的最小增量。例如,一个或多个更新的块可以在更新期间与整个区块链分开来发送。然而,在一些情况下,至少整个区块链可以利用单独的有效更新来分配。例如,当执行新的受保护的交易并将其添加到经由区块链保护的分类账时,整个区块链(例如,完整的交易历史)可以在添加更新交易的情况下被重新分配。允许截取、正确调整大小、扩展或其他区块链大小调整的区块链重写系统(诸如本文所描述的示例性实施方式)可以通过允许调整在区块链更新和分配期间所消耗的数据开销来改善底层硬件的操作。
另外,受信任方重写区块链的能力可以通过提供所建立的重写解决方案来提高抗篡改能力。相应地,受信任方可以重写现有的区块链,而不必由于不适当的内容而放弃区块链。相应地,与重新创建新的区块链相比,区块链重写显著提高了系统效率。区块链重写还可以通过向系统通知其没有接收到区块链丢弃的先前通知来降低恶意方使用可能由于不适当的内容而被丢弃的已失效区块链来欺骗系统的可能性。相应地,可重写区块链可以具有提高的数据安全性和抗篡改性的技术效果。换句话说,本文所讨论的技术和架构包括市场上现有技术的具体、现实世界的应用和改进。
此外,所讨论的技术和架构(包括那些用于可重写区块链、分布式密钥、双链路区块链、环路以及其他技术和架构)需要与公认的常识背道而驰。特别地,区块链分布式数据库的传统方法要求区块链的不变性作为基本特征。换言之,不变性在以前的工作中已经被反复解释为建立区块链的技术价值的基本特征。区块链中的不变性被错误地视为和指示为确保使用区块链的各方信任区块链中所包含的数据的有效性的必要方式。相应地,这里所描述的向区块链添加可重写性的技术架构违背了公认的常识。通过引入可重写性,同时仍然保持了高安全性,并因此也保持了区块链的高技术价值,本发明的技术和架构违背了公认的常识。这样,尽管本发明的技术和架构与现有技术的教导有很大不同,但是本发明的技术和架构尽管具有可变性,但是仍然在区块链中提供了高等级的信任。
图1示出了区块链的两个示例示图100、150,其中,每个后续块包括使用前一块作为输入的完整性代码(例如,散列、变色龙散列或其他完整性代码)。例如,块B1 104在从用作完整性代码的输入的前一块B0 102的内容确定的该完整性输出字段124中包括完整性输出IC(B0)。被用于确定IC(B0)的B0 102的内容可以包括B0内的任何或所有字段,诸如数据00 121、[空]完整性输出字段122或BlockID 123。块的数据字段(例如,数据00 121、数据10131和其他数据字段)可以被用来存储任何类型的数据。例如,区块链数据字段可以保持账户数据、个人数据、交易数据、货币值、合同条款、文档、版本数据、链路、指针、档案数据、其他数据或任何它们的组合。
块中不被用来确定后续块中的完整性输出的字段可以不一定由区块链来保护。例如,这些字段可以在不生成块之间的编码不一致的情况下被更改。此外,如果在针对链中的后续块的完整性输出的确定中不使用任何完整性输出字段,则区块链可以不是必须确保上面所讨论的块之间的编码一致性,因为可以改变不受保护的完整性输出而不必须生成篡改的证据。相应地,在各种实现中,块的数据有效载荷的完整性输出字段和至少受保护的部分被用于确定针对区块链中的后续块(例如,下一个块)的完整性输出。类似地,块B2 106的完整性输出字段125中的IC(B1)可以基于块B1 104内的字段,例如包括:块B1 104的完整性输出字段124、数据字段或BlockID字段中的任何一个。在该示例中,如下所述,完整性代码IC可以是变色龙散列。
区块链块可以经由完整性代码被彼此锁定152。在一种意义上,因为每个块中的完整性代码输出字段基于生成完整性输出时的前一块中的内容(例如,当该块被添加到链中时),所以块被彼此锁定。相应地,如果在添加当前块之后前一块发生变化,则该变化将是防篡改的,因为该变化将与当前块中所存储的完整性输出是编码不一致的。因此,一旦将具有基于前一块的已存储的完整性输出的当前块添加到区块链中,则前一块的内容被“锁定”。在图1的示例区块链中,一旦B2 106(在其完整性输出字段中包含IC(B1))被添加到区块链中,B1 104的内容就可以被锁定。结果,被B1 104锁定的B0 102的内容进一步由B2 106保护,因为B2 106防止B1 104以非防篡改方式被改变。
在示例场景中,如下面所讨论的,可以使用变色龙散列作为完整性代码来实现可重写区块链。然而,对于不拥有允许编辑的密钥的当事方,实际上可以使用篡改是不言而喻的任何代码。
图2示出了对图1的示例区块链的两个示例重写200,250。在第一示例200中,块B2202利用具有新内容的块B2’204来替换。新块B2’204包括使用密钥来生成的内容,使得当使用块B2’204作为输入时所生成的完整性输出与使用原始块B2 202作为输入时所生成的完整性输出相同。例如,IC(B2)=IC(B2’)。
在第二示例250中,块B2 202被移除。来自原始链的块B1 206可以利用块B1’208来替换,以便与块B3 210中所包含的完整性输出编码一致。例如,块B1’208可以包括使用密钥来生成的内容,使得更新的块B1’208可以显现为在后续块B3 210之前的正确块(并且是在区块链完整性代码方面的正确块)。也就是说,B1在删除块B2之后被替换,使得B1’可以立即进行B3而不违反区块链完整性代码。
在各种实现中,不同的可重写区块链可以具有不同的密钥。因此,能够重写给定区块链的受信任方可以不是必须能够充当受信任方并重写第二个不同的区块链。对不同的区块链使用不同的密钥可以防止通过公开单个密钥同时危害多个区块链。然而,使用相同“主”密钥的多个区块链可以由区块链系统生成(例如,如果密钥可以与多个不同的区块链系统一起被使用,则该密钥可以是主密钥)。在多个区块链之间使用公共密钥可能比为不同的区块链使用不同的密钥允许更简化的管理。
附加地或备选地,区块链可以具有允许非防篡改编辑的多个不同密钥。在示例场景中,主密钥可以与多个区块链一起被使用,每个区块链具有单独的密钥,这些密钥不一定允许对主密钥所覆盖的其他区块链进行非防篡改编辑。例如,区块链A、B和C都可以允许用主密钥MK重写。此外,区块链A可以具有单个重写密钥A1,区块链B可以具有单个重写密钥B1,并且区块链C可以具有单个重写密钥C1。在该示例中,处理系统可以使用MK或B1来重写区块链B,而不是利用A1或C1来重写。
此外,在一些实现中,授予密钥可以被用来向受信任方发布密钥。例如,加密高速缓存EC可以包括用于区块链A、B和C的附加密钥(例如,密钥A2...AN、Bn...Bn、C2...Cn)。拥有授予密钥GK的受信任方解密EC,并允许向新的受信任方颁发所存储的密钥。在一些情况下,主密钥可以加倍作为授予密钥。例如,处理系统可以使用主密钥来生成用于重写的块内容,并且主密钥可以用作针对密钥的加密高速缓存的解密密钥。
另外,下面所讨论的分布式密钥方案可以被应用于授予密钥和主密钥。在一些系统中,受信任方可以单独地执行对区块链的重写。然而,相同的受信任方可以使用下面所讨论的任何分布式密钥方案组合他们的密钥以获得与授予密钥或主密钥相关联的权限。例如,三个单独受信任方可以各自在没有其他各方同意的情况下执行重写。然而,这三方可能被迫组合他们的密钥(例如协调),以获得授予权限并向第四方授予其自己的密钥。
在各种实现中,可以通过协调特定阈值数目的当事方、特定的预定当事方、给定类别的当事方、所有当事方或当事方的另一限定组来获得增加的权限。分布式密钥方案可以确定用于协调的参与级别规则。
在各种实现中,密钥可以使用密钥分配方案来分配给操作者。密钥分配方案可以包括基于操作者身份、关联性、优先级或其他基础的分配方案。
在一些情况下,区块链被标记以指示它要进行编辑。指示区块链是可重写的标志或字段可以标识具有重写区块链的权限的受信任方。这可以帮助对重写区块链感兴趣的各方标识能够执行重写的受信任方。例如,区块链可能伴有描述区块链的目的、原始的操作参数或其他信息的元数据。用于重写的标志可以被合并在元数据内。然而,当这样的元数据被包括在区块链外部时,其可以被改变而没有篡改的证据。允许元数据被自由改变可以减少执行编辑所需的计算资源,并增加可以校正元数据错误的参与方的数量。在其他系统中,处理系统可以将这样的元数据写入区块链本身的块中,例如,写入专用字段或块的数据有效载荷中。将元数据写入区块链本身可以防止未授权方更改区块链元数据(例如,用于潜在的恶意目的)。
在一些实现中,可以向不信任方或一部分受信任方保密受信任方的存在。在一些情况下,完整性代码可以不是必须通过检查其操作来提供受信任方可以编辑区块链中的条目的指示。也就是说,生成完整性代码的算法本身并不容易揭示其支持区块链重写。对受信任方的存在保持保密可以阻止当事方试图窃取或以其他方式取得受信任方的密钥。此外,如果当事方假设在没有明显篡改的情况下不能够由另一方编辑该区块链,则当事方可能增强了对区块链的信心。
在一些实现中,具有密钥知识的实体可以对区块链进行更改。该密钥可以由操作者、集权审计师或其他当事方全部或部分拥有。附加地或备选地,密钥的份额(例如,部分)可以在几个单独不受信任方之间分布。完整性代码可以是连接两个块的链路上的虚拟挂锁。
打开虚拟挂锁的密钥可以根据具体应用的要求进行管理。例如,在商业谈判(或政府条约谈判)中,允许更改所提议的合同(条约)条款的密钥可以由中立的第三方持有。附加地或备选地,密钥的相等部分(例如,一半、三分之一)可以由谈判中的每一方持有,使得可以在所有各方或限定的多个当事方的同意下更改条款。在协作软件设计实现中,可以在允许对一些软件代码进行更改之前,将密钥按部分分配给利益相关者以强制达成一致。下面讨论示例密钥分配方案,包括集中式和分布式方案。然而,其他方案也是可能的。
图3示出了示例区块链处理系统(BPS)300。BPS 300可以包括系统逻辑314,以支持对区块链的验证和重写。系统逻辑314可以包括处理器316、存储器320和/或可以被用来实现区块链处理逻辑342的其他电路。存储器320可以被用来存储区块链重写和块添加中所使用的区块链元数据322和/或区块链数据324。
存储器还可以包括实现区块链处理的程序指令以及一个或多个支持数据结构(例如经编码的对象、模板或其他数据结构),以支持对区块链的更新进行验证并检测篡改的证据。存储器还可以包括标志323,其可以指示是否可以编辑特定的区块链。在示例中,可以使用区块链内的特定字段内的位或区块链元数据来实现标志323,以指示可编辑性。此外,存储器320可以包括参数字段326,其可以包括受信任方的联系信息的身份,例如姓名、地址、电话、电子邮件或其他联系信息。
BPS 300还可以包括一个或多个通信接口312,其可以支持无线(例如,蓝牙、Wi-Fi、无线局域网(WLAN)、蜂窝(第三代(3G)、第四代(4G)、长期演进高级(LTE/A))和/或有线、以太网、千兆以太网、光网络协议。通信接口312可以支持与更新区块链或执行区块链传输的其他方的通信。BPS 300可以包括功率管理电路334和一个或多个输入接口328。BPS 300还可以包括用户界面318,其可以包括人机界面和/或图形用户界面(GUI)。GUI可以被用来向BPS 300的操作者呈现来自基于区块链的验证的数据。用户界面318还可以利用工具来呈现GUI以支持对区块链的块添加。
图4示出了示例区块链重写系统(BRS)400。例如,BRS 400可以由在区块链上执行校订、修改或补充的受信任方使用。例如,补充可以包括向现有块添加内容。即使在不支持非防篡改重写的区块链中,经授权的操作者也可以向区块链添加新的块,例如新的交易记录。然而,对现有块的更改(包括添加)可能生成篡改的证据,除非由拥有密钥的受信任方执行。BRS 400可以包括系统逻辑414,以支持对区块链的验证、更新和重写。系统逻辑414可以包括处理器416、存储器420和/或其他电路,这些电路可以被用来实现区块链处理逻辑442和重写管理逻辑(RML)441。
存储器420可以被用来存储在区块链重写和块添加中所使用的区块链元数据422和/或区块链数据424。存储器420可以进一步存储密钥421,诸如加密密钥值、陷阱门信息或其他秘密值,它们可以允许区块链的非防篡改重写。在一些情况下,密钥421可以被存储在受保护的存储器480中,诸如加密文件或数据驱动器、物理上受保护的驱动器、被耦合至用于防盗对策的触发器的驱动器或者自删除驱动器,以防止意外或秘密公开所存储的密钥421。存储密钥的存储器可以包括受信任存储器或者由受信任方直接或间接拥有或控制的其他存储器。
存储器420还可以包括应用和结构,例如经编码的对象、模板或一个或多个其他数据结构,以支持对区块链的更新的验证并检测篡改的证据。存储器还可以包括标志423,其可以指示是否可以编辑特定区块链以及受信任方的身份。BRS 400还可以包括一个或多个通信接口412,其可以支持无线(例如,蓝牙、Wi-Fi、WLAN、蜂窝(3G、4G、LTE/A))和/或有线、以太网、千兆以太网、光网络协议。通信接口412可以支持与对区块链进行更新或执行区块链传输的其他方的通信。附加地或备选地,通信接口412可以支持安全信息交换,诸如安全套接层(SSL)或用于在受信任方之间发送和接收密钥的基于公钥加密的协议。此外,如下面所讨论的,安全协议可以被用来在各自具有密钥的一些部分的单独不受信任方之间组合密钥。BRS 400可以包括功率管理电路434和一个或多个输入接口428。
BRS 400还可以包括用户接口418,其可以包括人机界面和/或图形用户界面(GUI)。GUI可以被用来向BRS 400的操作者呈现来自基于区块链的验证的数据。附加地或备选地,用户接口418可以被用来向操作者呈现区块链重写工具。
在一些情况下,用户界面418可以包括GUI,其具有促进区块链重写和删除的工具。用于重写的GUI工具可以包括“您所看到的就是您所获得的”工具,其允许操作者操纵区块链的内容,例如使用类似文字处理器的工具、类似网络编辑的工具、类似文件浏览的工具或任何它们的组合。附加地或备选地,用户界面418可以包括命令行编辑工具。无论是基于文本还是基于图形,这些工具都可以允许操作者访问密钥,并在它们被授权的区块链上执行编辑。在一些情况下,这些工具可以拒绝向那些缺少对它们试图编辑的区块链的适当密钥的操作者提供写入功能。然而,在一些实现中,这些工具可以允许这种未经授权的编辑,因为这将导致防篡改重写,防篡改重写将使对区块链的未经授权的编辑无效。
图5示出了可以在电路中被实现或者利用电路来实现的示例RML 441。RML 441可以处理密钥的管理和重写命令的实现。例如,RML 441可以确定用于特定区块链的密钥的可用性,并将这些密钥传递给重写逻辑600(下面进行讨论)以用于重写的执行。RML 441还可以处理重写命令的接收或用于区块链重写自动化的命令的接收。一旦RML 441标识所请求的变化和所涉及的区块链,RML 441就可以访问区块链(502)。
RML 441可以确定BRS 400的存储器420是否保持允许对所访问的区块链的重写的密钥(504)。如果存储器420没有存储密钥,则RML 441可以确定使用通信接口412经由安全通信或经由密钥的各部分的安全组合是否可访问密钥(506)。例如,这些部分可以包括由单独不受信任方所持有的密钥的部分,但是作为组,利用它们的部分组合成完整的密钥,形成受信任方。在一些实现中,密钥或其部分可以使用通信接口412经由安全通信来访问,例如,以防止通信期间密钥被拦截。如果不能访问密钥,则RML 441可以经由GUI 418指示对区块链的非防篡改重写不可用(508)。如果密钥在存储器中或经由安全通信可访问,则RML 441可以提示操作者对区块链进行重写(510)。
附加地或备选地,RML 441可以自动获得重写(511)。例如,重写可以从重写队列中获得、被嵌入在先前接收的命令内、从其他区块链获得、从由系统标识为恶意代码或其他不适当内容的内容确定、或者由RML 441自动获得的其他重写。重写可以被存储为命令,该命令标识要对一个或多个块进行的更改,并且如果要通过更改添加内容,则将内容写入块。命令本身可以包括要被写入的内容,或者备选地,可以包括指向内容位置的指针。RML 441可以调用重写逻辑600(参见图6)来执行对块的重写(512)。例如,当非防篡改重写可用时,BRL441可以调用重写逻辑600来执行对块的重写。图6示出了示例重写逻辑600,其可以在电路中被实现或者利用电路来实现。重写逻辑600可以访问区块链(602)。例如,重写逻辑600可以访问存储区块链的存储器。附加地或者备选地,重写逻辑600可以经由联网通信接口(例如,通信接口412)访问区块链。在一些情况下,如上所述,重写逻辑600可以使用受保护的连接或在受保护的存储器上访问区块链。
区块链可以包括一个或多个由完整性代码保护的数据块。例如,可以使用重写保护的密码散列函数(诸如没有用于允许非防篡改重写的密钥的散列函数、变色龙散列、循环冗余检查(CRC)、校验和、或其他完整性代码)来保护区块链内的数据块。在一些实现中,可以由与块的数据内容编码一致的特定完整性输出来保护各个数据块。例如,当将完整性代码应用于产生完整性输出的块的内容时,完整性输出可以与块的内容编码一致。当完整性输出与其所保护的数据编码一致时,数据可以被认为是有效的。如上所述,可以将该特定完整性输出放置在相邻块内,以防止或挫败以非防篡改方式重写数据内容的企图。此外,如下文关于混合区块链所讨论的,一些区块链可以包括:可以允许非防篡改重写的部分(例如,各个块的部分或块组的部分)以及可能不一定允许由受信任方进行非防篡改重写的部分。
重写逻辑600可以访问密钥,诸如密码密钥或陷阱门信息,该密钥与区块链的完整性代码配对(604)。密钥可以包括允许系统(例如,BRS 400)计算冲突的数据,例如,为完整性代码产生相同完整性输出的两个不同数据块。使用所计算的冲突,设备可以重写区块链,而不需要重写的块与完整性代码编码不一致。例如,操作者可以指示BRS 400使用密钥计算冲突并重写区块链。
重写逻辑600可以接收例如来自RML 441的命令,以对区块链执行重写(606)。例如,可能已经从针对希望替换或删除来自特定块的数据(例如,内容)的受信任方的操作者接收到该命令。操作者可以例如在通过人机界面发布给BRS 400的命令中指示来自用户界面的输入设备的原始数据和替换数据。附加地或备选地,可以经由网络通信接口接收替换数据的命令,例如从与受信任方相关联的终端接收。重写逻辑600可以从RML 441接收执行重写的命令。执行重写的进一步命令可以源自自动化源,诸如上面关于RML 441所描述的那些源。
重写逻辑600可以处理密钥、替换数据和原始数据,以确定附加数据,针对该附加数据,替换数据和附加数据产生了与针对为原始数据而产生的完整性代码相同的完整性输出(608)。相应地,替换数据和附加数据可以取代原始数据,而不必创建篡改的证据。在完整性代码是变色龙散列的示例场景中,用于变色龙散列的密钥允许重写逻辑600确定针对几乎任何原始数据内容的冲突。在该示例场景中,使用密钥,重写逻辑600可以计算附加数据,当与由受信任实体选择的替换数据组合时,该附加数据产生与任何给定原始数据相同的散列输出。
删除操作可以以与其他重写相同或相似的方式来执行。然而,不是选择替换数据和附加数据以与相邻块(例如,紧接在区块链之后或之前的块)编码一致。可以选择替换数据和附加数据以与区块链更上或更下的其他块编码一致。例如,如果已重写块的替换数据与区块链更下游的后续块(例如,非相邻块)的数据而不是与正在被替换的块的数据相冲突,则可以移除一个或多个后续块(例如,区块链中紧跟已重写块的一个或多个连续块)。附加地或备选地,如果替换数据中的完整性输出字段包括块(其是在被替换的块之前的两个或更多个块)的完整性输出,则可以删除正被替换的块之前的一个或多个块。相应地,当重写包括删除时,重写逻辑600可以在块被重写之前或之后删除一个或多个块(609)。
一旦重写逻辑600确定适当的附加数据,重写逻辑600就可以生成附加数据(610)并将附加数据与替换数据组合(612)。在一些实现中,特别是在区块链的可重写性被保密的方案中,附加数据的存在可以被屏蔽。因此,不拥有密钥的一方将不能够简单地通过注意到附加数据的存在来立即将可重写区块链标识为可重写。
例如,可以将附加数据放置在包含具有另一已标识目的的数据的块内的字段中。例如,如下面关于图8所讨论的,附加数据可以被附加到完整性输出字段或“随机性”字段。
然而,在一些情况下,拒绝明确地标识用于附加数据的特定目的(否则其将无法理解)可以足以防止不受信任的操作者怀疑他们正在使用的区块链是可重写的区块链。
在各种实现中,变色龙散列可以由受信任方和不受信任方两者可标识,以促进块内容的验证。
然后,重写逻辑600可以写入与附加数据组合的替换数据以代替原始数据(614)。例如,重写逻辑600可以利用组合的替换数据和附加数据来覆盖原始数据。因为组合数据与原始数据的完整性输出编码一致,所以可以以非防篡改方式执行原始数据的覆盖,至少关于完整性代码。换言之,重写可以是非防篡改的,即使仅利用替换数据来替换原始数据将导致防篡改重写。如下文所讨论的,在一些实现中可以使用双链和多链区块链。相应地,与区块链的第一完整性代码编码一致地重写区块链可能不一定导致完全非防篡改重写。
替换数据可以包括已完全重写的数据、原始数据的经更改的版本(诸如原始数据的修订版本)、具有添加的原始数据、原始数据的完全删除、或其他数据。
本文所讨论的技术和架构允许对区块链的内容进行重写,该区块链可以在开发基于区块链的技术的服务(诸如分散式服务)中被实现。可以在各种场景中使用对区块链的非防篡改、有效性保留或其他类型的重写。例如,这些场景可以包括:从区块链中删除不适当的内容、为使用可重写存储装置的应用提供支持、遵守诸如“被遗忘的权利”的政府法规或其他场景。
本文所讨论的技术和架构(包括用于可重写区块链、分布式密钥、双链路区块链、环路以及其它技术和架构)可以与各种区块链一致性技术结合使用。例如,在一些情况下,可重写区块链可以利用基于工作的一致性机制的证明来使用。相应地,在找到预定义挑战的解决方案并显示针对解决方案的工作证明时,可以授予操作者(例如,不受信任的操作者)将块附加到可重写区块链的能力。在一些实现中,可以实现基于“实际拜占庭容错”的一致性机制。此外,一些实现可以使用“智能合同”类型的协商机制,其中操作者可以在显示对智能合同的条款或规则的遵守时附加块。完整性代码可以独立于区块链中所使用的特定一致性机制来实现。相应地,完整性代码(包括支持区块链重写的完整性代码)可以利用几乎任何区块链一致性机制来实现。
在一些实现中,可以由系统(例如,BRS 400)使用变色龙散列函数,该变色龙散列函数可以在给定密钥时允许有效地确定散列冲突。在一些情况下,系统可以使用变色龙散列来授予受信任实体、一起组成受信任方的多个单独不受信任方、或其他实体对区块链进行非防篡改重写的能力。
在一些实现中,即使在发现多项式级的大量冲突之后(使用密钥),散列函数仍可以保持抗冲突性。该属性可以被称为密钥曝光自由度。如下面所讨论的,可以使用转换将变色龙散列函数转换成一个附加地满足密钥曝光自由度的散列函数。
图7A示出了两个示例冲突搜索700、720。对于缺少密钥(H)的散列函数,可能很难找到冲突。相应地,发现X和X′,使得H(X)=H(x′)可能是极度困难的(700)。然而,对于变色龙散列CH,拥有密钥722的设备可能能够找到X和X’,使得CH(X)=CH(X’)(750)。
图7B示出了使用冲突对区块链760进行的示例重写。区块链760包括块762、764、766和768。块766包括完整性输出784。当具有不同内容的两个不同块766、770为完整性代码产生相同的完整性输出786时,块766、770是针对完整性代码的冲突(796)。块766可以用块770来代替,并且保持与后续块768的编码一致性,因为块766和770产生相同的完整性输出。然而,如果块770不包含适当的完整性输出(例如,完整性输出784),则块770将不与块764编码一致。通过访问完整性代码的密钥,当事方能够指定块770中存在的完整性输出(797)。相应地,通过包括完整性输出784,可以使块770与块764编码一致(798)。块770仍然与块768编码一致,因为块770与块766冲突。备选地,如果块770被代替地构建为包括完整性输出782,则块770的插入可以被用来删除块764(799)。利用完整性输出782,块770与块762(作为其前一块)和块768(作为紧随其后的块)编码一致。相应地,块764可以从区块链中被移除,没有篡改的证据。
在一些现实世界应用中,可以实现针对允许重写的大多数当事方(为了维护安全)的仅附加的分类账。为了实现现实世界应用,可以限制重写,以使其可以由受信任方或者在所限定的环境中来执行。下面结合图13和图14讨论真实世界应用的两个示例。
在一些情况下,如果不能以有效保存或非防篡改方式来编辑区块链,则诸如智能合同或覆盖应用的应用可能不一定工作并缩放。智能合同可以包括一系列指令(例如,计算指令),当事方执行这些指令以换取补偿。
此外,可重写区块链可以提供对区块链被用来保护的应用的更新的支持。如果在启动之后对基于区块链的系统进行详细检查,则可以使用可重写区块链来重建区块链以反映详细检查。
注释
对于字符串x,其长度可以由|x|表示;如果X是集合,则|X|可以表示X中的元素的数目。当在X中随机选择x时,该选择可以被表示为x←$X。当A是算法时,y←$A(x)可以表示A在输入x和输出y上的运行;如果A被随机化,则y是随机变量,并且A(x;r)可以表示A在输入x和随机性r上的运行。如果A被随机化且对于任何输入x,r∈{0,1},算法A是概率多项式时间(PPT)。A(x;r)的计算可以在直到poly(|x|)步骤之后终止。
安全性参数可以被表示为函数可以在安全性参数内是可忽略的(或者简单地可忽略),如果其消失速度快于κ中的任何多项式的倒数(即ν(κ)=κ-ω(1))的话。对于随机变量X,P[X=x]可以表示X采取特定值x∈X(其中X是定义X的集合)的概率。给定两个系综X={Xκ}κ∈N和Y={Yκ}κ∈N,X≡Y可以表示这两个系综是相同分布的,并且X≈c Y可以表示这两个系综在计算上是不可区分的,例如对于给定场景。
公钥加密
公钥加密(PKE)方案是一种技术,通过这种技术,可以在两个或更多个当事方之间公开地交换信息而不一定需要公开加密密钥、密钥或其他秘密。此外,PKE可以被实现而不必要求在各个当事方之中交换完全公开密钥或其他秘密。在实现中,PKE可以使用如下定义的算法元组PKE=(KGen,Enc,Dec)来执行:(1)概率算法KGen将安全性参数作为输入,并输出公钥/密钥对(pk,sk)。(2)概率算法Enc将公钥pk、消息m∈M和隐式随机性ρ∈Rpke作为输入,并输出密文c=Enc(pk,m;ρ)。由C表示所有密文的集合。(3)确定性算法Dec将秘密密钥sk和密文c∈C作为输入,并输出m=Dec(sk,c),其等于某种消息m∈M或错误符号⊥。
在一些情况下,可以由单独不受信任的当事方使用PKE或其他安全交换方案,以组合完整性代码的密钥的部分或份额,来生成能够实现区块链的非防篡改重写的完整密钥。在一些情况下,安全交换方案可以被用来确保第三方不能够通过观察交换来获取密钥的部分。附加地或备选地,可以通过该单独不受信任的当事方使用安全交换方案,以防止其他单独不受信任方在交换期间获取多个部分。例如,在不受保护的交换中,一旦单独不受信任方从其他不受信任方收集了部分,则收集方不可撤销地成为受信方。然而,在安全交换中,诸如如何实现PKE,不受信任方可以从其他不受信任方收集密钥的部分,而不需要实际了解所收集的各个部分的内容。相应地,从其他单独不受信任方收集密钥的部分并不一定导致收集方成为受信任方。因此,单独不受信任方可以一起组成受信任方,但是在组合密钥到期或其他无效之后,单独不受信任方返回到他们分离的不受信任的状态,直到他们再次同意组合其各自的部分。在一些情况下,组合密钥可能在预定时间段之后或在执行预定量的重写之后过期。例如,组合处理可以指定预定到期参数,该参数可以描绘重写的数目、可以被重写的块的数目、持续时间、可以被更改的数据量、可以被重写的块的特定列表、一个或多个事件发生或者它们的组合。
在其他情况下,可以以下方式组合密钥:共同工作的各方可以确定被用来执行块的非防篡改重写的附加内容。然而,任何一方都不必收集完整(但加密的)的密钥,使得任何一方都不可以代表其他方确定附加内容。相反,组成受信任方的组内的每个单独不受信任方可以计算附加内容的一部分(或者执行处理的某个部分)。由单独不受信任方的联合努力产生的最终结果用作支持单个块的非防篡改重写的附加内容。对于任何后续重写,单独不受信任方可以针对被指定用于由组成受信任方的组重写的每个特定块再次协作。
单独不受信任方可以是在单个系统上具有不同操作者配置文件的不同操作者(例如,实体、机构、设备或其他当事方)。附加地或备选地,单独不受信任方可以分布在多个系统上。单独不受信任方可以在不同的存储器位置中存储其相应的密钥部分,这些存储器位置可以具有相同或不同的安全性特征。各个存储器位置可以与单独不受信任方中的各个当事方相关联。例如,存储器位置可以对应于由单独不受信任方中的相应当事方拥有或维持的存储设备。类似地,受信任方可以维持相关联的存储器位置。在一些情况下,存储器位置可以用作当事方的标识符(全部或部分)。例如,针对受信任方的存储器位置可以被用来确认密钥正由适当的受信任方控制(例如,访问控制、读/写控制或其他控制)。例如,如果密钥没有从受信任的存储器位置(例如,由受信任方使用、间接控制、维持或拥有的存储器位置)被访问,则该密钥可能被系统拒绝。类似地,由不受信任方持有的密钥的部分可以被绑定到特定的存储器位置。
下面描述可以被用来支持上述技术和架构的示例实现。例如,下面所讨论的实现可以被用来构建变色龙散列。然而,其他完整性代码可以被用于非防篡改区块链重写。
非交互式零知识
如果R:{0,1}*×{0,1}*→{0,1}是关于对(x,y)的NP关系,利用对应的语言针对R的非交互式论证可以允许证明者P说服验证者V公共元素y属于语言L(其中,P和V两者被建模为PPT算法)。证明者P可以通过知道针对y∈L的证据x来促进。
示例属性1(非交互式论证)。用于NP关系R的非交互式论证是如下所指定的有效算法的元组N IA=(I,P,V)。
·ω←$I(1κ):概率算法I将安全性参数作为输入,并且输出公共参考串(CRS)ω。
·π←$P(ω,x,y):概率算法P将CRSω和对x,y作为输入,使得R(x,y)=1,并返回针对y∈L的成员资格的证明π。
·d=V(ω,y,π):确定性算法V将CRSω和对(y,π)作为输入,并返回决策位d∈{0,1}。
在一些情况下,非交互式论证可以满足三个已知属性:完整性、零知识和可靠性,下面将对此进行讨论。CRS可以被用来促进非交互式零知识条件。
完整性属性可以建立诚实证明者(保持有效证据x)应当能够使验证者相信y∈L。
示例属性2(针对论证的完整性)。使NIA=(I,P,V)是用于NP关系R的非交互式论证。如果对于所有对(r,y),使得R(x,y)=1,则NIA可以满足完整性,存在可忽略的函数使得
P[V(ω,y,π)=1:π←$P(ω,x,y);ω←$I(1κ)]≥1v(κ)。
零知识。零知识属性表明:可能恶意的验证者可能不一定获取证据的知识,其不能由自身获取。这可能有助于非交互式零知识(NIZK)。
示例属性3(零知识)。使NIA=(I,P,V)是用于NP关系R的非交互式论证。如果存在PPT仿真器S:=(S1,S2),则NIA满足零知识,使得对于所有的对手A,存在可忽略的函数使得
模拟可提取性。可靠性表明:恶意证明者难以为元素生成可接受的证明π。在一些情况下,即使恶意证明者可以访问用于真实陈述的模拟证明,可靠性仍然可以成立。在一些实现中,更严格的方案可以允许证明者看到可能的虚假陈述的证明;参见下面的讨论。
示例属性4(真实模拟可提取性(tSE))。使NIA=(I,P,V)是用于NP关系R的NIZK,其中零知识模拟器S=(S1,S2),并且使f是有效可计算函数。如果存在PPT提取器E,则NIA满足真实模拟f可提取性(简称f tSE),使得对于所有PPT对手A,存在可忽略的函数使得
其中,问答器Oτ将对(xi,yi)作为输入,并且返回对(xi,yi)作为S2(τ,yi),只要R(xi,yi)=1(否则返回⊥),并且Q是对问答器OT要求的所有值yi的集合。
注意,在上述示例属性4中,仅允许对手看到针对真实陈述的模拟证明。更强的变体确保即使允许对手看到针对可能虚假的陈述的模拟证明,模拟可提取性仍然有效。后者的属性也以稳健NIZK命名。
如tSE中所指出的,NIZK明显更有效构建,实际上,通常可以将NIZK(诸如Groth-Sahai NIZK)与CCA-安全PKE方案组合起来获得它们。
变色龙散列函数
变色龙散列可以包括密码散列函数,对于该函数,拥有密钥的设备可以计算冲突。在没有密钥的情况下,变色龙散列可以被设计为使其在计算上找到冲突是不切实际的。然而,密钥的知识(例如,密码密钥、陷阱门信息或其他秘密)可以允许针对散列函数在计算上实际生成冲突。密钥的知识可以允许冲突确定和针对包含至少一些任意内容的块的生成。
秘密硬币变色龙散列
示例属性5(秘密硬币变色龙散列)。秘密硬币变色龙散列函数是如下指定的有效算法的元组CH=(HGen,Hash,HVer,HCol)。
·(hk,tk)←$HGen(1κ):概率密钥生成算法HGen将安全性参数 作为输入,并输出公共散列密钥hk和密钥tk。
·(h,ξ)←$Hash(hk,m):概率散列算法Hash将散列密钥hk、消息m∈M和隐式随机硬币r∈Rhash作为输入,并输出由散列输出h和校验字符串ξ组成的对(h,ξ)。
·d=HVer(hk,m,(h,ξ)):确定性验证算法HVer将消息m∈M、候选散列输出h和校验字符串ξ作为输入,并且如果(h,ξ)是针对消息m的有效散列/校验对,则返回等于1的位d(否则d等于0)。
·π′←$HCol(tk,(h,m,ξ),m′):概率冲突寻找算法HCol将陷阱门密钥tk、有效元组(h,m,ξ)和新消息m′∈M作为输入,并返回新的检查串ξ′,使得HVer(hk,m,(h,ξ))=HVer(hk,m′,(h,ξ′))=1。如果(h,ξ)不是针对消息m的有效散列/检查对,则算法返回⊥。
散列算法可以是随机的,并且在输入一些消息m时,其可以一起产生散列输出h和校验值ξ,该校验值ξ帮助验证给定公共散列密钥的散列的正确计算。然而,散列算法的随机硬币是秘密的。一种特定情况是校验值ξ由被用来生成h的随机硬币组成,因为一旦m和r固定,散列计算就变得确定性的;将这种变色龙散列函数称为公共硬币,并在下面正式定义它。
示例属性6(公共硬币变色龙散列)。公共硬币变色龙散列函数是如示例属性5中所指定的算法CH=(HGen,Hash,HVer,HCol)的集合,具有以下差异:
·在输入散列密钥hk和消息m∈M时,散列算法Hash返回对(h,r),其中r∈Rhash表示被用来生成散列输出的隐式随机硬币。
·验证算法HVer,被给出散列密钥hk、消息m和对(h,r)作为输入,当且仅当Hash(m;r)=h的情况下返回1。
由于验证算法简单地重新运行散列算法,所以在公共硬币变色龙散列的情况下,一些实现可以将验证算法从CH中删除。
示例属性7(针对变色龙散列的正确性)。使CH=(HGen,Hash,HVer,HCol)为具有消息空间M的(秘密硬币或公共硬币)变色龙散列函数。如果对于所有m∈M都存在可忽略的函数则CH满足正确性,使得:
P[HVer(hk,m,(h,ξ))=1:(h,ξ)←$Hash(hk,m);(hk,tk)←$HGen(1κ)]≥1-ν(κ)。
几乎任何变色龙散列都可以被用来产生公共硬币抗冲突变色龙散列。然而,在一些情况下,秘密硬币变色龙散列函数可以被用于与公共硬币应用相同的应用,特别是用于构建变色龙签名和在线/离线签名。然而,对于秘密硬币变色龙散列,该系统可以存储校验值ξ(而不是随机性r),以便验证散列输出。此外,散列验证可以不必须包括重新计算散列。
对于变色龙散列的一些应用来说,抗冲突能力可能不一定足够。虽然散列函数是抗冲突的,但是看到针对散列函数的冲突的当事方可能能够找到其他冲突或者恢复密钥。增加的抗冲突能力可以被用来使得更难找到冲突,甚至在目睹多项式级大量的冲突之后。
另一种类型的变色龙散列可以包括“经标记的”散列函数,其中散列算法将被称为标记或标签的附加值λ作为输入。在一些情况下,经标记的散列函数可以对密钥暴露具有抵抗性。例如,对于一些经标记的散列函数来说,即使给定对为其他任意标记λ≠λ输出冲突的问答器的访问,系统也不可能为“新”标记λ*找到冲突。基于身份的变色龙散列函数可以至少部分地解决密钥暴露问题,因为它们使用受信任方来处理身份。
增加的抗冲突能力。针对秘密硬币或公共硬币散列函数的冲突的示例是元组h、(m,ξ)、(m′,ξ′),使得m≠m′且(m,ξ)和(m′,ξ′)(分别)是针对m和m’的有效散列/检查对。对于变色龙散列函数,具有以下安全性特性,其表明即使给定对冲突寻找算法的访问(为自适应选择的散列输出返回冲突),散列函数也应该很难找到冲突。
示例属性8(增加的抗冲突能力)。在示例场景中,CH=(HGen,Hash,HVer,HCol)可以是(秘密硬币或公共硬币)变色龙散列函数。如果对于所有的PPT断路器B,存在可忽略的函数则CH可以满足增加的抗冲突性能,使得:
其中,集合Q是由B向其问答器查询的所有散列输出的集合,并且问答器Ohk,tk被定义如下:在输入形式((h,m,ξ),m′)的冲突查询时,运行HVer(hk,m,(h,ξ)):=d;如果d=1,返回HCol(tk,(h,m,ξ),m′)的输出,否则返回⊥。如果B不被允许查询问答器Ohk,tk,则CH可以是抗冲突的,而不需要具有增加的抗冲突能力。
通用变换
提供增加的抗冲突能力的示例变色龙散列函数包括基于Nyberg-Rueppel签名方案的散列函数。这些示例变色龙散列函数的安全性可以使用“通用组模型”内的离散对数假设来证明。
下面的示例构建用于基于Nyber-Ruepple原理的变色龙散列。对于各种不同的复杂性环境,增加的抗冲突能力可以以非特定方式来实现。转换可以基于CPA安全PKE方案和tSE NIZK。
使CH=(HGen,Hash,HCol)为公共硬币变色龙散列函数(具有消息空间Mhash和随机空间Rhash),使PKE=(KGen,Enc,Dec)为PKE方案(具有消息空间Rhash和随机空间Rpke),并且使NIA=(I,P,V)为用于语言的非交互式论证系统。
(1)示例秘密硬币变色龙散列函数CH*=(HGen*,Hash*,HVer*,HCol*)可以被如下指定:
·HGen*(1κ):运行(hk,tk)←$HGen(1κ),(pk,sk)←$KGen(1κ),并且ω←$I(1κ)。返回对(hk*,tk*),使得hk*:=(hk,ω,pk),并且tk*:=(tk,sk)。
·Hash*(hk*,m)::采样随机值r∈Rhash并且运行Hash(hk,m;r):=h。采样随机值ρ∈Rpke,并且运行c:=Enc(pk,r;ρ)。计算证据π←$P(ω,x,y),其中,x:=(r,ρ)且y:=(pk,c,hk,h,m),并且返回(h,ξ),使得ξ:=(c,π)。
·HVer*(hk*,m,(h,ξ)):,解析ξ=(c,π)并且返回V(ω,y,π)的输出,其中y=(pk,c,hk,h,m)。
·HCol*(tk*,(h,m,ξ),m′):首先运行HVer(hk*,m,(h,ξ)):=d;如果d=0,则输出⊥,否则解密随机性r:=Dec(sk,c),计算冲突r′←$HCol(tk,(h,m,r),m′),采样随机p′∈Rpke,并且加密新随机性c′:=Enc(pk,r′;p′)。计算证据π′←$P(ω,x′,y′),使得x′=(r′,p′)且y′:=(pk,c′,hk,h,m′),并且返回ξ′:=(c′,π′)。
该系统可以使用各种协议来实现。例如,基于公共硬币变色龙散列函数的系统可以实现Sigma协议。Sigma协议是一种交互式证明方案,其中“证明者”和“验证者”参与多级通信。在多级通信期间,证明者可以使验证者相信证明者拥有特定的信息。为了实现tSENIZK,可以使用CCA安全PKE NIZK论证系统。当加密方案相对于预定义密文攻击是安全的时,加密方案是CCA安全的。
示例区块链
在示例场景中,块是形式B=(s,x,ctr)的三元组,其中s∈{0,1}κ,x∈{0,1}*且其中,如果
则B是有效的。其中,H:{0,1}*→{0,1}κ和G:{0,1}*→{0,1}κ是抗冲突散列函数,并且参数和分别是块的难度级别和允许用户在一轮协议内进行散列查询的最大数量。
示例区块链C可以是块的链(或序列)。在该示例中,最右边的块是链的头部,由Head(C)表示。具有头部Head(C):=(s,x,ctr)的任何链C都可以通过附加(有效)块B′:=(s′,x′,ctr′)而被扩展为新的更长的链C′:=C||B′,使得s′=H(ctr,G(s,x));新链C’的头部为Head(C′)=B′。链C也可以是空的,并被表示为C=ε。函数len(C)表示链C的长度(块的数目)。对于长度为n的链C和任何k≥0,Ck是移除C最右边的k个块得到的链,并且类似地,kC是移除C最左边的k个块的链,如果k≥n,则Ck=ε且kC=ε。如果C是C’的前缀,则其可以被表示为C<C′。此外,难度级别D可以在链中的块之间不同。
示例可重写区块链
在针对以上示例区块链的示例可重写区块链场景中,块可以是元组B:=<s,x,ctr,(h,ξ)>,新分量(h,ξ)可以是用于秘密硬币变色龙散列的散列/检查对。函数G可以是秘密硬币变色龙散列CH=(HGen,Hash,HVer,HCol)。针对该经修改的块的检验论述可以是:
例如,变色龙散列的域可以通过散列论证的输入Hash来调整到与区块链的应用相当的大小,该散列是利用具有期望输出大小的规则抗冲突散列来完成的。
变色龙散列的验证可以使用其自身的验证函数(HVer)来计算。然而,一些散列函数(诸如没有密钥的那些函数)可以通过预先计算散列来验证。
在一些情况下,诸如示例算法1的链修订算法可将以下作为输入:要被修订的链C、表示正被修订的块(在链C中)的位置的索引集合、以及包含针对正被修订的各个块的新x”值的另一集合。该示例算法可以接受变色龙散列陷阱门密钥tk作为输入。该算法的直观知识是,对于每个要被修订的块,计算针对块的散列与其新内容x’的冲突。通过利用经修改的对应物替换原始块来创建新链C’。在算法1的执行结束时,中央机构可以将新的修订链广播为特殊链,使得系统的用户采用新的修订链,以取代其他链,甚至例如更长的链。
在一些情况下,抗冲突变色龙散列函数可能对密钥暴露敏感。例如,对于一些抗冲突变色龙散列函数,在查看针对该函数的冲突之后,可以取得密钥。注意,所提出的两种算法(算法1和2)可以暴露一个或多个冲突以用于修订。例如,算法可以暴露冲突用于修订或用于被更改或修订的每个块。在一些情况下,系统可以实现具有增加的抗冲突能力的变色龙散列,以避免密钥暴露。然而,一些系统可以依赖于抗冲突能力和冲突暴露的受控等级。
在一些情况下,受信任方可以从可重写区块链中移除整个块。例如,用例可以是可扩展性维护,诸如节省磁盘空间和与可以被用来处理较大(未修订)链相关的计算能力。为了移除块Bi,块Bi+1可以通过分配si+1←s1来更改。然后,系统可以计算针对Bi+1的冲突,其产生新块Bi'+1,该新块可以被插入到链中以代替块Bi+1,这使得链处于编码一致状态。在算法2的执行结束时,中央机构可以将新的已缩减的链广播为特殊链,使得系统的用户采用新的修订链来取代其他链。
分散式密钥交换
在一些实现中,候选受信任机构可以是明显的。例如,在一些金融交易中,银行或银行官员可以持有针对完整性代码的密钥,诸如变色龙散列。在一些情况下,对等应用可能不一定具有这种明确的候选受信任方。这种情况可以通过使用分散式密钥分配方案来解决。在这种情况下,陷阱门密钥可能不一定由任何单独的当事方已知,而是在一些固定集合的用户之间被共享,使得这些用户一起组成受信任方。当需要修订块时,来自该集合的用户参与安全多方计算协议(MPC)以计算算法1。
在一些情况下,安全密钥交换(诸如MPC)可以通过让各方发送开始信号来操作。在一些情况下,一些当事方可能是诚实的或不诚实的。诚实的当事方可以致力于与其他各方合作,以获得完整的密钥。然而,不诚实的当事方可能希望通过发送虚假份额来扰乱此过程。尽管如此,安全密钥交换仍然可以涉及接收与诚实方和不诚实方的份额。在接收到来自所有诚实当事方的“开始”信号之后,系统可以运行(hk,tk)←$HGen(1κ)并将hk发送给不诚实的当事方。相应地,交换Pi中的各个当事方可以接收份额。因为由不诚实的当事方发送的份额可以构成不合格的集合,所以系统可以根据诚实的当事方构建完整的份额集合(s1...sn)。一旦形成完整集合,系统就可以向每一个诚实的当事方发送si。
系统可以接收来自每个当事方Pi的份额si,并重建陷阱门密钥tk:=Rec(s1,···,sn)。不诚实的当事方的份额由不诚实的当事方选择。当接收到针对来自所有诚实当事方的对((h,m,ξ),m′)的“计算冲突”信号时,计算ξ′←HCol(tk,(h,m,ξ),m′)并发送(h,m,ξ)和ξ′给不诚实的当事方。在接收到来自不诚实的当事方的“OK”信号时,系统可以将值ξ′转发给所有诚实的当事方。然而,如果没有接收到“OK”,则系统可以向所有的诚实当事方转发⊥(例如,运行时间故障指示符)。
在示例场景中,示例系统可以包括n个活跃用户。用户的子集U∈[n]可以保持陷阱门密钥K的份额。用户的子集U可以执行分散式密钥生成协议。在运行结束时,子集U中的用户得到tk的份额si。当块Bk:=<s,x,ctr,(h,ξ)>被修订为经修改的块时,用户可以检查他们自己的区块链并找到块Bk。然后,子集中的用户可以执行分布式散列冲突协议来计算值用户可以输入他们自己的tk的私有份额si、值s,x,h,ξ和在协议结束时,子集U中的用户接收块的值用户可以通过用块替换块Bk来更新他们自己的区块链并广播这个新的已重写链。在一些情况下,用户可以将新链广播作为新的特殊链。在一些实现中,对区块链的重写可能很少发生。特殊链广播的使用不一定可以引起频繁的断开。然而,在各种实现中,可以使用特殊和非特殊的传输。
针对集合U的示例选择是挑选在线用户的子集。然而,该选择可以取决于应用。还要处理U中的一些用户实际上是恶意的并且他们的目标是学习tk或阻止其正确重建的问题。
具体例示
在一些示例实现中,系统可以使用变色龙散列(CH)构建,该构建在GiuseppeAteniese和B.de Medeiros的“On the key exposure problem in chameleon hashes”(SCN,第165-179页,2004年)中进行了描述。如上所述,可以被实现的示例CH构建具有双Nyberg-Rueppel签名以及增加的抗冲突能力,例如显示示例属性8的CH。针对该函数的参数可以包括随机素数q和p=2q+1。参数还可以包括的二次留数Qp的子组的生成器g和抗冲突散列函数H。
·(hk,tk)←$HGen(1κ):密钥是随机值tk∈[1,q-1],并且散列密钥是hk←gtk。
·h:=Hash(m,r,s):为了用随机值对消息m∈M进行散列,计算并返回h:=r-(hkH(m,r)g8 mod p)mod q。
·{0,1}:=HVer(h,m,r,s):为了验证,仅返回Hash(m,r,s)=h。
·(r′,s′)←$HCol(h,m,r,s,m′):为了计算针对消息m’的冲突,挑选随机数k∈[1,q-1],计算r′←h+(gk mod p)mod q,并且计算s′←k-H(m′,r′)·tk mod q。返回(r′,s′)。
半诚实的场景。在示例场景中,子组U中的用户是半可信的。在此场景中,可以信任子组U中的半诚实用户,以执行协议并根据规则进行操作,例如可以依赖子组U中的用户来输入正确的份额。对于这种半诚实场景,下面描述基于和的n阈值密钥共享方案:
共享阶段:
·经销商选择秘密s和n个份额si,使得
·n个当事方Pi接收他们相应的密钥份额si。
重建阶段:
·经销商从当事方Pi接收份额si并重新构建密钥
在示例场景中,用户u∈U单独地选择随机数xi∈[1,q-1]作为他们相应的密钥份额,并广播值yi←gxi。散列陷阱门密钥可以是xi mod q,并且散列密钥可以是hk←gtk。该协议可以是非交互式的,因为其可能不一定需要用户之间的任何消息交换。此外,没有n-1个用户的集合可能必须能够重新构建tk。此外,系统可能阻碍试图学习关于tk的信息,因为份额只是随机元素。
在示例场景中,用户u∈U可以在对((h,m,r,s),m′)上达成一致。用户单独地选择相应的随机数ki∈[1,q-1],广播gki,并随后计算在一些情况下,各个用户的系统可以计算h′←H(m′,r′),而不必从子组中的其他用户接收附加输入。为了计算s’,用户可以执行MPC协议,以通过输入用户相应的tk份额来计算乘法s″←h′·tk。用户可以通过输入先前选择的k的份额来执行附加的和另一MPC协议来计算差值s′←k-s″。
不诚实的场景。附加地或备选地,示例场景可以包括一些用户、实体、当事方、设备或其他实体,他们可能是不诚实的。例如,不诚实的用户可能偏离协议规范,以试图学习其他用户的密钥份额。为了维持这种场景中的安全性,可以实现用于密钥共享的稳健秘密共享方案。在一些情况下,稳健秘密共享可以支持阈值数目(例如,整数t<n)的可能是不诚实的用户。执行稳健秘密共享的用户可以根据给定份额重新构建正确的密钥,即使(多达)阈值数目的用户是不诚实的。稳健秘密共享方案可以使用Shamir秘密共享方案加上Reed-Solomon(RS)纠错码来实现。在密钥重建阶段,在重新构建密钥之前,在每个份额中使用RS码。在一些情况下,与RS纠错配对的Shamir秘密共享方案可以在多达三分之一的用户主动不诚实的情况下操作。在一些示例方案中,可以支持任何不诚实的用户阈值,例如,这可以包括允许仅少于大多数用户不诚实的阈值。
子组中的用户可以选择相应的随机串ρi∈并将其解析为使得子组可以就多项式P(X)达成一致。多项式可以定义为P(X):=tk+P1·X+P2·X2+···+Pn-1·Xn-1,其中 且P(0):=∑i∈[n]tki。为了分配份额,用户可以执行MPC协议来计算每个用户i的份额。对于用户i,对应的份额可以是和 在重建阶段,可以使用RS码对用户的份额进行解码。
在一些实现中,可以使用共享方案,诸如在Tal Rabin和Michael Ben-Or的“Verifiable secret sharing and multiparty protocols with honest majority(extended abstract)”(ACM STOC,第73-85页,1989年)中所描述的那些方案。例如,其中所讨论的共享方案可以使用广播信道,并且能够在大多数当事方诚实的情况下成功操作。
此外,一些实现可以使用这样的方案,具有在Allison Bishop、Valerio Pastro、Rajmohan Rajaraman和Daniel Wichs的“Essentially optimal robust secret sharingwith maximal corruptions”(IACR Cryptology ePrint Archive,2015:1032,2015年)中所描述的可优化份额大小。例如,其中所讨论的共享方案可以具有在份额大小和当事方数目n之间缺乏线性相关性的缺陷设置。在一些情况下,份额大小可以随k线性增长,其中2-k是故障的概率。
块级结构
图8示出了与示例更新的区块链部分850配对的示例区块链部分800。在该示例中,区块链部分800、850的外部散列H与内部散列G配对。内部散列可以被嵌套在外部散列内,使得将内部散列的输出作为输入提供给外部散列。在该示例中,区块链部分,内部散列G可以是变色龙散列函数。外部散列H可以是变色龙散列函数或另一散列函数。这些块可以包括HashPrev(例如,前一散列)802字段,其可以包括用于保持与前一块对应的散列输出的存储库,例如s、s'、s”。块820,822,832、834可能不一定包括其自身输入的散列输出。然而,针对块的散列输出被示出在块上方,以表明到下一块的链接803(例如,块832与820之间以及820与834之间的链接803)。块820、822、832、834还可以包括有效载荷804字段,该字段可以保持在块内受保护的数据(例如,x、x’、x”),诸如交易信息、智能合同内容、数值、货币面值或其他受保护的数据。
还可以包括计数器字段806,例如ctr、ctr’、ctr”。计数器字段806可以包括可以被用于工作证明(PoW)计算、记帐、块跟踪或其他目的的计数器或随机数。在加密货币实现中,PoW可以被用来验证对特定当事方的货币奖励的有效性。PoW可以包括计算问题的解,其中,解的计算复杂但验证的计算相对简单。在智能合同中也可以使用PoW来验证特定当事方已经完成了他们在合同中的义务。
当块被修订时,例如当冲突被计算时,可以更新随机性808字段。在一些情况下,随机性字段可以保持第三数据(例如,r、r’、r”),其可以与替换数据配对以允许对区块链进行非防篡改重写。当块820被修订时,值s’、x’、ctr’和r’可以由s’、*x’、ctr’和*r’代替。在示例场景中,s’和ctr’可以不一定被修改,因为ctr’可以由外部散列用来计算PoW,并且是与保持不变的前一块的链接。使用针对内部散列函数G的变色龙散列密钥,可以发现冲突,使得G(s',x',and r')=G(s',*x',and*r')。相应地,H(ctr',G(s',x',and r'))=H(ctr',G(s',*x',and*r'))。结果,s”可以通过修订而保持不变。更新的块部分850包括具有值*x’和*r’的替换块822。
在一些实现中,系统可以通过在Blocki+1中用si替换si+1,然后在Blocki+1上运行修订过程来删除块。附加地或备选地,系统可以通过将Blocki+1中的值si+1指向Blcoki-1来删除块。在一些情况下,可以改变Blocki-1中的ctr值,以维持与Blocki+1中的更新的值Si+1的编码一致性。
多链区块链
在一些实现中,受信任实体可以执行可以被隐藏的修订,并且用户可以不知道新的区块链已经替换了原始区块链。即,除非可以恢复区块链的旧副本,否则用户可能不一定能够检测是否修订了区块链的部分。
然而,在一些实现中,可以有利地使修订明显。例如,在审查修订的系统中,先前协议在执行修订时要求证据,或者在修订的证据是有利的或以其他方式优选的其他情况下,防篡改修订可能是有利的。在修订明显的系统中,内容移除或修改可能留下重写标识符或“痕迹”(例如,重写伪像),其可能不一定由包括受信任方的任何人可移除。然而,在一些实现中,如下面所讨论的,痕迹可以通过受信任方的子集或者通过多个当事方的协调来移除。
在一些修订明显的实现中,单个区块链可以包括多个链,一个链基于写锁定链(例如,缺少密钥的散列函数或密钥未知的散列函数),一个链基于可重写区块链(例如,变色龙散列)。如果在这两个链中,写锁定和可重写链是完整的,则没有修订并且块是原始的。如果写锁定链被断开且变色龙链是完整的,则由受信任实体进行了修订。然而,如果可重写链被断开,则由不受信任实体对区块链进行了编辑,并且区块链可能被无效。在一些情况下,如果可重写链被断开,则区块链可能被无效,而不管写锁定链的状态如何。相应地,在这种情况下,通过变色龙链确保区块链的完整性,而写锁定链充当检测机制。因此,在利用痕迹证据支持重写的区块链中,区块链的有效性与篡改记录的创建在逻辑上分离。
在一些实现中,可以使用多个链在不同的受信任实体之间进行区分。相应地,可以将多个可重写链与零个或多个写锁定链一起包括在区块链中。在受信任的多个实体的跟踪区块链中,与进行修订的受信任实体相对应的链将不断开,而其他链(包括与其他受信任实体相对应的链或写锁定链)可能被断开。在一些实现中,包括多个可重写链提供了篡改痕迹或重写标识符,而没有伴随写锁定链,因为只有与进行编辑的受信任实体相对应的链可以保持不断开,而其他链虽然可通过其他受信任实体重写,但是作为编辑的结果也可能被断开。在一些情况下,当另一受信任实体或拥有其他一个或多个链的密钥的实体批准由先前受信任方进行的编辑时,痕迹可以随后被移除。这可以保护区块链免受一个受信任方进行的无法跟踪的单方面编辑,但是仍然允许单个受信任方快速删除敏感信息,而无需在多个当事方之间进行协调。
此外,在一些方案中,一些受信任实体可以被授权进行没有痕迹的编辑,而其他受信任方可能在进行编辑时留下痕迹。例如,在多重可重写链方案中,一个受信任方可以具有针对所有链的密钥,而其他当事方仅具有针对链的一部分的密钥。拥有所有密钥的当事方可以进行编辑而不留下痕迹,而只拥有一部分密钥的当事方在编辑时可能留下痕迹。多链方案可以与分布式密钥方案组合,使得在各个当事方独自行动时留下痕迹的情况下,各个当事方可以聚合他们的密钥以进行无痕迹的编辑。
图9示出了示例双链区块链部分900、950,其中块B2 902被修改。由一个或多个受信任方持有的密钥903允许受信任方打开链路904并改变块B2 902。然而,写锁定链906或者受信任方缺少密钥的其他链路可能被断开,以表示发生修订。参照950,可以移除具有可能敏感信息的旧块B2 902,但是断开的链956充当不可磨灭的标记或痕迹,该标记或痕迹提供产生新块B2’952的修订发生的永久记录。
还可以使用多链区块链来生成具有与可重写区块链空间配对的不可重写区块链空间的混合区块链。例如,系统可以利用缺少密钥的完整性代码来保护区块链中的块集合中的每个块的第一个。相应地,由任何当事方重写块的这些部分的试图都将是防篡改的。示例系统可以用支持由受信任方重写的完整性代码来保护块的剩余部分。这些可重写部分可以由受信任方更改,而不生成篡改证据。相应地,操作者可以使用混合区块链来生成具有不可变核心数据的区块链系统,不可变核心数据与可以由有限数目的受信任方重写的第三级数据配对。
图10示出了示例混合区块链1000。混合区块链1000包括具有核心1002部分和第三级部分1004的块1010、1020、1030、1040。组成核心部分1002的块部分1012、1022、1032、1042由核心完整性代码1006保护,核心完整性代码1006可以不一定支持由任何当事方进行的非防篡改重写。相反地,组成块1010、1020、1030、1040的第三级部分1004的块部分1014、1024、1034、1044可以通过支持非防篡改重写的第三级完整性代码1008来保护。
在各种实现中,核心1006和第三级1008完整性代码本身可以实现多个链。例如,如上所讨论的,核心完整性代码1006或第三级完整性代码1008可以支持留痕迹,使得可以对部分1002、1004执行有效重写,但是这些改变仍然生成篡改的证据,尽管改变是有效的。附加地或备选地,核心1006和第三级1008完整性代码可以支持多受信任方的批准,或者需要不同数量的密钥部分来支持编辑。例如,对核心部分1002的编辑可以取决于由两个受信任方的批准以执行非防篡改重写,而对第三级部分的非防篡改编辑可以由单个受信任方执行。对于分布式密钥系统,示例系统可以允许使用密钥的M个部分对第三级部分1004进行非防篡改重写,同时仅允许在组合密钥的N个部分(其中N>M)时对核心部分1002进行非防篡改重写。
在示例场景中,混合区块链可以被用来构建具有完全不可变交易数据的分类账,该交易数据与交易描述/注释数据配对,可以由针对分类账的管理员的选择组重写交易描述/注释数据。在一些情况下,分类帐条目可以包括可以被输入的数据类型中的大小限制或约束。限制允许的重写可以挫败将不相关或恶意内容写入块的不可变分类账部分的尝试。块的可重写部分内的描述/注释字段可能遭受较少的条目限制。然而,管理员可以在改变不是防篡改的情况下更改或移除描述/评论字段中先前已写入的内容。
图11示出了示例可重写区块链场景1100。在可重写区块链场景1100中,控制密钥1150(或主密钥)的受信任方1101可以自行执行重写1172。例如,受信任方可以完全控制密钥,因为受信任方不必与其他当事方协调来执行重写1172。例如,受信任方1101可以直接地或者从一个或多个终端1110控制BRS 400,BRS 400可以将密钥1150存储在存储器420(例如,受保护的存储器480)中或者从远程位置(诸如终端1110、云存储装置或其他网络位置)访问/接收密钥1150。终端1110可以包括各种通信设备,诸如计算机、网络服务器、笔记本电脑、蜂窝电话、智能电话、平板电脑、互联网连接设备、物联网设备或其他通信设备。BRS 400可以执行RML 441和/或重写逻辑600以执行区块链重写1172。不受信任方1102可以访问BRS400、其他BRS 400系统、终端1110或BPS 300,它们可以验证区块链和/或附加块1174(例如,向区块链的末端添加新块)。
一些不受信任方可以控制BRS 400,包括在受信任方控制下的BRS 400。然而,不受信任方不能够访问所存储的密钥1150。例如,一些不受信任方可能在BRS 400上缺乏访问受信任方的密钥1150的用户帐户权限,但是仍然可以访问BRS 400的其他功能。附加地或备选地,关于第一可重写区块链的不受信任方可以充当关于其他区块链的受信任方。相应地,单个BRS 400可以为多个不同的区块链向多个不同的受信任方提供重写操作1172。
BRS 400可以访问区块链。当在受信任方的授权下被指示时,BRS 400可以使用密钥1150对所访问的区块链执行重写。
图12示出了示例分布式密钥链区块链重写场景1200。在示例场景1200中,多个当事方可以包括单独不受信任方IUP(1299)、受信任方1101和不受信任方1102。IUP 1299可以控制密钥的部分1260,而受信任方1101可以控制整个密钥1150。在示例场景中,当IUP 1299组合它们的密钥部分1260(例如,通过PKE或其他秘密交换方案,如上文所讨论的)或者在受信任方1101的授权下使用其密钥1150的单方重写1172时,可以执行重写1272。然而,各种其他示例分布式密钥区块链重写场景中,没有单个当事方可以完全控制密钥1150,并且相应地,当IUPS 1299组合它们的部分1260时,非防篡改区块链重写1272是可能的。
再次参考示例分布式密钥区块链重写场景1200,IUP 1299可以组合它们的部分来执行非防篡改重写1272。IUP 1299可以将它们的密钥部分1260存储在BRS 400、BPS 300、终端1110或其他存储器位置上。IUP 1299可以使用上述交换方案中的一种交换方案来组合它们的部分。一旦组合的密钥1262可用,BRS 400就可以访问组合的密钥1262以执行非防篡改重写。
现在转为讨论可重写区块链的现实世界应用,区块链可以被用来(例如,由私人公司)维持记录。例如,服务提供者(例如,银行、金融机构或其他企业)可以维持保持交易记录的区块链。
图13示出了示例区块链记录维护场景1300。在一些情况下,可以被重写的区块链1302可以由服务提供者1304维持在公共位置,其中,在当事方完成交易时,交易的当事方1308可以向区块链1302的末端附加块1310(例如,包含交易记录1399)。服务提供者1304持有密钥1350,并且是受信任方。因为执行交易的当事方1308是不受信任的,所以服务提供者1304可以依靠区块链的仅附加性质来阻止对过去记录的篡改。
在一些司法管辖区(诸如欧盟),个人可以具有被遗忘的权利。此外,因为区块链1302包括交易记录1399并且是公开可获取的,所以区块链1302可以提供由过去用户的欺诈活动的公开记录1398。由于个人在完成对过去罪行的判决后可以具有广泛的权利将该罪行的引用从公共领域移除,所以服务提供者1304可以具有移除欺诈活动的公共记录1398的法律义务。如果不可以重写区块链1302,则服务提供者1304可能被迫使得区块链1302无效或者清除整个区块链1302以遵守法律。然而,由于服务提供者1304可以执行对区块链1302执行非防篡改重写,所以服务提供者可以移除公共记录1398,而无需将使区块链失效的篡改证据。相应地,上述可重写区块链技术和架构向公共记录保存和法定遵从的真实应用提供了具体的技术解决方案。
在另一现实世界应用中,可重写区块链可以被用在维护来自物联网(IoT)设备的数据流记录中。图14示出了示例IoT可重写区块链场景1400。IoT安全性相机1402可以记录视听(A/V)数据1404,并将A/V数据存储在可重写区块链1408内。操作IoT安全性相机1402的企业1410可以使用其来监控对第三方客户1499开放的区域(例如,零售场所的停车场)。当客户1499之间发生争执(例如,轻微的汽车事故)时,企业1410可以向客户1499提供区块链1408内的A/V数据1404。
相应地,企业1410可以确信各个客户1499不能够更改A/V数据1404。因此,A/V数据1404的真实性可以由客户1499自身(或由几乎任何一方,诸如保险人、调解人或法院)验证。结果,在区块链内提供视频可以减少企业1410在为客户1499认证A/V数据1404方面减少未来潜在负担。此外,由于区块链1408是可重写的,所以企业可以截取A/V数据1404,并提供具有相关A/V数据的段1420。在没有重写区块链1408的能力的情况下,企业1410可能面临提供不相关A/V段或移除区块链保护的选择以及面临更繁重的认证要求的风险。在各种实现中,如下面所讨论的,段1420可以被封装成闭合的区块链环路。
可重写区块链技术和架构可以支持在没有重写能力的技术解决方案的情况下不切实际或不可行的区块链形式。例如,在区块链重写支持的情况下,区块链可以被受信任方“封装”成环路形式。换句话说,给定线性区块链的第一块可以被重写以包括与区块链的后续块编码一致的完整性输出。这至少部分地将区块链改造成环路。在没有重写支持的情况下,在区块链内构建环路是不可能的或不切实际的,除非在环路中添加第一个块之前知道环路内所有块的内容。在一些情况下,分支(例如,具有可以跟随第一块的两个分离的可能块)是区块链失效的指示符。在没有分支的情况下,开环(例如不连接区块链两端的环路)不能被构建。相应地,在存在分支并不一定使区块链无效的实现中,开环可以是有效的。
在第一块是区块链中最老的块且后续块是最新块的情况下,受信任方将区块链重组成闭合的区块链环路。区块链环路可以由多个当事方用来提供针对有限长度区块链的自洽抗篡改。例如,在区块链覆盖已完成的一系列交易的情况下,可以将区块链封装到闭环中,以提供自洽记录,而不必依赖于未来的块添加来保证安全性。
图15示出了示例封装区块链1530、1550。示例区块链环路1530是开环。示例区块链1500是闭环。受信任方1504可以通过选择至少一个非端块(例如,来自组1532的块)来锁定到另一块来将区块链封装成开环区块链1530。备选地,受信任方1504可以通过选择两个端块(例如,来自组1552的两个块)将区块链封装成闭环区块链1550。
对于开环1530,块1538可以用内容1546来重写,使得被存储在块1534中的完整性输出1536指示块1538在块1534之前(例如,完整性输出1536应该与内容1546编码一致)。由于块1534保持不变,所以块1542的内容也可以与块1534中所存储的完整性输出1536编码一致。完整性输出1536可以被写入块1544中,以确保块1538在被重写后与块1544编码一致。块1544可以用完整性输出1536来重写,使得块1558的完整性输出1548在重写之后保持与块1544编码一致。
对于闭环区块链1550,块1554可以用完整性输出1556来重写,完整性输出1556指示块1558在块1554之前(例如,完整性输出1556应该与内容1558编码一致)。块1554可以用完整性输出1556来重写,使得块1541的完整性输出1566在重写之后保持与块1554编码一致。相应地,在由受信任方1504创建闭环1550之后,由不受信任方的重写块1558将与完整性输出1556编码不一致,并且是防篡改的。另外,在分支使区块链失效的实现中,在块1558之后附加块将使闭环1550失效。相应地,在分支使区块链无效的实现中,闭环区块链1550可以被保护免受非防篡改重写和非防篡改添加两者。
上述方法、设备、处理和逻辑可以以许多不同的方式并且以硬件和软件的许多不同组合来实现。例如,实现的所有或部分可以是电路,该电路包括指令处理器,诸如中央处理单元(CPU)、微控制器或微处理器;专用集成电路(ASIC)、可编程逻辑器件(PLD)或现场可编程门阵列(FPGA);或者包括离散逻辑或其他电路部件(包括模拟电路部件、数字电路部件或二者)的电路;或者它们的任何组合。例如,电路可以包括离散互连的硬件部件和/或可以被组合在单个集成电路管芯上、分布在多个集成电路芯片之间或者在公共封装中的多个集成电路管芯的多芯片模块(MCM)中被实现。
电路可以进一步包括或访问供电路执行的指令。指令可以被实施为信号和/或数据流和/或可以被存储在除临时信号之外的有形存储介质中,诸如闪存、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM);或者被存储在磁盘或光盘上,诸如压缩盘只读存储器(CDROM)、硬盘驱动器(HDD)或其他磁盘或光盘;或者被存储在另一机器可读介质中或上。产品(诸如计算机程序产品)可以特别地包括存储介质和被存储在介质中或上的指令,并且指令在由设备中的电路执行时可以使设备实现上述或附图中所示的任何处理。
实现可以作为电路(例如,硬件和/或硬件和软件的组合)分布在多个系统部件之间,诸如在多个处理器和存储器之间,可选地包括多个分布式处理系统。参数、数据库和其他数据结构可以被分别存储和管理,可以被结合到单个存储器或数据库中,可以以许多不同的方式逻辑地和物理地组织,并且可以以许多不同的方式来实现,包括作为数据结构,诸如所链接的列表、散列表、阵列、记录、对象或隐式存储机制。程序可以是单个程序的部分(例如,子例程)、分离的程序、分布在几个存储器和处理器上或者以许多不同的方式被实现,诸如在库(诸如,共享库(例如,动态链接库(DLL))中被实现。例如,当由电路执行时,DLL可以存储执行上述或附图中所图示的任何处理的指令。
本文所描述的技术和架构可以被用在各种实现中。作为一个示例,可以在硬件安全性系统中执行一种方法。该方法可以包括:在处理电路处经由密钥交换协议接收密钥的第一部分;利用处理电路来组合第一部分与密钥的第二部分以获得密钥;利用处理电路来确定利用经更改的数据来重写区块链的所选块中的原始数据,经更改的数据与先前被存储在所选块中的原始数据不同;以及利用处理电路并使用密钥来确定包括经更改的数据的冲突数据,冲突数据与先前所确定的完整性输出编码一致,完整性输出被存储在区块链跟随所选块的特定块内,先前所确定的完整性输出响应于原始数据而被生成并与原始数据编码一致。
作为另一示例,一种系统可以包括:存储器、被存储在存储器内的区块链、以及与通信接口进行数据通信的重写电路。区块链可以包括:所选块,包括原始数据;以及特定块,包括完整性输出,使用原始数据来确定完整性输出作为输入。通信接口可以被配置为:执行密钥交换操作以接收密钥的部分,该部分由多个单独不受信任方发送;接收与密钥交换协议协调的命令,该命令用来利用经更改的数据重写原始数据。重写电路可以被配置为:使用密钥的部分获得部分组合;当部分的计数超过针对重写权限的阈值计数时,计算包括经更改的数据的冲突数据,冲突数据与完整性输出编码一致,并且使用部分组合和经更改的数据作为输入来执行计算冲突数据。
在一些实现中,重写电路可以进一步被配置为:当计数没有超过针对重写权限的阈值计数时,无法计算冲突数据。
在一些实现中,重写电路可以被配置为:通过以下而无法计算冲突数据:确定计数没有超过阈值;并且响应于确定计数没有超过阈值,放弃对冲突数据的计算。
在一些实现中,重写电路可以被配置为:通过以下而无法计算冲突数据:通过尝试利用密钥的不完全知识计算冲突数据来生成无效数据,无效数据与完整性输出编码不一致;以及通过利用无效数据至少改写原始数据来执行区块链的防篡改重写。
在一些实现中,特定块可以跟随区块链内的所选块。
在一些实现中,特定块可以包括与区块链内的所选块相邻的块。
在又一示例中,可以在硬件安全性系统中执行一种方法。该方法可以包括:利用处理电路来确定利用经更改的数据来重写区块链的所选块中的原始数据,经更改的数据与先前被存储在所选块中的原始数据不同;标识区块链的特定块,特定块包括第一完整性代码和第二完整性代码;利用处理电路并使用密钥来确定包括经更改的数据的冲突数据;以及利用处理电路来通过利用冲突数据替换原始数据来对区块链执行防篡改重写。冲突数据与被存储在区块链的特定块内的第一完整性输出编码一致,并且与被存储在特定块内的第二完整性输出编码不一致。第一和第二完整性输出响应于原始数据而被生成并与原始数据编码一致。
在另一示例中,一种系统可以包括:存储器、被存储在存储器内的区块链和重写电路。区块链可以包括:第一块,包括原始数据;以及第二块,包括使用原始数据作为输入来计算的第一完整性输出;以及使用原始数据作为输入来计算的第二完整性输出。重写电路可以被配置为:通过利用不同于原始数据的经更改的数据来重写第一块来在区块链中生成痕迹,经更改的数据与第一完整性输出编码一致,但与第二完整性输出编码不一致。
在另一示例中,一种系统可以包括:存储器、通信接口电路、以及与通信接口和存储器进行数据通信的重写电路。存储器可以被配置为存储针对保护区块链的变色龙散列的密钥。通信接口电路可被配置为:访问存储器中的区块链,区块链包括所选块、在区块链上跟随在所选块之后的第二块和在区块链上在所选块之前的第三块。所选块可以包括:有效载荷字段,可操作以存储原始数据;第一先前散列字段,可操作以存储第一变色龙散列输出;以及随机性字段。第二块可以包括可操作以存储第二变色龙散列输出的第二先前散列字段。可以使用第三块的内容作为输入来生成第一变色龙散列输出。通信接口电路可以进一步被配置为:接收受信任方指令,以对有效载荷字段执行非防篡改重写,该指令指定将替换先前被存储在有效载荷字段中的原始数据的经更改的数据;为了促进指令的执行,接收访问存储器内的密钥的授权,该授权由针对区块链的受信任方发起,以及发送针对区块链的重写指令。重写电路可以被配置为:使用有效载荷字段、第一先前散列字段和密钥作为输入来确定要写入随机性字段的随机性数据,选择随机性数据,使得当有效载荷字段包含经更改的数据且随机性字段包含随机性数据时,第二变色龙散列输出与所选块编码一致;生成重写指令;以及使通信接口发送重写指令。重写指令可以包括:用来将随机性数据写入随机性字段的第一命令;以及用来利用经更改的数据替换原始数据的第二命令。
在另一示例中,一种系统可以包括存储器和重写电路。存储器可以被配置为存储区块链。区块链可以包括:所选块,包括原始数据;以及特定块,包括完整性输出。重写电路可以被配置为对所选块、特定块或二者执行非防篡改重写。
在一些实现中,重写电路可以被配置为通过将区块链封装成环路来执行非防篡改重写。
在一些实现中,重写电路可以被配置为通过利用与完整性输出编码一致的经更改的数据替换原始数据来将区块链封装成环路。
在一些实现中,重写电路可以被配置为通过将区块链封装成闭环、开环或二者来将区块链封装成环路。
在一些实现中,区块链可以包括第三级部分和核心部分。
在另一示例中,一种系统可以包括存储器以及被存储在存储器上的混合区块链。混合区块链可以包括核心部分和第三级部分。满足针对重写权限的标准可以使当事方有资格重写第三级部分但不是核心部分。
在一些实现中,该标准可以包括组合第一阈值数目的密钥部分。
在一些实现中,核心部分可以由缺少相关联的密钥的完整性代码保护。
在另一示例中,一种系统可以包括:存储器;区块链,被存储在存储器中,区块链包括具有原始数据的块,区块链由针对第一完整性代码的第一完整性输出保护,第一完整性代码被配置为在被应用于原始数据时产生第一完整性输出;以及重写电路,与存储器进行数据通信。重写电路被配置为:访问区块链;访问针对第一完整性代码的密钥,密钥促进冲突数据的标识,冲突数据不同于原始数据,第一完整性代码被配置为在被应用于冲突数据时产生第一完整性输出;接收命令,以利用不同于原始数据的经更改的数据来重写块中的原始数据,第一完整性代码在被应用于经更改的数据时不产生第一完整性输出;响应于密钥和经更改的数据生成附加数据;基于经更改的数据和附加数据生成冲突数据;以及利用冲突数据来重写块。
在一些实现中,经更改的数据包括:原始数据的修订版本、相对于原始数据的补充数据或者二者。
在一些实现中,其中第一完整性代码包括密码散列、变色龙散列或者二者。
在一些实现中,区块链包括从第一完整性代码和第二完整性代码构建的双链。
在一些实现中,第二完整性代码在被应用于冲突数据时不产生第二完整性输出。
在一些实现中,第二完整性输出被配置为用作将区块链标记为已重写的重写标识符。
在一些实现中,第一完整性代码包括第一变色龙散列,并且第二完整性代码包括重写保护密码散列、第二变色龙散列或者二者。
在一些实现中,第一完整性代码包括被嵌套在外部散列内的内部散列。
在一些实现中,内部散列包括变色龙散列,该变色龙散列被配置为向外部散列提供散列输出;并且外部散列包括重写保护密码散列。
在一些实现中,重写电路被配置为通过组合密钥的多个部分来访问密钥。
在一些实现中,多个部分被存储在由单独不受信任方维持的分离存储器位置中,这些单独不受信任方共同组成受信任方。
在一些实现中,重写电路被配置为使用公钥交换协议来组合多个部分。
在另一示例中,一种方法包括:在硬件安全性系统中,使用处理电路来访问针对区块链的密钥;利用处理电路来确定利用经更改的数据来重写区块链的所选块中的原始数据,该经更改的数据不同于先前被存储在所选块中的原始数据;以及利用处理电路并且使用密钥来确定包括经更改的数据的冲突数据,冲突数据与先前确定的完整性输出编码一致,先前确定的完整性输出被存储在区块链中跟随在所选块之后的特定块内,先前确定的完整性输出响应于原始数据而被生成并且与原始数据编码一致。
在一些实现中,利用经更改的数据来重写原始数据包括:利用原始数据的修订版本重写原始数据、利用相对于原始数据的补充数据来重写原始数据或者二者。
在一些实现中,区块链由包括密码散列、变色龙散列或者二者的完整性代码保护;并且密钥是特定于完整性代码的。
在一些实现中,区块链包括使用第一完整性代码和第二完整性代码的双链。
在一些实现中,经更改的数据包括与第二完整性代码的第二完整性输出的编码不一致,第二完整性输出不同于先前确定的完整性输出。
在一些实现中,与第二完整性代码的第二完整性输出的编码不一致被配置为用作将区块链标记为已重写的重写标识符。
在一些实现中,第一完整性代码包括第一变色龙散列;并且第二完整性代码包括重写保护密码散列、第二变色龙散列或者二者。
在一些实现中,第一完整性代码包括被嵌套在外部散列内的内部散列。
在一些实现中,内部散列包括变色龙散列,该变色龙散列被配置为向外部散列提供散列输出;并且外部散列包括重写保护密码散列。
在一些实现中,访问密钥包括组合密钥的多个部分。
在另一示例中,一种计算机程序或产品可以包括:除瞬态信号之外的机器可读介质;以及被存储在机器可读介质上的指令。这些指令在被执行时可以使系统:访问区块链内的原始数据,原始数据由针对完整性代码的第一完整性输出来保护,完整性代码被配置为在被应用于原始数据时产生第一完整性输出;确定利用不同于原始数据的经更改的数据来重写块中的原始数据,使得利用经更改的数据来重写原始数据产生防篡改重写;访问存储器中的密钥;并且响应于密钥,执行利用至少经更改的数据替换第一数据的区块链的非防篡改重写,使得完整性代码被配置为在被应用于非防篡改重写时产生第一完整性输出。
在一些实现中,经更改的数据包括原始数据的修订版本、相对于原始数据的补充数据或它们的任何组合。
在一些实现中,完整性代码包括变色龙散列。
在一些实现中,指令还被配置为通过组合密钥的多个部分来访问密钥。
在一些实现中,多个部分被存储在由单独不受信任方维持的分离存储器位置中,这些单独不受信任方一起组成针对区块链的受信任方。
在一些实现中,指令还被配置为通过使用公钥交换协议组合多个部分来防止单独不受信任方单独地获得密钥的整体的知识。
在另一示例中,一种方法包括经由重写电路访问被存储在存储器上的区块链,其中区块链包括具有第一数据的块;并且区块链由针对完整性代码的第一完整性输出来保护,完整性代码被配置为在被应用于原始数据时产生第一完整性输出。该方法还可以包括:经由重写电路访问针对完整性代码的密钥,该密钥促进不同于原始数据的冲突数据的标识,完整性代码被配置为在被应用于冲突数据时产生第一完整性输出;确定利用与原始数据不同的经更改的数据来重写块中的原始数据,完整性代码在被应用于经更改的数据时不产生第一完整性输出;响应于密钥和经更改的数据生成附加数据;基于经更改的数据和附加数据生成冲突数据;以及利用冲突数据重写块。
在一些实现中,访问密钥包括组合密钥的多个部分,多个部分被存储在由单独不受信任方维持的分离存储器位置中,这些单独不受信任方一起组成受信任方。
在另一示例中,一种方法包括在硬件安全性系统中:使用处理电路访问针对区块链的密钥;利用处理电路来确定利用经更改的数据来重写区块链的所选块中的原始数据,经更改的数据不同于先前被存储在所选块中的原始数据;以及利用处理电路并使用密钥来确定包括经更改的数据的冲突数据,冲突数据与先前确定的被存储在区块链中跟随在所选块之后的特定块内的完整性数据编码一致,先前确定的完整性输出响应于原始数据而被生成并与原始数据编码一致。
在一些实现中,区块链由包括密码散列、变色龙散列或者二者的完整性代码来保护。密钥是特定于完整性代码的。
在一些实现中,区块链包括使用第一完整性代码和第二完整性代码的双链。
在一些实现中,经更改的数据包括与第二完整性代码的第二完整性输出的编码不一致,第二完整性输出不同于先前确定的完整性输出。
在一些实现中,与第二完整性代码的第二完整性输出的编码不一致被配置为用作将区块链标记为已重写的重写标识符。
在一些实现中:第一完整性代码包括第一变色龙散列;并且第二完整性代码包括重写保护密码散列、第二变色龙散列或者二者。
在一些实现中,第一完整性代码包括被嵌套在外部散列内的内部散列。
在一些实现中:内部散列包括变色龙散列,该变色龙散列被配置为向外部散列提供散列输出;并且外部散列包括重写保护密码散列。
在另一示例中,一种系统包括通信接口电路和与通信接口电路进行数据通信的重写电路。通信接口电路被配置为在处理电路处经由密钥交换协议接收密钥的第一部分。重写电路被配置为:将第一部分与密钥的第二部分组合以获得密钥;确定利用经更改的数据来重写区块链的所选块中的原始数据,经更改的数据与先前被存储在所选块中的原始数据不同;以及使用密钥确定包括经更改的数据的冲突数据,冲突数据与被存储在区块链中跟随在所选块之后的特定块内的先前确定的完整性输出编码一致,先前确定的完整性输出响应于原始数据而被生成并与原始数据编码一致。
在一些实现中,特定块跟随在区块链内的所选块之后。
在一些实现中,特定块包括与区块链内的所选块相邻的块。
在一些实现中,通信接口电路被配置为通过经由公钥交换协议接收密钥的第一部分来经由密钥交换协议接收密钥的第一部分。
在一些实现中,通信接口电路被配置为通过在多个单独不受信任方的授权下执行密钥交换协议来接收密钥的第一部分和密钥交换协议。
在一些实现中,重写电路还被配置成在组合密钥的第一部分和第二部分之前,访问受保护存储器中的密钥的第二部分。
在一些实现中,重写电路还被配置成使用密钥将密钥的第三部分授予先前不受信任方。
在一些实现中,重写电路被配置为通过使用密钥解密存储密钥的多个部分的高速缓存来授予密钥的第三部分。
在一些实现中,重写电路被配置为通过确定移除通过在不访问第一部分、第二部分或者二者的情况下执行重写而留下的可检测重写伪像,确定利用经更改的数据来重写区块链的所选块中的原始数据。
在另一示例中,一种方法包括在存储器中访问区块链,区块链包括:所选块,包括原始数据;以及特定块,包括完整性输出,完整性输出根据作为输入的原始数据来确定。该方法还可以包括在通信接口电路处:执行密钥交换操作以接收密钥的部分,这些部分由多个单独不受信任方发送;接收与密钥交换操作协调的命令,该命令指定利用经更改的数据来重写原始数据。该方法还可以包括在重写电路处:从密钥的部分获得部分组合;以及当部分的计数超过针对重写权限的重写阈值时,计算包括经更改的数据的冲突数据,其中:冲突数据与完整性输出编码一致,并且冲突数据根据作为输入的部分组合和经更改的数据来在算法上确定。
在一些实现中,该方法还包括当计数未超过针对重写权限的重写阈值时,无法计算冲突数据。
在一些实现中,无法计算冲突数据包括:确定计数没有超过重写阈值;以及响应于确定计数没有超过重写阈值,放弃冲突数据的计算。
在一些实现中,无法计算冲突数据包括:通过试图利用密钥的不完整知识计算冲突数据来生成无效数据,无效数据与完整性输出编码不一致;并且执行区块链的防篡改重写包括利用无效数据至少重写原始数据。
在一些实现中,该方法还包括当计数超过针对密钥授予权限的授予阈值时,解密密钥部分的高速缓存。
在另一示例中,一种方法包括在硬件安全性系统中:在处理电路处经由密钥交换协议接收密钥的第一部分;利用处理电路来将第一部分与密钥的第二部分组合以获得密钥;利用处理电路来确定利用经更改的数据来重写区块链的所选块中的原始数据,经更改的数据不同于先前被存储在所选块中的原始数据;以及利用处理电路并使用密钥来确定包括经更改的数据的冲突数据,冲突数据与被存储在区块链中跟随在所选块之后的特定块中的先前确定的完整性输出编码一致,先前确定的完整性输出响应于原始数据而被生成并与原始数据编码一致。
在一些实现中,特定块跟随在区块链内的所选块之后。
在一些实现中,特定块包括与区块链内的所选块相邻的块。
在一些实现中,经由密钥交换协议接收密钥的第一部分包括:经由公钥交换协议接收密钥的第一部分。
在一些实现中,经由密钥交换协议接收密钥的第一部分包括:在多个单独不受信任方的授权下执行密钥交换协议。
在一些实现中,该方法还包括:在组合密钥的第一部分和第二部分之前,在受保护的存储器中访问密钥的第二部分。
在一些实现中,该方法还包括:使用密钥来将密钥的第三部分授予先前不受信任方。
在一些实现中,授予密钥的第三部分包括:使用密钥来解密存储密钥的多个部分的高速缓存。
在一些实现中,确定利用经更改的数据来重写区块链的所选块中的原始数据包括:确定移除通过在不访问第一部分、第二部分或者二者的情况下执行重写而留下的可检测重写伪像。
在另一示例中,一种系统包括存储器、被存储在存储器内的区块链,区块链包括:所选块,包括原始数据;以及
特定块,包括完整性输出,完整性输出根据作为输入的原始数据来确定;通信接口电路被配置为:执行密钥交换操作以接收密钥的部分,代表多个单独不受信任方接收这些部分;接收与密钥交换操作协调的命令,该命令指定利用经更改的数据来重写原始数据;以及重写电路与通信接口电路进行数据通信,重写电路被配置为:从密钥的部分中获得部分组合;并且当部分的计数超过针对重写权限的重写阈值时,计算包括经更改的数据的冲突数据,其中:冲突数据与完整性输出编码一致,并且冲突数据根据作为输入的部分组合和经更改的数据来在算法上确定。
在一些实现中,重写电路还被配置为当计数不超过针对重写权限的重写阈值时,无法计算冲突数据。
在一些实现中,重写电路被配置为通过以下而无法计算冲突数据:确定计数没有超过重写阈值,以及响应于确定计数没有超过重写阈值,放弃冲突的计算。
在一些实现中,重写电路被配置为通过以下而无法计算冲突数据:通过尝试利用密钥的不完整知识计算冲突数据来生成无效数据,无效数据与完整性输出编码不一致;并且通过利用无效数据重写至少原始数据来执行区块链的防篡改重写。
在一些实现中,特定块包括与区块链内的所选块相邻的块。
在一些实现中,重写电路还被配置为当计数超过针对密钥授予权限的授予阈值时,解密密钥部分的高速缓存。
在另一示例中,一种方法包括在硬件安全性系统中:访问被存储在存储器中的区块链,区块链包括:第一块,包括原始数据;以及第二块,包括使用原始数据作为输入来计算的第一完整性输出以及使用原始数据作为输入来计算的第二完整性输出。该方法还包括:使用重写电路来通过利用不同于原始数据的经更改的数据重写第一块来在区块链中生成重写伪像,经更改的数据与第一完整性输出编码一致但与第二完整性输出编码不一致。
在一些实现中,在区块链中生成重写重写伪像包括:通过执行区块链的有效重写来利用经更改的数据重写第一块。
在一些实现中,该方法还包括:通过使用批准密钥以利用批准数据重写第一块来移除重写伪像,批准数据与第一完整性输出和第二完整性输出编码一致。
在一些实现中,批准数据包括经更改的数据;并且通过执行针对区块链的多受信任方重写批准来利用批准数据重写第一块。
在一些实现中,利用经更改的数据重写第一块包括使用密钥以利用经更改的数据重写第一块;并且该方法还包括:在利用经更改的数据重写第一块之前,通过在密钥交换中组合密钥的多个部分来生成密钥。
在一些实现中,组合多个部分包括:当多个部分的计数超过针对有效防篡改重写的第一阈值时组合多个部分。
在一些实现中,组合多个部分包括:当多个部分的计数超过针对有效防篡改重写的第一阈值但不超过针对有效非防篡改重写的第二阈值时组合多个部分,有效非防篡改重写与第二完整性输出编码一致。
在另一示例中,一种计算机程序或产品包括:除瞬态信号之外的机器可读介质;以及被存储在机器可读介质上的指令,这些指令被配置为当被执行时使系统:确定利用不同于先前被存储在所选块中的原始数据的经更改的数据来重写区块链的所选块中的原始数据;标识区块链的特定块,特定块包括第一完整性输出和第二完整性输出;使用第一密钥来确定包括经更改的数据的冲突数据;以及通过利用冲突数据替换原始数据来执行区块链的防篡改重写。在冲突数据与第一完整性输出编码一致且与第二完整性输出编码不一致的情况下,第一和第二完整性输出响应于原始数据而被生成并且与原始数据编码一致。
在一些实现中,指令被配置为:通过执行对区块链的有效重写来使处理电路执行与第一完整性输出编码一致的防篡改重写。
在一些实现中,指令被配置为:通过生成将区块链标记为已重写的重写伪像来使处理电路执行与第二完整性输出编码不一致的防篡改重写。
在一些实现中,指令还被配置为:使处理电路在执行区块链的防篡改重写之后,使用第二密钥确定利用批准数据重写冲突数据,批准数据与第一完整性输出和第二完整性输出编码一致。
在一些实现中,批准数据包括经更改的数据;并且指令被配置为:使处理电路通过确定执行区块链的防篡改重写的多受信任方批准来确定利用批准数据重写冲突数据。
在一些实现中,指令还被配置为使处理电路通过在密钥交换中组合第一密钥的多个部分来生成第一密钥。
在一些实现中,指令被配置为:使处理电路通过在多个部分的计数超过针对有效防篡改重写的第一阈值时组合多个部分,组合多个部分。
在一些实现中,指令被配置为:使处理电路通过在多个部分的计数超过针对有效防篡改重写的第一阈值但不超过针对有效非防篡改重写的第二阈值时组合多个部分,组合多个部分,有效非防篡改重写与第二完整性输出编码一致。
在另一个示例中,一种方法包括在硬件安全性系统中:利用处理电路来确定利用经更改的数据来重写区块链的所选块中的原始数据,不同于先前存储在所选块中的原始数据;标识区块链的特定块,特定块包括第一完整性输出和第二完整性输出;利用处理电路并且使用第一密钥来确定包括经更改的数据的冲突数据,冲突数据与第一完整性输出编码一致;并且与第二完整性输出编码不一致,第一完整性输出和第二完整性输出响应于原始数据而被生成并且与原始数据编码一致;以及利用处理电路来通过利用冲突数据替换原始数据来执行区块链的防篡改重写。
在一些实现中,执行与第一完整性输出编码一致的防篡改重写包括:执行区块链的有效重写。
在一些实现中,执行与第二完整性输出编码不一致的防篡改重写包括:生成将区块链标记为已重写的重写伪像。
在一些实现中,该方法还包括:在执行区块链的防篡改重写之后,确定使用第二密钥利用批准数据来重写冲突数据,批准数据与第一完整性输出和第二完整性输出编码一致。
在一些实现中,批准数据包括经更改的数据;并且确定利用批准数据来重写冲突数据包括:确定执行区块链的防篡改重写的多受信任方批准。
在一些实现中,该方法还包括:通过在密钥交换中组合第一密钥的多个部分来生成第一密钥。
在一些实现中,组合多个部分包括:在多个部分的计数超过针对有效防篡改重写的第一阈值时,组合多个部分。
在一些实现中,组合多个部分包括当:在多个部分的计数超过针对有效防篡改重写的第一阈值但不超过针对有效非防篡改重写的第二阈值时,组合多个部分。
在另一示例中,一种系统包括:存储器;区块链,被存储在存储器内,区块链包括:第一块,包括原始数据;和第二块,包括:使用原始数据作为输入来计算的第一完整性输出;以及使用原始数据作为输入来计算的第二完整性输出;以及重写电路,被配置为:通过利用不同于原始数据的经更改的数据来重写第一块以在区块链中生成重写伪像,经更改的数据与第一完整性输出编码一致但与第二完整性输出编码不一致。
在一些实现中,重写电路被配置为:通过执行对区块链的有效重写以通过利用经更改的数据来重写第一块,以在区块链中生成重写伪像。
在一些实现中,重写电路还被配置为:通过使用批准密钥以利用批准数据来重写第一块以消除重写伪像,批准数据与第一完整性输出和第二完整性输出编码一致。
在一些实现中,批准数据包括经更改的数据;并且重写电路被配置为通过执行对区块链的多受信任方重写批准以利用批准数据来重写第一块。
在一些实现中,重写电路被配置为:使用密钥以利用经更改的数据来重写第一块;以及在利用经更改的数据来重写第一块之前,通过在密钥交换中组合密钥的多个部分来生成密钥。
在一些实现中,重写电路被配置为:通过在多个部分的计数超过针对有效防篡改重写的第一阈值时组合多个部分,组合多个部分。
在一些实现中,重写电路被配置为:通过在多个部分的计数超过针对有效防篡改重写的第一阈值、但不超过针对有效非防篡改重写的第二阈值时组合多个部分,组合多个部分,有效非防篡改重写与第二完整性输出编码一致。
在另一示例中,一种方法包括在硬件安全性系统中:经由通信接口电路访问被配置为存储由变色龙散列保护的区块链的区块链数据库,区块链包括:所选块,包括有效载荷字段和随机性字段;特定块,在区块链上的所选块之后,特定块包括可操作以存储第一变色龙散列输出的第一先前散列字段;以及中间块,在区块链上的所选块和特定块之间,第一变色龙散列输出使用中间块的内容作为输入来生成。该方法还包括在硬件安全性系统中:接收受信任方指令以从区块链中删除中间块;为了促进指令的执行,接收访问针对变色龙散列的密钥的授权,授权由针对区块链的受信任方发起;使用有效载荷字段、第一先前散列字段和密钥作为输入来确定写入随机性字段的随机性数据,选择随机性数据以使变色龙散列被配置为产生第一变色龙散列输出是在从区块链中删除中间块并且将变色龙散列应用于所选块时。该方法还包括:在重写电路处生成删除指令;以及经由通信接口电路并向区块链数据库发送删除指令。删除指令包括:将随机性数据写入随机性字段的第一命令;以及用来从区块链中删除中间块的第二命令。
在一些实现中,中间块包括区块链上的所选块和特定块之间的多个块中的一个块。
在一些实现中,变色龙散列包括被嵌套在重写保护密码散列中的可重写密码散列。
在一些实现中,特定块进一步包括第三先前散列字段,第三先前散列字段包括使用重写保护密码散列来生成的写保护散列输出,该重写保护加密散列将区块链与变色龙散列并行地保护。
在一些实现中,当从区块链中删除中间块以及将重写保护密码散列应用于所选块时,重写保护密码散列不产生写保护散列输出。
在一些实现中,受信任方包括多个单独不受信任方;并且该方法还包括:使用基于公钥加密的交换协议来组合由单独不受信任方控制的多个密钥部分。
在一些实现中,确定随机性数据包括:当多个密钥部分的计数超过针对重写权限的阈值时,成功地生成随机性数据。
在一些实现中,多个密钥部分中的每一个密钥部分对计数贡献相等。
在一些实现中,多个密钥部分中的第一密钥部分比多个密钥部分中的第二密钥部分贡献更多。
在一些实现中,随机性字段被嵌套在特定块内的第一先前散列字段内,以掩盖随机性字段的存在。
在一些实现中,发送删除指令包括遵守数据隐私规则。
在另一示例中,一种计算机程序或产品包括:除瞬态信号之外的机器可读介质;以及被存储在机器可读介质上的指令。这些指令被配置为当被执行时使系统访问被配置为存储由变色龙散列保护的区块链的区块链数据库,区块链包括:所选块,包括有效载荷字段和随机性字段;特定块,在区块链上的所选块之后,特定块包括可操作以存储第一变色龙散列输出的第一先前散列字段;以及中间块,在区块链上的所选块与特定块之间,第一变色龙散列输出使用中间块的内容作为输入来生成。这些指令还被配置为当被执行时使系统:接收受信任方指令,以从区块链中删除中间块;为了促进指令的执行,接收授权以访问针对变色龙散列的密钥,授权由针对区块链的受信任方发起;使用有效载荷字段、第一先前散列字段和密钥作为输入来确定写入随机性字段的随机性数据,选择随机性数据,使得变色龙散列被配置为当从区块链中删除中间块以及将变色龙散列应用于所选块时产生第一变色龙散列输出。这些指令还被配置为当被执行时使系统:生成删除指令,并将删除指令发送给区块链数据库。删除指令包括将随机性数据写入随机性字段的第一命令以及从区块链中删除中间块的第二命令。
在另一示例中,一种系统包括:存储器,被配置为存储针对保护区块链的变色龙散列的密钥;通信接口电路,被配置为访问存储器中的区块链,区块链包括所选块、第二块和第三块,所选块包括可操作以存储原始数据的有效载荷字段、可操作以存储第一变色龙散列输出的第一先前散列字段以及随机性字段,第二块在区块链上的所选块之后,第二块包括可操作以存储第二第二变色龙散列输出的第二先前散列字段,第三块在区块链上的所选块之前,第一变色龙散列输出使用第三块的内容作为输入来生成,接收受信任方指令以对有效载荷字段执行非防篡改重写,受信任方指令指定经更改的数据以替换先前被存储在有效载荷字段中的原始数据;为了促进指令的执行,接收访问存储器内的密钥的授权,授权由区块链的受信任方发起;并且发送针对区块链的重写指令;以及重写电路,与通信接口电路和存储器进行数据通信,重写电路被配置为:使用有效载荷字段、第一先前散列字段和密钥作为输入来确定写入随机性字段的随机性数据,选择随机性数据,使得变色龙散列被配置成当有效载荷字段包含经更改的数据、随机性字段包括随机性数据以及变色龙散列被应用于所选块时产生第二变色龙散列输出;生成重写指令,重写指令包括:
第一命令,将随机性数据写入随机性字段;以及第二命令,利用经更改的数据替换原始数据;以及使通信接口电路发送重写指令。
在一些实现中,变色龙散列包括被嵌套在重写保护密码散列内的可重写密码散列。
在一些实现中,第二块还包括第三先前散列字段,第三先前散列字段包括使用重写保护密码散列来生成的写保护散列输出,该重写保护密码散列将区块链与变色龙散列并行地保护。
在一些实现中,当有效载荷字段包含经更改的数据、随机性字段包含随机性数据以及重写保护密码散列被应用于所选块时,重写保护密码散列不产生写保护散列输出:
在一些实现中,受信任方包括多个单独不受信任方;并且重写电路被配置为:使用基于公钥加密的交换协议来组合由单独不受信任方控制的多个密钥部分。
在一些实现中,重写电路被配置为:当多个密钥部分的计数超过针对重写权限的阈值时,成功生成随机性数据。
在一些实现中,多个密钥部分中的每一个密钥部分对计数贡献相等。
在一些实现中,多个密钥部分中的第一密钥部分对计数的贡献大于多个密钥部分中的第二密钥部分。
在一些实现中,随机性字段被嵌套在所选块内的第一先前散列字段中,以掩盖随机性字段的存在。
在一些实现中,相对于原始数据的经更改的数据包括:向有效载荷字段添加数据、来自有效载荷字段的数据的修订或者二者。
在一些实现中,相对于原始数据的经更改的数据包括来自有效载荷字段的数据的修订;并且重写电路被配置为利用经更改的数据替换原始数据以遵守数据隐私规则。
在一些实现中,该系统还包括被配置为在被激活时部署防盗对策的触发器;并且存储器包括被耦合至触发器的受保护存储器。
在另一示例中,一种方法包括在硬件安全性系统中:经由通信接口电路访问被配置为存储由变色龙散列保护的区块链的区块链数据库,区块链包括所选块、第二块和第三块,所选块包括可操作以存储原始数据的有效载荷字段、可操作以存储第一变色龙散列输出的第一先前散列字段以及随机性字段,第二块在区块链上的所选块之后,第二块包括可操作以存储第二变色龙散列输出的第二先前散列字段,第三块在区块链上的所选块之前,第一变色龙散列输出使用第三块的内容作为输入来生成;经由通信接口电路接收受信任方指令,以执行对有效载荷字段的非防篡改重写,该指令指定经更改的数据以替换先前被存储在有效载荷字段中的原始数据;为了促进指令的执行,接收访问变色龙散列的密钥的授权,该授权由针对区块链的受信任方发起;以及在硬件安全性系统的重写电路中,使用有效载荷字段、第一先前散列字段和密钥作为输入来确定随机性数据以写入随机性字段,选择随机性数据,使得变色龙散列被配置为当有效载荷字段包含经更改的数据、随机性字段包含随机性数据、以及变色龙散列被应用于所选块时产生第二变色龙散列输出;生成重写指令,重写指令包括:将随机性数据写入随机性字段的第一命令;以及利用经更改的数据来替换原始数据的第二命令;以及经由通信接口电路向区块链数据库发送重写指令。
在一些实现中,变色龙散列包括被嵌套在重写保护密码散列内的可重写密码散列。
在一些实现中,第二块还包括第三先前散列字段,第三先前散列字段包括使用重写保护密码散列来生成的写保护散列输出,该重写保护密码散列将区块链与变色龙散列并行地保护。
已经具体地描述了各种实现。然而,许多其他实现也是可能的。本文中所使用的标题和/或副标题仅旨在帮助读者理解所描述的实现。本发明由权利要求限定。
Claims (15)
1.一种方法,包括:
在密码逻辑硬件安全系统中:
利用处理电路来确定利用经更改的数据来重写区块链的所选块中的原始数据,所述经更改的数据不同于先前被存储在所述所选块中的所述原始数据;
标识所述区块链的特定块,所述特定块包括:第一完整性输出和第二完整性输出;
利用所述处理电路并且使用第一密钥来确定包括所述经更改的数据的冲突数据,所述冲突数据:
与所述第一完整性输出编码一致;并且
与所述第二完整性输出编码不一致,所述第一完整性输出和所述第二完整性输出响应于所述原始数据而被生成并且与所述原始数据编码一致;以及
利用所述处理电路来通过利用所述冲突数据替换所述原始数据来执行所述区块链的防篡改重写。
2.根据权利要求1所述的方法,其中执行与所述第一完整性输出编码一致的所述防篡改重写包括:执行所述区块链的有效重写。
3.根据前述权利要求中任何一项所述的方法,其中执行与所述第二完整性输出编码不一致的所述防篡改重写包括:生成将所述区块链标记成已重写的重写伪像。
4.根据前述权利要求中任何一项所述的方法,还包括:
在执行所述区块链的所述防篡改重写之后,确定使用第二密钥利用批准数据来重写所述冲突数据,所述批准数据与所述第一完整性输出以及所述第二完整性输出编码一致。
5.根据权利要求4所述的方法,其中:
所述批准数据包括所述经更改的数据;并且
确定利用所述批准数据来重写所述冲突数据包括:确定执行所述区块链的所述防篡改重写的多受信任方批准。
6.根据前述权利要求中任何一项所述的方法,还包括:
通过在密钥交换中组合所述第一密钥的多个部分来生成所述第一密钥。
7.根据权利要求6所述的方法,其中组合所述多个部分包括:在所述多个部分的计数超过针对有效防篡改重写的第一阈值时,组合多个部分。
8.根据权利要求6所述的方法,其中组合所述多个部分包括:在所述多个部分的计数超过针对有效防篡改重写的第一阈值、但是不超过针对有效非防篡改重写的第二阈值时,组合多个部分。
9.一种密码逻辑系统,包括:
存储器;
区块链,被存储在所述存储器内,所述区块链包括:
第一块,包括原始数据;以及
第二块,包括:
使用所述原始数据作为输入来计算的第一完整性输出;以及
使用所述原始数据作为输入来计算的第二完整性输出;以及
重写电路,被配置为:
通过利用与所述原始数据不同的经更改的数据来重写所述第一块以在所述区块链中生成重写伪像,所述经更改的数据与所述第一完整性输出编码一致但是与所述第二完整性输出编码不一致。
10.根据权利要求9所述的系统,其中所述重写电路被配置为:通过执行对所述区块链的有效重写以通过利用所述经更改的数据来重写所述第一块,以在所述区块链中生成所述重写伪像。
11.根据权利要求9或10所述的系统,其中所述重写电路还被配置为:通过使用批准密钥以利用批准数据来重写所述第一块以移除所述重写伪像,所述批准数据与所述第一完整性输出和所述第二完整性输出编码一致。
12.根据权利要求11所述的系统,其中:
所述批准数据包括所述经更改的数据;并且
所述重写电路被配置为通过执行针对所述区块链的多受信任方重写批准以利用所述批准数据来重写所述第一块。
13.根据权利要求9至12中任何一项所述的系统,其中所述重写电路被配置为:
使用密钥以利用所述经更改的数据来重写所述第一块;以及
在利用所述经更改的数据来重写所述第一块之前,通过在密钥交换中组合所述密钥的多个部分来生成所述密钥。
14.根据权利要求13所述的系统,其中所述重写电路被配置为:通过在所述多个部分的计数超过针对有效防篡改重写的第一阈值时组合所述多个部分,组合所述多个部分。
15.根据权利要求13所述的系统,其中所述重写电路被配置为:通过在所述多个部分的计数超过针对有效防篡改重写的第一阈值、但是不超过针对有效非防篡改重写的第二阈值时组合所述多个部分,组合所述多个部分,所述有效非防篡改重写与所述第二完整性输出编码一致。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110194119.7A CN112968764B (zh) | 2016-05-23 | 2017-05-23 | 多链路密码逻辑区块链 |
Applications Claiming Priority (15)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP16425044.1 | 2016-05-23 | ||
EP16425044 | 2016-05-23 | ||
EP16425086.2 | 2016-08-11 | ||
EP16425086 | 2016-08-11 | ||
EP17425018 | 2017-02-17 | ||
EP17425018.3 | 2017-02-17 | ||
US15/596,932 | 2017-05-16 | ||
US15/596,899 | 2017-05-16 | ||
US15/596,922 US9785369B1 (en) | 2016-05-23 | 2017-05-16 | Multiple-link blockchain |
US15/596,899 US9774578B1 (en) | 2016-05-23 | 2017-05-16 | Distributed key secret for rewritable blockchain |
US15/596,932 US9967096B2 (en) | 2016-05-23 | 2017-05-16 | Rewritable blockchain |
US15/596,922 | 2017-05-16 | ||
US15/596,904 | 2017-05-16 | ||
US15/596,904 US9967088B2 (en) | 2016-05-23 | 2017-05-16 | Rewritable blockchain |
PCT/EP2017/062242 WO2017202758A1 (en) | 2016-05-23 | 2017-05-23 | Multiple-link cryptologic blockchain |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110194119.7A Division CN112968764B (zh) | 2016-05-23 | 2017-05-23 | 多链路密码逻辑区块链 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109417478A true CN109417478A (zh) | 2019-03-01 |
CN109417478B CN109417478B (zh) | 2021-03-02 |
Family
ID=59886899
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780031862.2A Active CN109417478B (zh) | 2016-05-23 | 2017-05-23 | 多链路密码逻辑区块链 |
CN201780031864.1A Active CN109417479B (zh) | 2016-05-23 | 2017-05-23 | 密码逻辑可重写区块链 |
CN202110194119.7A Active CN112968764B (zh) | 2016-05-23 | 2017-05-23 | 多链路密码逻辑区块链 |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780031864.1A Active CN109417479B (zh) | 2016-05-23 | 2017-05-23 | 密码逻辑可重写区块链 |
CN202110194119.7A Active CN112968764B (zh) | 2016-05-23 | 2017-05-23 | 多链路密码逻辑区块链 |
Country Status (6)
Country | Link |
---|---|
US (12) | US9785369B1 (zh) |
EP (6) | EP3443710B1 (zh) |
CN (3) | CN109417478B (zh) |
AU (2) | AU2017269736B2 (zh) |
SG (2) | SG11201809661SA (zh) |
WO (4) | WO2017202756A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110086633A (zh) * | 2019-05-13 | 2019-08-02 | 广东辰宜信息科技有限公司 | 一种区块链技术中密文防篡改方法 |
CN113676328A (zh) * | 2020-05-13 | 2021-11-19 | 大众汽车股份公司 | 用于交换密钥信息的设计 |
Families Citing this family (256)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8874477B2 (en) | 2005-10-04 | 2014-10-28 | Steven Mark Hoffberg | Multifactorial optimization system and method |
US9185095B1 (en) | 2012-03-20 | 2015-11-10 | United Services Automobile Association (Usaa) | Behavioral profiling method and system to authenticate a user |
US11277412B2 (en) | 2018-05-28 | 2022-03-15 | Royal Bank Of Canada | System and method for storing and distributing consumer information |
US10979410B1 (en) | 2015-05-04 | 2021-04-13 | United Services Automobile Association (Usaa) | Systems and methods for utilizing cryptology with virtual ledgers in support of transactions and agreements |
US10366247B2 (en) | 2015-06-02 | 2019-07-30 | ALTR Solutions, Inc. | Replacing distinct data in a relational database with a distinct reference to that data and distinct de-referencing of database data |
US11032286B1 (en) | 2015-12-02 | 2021-06-08 | United Services Automobile Association (Usaa) | Block chain authentication systems and methods |
US10262164B2 (en) | 2016-01-15 | 2019-04-16 | Blockchain Asics Llc | Cryptographic ASIC including circuitry-encoded transformation function |
US10454677B1 (en) | 2016-02-24 | 2019-10-22 | United Services Automobile Associate (USAA) | Cryptographic key generation from biometric data |
US9785369B1 (en) | 2016-05-23 | 2017-10-10 | Accenture Global Solutions Limited | Multiple-link blockchain |
US10204341B2 (en) * | 2016-05-24 | 2019-02-12 | Mastercard International Incorporated | Method and system for an efficient consensus mechanism for permissioned blockchains using bloom filters and audit guarantees |
US11854011B1 (en) | 2016-07-11 | 2023-12-26 | United Services Automobile Association (Usaa) | Identity management framework |
US10097344B2 (en) * | 2016-07-15 | 2018-10-09 | Mastercard International Incorporated | Method and system for partitioned blockchains and enhanced privacy for permissioned blockchains |
CN106897348B (zh) * | 2016-08-19 | 2020-10-27 | 创新先进技术有限公司 | 一种数据存储、数据校验、数据溯源方法和设备 |
US10367645B2 (en) * | 2016-10-26 | 2019-07-30 | International Business Machines Corporation | Proof-of-work for smart contracts on a blockchain |
KR101849918B1 (ko) * | 2016-10-26 | 2018-04-19 | 주식회사 코인플러그 | Utxo 기반 프로토콜을 사용하여 통화를 발행 및 지급 결제하는 방법과 이를 이용한 서버 |
US10171509B2 (en) * | 2016-11-10 | 2019-01-01 | International Business Machines Corporation | Filtering and redacting blockchain transactions |
CN106991334B (zh) * | 2016-11-24 | 2021-03-02 | 创新先进技术有限公司 | 一种数据存取的方法、系统及装置 |
EP3552343B1 (en) * | 2016-12-08 | 2022-03-23 | Telefonaktiebolaget LM Ericsson (PUBL) | Method and apparatus for creating a finite blockchain |
US10389518B2 (en) | 2017-01-27 | 2019-08-20 | Entit Software Llc | Blockchain hash value recomputation |
US9998286B1 (en) | 2017-02-17 | 2018-06-12 | Accenture Global Solutions Limited | Hardware blockchain consensus operating procedure enforcement |
US10291413B2 (en) | 2017-02-17 | 2019-05-14 | Accenture Global Solutions Limited | Hardware blockchain corrective consensus operating procedure enforcement |
EP3593305A4 (en) | 2017-03-08 | 2020-10-21 | IP Oversight Corporation | SYSTEM AND PROCEDURE FOR GENERATING TOKENS SECURED BY THE VALUE OF GOODS FROM RESERVES |
US10762506B1 (en) | 2017-05-11 | 2020-09-01 | United Services Automobile Association | Token device for distributed ledger based interchange |
US10749670B2 (en) * | 2017-05-18 | 2020-08-18 | Bank Of America Corporation | Block chain decoding with fair delay for distributed network devices |
US10462213B2 (en) * | 2017-05-18 | 2019-10-29 | Bank Of America Corporation | Block chain encoding with fair delay for distributed network devices |
DE102017209014A1 (de) * | 2017-05-30 | 2018-12-06 | Robert Bosch Gmbh | Verfahren und Vorrichtung zum Anfügen von Transaktionen an eine Blockkette |
CN107291862A (zh) * | 2017-06-12 | 2017-10-24 | 腾讯科技(深圳)有限公司 | 业务数据存储方法、装置、存储介质及电子设备 |
WO2018231832A1 (en) * | 2017-06-12 | 2018-12-20 | PokitDok, Inc. | System and method for autonomous dynamic person management |
GB201710176D0 (en) | 2017-06-26 | 2017-08-09 | Nchain Holdings Ltd | Computer-implemented system and method |
JP2019012415A (ja) * | 2017-06-30 | 2019-01-24 | 株式会社bitFlyer | ネットワークにおける合意形成方法及び当該ネットワークを構成するノード |
JP6990055B2 (ja) * | 2017-07-12 | 2022-01-12 | 株式会社日立製作所 | 分散コンピューティングシステムにおけるデータをリカバリする方法およびシステム |
US10984134B2 (en) | 2017-07-14 | 2021-04-20 | Microsoft Technology Licensing, Llc | Blockchain system for leveraging member nodes to achieve consensus |
GB201711878D0 (en) | 2017-07-24 | 2017-09-06 | Nchain Holdings Ltd | Computer - implemented system and method |
CN107590738A (zh) | 2017-08-24 | 2018-01-16 | 阿里巴巴集团控股有限公司 | 选择共识节点的处理方法、装置及服务器 |
US10805085B1 (en) | 2017-08-24 | 2020-10-13 | United Services Automobile Association (Usaa) | PKI-based user authentication for web services using blockchain |
US10476855B1 (en) * | 2017-08-29 | 2019-11-12 | Salesforce.Com, Inc. | Identity confirmation using private keys |
US10404455B2 (en) | 2017-09-01 | 2019-09-03 | Accenture Global Solutions Limited | Multiple-phase rewritable blockchain |
CN111466096B (zh) | 2017-09-08 | 2021-12-31 | 尤利杰公司 | 提供不可变记录的系统和方法 |
US11403424B2 (en) * | 2017-09-14 | 2022-08-02 | Sony Corporation | Information processing apparatus and information processing method |
CN107862215B (zh) * | 2017-09-29 | 2020-10-16 | 创新先进技术有限公司 | 一种数据存储方法、数据查询方法及装置 |
WO2019072670A1 (en) * | 2017-10-09 | 2019-04-18 | Koninklijke Kpn N.V. | BLOCK CHAIN WITH TRANSACTION CANCELLATION |
EP3698518B1 (en) | 2017-10-20 | 2024-02-14 | Koninklijke KPN N.V. | Primary and secondary blockchain device |
US10862672B2 (en) * | 2017-10-24 | 2020-12-08 | Intuit, Inc. | Witness blocks in blockchain applications |
DE102017126349A1 (de) * | 2017-11-10 | 2019-05-16 | Bundesdruckerei Gmbh | Verfahren zum verknüpfen eines ersten datenblocks mit einem zweiten datenblock, verfahren zum überprüfen der integrität einer blockchain-struktur, vorrichtung und computerprogrammprodukt |
US10944566B2 (en) * | 2017-11-15 | 2021-03-09 | International Business Machines Corporation | Methods and systems for supporting fairness in secure computations |
US11502828B2 (en) * | 2017-11-15 | 2022-11-15 | International Business Machines Corporation | Authenticating chaincode to chaincode invocations of a blockchain |
WO2019098873A1 (en) * | 2017-11-16 | 2019-05-23 | Accenture Global Solutions Limited | Blockchain operation stack for rewritable blockchain |
US10567168B2 (en) * | 2017-11-16 | 2020-02-18 | International Business Machines Corporation | Blockchain transaction privacy enhancement through broadcast encryption |
TWI653864B (zh) * | 2017-11-21 | 2019-03-11 | 國立交通大學 | 高安全性之區塊鏈資料傳送方法 |
CN108171494A (zh) | 2017-11-23 | 2018-06-15 | 阿里巴巴集团控股有限公司 | 一种数据处理方法和装置 |
WO2019104287A1 (en) | 2017-11-27 | 2019-05-31 | Tobin Kevin | Information security using blockchain technology |
US10937111B2 (en) * | 2017-11-28 | 2021-03-02 | International Business Machines Corporation | Managing energy purchase agreements on a blockchain |
US11257077B2 (en) | 2017-11-30 | 2022-02-22 | Visa International Service Association | Blockchain system for confidential and anonymous smart contracts |
US11159537B2 (en) | 2017-11-30 | 2021-10-26 | Bank Of America Corporation | Multicomputer processing for data authentication and event execution using a blockchain approach |
US10949511B2 (en) | 2017-11-30 | 2021-03-16 | Bank Of America Corporation | Multicomputer processing for data authentication using a blockchain approach |
US11243945B2 (en) * | 2017-12-11 | 2022-02-08 | International Business Machines Corporation | Distributed database having blockchain attributes |
GB201721021D0 (en) * | 2017-12-15 | 2018-01-31 | Nchain Holdings Ltd | Computer-implemented methods and systems |
US11139979B2 (en) | 2017-12-18 | 2021-10-05 | Koninklijke Kpn N.V. | Primary and secondary blockchain device |
US10831911B2 (en) * | 2017-12-19 | 2020-11-10 | Industrial Technology Research Institute | Method, computer program product and processing system for generating secure alternative representation |
US10686586B2 (en) | 2017-12-22 | 2020-06-16 | Intuit, Inc. | Re-encrypting data on a hash chain |
CN108063826B (zh) * | 2017-12-27 | 2020-08-14 | 上海唯链信息科技有限公司 | 一种基于区块链技术的车联网的共享与追溯系统 |
US11082203B2 (en) * | 2017-12-27 | 2021-08-03 | Nokia Solutions And Networks Oy | Method and apparatus for accelerating the blockchain for secure and high throughput applications |
US10896418B2 (en) * | 2017-12-29 | 2021-01-19 | Ebay Inc. | Secure management of data files using a blockchain |
US10715323B2 (en) | 2017-12-29 | 2020-07-14 | Ebay Inc. | Traceable key block-chain ledger |
CN108269185B (zh) * | 2018-01-19 | 2020-12-15 | 创新先进技术有限公司 | 资金流转报表生成方法及装置和电子设备 |
US11249982B2 (en) * | 2018-01-19 | 2022-02-15 | Acronis International Gmbh | Blockchain-based verification of machine learning |
US10671709B2 (en) | 2018-01-22 | 2020-06-02 | Intuit, Inc. | Data isolation in distributed hash chains |
CN108520410B (zh) * | 2018-02-09 | 2020-09-11 | 北京欧链科技有限公司 | 区块链中的反馈处理方法和装置 |
CN108519985B (zh) * | 2018-02-09 | 2020-09-11 | 北京欧链科技有限公司 | 双向区块链、数据处理方法和装置 |
KR102093010B1 (ko) * | 2018-02-12 | 2020-03-24 | 박성배 | 블록 체인에 기반한 노드 장치, 노드 장치의 동작 방법 및 데이터 처리 시스템 |
US11387981B2 (en) * | 2018-02-13 | 2022-07-12 | Accenture Global Solutions Limited | Platform for multi-party digital records using distributed ledger system |
US10614253B2 (en) | 2018-02-14 | 2020-04-07 | Fortune Vieyra | Systems and methods for state of data management |
US11055658B2 (en) | 2018-02-23 | 2021-07-06 | Bank Of America Corporation | Blockchain-based supply chain certification systems and methods |
US10817829B2 (en) * | 2018-02-23 | 2020-10-27 | Bank Of America Corporation | Blockchain-based supply chain smart recall |
US11146555B2 (en) * | 2018-03-02 | 2021-10-12 | BlockSafe Technologies, Inc. | Systems and methods for controlling access to a blockchain |
US10489780B2 (en) | 2018-03-05 | 2019-11-26 | Capital One Services, Llc | Systems and methods for use of distributed ledger technology for recording and utilizing credit account transaction information |
US11836720B2 (en) | 2018-03-12 | 2023-12-05 | The Pen | Infinitely scalable cryptocurrency system with fast, secure verification |
US10372943B1 (en) | 2018-03-20 | 2019-08-06 | Blockchain Asics Llc | Cryptographic ASIC with combined transformation and one-way functions |
US11315369B2 (en) | 2018-03-23 | 2022-04-26 | The Boeing Company | Blockchain configuration history for vehicle maintenance, modification, and activity tracking |
US10304062B1 (en) | 2018-03-23 | 2019-05-28 | Td Professional Services, Llc | Computer architecture incorporating blockchain based immutable audit ledger for compliance with data regulations |
US10567390B2 (en) | 2018-03-26 | 2020-02-18 | Bank Of America Corporation | Peer to peer internet of things (“IoT”) validation system |
CN108616574B (zh) * | 2018-03-30 | 2020-06-16 | 华为技术有限公司 | 管理数据的存储方法、设备及存储介质 |
JP7091791B2 (ja) * | 2018-04-06 | 2022-06-28 | 富士通株式会社 | データ管理装置,データ管理プログラム及びデータ管理方法 |
US10275400B1 (en) * | 2018-04-11 | 2019-04-30 | Xanadu Big Data, Llc | Systems and methods for forming a fault-tolerant federated distributed database |
US10084600B1 (en) | 2018-04-16 | 2018-09-25 | Xage Security, Inc. | Decentralized information protection for confidentiality and tamper-proofing on distributed database |
US11563557B2 (en) | 2018-04-24 | 2023-01-24 | International Business Machines Corporation | Document transfer processing for blockchains |
US10256974B1 (en) | 2018-04-25 | 2019-04-09 | Blockchain Asics Llc | Cryptographic ASIC for key hierarchy enforcement |
US11194837B2 (en) | 2018-05-01 | 2021-12-07 | International Business Machines Corporation | Blockchain implementing cross-chain transactions |
US11030217B2 (en) | 2018-05-01 | 2021-06-08 | International Business Machines Corporation | Blockchain implementing cross-chain transactions |
US11150271B2 (en) | 2018-05-15 | 2021-10-19 | International Business Machines Corporation | Method or system for management of a device for energy consumption by applying blockchain protocol |
US10592873B2 (en) * | 2018-05-21 | 2020-03-17 | Microsoft Technology Licensing, Llc | Edit transactions for blockchains |
US20190363890A1 (en) | 2018-05-24 | 2019-11-28 | Walmart Apollo, Llc | Nested Blockchain System |
US20190362305A1 (en) * | 2018-05-24 | 2019-11-28 | Walmart Apollo, Llc | Systems and Methods Exception Handling in a Distributed Computing Environment |
WO2019227074A1 (en) * | 2018-05-24 | 2019-11-28 | Imagerights International, Inc. | Systems, devices, and methods for tracking creation and modification of digital records |
US11184171B2 (en) | 2018-05-24 | 2021-11-23 | Walmart Apollo, Llc | System and methods for multi-variant tracking |
US10693716B2 (en) | 2018-05-29 | 2020-06-23 | At&T Mobility Ii Llc | Blockchain based device management |
US11521232B2 (en) * | 2018-06-04 | 2022-12-06 | Yahoo Ad Tech Llc | Method and system for identifying recipients of a reward associated with a conversion |
US11269839B2 (en) | 2018-06-05 | 2022-03-08 | Oracle International Corporation | Authenticated key-value stores supporting partial state |
US11244316B2 (en) | 2018-06-07 | 2022-02-08 | International Business Machines Corporation | Biometric token for blockchain |
CA3102606A1 (en) * | 2018-06-08 | 2019-12-12 | Rocket Lawyer Incorporated | Cryptographic contract payment and dispute resolution system |
WO2019237275A1 (zh) * | 2018-06-13 | 2019-12-19 | 汪华东 | 一种基于区块链技术的真实性校验系统 |
GB2574628B (en) * | 2018-06-13 | 2020-12-09 | Arm Ip Ltd | Attestation of processing |
US10771240B2 (en) | 2018-06-13 | 2020-09-08 | Dynamic Blockchains Inc | Dynamic blockchain system and method for providing efficient and secure distributed data access, data storage and data transport |
CN108830602B (zh) * | 2018-06-27 | 2022-03-29 | 电子科技大学 | 一种基于变色龙哈希函数的许可链构造及管控方法 |
CN109242699A (zh) * | 2018-06-28 | 2019-01-18 | 平安科技(深圳)有限公司 | 基于区块链的医疗保险理赔方法、系统及计算机设备 |
US11516013B2 (en) * | 2018-06-28 | 2022-11-29 | Intel Corporation | Accelerator for encrypting or decrypting confidential data with additional authentication data |
US11836721B2 (en) | 2018-06-29 | 2023-12-05 | Intel Corporation | Protection of information in an information exchange |
CN110661610B (zh) * | 2018-06-29 | 2020-11-03 | 创新先进技术有限公司 | 安全多方计算协议的输入获取方法和装置 |
US10855749B2 (en) * | 2018-07-03 | 2020-12-01 | Wandisco Inc. | Methods, devices and systems for a distributed coordination engine-based exchange that implements a blockchain distributed ledger |
CN108960829A (zh) * | 2018-07-06 | 2018-12-07 | 佛山伊苏巨森科技有限公司 | 一种基于区块链的分布式记录系统 |
CN108932620A (zh) * | 2018-07-06 | 2018-12-04 | 佛山伊苏巨森科技有限公司 | 一种区块链系统及其执行方法 |
US20210281570A1 (en) * | 2018-07-12 | 2021-09-09 | Nokia Technologies Oy | Enabling access to devices in a communication network |
CN109002527B (zh) * | 2018-07-13 | 2020-12-01 | 江苏开放大学(江苏城市职业学院) | 一种基于区块链的网络考试系统及其管理网络考试的方法 |
US11374753B2 (en) | 2018-07-27 | 2022-06-28 | Hrl Laboratories, Llc | System and method for selective transparency for public ledgers |
CN112219371A (zh) * | 2018-07-27 | 2021-01-12 | 赫尔实验室有限公司 | 双向区块链 |
CN109040227B (zh) * | 2018-07-27 | 2021-08-03 | 江西贪玩信息技术有限公司 | 基于区块链的业务请求响应方法、装置和计算机设备 |
WO2020023132A1 (en) * | 2018-07-27 | 2020-01-30 | Hrl Laboratories, Llc | System and method to protect data privacy of lightweight devices using blockchain and multi-party computation |
CN109274481B (zh) * | 2018-08-01 | 2020-03-27 | 中国科学院数据与通信保护研究教育中心 | 一种区块链的数据可追踪方法 |
CN109145053B (zh) * | 2018-08-01 | 2021-03-23 | 创新先进技术有限公司 | 数据处理方法和装置、客户端、服务器 |
US11196555B1 (en) * | 2018-08-02 | 2021-12-07 | Timofei A Mouraveiko | System and method for capturing, recording, monitoring, examining, filtering, processing, limiting and controlling intra-network and extra-network data communications |
US11263124B2 (en) | 2018-08-03 | 2022-03-01 | Micron Technology, Inc. | Host-resident translation layer validity check |
CN111783114B (zh) * | 2018-08-06 | 2024-04-02 | 创新先进技术有限公司 | 区块链交易方法及装置、电子设备 |
CN109194718A (zh) * | 2018-08-09 | 2019-01-11 | 玄章技术有限公司 | 一种区块链网络及其任务调度方法 |
CN109359470B (zh) | 2018-08-14 | 2020-09-01 | 阿里巴巴集团控股有限公司 | 多方安全计算方法及装置、电子设备 |
CN109241016B (zh) * | 2018-08-14 | 2020-07-07 | 阿里巴巴集团控股有限公司 | 多方安全计算方法及装置、电子设备 |
US10721069B2 (en) | 2018-08-18 | 2020-07-21 | Eygs Llp | Methods and systems for enhancing privacy and efficiency on distributed ledger-based networks |
CN112651740A (zh) | 2018-08-30 | 2021-04-13 | 创新先进技术有限公司 | 区块链交易方法及装置、电子设备 |
US11468151B2 (en) | 2018-08-30 | 2022-10-11 | Ideola, Inc. | System and method for memetic authentication and identification |
US11032292B2 (en) | 2018-09-04 | 2021-06-08 | Allen Gluck | Systems and methods for hybrid blockchain control |
CN109299053B (zh) * | 2018-09-04 | 2021-03-02 | 中国联合网络通信集团有限公司 | 文件的操作方法、设备和计算机存储介质 |
US11044104B2 (en) | 2018-09-05 | 2021-06-22 | International Business Machines Corporation | Data certification as a service powered by permissioned blockchain network |
KR20200034020A (ko) | 2018-09-12 | 2020-03-31 | 삼성전자주식회사 | 전자 장치 및 그의 제어 방법 |
RU2718480C2 (ru) * | 2018-09-14 | 2020-04-08 | Общество С Ограниченной Ответственностью "Яндекс" | Способ и система авторизации веб-сайта в веб-браузере |
US11232221B2 (en) | 2018-09-17 | 2022-01-25 | International Business Machines Corporation | Right to be forgotten on an immutable ledger |
CN109344631B (zh) * | 2018-09-18 | 2020-11-06 | 百度在线网络技术(北京)有限公司 | 区块链的数据修改及区块验证方法、装置、设备和介质 |
CN109241192B (zh) * | 2018-09-18 | 2021-06-15 | 百度在线网络技术(北京)有限公司 | 区块链的数据修改及区块验证方法、装置、设备和介质 |
EP3627372A1 (en) * | 2018-09-18 | 2020-03-25 | Siemens Aktiengesellschaft | Sensor data assembly and manufacturing device |
CN109246341A (zh) * | 2018-09-19 | 2019-01-18 | 深圳市安思科电子科技有限公司 | 一种基于区块链技术的便于装卸的摄像头 |
CN111833186A (zh) | 2018-09-20 | 2020-10-27 | 创新先进技术有限公司 | 基于区块链的交易方法、装置和节点设备 |
US10715313B2 (en) * | 2018-09-21 | 2020-07-14 | Blockchain Certified Data Sas | Systems and computer-based methods of document certification and publication |
CN109492049B (zh) * | 2018-09-21 | 2021-05-04 | 上海点融信息科技有限责任公司 | 用于区块链网络的数据处理、区块生成及同步方法 |
US10852964B2 (en) * | 2018-09-25 | 2020-12-01 | Micron Technology, Inc. | Host-resident translation layer validity check techniques |
CN111833057A (zh) | 2018-09-30 | 2020-10-27 | 创新先进技术有限公司 | 基于区块链的交易方法、装置和节点设备 |
US11301452B2 (en) | 2018-10-09 | 2022-04-12 | Ebay, Inc. | Storing and verification of derivative work data on blockchain with original work data |
CN109462540A (zh) * | 2018-10-12 | 2019-03-12 | 彩讯科技股份有限公司 | 邮件存证方法、装置和系统 |
US11146399B2 (en) | 2018-10-19 | 2021-10-12 | Eygs Llp | Methods and systems for retrieving zero-knowledge proof-cloaked data on distributed ledger-based networks |
US11416475B2 (en) * | 2018-10-19 | 2022-08-16 | Adobe Inc. | Block quantity reduction in distributed ledgers |
US11240001B2 (en) * | 2018-11-06 | 2022-02-01 | International Business Machines Corporation | Selective access to asset transfer data |
CN110046517B (zh) * | 2018-11-07 | 2020-05-05 | 阿里巴巴集团控股有限公司 | 一种对写入区块链的交易进行隐匿的方法及装置 |
US10974851B2 (en) | 2018-11-09 | 2021-04-13 | Textron Innovations Inc. | System and method for maintaining and configuring rotorcraft |
EP3654578B1 (en) | 2018-11-16 | 2022-04-06 | SafeTech BV | Methods and systems for cryptographic private key management for secure multiparty storage and transfer of information |
CN109164780B (zh) * | 2018-11-22 | 2020-06-16 | 北京八分量信息科技有限公司 | 一种基于边缘计算的工业现场设备控制方法、装置及系统 |
DE102018220224A1 (de) | 2018-11-26 | 2020-05-28 | Deutsche Bahn Ag | Verfahren zum manipulationssicheren Speichern von Daten in einem elektronischen Speicher unter Verwendung einer verketteten Blockchain-Struktur |
US20200174990A1 (en) * | 2018-11-29 | 2020-06-04 | Anthony Turner Pratkanis | Accountably Redactable Data Structures |
EP3660770A1 (en) * | 2018-11-30 | 2020-06-03 | Mastercard International Incorporated | Methods and systems for secure product tracking data storage and verification |
CN109361504B (zh) * | 2018-12-04 | 2021-10-08 | 桂林电子科技大学 | 一种基于区块链的多用户通信密钥协商方法 |
US10909261B2 (en) | 2018-12-12 | 2021-02-02 | Industrial Technology Research Institute | Method and computer program product for generating secure alternative representation for numerical datum |
EP3668036A1 (de) * | 2018-12-14 | 2020-06-17 | Siemens Aktiengesellschaft | Erstellen einer blockchain mit blöcken umfassend eine anpassbare anzahl an transaktionsblöcken und mehrere zwischenblöcke |
US11151512B2 (en) * | 2018-12-14 | 2021-10-19 | The Boeing Company | Interlocking blockchains for aircraft part history and current aircraft configuration |
US10979213B2 (en) * | 2018-12-19 | 2021-04-13 | Verizon Media Inc. | Blockchain compression using summary and padding blocks |
US11226907B2 (en) | 2018-12-19 | 2022-01-18 | Micron Technology, Inc. | Host-resident translation layer validity check techniques |
US11032064B2 (en) | 2018-12-19 | 2021-06-08 | Verizon Media Inc. | Blockchain ledger growth management |
US11139960B2 (en) | 2018-12-20 | 2021-10-05 | International Business Machines Corporation | File redaction database system |
US11151236B2 (en) | 2018-12-20 | 2021-10-19 | International Business Machines Corporation | File verification database system |
US11025430B2 (en) | 2018-12-20 | 2021-06-01 | International Business Machines Corporation | File provenance database system |
CN110046156A (zh) * | 2018-12-20 | 2019-07-23 | 阿里巴巴集团控股有限公司 | 基于区块链的内容管理系统及方法、装置、电子设备 |
US11226894B2 (en) | 2018-12-21 | 2022-01-18 | Micron Technology, Inc. | Host-based flash memory maintenance techniques |
US10637644B1 (en) * | 2018-12-21 | 2020-04-28 | Capital One Services, Llc | System and method for authorizing transactions in an authorized member network |
US10861008B2 (en) | 2018-12-21 | 2020-12-08 | Capital One Services, Llc | System and method for optimizing cryptocurrency transactions |
US11588643B2 (en) * | 2018-12-27 | 2023-02-21 | Paypal, Inc. | Blockchain management system |
US11902448B2 (en) * | 2018-12-28 | 2024-02-13 | The Flowchain Foundation Limited | Hybrid blockchain architecture with computing pool |
JP6871380B2 (ja) | 2018-12-29 | 2021-05-12 | アドバンスド ニュー テクノロジーズ カンパニー リミテッド | 情報保護のシステム及び方法 |
US10402823B1 (en) * | 2018-12-30 | 2019-09-03 | Alexander Vladimirovich Vlasov | System for exchanging private keys for mutual settlements between users of a cryptocurrency outside blockchains |
US11018848B2 (en) | 2019-01-02 | 2021-05-25 | Bank Of America Corporation | Blockchain management platform for performing asset adjustment, cross sectional editing, and bonding |
US11115186B2 (en) | 2019-01-02 | 2021-09-07 | Bank Of America Corporation | Blockchain management platform for performing asset adjustment, cross sectional editing, and bonding |
US11012232B2 (en) | 2019-01-02 | 2021-05-18 | Bank Of America Corporation | Blockchain management platform for performing asset adjustment, cross sectional editing, and bonding |
CN109672529A (zh) * | 2019-01-07 | 2019-04-23 | 苏宁易购集团股份有限公司 | 一种结合区块链和秘密共享的去匿名化的方法及系统 |
US11095660B2 (en) | 2019-01-30 | 2021-08-17 | Toyota Motor Engineering & Manufacturing North America, Inc. | Blockchain enabled encryption |
JP2020126409A (ja) * | 2019-02-04 | 2020-08-20 | 株式会社日立製作所 | データ管理システムおよびデータ管理方法 |
CN109714165B (zh) * | 2019-02-28 | 2021-12-07 | 矩阵元技术(深圳)有限公司 | 客户端各自生成密钥分量的密钥管理方法和电子设备 |
US11397814B2 (en) * | 2019-03-25 | 2022-07-26 | Micron Technology, Inc. | Local ledger block chain for secure electronic control unit updates |
US11120040B2 (en) | 2019-03-26 | 2021-09-14 | International Business Machines Corporation | Multi-ledger blockchain management |
US11151261B2 (en) | 2019-04-03 | 2021-10-19 | Cisco Technology, Inc. | Blockchain system with severable data and cryptographic proof |
CN110209347B (zh) * | 2019-04-04 | 2020-08-11 | 特斯联(北京)科技有限公司 | 一种可追溯的数据存储方法 |
US11502838B2 (en) | 2019-04-15 | 2022-11-15 | Eygs Llp | Methods and systems for tracking and recovering assets stolen on distributed ledger-based networks |
US11943358B2 (en) | 2019-04-15 | 2024-03-26 | Eygs Llp | Methods and systems for identifying anonymized participants of distributed ledger-based networks using zero-knowledge proofs |
US11316691B2 (en) | 2019-04-15 | 2022-04-26 | Eygs Llp | Methods and systems for enhancing network privacy of multiple party documents on distributed ledger-based networks |
US11677563B2 (en) | 2019-04-15 | 2023-06-13 | Eygs Llp | Systems, apparatus and methods for local state storage of distributed ledger data without cloning |
US11128482B2 (en) * | 2019-04-19 | 2021-09-21 | Microsoft Technology Licensing, Llc | Metering cloud workloads at edge computing devices |
CN110061850B (zh) * | 2019-04-24 | 2021-04-23 | 电子科技大学 | 变色龙哈希函数的碰撞计算方法及可编辑区块链构造方法 |
US11150978B2 (en) | 2019-04-26 | 2021-10-19 | Bank Of America Corporation | Automated system for intelligent error correction within an electronic blockchain ledger |
US11206138B2 (en) | 2019-05-02 | 2021-12-21 | Ernst & Young U.S. Llp | Biosignature-based tokenization of assets in a blockchain |
CN110231979A (zh) * | 2019-05-07 | 2019-09-13 | 深圳壹账通智能科技有限公司 | 基于区块链的事务处理方法、装置、设备及存储介质 |
CN111949315A (zh) * | 2019-05-16 | 2020-11-17 | 富士通株式会社 | 用于区块链账本数据的管理装置和方法 |
US11431486B2 (en) | 2019-05-22 | 2022-08-30 | Salesforce.Com, Inc. | System or method to implement consensus on read on distributed ledger/blockchain |
US11120160B2 (en) | 2019-05-31 | 2021-09-14 | Advanced New Technologies Co., Ltd. | Distributed personal data storage and encrypted personal data service based on secure computation |
US11115191B2 (en) | 2019-05-31 | 2021-09-07 | Hcl America Inc | System and method for modifying content stored in a blockchain |
JPWO2020246403A1 (zh) * | 2019-06-05 | 2020-12-10 | ||
US11223475B2 (en) | 2019-06-05 | 2022-01-11 | International Business Machines Corporation | Document validation |
WO2020246402A1 (ja) * | 2019-06-05 | 2020-12-10 | ソニー株式会社 | 本人確認プログラム、本人確認方法、ユーザ端末、及びユーザ認証プログラム |
US11606442B2 (en) | 2019-06-07 | 2023-03-14 | Microsoft Technology Licensing, Llc | Subscription to edits of blockchain transaction |
CN110377609B (zh) * | 2019-06-17 | 2021-11-02 | 北京航空航天大学 | 基于区块链的智能合约动态部署与演化方法及装置 |
CN110445840B (zh) * | 2019-07-09 | 2020-07-03 | 北京健网未来科技有限公司 | 一种基于区块链技术的文件存储和读取的方法 |
CN110427774B (zh) * | 2019-07-18 | 2021-01-12 | 创新先进技术有限公司 | 基于区块链的数据存证方法、数据校验方法及相关装置 |
US11088828B2 (en) | 2019-07-18 | 2021-08-10 | Advanced New Technologies Co., Ltd. | Blockchain-based data evidence storage method and apparatus |
US11201746B2 (en) | 2019-08-01 | 2021-12-14 | Accenture Global Solutions Limited | Blockchain access control system |
SG10201907330WA (en) * | 2019-08-08 | 2020-01-30 | Alibaba Group Holding Ltd | Methods And Devices For Executing N-Time Hashed Time Lock Contracts |
US11232439B2 (en) | 2019-08-09 | 2022-01-25 | Eygs Llp | Methods and systems for preventing transaction tracing on distributed ledger-based networks |
CN110474762B (zh) * | 2019-08-22 | 2021-05-25 | 电子科技大学 | 环式可编辑区块链的构建方法 |
US20220286304A1 (en) * | 2019-08-28 | 2022-09-08 | Micro Focus Llc | Blockchain data forgetability |
US11567927B2 (en) * | 2019-09-18 | 2023-01-31 | Boardwalktech, Inc | Creating blocks in instance blockchain base on a promised block in a generic blockchain |
US11431473B2 (en) * | 2019-09-20 | 2022-08-30 | Mastercard International Incorporated | Method and system for distribution of a consistent ledger across multiple blockchains |
US11115804B2 (en) | 2019-10-04 | 2021-09-07 | Microsoft Technology Licensing, Llc | Subscription to dependencies in smart contracts |
JPWO2021070838A1 (zh) * | 2019-10-11 | 2021-04-15 | ||
CN110751853B (zh) * | 2019-10-25 | 2021-05-18 | 百度在线网络技术(北京)有限公司 | 停车位数据的有效性识别方法和装置 |
US20210135855A1 (en) * | 2019-10-30 | 2021-05-06 | EMC IP Holding Company LLC | Threshold-Based Override of Data Privacy Using Distributed Ledgers and Key Shares |
CN115004628A (zh) | 2019-11-20 | 2022-09-02 | 艾格斯有限责任公司 | 用于基于可替代和不可替代代币在基于分布式分类账的网络内识别和安全存储分布式分类账中的区分特点的系统、装置和方法 |
US11587189B2 (en) * | 2019-11-27 | 2023-02-21 | International Business Machines Corporation | Formal verification of smart contracts |
US11403281B2 (en) * | 2020-01-09 | 2022-08-02 | Eternal Paradise Limited | Parallel blockchain processing |
CN111428278A (zh) * | 2020-03-24 | 2020-07-17 | 国网山西省电力公司信息通信分公司 | 一种电子证据的管理方法及装置 |
CN111526009B (zh) * | 2020-04-09 | 2021-06-15 | 西南交通大学 | 一种适用于联盟链的前向安全可编辑区块链构造方法 |
US11574308B2 (en) | 2020-04-15 | 2023-02-07 | Eygs Llp | Intelligent assertion tokens for authenticating and controlling network communications using a distributed ledger |
US20210374843A1 (en) * | 2020-05-26 | 2021-12-02 | Mitsubishi Electric Research Laboratories, Inc. | Debt Resource Management in a Distributed Ledger System |
US11971980B2 (en) | 2020-05-28 | 2024-04-30 | Red Hat, Inc. | Using trusted execution environments to perform a communal operation for mutually-untrusted devices |
US11546315B2 (en) * | 2020-05-28 | 2023-01-03 | Hewlett Packard Enterprise Development Lp | Authentication key-based DLL service |
US11947659B2 (en) | 2020-05-28 | 2024-04-02 | Red Hat, Inc. | Data distribution across multiple devices using a trusted execution environment in a mobile device |
US11777720B2 (en) | 2020-06-12 | 2023-10-03 | Nagravision Sàrl | Distributed anonymized compliant encryption management system |
SG10202006451QA (en) | 2020-07-03 | 2021-02-25 | Alipay Labs Singapore Pte Ltd | Managing transactions in multiple blockchain networks |
SG10202006447VA (en) * | 2020-07-03 | 2021-04-29 | Alipay Labs Singapore Pte Ltd | Managing transactions in multiple blockchain networks |
CN112054990B (zh) * | 2020-07-21 | 2022-09-16 | 杜晓楠 | 区块链系统中预防哈希洪水攻击的方法、计算机可读介质和区块链系统 |
CN111753335B (zh) * | 2020-08-28 | 2023-09-01 | 支付宝(杭州)信息技术有限公司 | 区块内容的编辑方法及装置 |
US10965461B1 (en) * | 2020-08-31 | 2021-03-30 | Syniverse Technologies, Llc | Method of verifying telecommunications messaging traffic based on decentralized identifiers |
US11848924B2 (en) | 2020-10-12 | 2023-12-19 | Red Hat, Inc. | Multi-factor system-to-system authentication using secure execution environments |
CN112070501B (zh) * | 2020-11-10 | 2021-03-02 | 支付宝(杭州)信息技术有限公司 | 一种区块链交易发起、验证方法及系统 |
DE112021006308T5 (de) * | 2020-12-04 | 2023-09-14 | Microchip Technology Incorporated | Verarbeitung von daten auf höherer ebene in zeitempfindlichen datenblöcken an einer schnittstellenvorrichtung für die physikalische schicht |
US11720540B2 (en) * | 2020-12-30 | 2023-08-08 | Itron, Inc. | Secure blockchain data recovery |
US11762844B2 (en) | 2020-12-30 | 2023-09-19 | Itron, Inc. | Secure trimming of blockchain in a resource-constrained network |
US11588620B2 (en) | 2020-12-30 | 2023-02-21 | Itron, Inc. | Forming a blockchain in low-bandwidth, resource-constrained network |
CN112380584B (zh) * | 2021-01-13 | 2021-04-16 | 北京笔新互联网科技有限公司 | 区块链数据更新方法、装置、电子设备和存储介质 |
WO2022153425A1 (ja) * | 2021-01-14 | 2022-07-21 | 富士通株式会社 | 検証システム、情報処理装置、検証方法、および検証プログラム |
CN112436940B (zh) * | 2021-01-27 | 2021-04-30 | 电子科技大学 | 一种基于零知识证明的物联网设备可信启动管理方法 |
US11544014B2 (en) | 2021-01-28 | 2023-01-03 | Kyocera Document Solutions Inc. | Printing system and device for processing transactions in a distributed ledger |
WO2022225468A1 (en) | 2021-04-20 | 2022-10-27 | Angel Time Co., Ltd. | Multi dimension blockchain |
CN113268542A (zh) * | 2021-05-10 | 2021-08-17 | 西安交通大学 | 一种基于多方授权的区块链重写方法及系统 |
US20220407681A1 (en) * | 2021-06-21 | 2022-12-22 | Research Foundation Of The City University Of New York | Redactable blockchain |
US20230011621A1 (en) * | 2021-07-10 | 2023-01-12 | Artema Labs, Inc | Artifact Origination and Content Tokenization |
US11979484B2 (en) * | 2021-07-21 | 2024-05-07 | Bank Of America Corporation | System for electronic data encryption and decryption using a consensus draft process |
CN113468517A (zh) * | 2021-09-02 | 2021-10-01 | 北京交研智慧科技有限公司 | 一种基于区块链的数据共享方法、系统及存储介质 |
WO2023060284A1 (en) * | 2021-10-09 | 2023-04-13 | Artema Labs, Inc. | Cryptographic content co-creation mechanisms and linking physical elements to cryptographic elements |
CN113810430B (zh) * | 2021-11-19 | 2022-02-11 | 北京亿赛通网络安全技术有限公司 | 一种用于保护云端数据隐私的接入认证方法和系统 |
US11960756B2 (en) | 2021-12-14 | 2024-04-16 | Micron Technology, Inc. | Management of storage space in solid state drives to support proof of space activities |
US11941254B2 (en) | 2021-12-14 | 2024-03-26 | Micron Technology, Inc. | Test memory sub-systems through validation of responses to proof of space challenges |
US11977742B2 (en) | 2022-02-02 | 2024-05-07 | Micron Technology, Inc. | Solid state drives configurable to use storage spaces of remote devices in activities involving proof of space |
US20230308285A1 (en) * | 2022-03-25 | 2023-09-28 | Micro Focus Llc | Retroactively adding encryption and/or authentication levels to a blockchain |
CN115208554B (zh) * | 2022-09-13 | 2022-12-13 | 三未信安科技股份有限公司 | 一种密钥自校验、自纠错、自恢复的管理方法及系统 |
US11880836B1 (en) * | 2022-10-04 | 2024-01-23 | Veri Labs, Inc. | Gated control for blockchain units |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5608178A (en) * | 1993-12-29 | 1997-03-04 | Yamaha Corporation | Method of storing and editing performance data in an automatic performance device |
US20160028715A1 (en) * | 2014-06-23 | 2016-01-28 | The Toronto-Dominion Bank | Systems and methods for authenticating user identities in networked computer systems |
CN105404701A (zh) * | 2015-12-31 | 2016-03-16 | 浙江图讯科技股份有限公司 | 一种基于对等网络的异构数据库同步方法 |
CN105488665A (zh) * | 2015-11-25 | 2016-04-13 | 布比(北京)网络技术有限公司 | 一种去中心化的交易方法 |
CN105592098A (zh) * | 2016-01-16 | 2016-05-18 | 杭州复杂美科技有限公司 | 区块链上的投票及ca证书的管理方法 |
Family Cites Families (90)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0581421B1 (en) | 1992-07-20 | 2003-01-15 | Compaq Computer Corporation | Method and system for certificate based alias detection |
US20020013898A1 (en) | 1997-06-04 | 2002-01-31 | Sudia Frank W. | Method and apparatus for roaming use of cryptographic values |
US6708274B2 (en) | 1998-04-30 | 2004-03-16 | Intel Corporation | Cryptographically protected paging subsystem |
US6292897B1 (en) | 1997-11-03 | 2001-09-18 | International Business Machines Corporation | Undeniable certificates for digital signature verification |
US6108783A (en) * | 1998-02-11 | 2000-08-22 | International Business Machines Corporation | Chameleon hashing and signatures |
WO2000048108A1 (en) | 1999-02-12 | 2000-08-17 | Mack Hicks | System and method for providing certification-related and other services |
US7167565B2 (en) | 2001-03-06 | 2007-01-23 | Arcot Systems, Inc. | Efficient techniques for sharing a secret |
US7043637B2 (en) | 2001-03-21 | 2006-05-09 | Microsoft Corporation | On-disk file format for a serverless distributed file system |
US7451310B2 (en) | 2002-12-02 | 2008-11-11 | International Business Machines Corporation | Parallelizable authentication tree for random access storage |
JP4176533B2 (ja) | 2003-03-31 | 2008-11-05 | 株式会社エヌ・ティ・ティ・ドコモ | 端末装置及びプログラム |
GB2403107B (en) | 2003-06-19 | 2006-06-14 | Hewlett Packard Development Co | Policy enforcement |
US20050071640A1 (en) | 2003-09-25 | 2005-03-31 | General Instrument Corporation | Method and apparatus for authenticating data |
US7730319B2 (en) | 2004-08-27 | 2010-06-01 | Ntt Docomo, Inc. | Provisional signature schemes |
US8019988B2 (en) | 2005-08-22 | 2011-09-13 | The State Of Oregon Acting By And Through The State Board Of Higher Education On Behalf Of The University Of Oregon | Security protocols for hybrid peer-to-peer file sharing networks |
US8989390B2 (en) | 2005-12-12 | 2015-03-24 | Qualcomm Incorporated | Certify and split system and method for replacing cryptographic keys |
JP4642845B2 (ja) * | 2005-12-19 | 2011-03-02 | 日本電信電話株式会社 | 端末識別方法、サーバ、端末およびプログラム |
WO2007087363A2 (en) | 2006-01-24 | 2007-08-02 | Brown University | Efficient content authentication in peer-to-peer networks |
US20070226514A1 (en) * | 2006-03-24 | 2007-09-27 | Atmel Corporation | Secure biometric processing system and method of use |
US8190915B2 (en) | 2006-06-14 | 2012-05-29 | Oracle International Corporation | Method and apparatus for detecting data tampering within a database |
JP5109976B2 (ja) | 2006-09-01 | 2012-12-26 | 日本電気株式会社 | 電子署名システムおよび電子署名検証方法 |
US8943332B2 (en) | 2006-10-31 | 2015-01-27 | Hewlett-Packard Development Company, L.P. | Audit-log integrity using redactable signatures |
US7606795B2 (en) * | 2007-02-08 | 2009-10-20 | International Business Machines Corporation | System and method for verifying the integrity and completeness of records |
JP4456137B2 (ja) * | 2007-07-11 | 2010-04-28 | 富士通株式会社 | 電子文書管理プログラム、該プログラムを記録した記録媒体、電子文書管理装置、および電子文書管理方法 |
US8150038B2 (en) | 2007-11-01 | 2012-04-03 | Oracle America, Inc. | Revocation of a system administrator in an encrypted file system |
JP4477678B2 (ja) * | 2008-01-21 | 2010-06-09 | 富士通株式会社 | 電子署名方式、電子署名プログラムおよび電子署名装置 |
US7904450B2 (en) | 2008-04-25 | 2011-03-08 | Wilson Kelce S | Public electronic document dating list |
US20100037056A1 (en) | 2008-08-07 | 2010-02-11 | Follis Benjamin D | Method to support privacy preserving secure data management in archival systems |
JP2010050760A (ja) | 2008-08-22 | 2010-03-04 | Hitachi Ltd | コンテンツ保護装置、および、コンテンツ利用装置 |
US20100153732A1 (en) | 2008-12-15 | 2010-06-17 | Stmicroelectronics Rousset Sas | cache-based method of hash-tree management for protecting data integrity |
JP5239849B2 (ja) * | 2008-12-26 | 2013-07-17 | 富士通株式会社 | 電子署名方法、電子署名プログラムおよび電子署名装置 |
WO2010142923A1 (fr) | 2009-06-12 | 2010-12-16 | France Telecom | Procede cryptographique d'authentification anonyme et d'identification separee d'un utilisateur |
US8682903B2 (en) | 2009-06-30 | 2014-03-25 | International Business Machines Corporation | System and method for synchronized content directories on cluster devices |
US9569771B2 (en) | 2011-04-29 | 2017-02-14 | Stephen Lesavich | Method and system for storage and retrieval of blockchain blocks using galois fields |
US20130121410A1 (en) * | 2011-11-14 | 2013-05-16 | Mediatek Inc. | Method and Apparatus of Video Encoding with Partitioned Bitstream |
US8984582B2 (en) | 2012-08-14 | 2015-03-17 | Confidela Ltd. | System and method for secure synchronization of data across multiple computing devices |
US9876775B2 (en) * | 2012-11-09 | 2018-01-23 | Ent Technologies, Inc. | Generalized entity network translation (GENT) |
US20140245020A1 (en) | 2013-02-22 | 2014-08-28 | Guardtime Ip Holdings Limited | Verification System and Method with Extra Security for Lower-Entropy Input Records |
US9992177B2 (en) * | 2013-04-05 | 2018-06-05 | Nec Corporation | Method and system for modifying an authenticated and/or encrypted message |
US20160110261A1 (en) | 2013-05-07 | 2016-04-21 | Axcient, Inc. | Cloud storage using merkle trees |
WO2014201059A1 (en) * | 2013-06-10 | 2014-12-18 | Certimix, Llc | Secure storing and offline transfering of digitally transferable assets |
KR102238681B1 (ko) | 2013-07-01 | 2021-04-12 | 삼성전자주식회사 | 데이터 인증을 위한 서명 정보 생성 및 검증 방법과 이를 위한 시스템 |
US9767469B2 (en) | 2013-07-16 | 2017-09-19 | Fujitsu Limited | Customer-centric energy usage data sharing |
US20150046337A1 (en) * | 2013-08-06 | 2015-02-12 | Chin-hao Hu | Offline virtual currency transaction |
US10263783B2 (en) | 2013-08-23 | 2019-04-16 | Nec Corporation | Method and system for authenticating a data stream |
US9530010B2 (en) * | 2013-11-07 | 2016-12-27 | Fujitsu Limited | Energy usage data management |
US9338013B2 (en) | 2013-12-30 | 2016-05-10 | Palantir Technologies Inc. | Verifiable redactable audit log |
US9209971B2 (en) | 2014-01-21 | 2015-12-08 | Cofactor Computing Llc | Method and system for shielding data in untrusted environments |
US20160125403A1 (en) | 2014-04-28 | 2016-05-05 | Chin-hao Hu | Offline virtual currency transaction |
WO2015175722A1 (en) * | 2014-05-13 | 2015-11-19 | Nant Holdings Ip, Llc | Healthcare transaction validation via blockchain proof-of-work, systems and methods |
US9704143B2 (en) * | 2014-05-16 | 2017-07-11 | Goldman Sachs & Co. LLC | Cryptographic currency for securities settlement |
US9818092B2 (en) | 2014-06-04 | 2017-11-14 | Antti Pennanen | System and method for executing financial transactions |
GB2513260B (en) | 2014-06-27 | 2018-06-13 | PQ Solutions Ltd | System and method for quorum-based data recovery |
US10356094B2 (en) | 2014-06-30 | 2019-07-16 | Vescel, Llc | Uniqueness and auditing of a data resource through an immutable record of transactions in a hash history |
US10454970B2 (en) | 2014-06-30 | 2019-10-22 | Vescel, Llc | Authorization of access to a data resource in addition to specific actions to be performed on the data resource based on an authorized context enforced by a use policy |
US9836908B2 (en) | 2014-07-25 | 2017-12-05 | Blockchain Technologies Corporation | System and method for securely receiving and counting votes in an election |
US20160098723A1 (en) * | 2014-10-01 | 2016-04-07 | The Filing Cabinet, LLC | System and method for block-chain verification of goods |
US9846642B2 (en) * | 2014-10-21 | 2017-12-19 | Samsung Electronics Co., Ltd. | Efficient key collision handling |
US20160162897A1 (en) | 2014-12-03 | 2016-06-09 | The Filing Cabinet, LLC | System and method for user authentication using crypto-currency transactions as access tokens |
US9667416B1 (en) | 2014-12-18 | 2017-05-30 | EMC IP Holding Company LLC | Protecting master encryption keys in a distributed computing environment |
WO2016100920A1 (en) | 2014-12-18 | 2016-06-23 | Bittorrent, Inc. | Distributed device management and directory resolution |
US10230526B2 (en) | 2014-12-31 | 2019-03-12 | William Manning | Out-of-band validation of domain name system records |
US9413735B1 (en) | 2015-01-20 | 2016-08-09 | Ca, Inc. | Managing distribution and retrieval of security key fragments among proxy storage devices |
US9973341B2 (en) * | 2015-01-23 | 2018-05-15 | Daniel Robert Ferrin | Method and apparatus for the limitation of the mining of blocks on a block chain |
US9436923B1 (en) | 2015-02-26 | 2016-09-06 | Skuchain, Inc. | Tracking unitization occurring in a supply chain |
WO2016160850A1 (en) | 2015-03-30 | 2016-10-06 | Iperial, Inc. | System and method for authenticating digital content |
US10812274B2 (en) | 2015-05-07 | 2020-10-20 | Blockstream Corporation | Transferring ledger assets between blockchains via pegged sidechains |
US10067953B2 (en) * | 2015-05-08 | 2018-09-04 | International Business Machines Corporation | Indexing a chameleon schema |
CN106251144A (zh) | 2015-06-05 | 2016-12-21 | 地气股份有限公司 | 电子货币管理方法及电子货币节点装置 |
US11062303B2 (en) | 2015-06-08 | 2021-07-13 | Blockstream Corporation | Cryptographically concealing amounts transacted on a ledger while preserving a network's ability to verify the transaction |
US20170109735A1 (en) | 2015-07-14 | 2017-04-20 | Fmr Llc | Computationally Efficient Transfer Processing and Auditing Apparatuses, Methods and Systems |
WO2017015212A1 (en) * | 2015-07-17 | 2017-01-26 | Jet.com, Inc. | Merchant management system for adaptive pricing |
US20170031676A1 (en) | 2015-07-27 | 2017-02-02 | Deja Vu Security, Llc | Blockchain computer data distribution |
US9871775B2 (en) | 2015-08-10 | 2018-01-16 | Cisco Technology, Inc. | Group membership block chain |
US10402792B2 (en) | 2015-08-13 | 2019-09-03 | The Toronto-Dominion Bank | Systems and method for tracking enterprise events using hybrid public-private blockchain ledgers |
CA3002034A1 (en) | 2015-10-14 | 2017-04-20 | Cambridge Blockchain, LLC | Systems and methods for managing digital identities |
US20170132630A1 (en) | 2015-11-11 | 2017-05-11 | Bank Of America Corporation | Block chain alias for person-to-person payments |
US10805393B2 (en) | 2015-12-02 | 2020-10-13 | Olea Networks, Inc. | System and method for data management structure using auditable delta records in a distributed environment |
US9948467B2 (en) | 2015-12-21 | 2018-04-17 | Mastercard International Incorporated | Method and system for blockchain variant using digital signatures |
US10713654B2 (en) | 2016-01-21 | 2020-07-14 | International Business Machines Corporation | Enterprise blockchains and transactional systems |
US9679276B1 (en) | 2016-01-26 | 2017-06-13 | Stampery, Inc. | Systems and methods for using a block chain to certify the existence, integrity, and/or ownership of a file or communication |
US10108812B2 (en) | 2016-01-28 | 2018-10-23 | Nasdaq, Inc. | Systems and methods for securing and disseminating time sensitive information using a blockchain |
US9794074B2 (en) | 2016-02-04 | 2017-10-17 | Nasdaq Technology Ab | Systems and methods for storing and sharing transactional data using distributed computing systems |
US11057198B2 (en) | 2016-03-04 | 2021-07-06 | Assured Enterprises, Inc. | Utilization of a proxy technique in escrow encryption key usage |
US10346406B2 (en) | 2016-03-28 | 2019-07-09 | International Business Machines Corporation | Decentralized autonomous edge compute coordinated by smart contract on a blockchain |
EP3439231A4 (en) | 2016-03-31 | 2019-11-13 | Bitflyer, Inc. | PRIVATE NODE, PROCESSING PROCESS FOR PRIVATE NODES AND PROGRAM THEREFOR |
WO2017197110A1 (en) | 2016-05-11 | 2017-11-16 | Nasdaq, Inc. | Application framework using blockchain-based asset ownership |
US9785369B1 (en) | 2016-05-23 | 2017-10-10 | Accenture Global Solutions Limited | Multiple-link blockchain |
US10614239B2 (en) | 2016-09-30 | 2020-04-07 | Amazon Technologies, Inc. | Immutable cryptographically secured ledger-backed databases |
US20180218003A1 (en) | 2017-01-30 | 2018-08-02 | General Electric Company | Ephemeral blockchain data structure |
CN110383313B (zh) | 2017-03-07 | 2023-08-29 | 万事达卡国际公司 | 用于记录点对点交易处理的方法和系统 |
-
2017
- 2017-05-16 US US15/596,922 patent/US9785369B1/en active Active
- 2017-05-16 US US15/596,899 patent/US9774578B1/en active Active
- 2017-05-16 US US15/596,932 patent/US9967096B2/en active Active
- 2017-05-16 US US15/596,904 patent/US9967088B2/en active Active
- 2017-05-23 EP EP17725936.3A patent/EP3443710B1/en active Active
- 2017-05-23 AU AU2017269736A patent/AU2017269736B2/en active Active
- 2017-05-23 SG SG11201809661SA patent/SG11201809661SA/en unknown
- 2017-05-23 CN CN201780031862.2A patent/CN109417478B/zh active Active
- 2017-05-23 AU AU2017269734A patent/AU2017269734B2/en active Active
- 2017-05-23 SG SG11201809660PA patent/SG11201809660PA/en unknown
- 2017-05-23 CN CN201780031864.1A patent/CN109417479B/zh active Active
- 2017-05-23 EP EP19209995.0A patent/EP3633916B1/en active Active
- 2017-05-23 EP EP19214066.3A patent/EP3641220B1/en active Active
- 2017-05-23 EP EP17724087.6A patent/EP3443707B1/en active Active
- 2017-05-23 WO PCT/EP2017/062240 patent/WO2017202756A1/en active Application Filing
- 2017-05-23 EP EP17724088.4A patent/EP3443708B1/en active Active
- 2017-05-23 EP EP17724089.2A patent/EP3443709B1/en active Active
- 2017-05-23 WO PCT/EP2017/062242 patent/WO2017202758A1/en active Application Filing
- 2017-05-23 WO PCT/EP2017/062243 patent/WO2017202759A1/en active Application Filing
- 2017-05-23 CN CN202110194119.7A patent/CN112968764B/zh active Active
- 2017-05-23 WO PCT/EP2017/062241 patent/WO2017202757A1/en active Application Filing
- 2017-08-23 US US15/684,721 patent/US10110576B2/en active Active
- 2017-10-05 US US15/726,023 patent/US10356066B2/en active Active
- 2017-10-05 US US15/725,910 patent/US9959065B2/en active Active
-
2018
- 2018-05-04 US US15/971,777 patent/US10348707B2/en active Active
- 2018-05-25 US US15/989,900 patent/US10623387B2/en active Active
-
2019
- 2019-01-28 US US16/259,310 patent/US10305875B1/en active Active
-
2020
- 2020-03-30 US US16/834,260 patent/US11552935B2/en active Active
-
2022
- 2022-12-22 US US18/145,324 patent/US20230132211A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5608178A (en) * | 1993-12-29 | 1997-03-04 | Yamaha Corporation | Method of storing and editing performance data in an automatic performance device |
US20160028715A1 (en) * | 2014-06-23 | 2016-01-28 | The Toronto-Dominion Bank | Systems and methods for authenticating user identities in networked computer systems |
CN105488665A (zh) * | 2015-11-25 | 2016-04-13 | 布比(北京)网络技术有限公司 | 一种去中心化的交易方法 |
CN105404701A (zh) * | 2015-12-31 | 2016-03-16 | 浙江图讯科技股份有限公司 | 一种基于对等网络的异构数据库同步方法 |
CN105592098A (zh) * | 2016-01-16 | 2016-05-18 | 杭州复杂美科技有限公司 | 区块链上的投票及ca证书的管理方法 |
Non-Patent Citations (1)
Title |
---|
CHRISTIAN DECKER: ""Bitcoin Transcation Malleability and MtGox"", 《ESORICS 2014:19TH EUROPEAN SYMPOSIUM ON RESEARCH IN COMPUTER SECURITY》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110086633A (zh) * | 2019-05-13 | 2019-08-02 | 广东辰宜信息科技有限公司 | 一种区块链技术中密文防篡改方法 |
CN110086633B (zh) * | 2019-05-13 | 2020-08-14 | 广东辰宜信息科技有限公司 | 一种区块链技术中密文防篡改方法 |
CN113676328A (zh) * | 2020-05-13 | 2021-11-19 | 大众汽车股份公司 | 用于交换密钥信息的设计 |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109417478A (zh) | 多链路密码逻辑区块链 | |
EP3451578B1 (en) | Turn-control rewritable blockchain | |
CN109428892A (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 |