CN113348455A - 利用数据控制签名提供数据的认证、不可否认性、受管控的访问和孪生分辨的装置和方法 - Google Patents
利用数据控制签名提供数据的认证、不可否认性、受管控的访问和孪生分辨的装置和方法 Download PDFInfo
- Publication number
- CN113348455A CN113348455A CN201980050779.9A CN201980050779A CN113348455A CN 113348455 A CN113348455 A CN 113348455A CN 201980050779 A CN201980050779 A CN 201980050779A CN 113348455 A CN113348455 A CN 113348455A
- Authority
- CN
- China
- Prior art keywords
- data
- transitory computer
- storage medium
- readable storage
- message
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title description 44
- 238000003860 storage Methods 0.000 claims abstract description 41
- 230000008569 process Effects 0.000 description 25
- 230000006870 function Effects 0.000 description 18
- 238000007726 management method Methods 0.000 description 16
- 238000004422 calculation algorithm Methods 0.000 description 12
- 150000003839 salts Chemical class 0.000 description 11
- 238000007906 compression Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 10
- 230000006835 compression Effects 0.000 description 9
- 238000012546 transfer Methods 0.000 description 9
- 239000000306 component Substances 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 239000003795 chemical substances by application Substances 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 3
- 230000002860 competitive effect Effects 0.000 description 3
- 230000033001 locomotion Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 241000700605 Viruses Species 0.000 description 2
- 238000007792 addition Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000001276 controlling effect Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005538 encapsulation Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000002595 magnetic resonance imaging Methods 0.000 description 2
- 230000036961 partial effect Effects 0.000 description 2
- CLVFWRBVFBUDQU-UHFFFAOYSA-N 1,4-bis(2-aminoethylamino)-5,8-dihydroxyanthracene-9,10-dione Chemical compound O=C1C2=C(O)C=CC(O)=C2C(=O)C2=C1C(NCCN)=CC=C2NCCN CLVFWRBVFBUDQU-UHFFFAOYSA-N 0.000 description 1
- 125000002015 acyclic group Chemical group 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000003339 best practice Methods 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 238000013479 data entry Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 235000015122 lemonade Nutrition 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 238000004549 pulsed laser deposition Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000029305 taxis Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000002747 voluntary effect Effects 0.000 description 1
Images
Classifications
-
- 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
-
- 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/3247—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 involving digital signatures
- H04L9/3252—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 involving digital signatures using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- 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/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- 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/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6209—Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
-
- 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/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- 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/3239—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 non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- 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/3247—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 involving digital signatures
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
-
- 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/34—Encoding or coding, e.g. Huffman coding or error correction
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Storage Device Security (AREA)
Abstract
一种非暂时性计算机可读存储介质,具有由处理器执行的指令以接收原始符号集合。对原始符号集合应用单次使用编码功能,以形成新符号集合。形成与用户相关联的加密密钥。加密新符号集合,以形成存储在网络可访问存储位置处的重新编码的加密符号文件。使用以私有密钥加密的单次使用编码功能形成具有数据控制签名的分布式分类帐条目。将分布式分类帐条目写入分布式分类帐。访问分布式分类帐条目。从网络可访问存储位置读取重新编码的加密符号文件。利用数据控制签名和对称密钥将重新编码的加密符号文件转换为原始符号集合。
Description
相关申请交叉引用
本申请要求于2018年6月29日提交的美国临时专利申请序列号62/692,199和于2018年11月9日提交的美国临时专利申请序列号62/758,121的优先权,每个申请的内容通过引用合并于此。
技术领域
本发明一般涉及计算机网络中的数据访问控制。更具体地,本发明针对用于利用数据控制签名提供数据的认证、不可否认性(non-repudiation)、受管控的访问和孪生分辨(twin resolution)的技术。
背景技术
分布式分类帐(distributed ledger)是分布在多台联网机器上的复制的、共享的和同步的数字数据的共识。没有中央管理员或集中式数据存储。点对点网络和共识算法用于确保跨多台联网机器的复制。分布式分类账的一种形式是区块链系统。
传统的区块链可以接受链外(off-chain)数据资源的散列。然而,链外数据资源不受区块链管控。虽然区块链条目可以在稍后阶段验证某个数据的内容,但资源可以在不需要区块链条目的许可或交互的情况下被访问、复制、读取。因此,对链外资源的任何管控都不能以编程方式强制实施或自动化。相反,管控需要人工干预和劳动。目前的区块链技术无法接受超过几百字节的最大容量限制。
因此,存在控制链外数据的需要。更具体地,存在将任意大小的数据文件置于区块链管控之下的需要。
发明内容
一种非暂时性计算机可读存储介质具有由处理器执行以接收原始符号集合的指令。对原始符号集合应用单次使用编码功能,以形成新符号集合。形成与用户相关联的加密密钥。加密新符号集合,以形成存储在网络可访问存储位置处的重新编码的加密符号文件。使用以私有密钥加密的单次使用编码功能形成具有数据控制签名的分布式分类帐条目。将分布式分类帐条目写入分布式分类帐。访问分布式分类帐条目。从网络可访问存储位置读取重新编码的加密符号文件。使用数据控制签名和对称密钥将重新编码的加密符号文件转换为原始符号集合。
附图说明
结合以下连同附图进行的详细描述,本发明得到更全面的理解,
其中:
图1示出了根据本发明的实施例配置的系统。
图2示出了与本发明的实施例相关联的处理操作。
图3示出了根据本发明的实施例执行的数据处理。
图4示出了根据本发明的实施例执行的编码操作。
图5示出了根据本发明的实施例执行的数据写入处理操作。
图6示出了根据本发明的实施例执行的数据编码。
图7示出了与本发明的实施例相关联的用户、数据和过程之间的交互。
图8示出了根据本发明的实施例执行的数据读取处理操作。
在附图的几个视图中,相同的附图标记指的是相应的部分。
具体实施方式
图1示出了根据本发明的实施例配置的系统100。系统100包括一组客户端机器102_1至102_N,其操作为利用网络106的点对点网络,网络106可以是有线和无线网络的任意组合。如下详细描述的,客户端机器访问在区块链管控下的任意大小的数据文件。
每个客户端机器包括经由总线114连接的处理器(例如,中央处理单元)110和输入/输出设备112。输入/输出设备112可以包括键盘、鼠标、触摸显示器等。网络接口电路116也连接到总线114以提供到网络106的连接。存储器120也连接到总线114。存储器存储客户端钱包122,客户端钱包122具有由处理器110执行以实现本文公开的操作的指令。
服务器104也连接到网络106。服务器包括处理器130、输入/输出设备132、总线134和网络接口电路136。存储器140连接到总线134。在一个实施例中,存储器存储编码模块142、访问模块144和解码模块146。模块142、144和146可以被下载到客户端设备102_1至102_N,并且形成客户端钱包122的一部分。
图1还示出了操作为数据存储机或云存储的一组机器150_1至150_N。每台机器150包括处理器151、输入/输出设备152、总线154和网络接口电路156。存储器160连接到总线154。存储器160存储存储模块162,该存储模块162具有由处理器151执行以管理数据块的读取和写入的指令。
图1还示出了操作为分布式分类帐的一组机器170_1至170_N。每台机器170包括处理器171、输入/输出设备172、总线174和网络接口电路176。存储器180连接到总线174。存储器180存储分布式分类帐模块182,分布式分类帐模块182具有由处理器171执行以管理分布式分类帐的指令。
系统100是示例性的。应当理解,本文公开的操作可以在系统100中的不同机器上执行。例如,客户端机器102可以包括用于存储数据块的存储模块162。类似地,机器170_1至170_N中的一个或多个可以包括用于存储数据块的存储模块162。
图2示出了与本发明实施例相关联的处理操作。最初,符号集合被接收200。符号集合形成数据文件。作为示例,客户端机器102_1接收符号集合。
编码功能被应用于符号集合202。图3示出了经受唯一编码表302形式的编码功能的单个符号300,该唯一编码表302产生新的符号304。块202的操作形成新的符号集合。客户端钱包122可以利用从机器104接收的编码模块142来实现该操作。
下一个操作是形成加密密钥204。形成三个加密密钥:非对称加密私有密钥、非对称加密公共密钥和对称加密密钥。图3示出了持有加密密钥对306的客户端机器102的客户端钱包122。
图2的下一个操作是加密并存储结果206。更具体地,该操作需要加密新的符号集合以形成重新编码的加密符号文件,该加密符号文件可以利用存储模块162存储在机器150_1到150_N中的一个或多个上。图3示出了形成重新编码的加密符号文件310的对称加密块308。客户端钱包122可以利用从机器104接收的编码模块142来实现该操作。
回到图2,下一个操作是形成分布式分类帐条目208。私有密钥可以由非对称加密块312用来形成分布式分类帐条目314,分布式分类帐条目314在本文中将被称为分布式分类帐技术(DLT)条目。客户端钱包122可以利用从机器104接收的编码模块142来实现该操作。分布式分类帐条目然后被写入存储器210。更具体地,分布式分类帐条目被写入分布式分类帐,例如在机器170_1至170_N上。
上述操作构成数据编码、加密和写入操作。以下操作构成数据读取、解密和解码操作。图2的下一个操作是访问分布式分类帐条目212。例如,客户端钱包122可以使用从机器104接收的访问模块144来实现该操作。接下来,访问加密文件214。更具体地,从网络可访问的存储位置访问重新编码的加密符号文件。例如,数据供应商可以向数据购买者指定网络可访问的存储位置的位置。
图2的最后操作是解密结果212。更具体地,对重新编码的加密符号文件进行解密以导出原始符号集合。如下面所讨论的,解密操作包括解码操作,该解码操作是块202的编码功能的逆。从机器104接收的解码模块146可以形成用于实现该操作的客户端钱包122的一部分。
所公开的技术构成了一种控制链外数据的技术。更具体地,任意大小的数据文件被置于区块链管控之下。关于所公开的技术的更多细节如下。
在经济学中,如果一个消费者对商品的消费阻止了其他消费者的同时消费,或者如果一方的消费降低了另一方消费它的能力,那么该商品就被称为竞争性的。当创建列表、数据库、分类账和其他这样的数据结构时,字段是诸如“身高”、“年龄”、“姓名”等的变量,并且字段值是诸如“1.2米”、“37岁”、“John Smith”等的相应条目。类似的概念是“键(key):值”对,但是由于“key”在加密意义上也具有多种含义,所以提及“字段:值”对更有帮助。保证主字段值是唯一的,以便能够查找可能重复的条目。例如,John和Mike可能在银行都有100美元,因此为了确保Mike花的是他的100美元,而不是John的,可以使用诸如ID号或密码的主要字段值来确保分类帐、数据库等的良好工作。
当前的区块链分类帐提供了网络定义的空间,其中用户Alice和Bob可以记录由网络证实的彼此之间(点对点)的短消息(为了提供Alice发送给Bob的消息的中立分布式第三方副本,证实具体由持有分类帐副本的那些个体执行)。由于采用的加密协议与加密网络的工作证明/共识协议相结合,因此Alice和Bob的记录在社会、经济和技术上都很难编辑或操纵。
当前区块链技术的一个好处是拥有分类账“上”的消息条目。这些短消息具有在技术上强制所有权并提供朝向合法所有权的部分移动的属性(例如竞争特性)。因此,如果将这些消息设置为表示令牌,则可以使用适当的协议在区块链网络上拥有和交易令牌。令牌交易是高效的,因为它们是点对点的,并且不需要人工授权或审核以生效。
与字段值相关联的数据非常不同于与文件相关联的数据。确保将数据作为字段-字段值对正确使用和移动(例如在结构化查询语言(SQL)中)的技术不确保文件的正确使用和移动。保存在数据库中的数据处在数据库管理之下,而保存在数据库之外的相同数据不处在数据库管理之下。区块链和分布式分类账技术(DLT)结构也是如此。DLT中的字段值处在DLT管理之下,与文件相关联的数据不处在DLT管理之下。
所公开的技术提供DLT管理的字段值。也就是说,使用所公开的技术,DLT中的字段值被拥有。DLT字段值具有在技术上强制所有权并提供朝向合法所有权的部分移动的属性(例如竞争特性)。因此,如果将这些DLT字段值设置为表示令牌,则可以使用适当的协议在区块链网络上拥有和交易令牌。
字段值交易是高效的,因为它们是点对点的,并且不需要人或组织的授权或审核以生效。所公开的技术包括扩展和保留DLT字段值管理的用途的文件管理系统。公开了一种文件的有效所有权模型。DLT字段值在DLT环境和分类帐之外没有用途。访问DLT字段值需要访问DLT网络并具有加密密钥。访问文件不需要访问DLT网络,因此在所有权方面不处在DLT的管理之下,这进而需要基于劳动的审核等。最好的情况下,通过使用散列值,可以从DLT建立数据完整性,但这不是DLT字段值用途核心的用途。通过当前的DLT,与散列完整性检查器相关联的文件肯定不具有在“财产”级别上的所有权所需的竞争特性,也不允许在DLT级别上访问资产,因此不能为在当前DLT中注册的资产提供知识产权保护。
此外,在交易期间DLT字段值被保证为主字段值。对于DLT文件交易期间的文件,情况并非如此,因为重复文件的散列将是相同的而不是唯一的。因此,唯一性将不得不在需要公共密钥基础设施的加密密钥级别被引入,并且当呈现给裁判时仍然不能将文件副本A从文件副本B辨认开,从而不能提供文件的点对点交易平台。
这些挑战在被称为MagnaCarta协议(MCP)的单个集成协议中得到解决,该协议不需要修改DLT,而是利用MCP来重新格式化文件数据。MCP产生去中心化的文件格式。
图2的编码功能202可以利用图3的唯一编码表302。备选地,编码功能可以是树。唯一的要求是每个文件编码使用一种编码方案,使得编码方案仅供单次使用。也就是说,单次使用意味着用于文件的单个实例,而不仅仅是在时间上只供一次使用。如果重复文件被多次编码,则必须为每个编码请求生成新的一次性编码方案。适当的单次使用编码方案的三个有关示例是霍夫曼树、自动编码器和对称加密(Ceasar密码、AES等)。
之所以讨论霍夫曼树,是因为MCP操作的某些方面易于建模和理解。使用对称加密而非霍夫曼树的原因是编码速度。使用霍夫曼树的原因可能是更快的流传输。自动编码器可以用于图像和通常不可压缩的字符串。所有三种编码器模型的主要特征是,可以对输入进行盐化(salt)以产生唯一的编码方案,而不必人工生成唯一的编码方案。
在DLT网络之外,MCP在光盘上产生重新编码的加密文件,如果不重建需要访问DLT条目的唯一编码方案,则无法访问该文件。换句话说,MCP下的DLT条目在DLT存储器中充当指向链外文件的指针。指针既标识重新编码的加密文件,又提供访问冷存储内容的方式。这种受控访问给予重新编码的加密文件竞争特性。
图4用于演示保证唯一性的概念。如果MCP选择采用如图4所示的唯一摩尔斯码编码方案,则很明显,相同的输入或消息在编码时,重复地生成不同的“孪生体(twin)”。唯一编码表和唯一输出一起工作。虽然所有孪生体在读取时都会构建消息“SOS”(在构建时看起来是相同的),但每个孪生体的其记录中都不同。
如果DLT管理下的内容是静态的,则加密的唯一编码方案可以与完整性检查器值配对。如果在管理之下的数据是动态的,例如消息传送应用或流传输服务,则完整性检查器值可以被设置为零。
MCP下的字段值交易可以以点对点方式记录一个文件在两个点之间的所有权转移。因此,所公开的技术有助于对所拥有的文件进行完全自主的点对点转移。
在以下详细公开的上下文中更充分地理解本发明。在密码学中,明文是未加密的信息,相对的是为存储或传输而加密的信息。明文通常意味着等待输入到密码学算法(通常是加密算法)中的未加密信息。
密文或密码文是使用被称为密码的算法对明文执行加密的结果。密文也称为加密的或编码的信息,因为它包含原始明文的一种形式,该形式在没有正确的密码来解密它的情况下,人或计算机无法读取。
编码方案是将二进制映射到某个字符或值的任何表、树、函数或表示形式。ASCII是将二进制“1000001”映射到大写字母“A”的表,因此是一种编码方案。编码是将字符或值转换为二进制的过程,而解码是将二进制转换为某个字符或值的过程。虽然编码方案当然不是加密密码,但是本公开中编码方案的定义依赖于如何应用算法,而不一定是选择什么算法。例如,大多数替代密码(诸如Caesar密码加密)产生的输出与编码输出(例如UTF8HTML的Base64编码)具有相似的特性。类似地,本文中详细描述的霍夫曼过程具有压缩算法和编码方案的属性。在该文档中,霍夫曼过程通常被称为编码方案,因为霍夫曼编码的属性对于下面描述的所公开的数字控制签名(DCS)过程是关键的,而仅管理作为有利副作用的霍夫曼压缩。
公共密钥密码学使用密钥对。密钥包括广泛传播的公共密钥和只有所有者知道的私有密钥。
在密码学中,盐是用作单向函数的附加输入的随机数据,该单向函数对密码或密码短语进行“散列”。盐与随机数的概念密切相关。盐的主要功能是防御字典攻击或其散列等效,即预计算的彩虹表攻击。
数字签名是一种用于证明数字消息或文档的真实性的数学方案。有效的数字签名使收件人有理由相信该消息是由已知发件人创建的(认证),发件人不能否认已发送该消息(不可否认性),并且该消息在传输过程中未被更改(完整性)。
在本公开中,消息由大写“M”表示。消息可以是任何数据字符串。“M”指序列号、数据库条目、数字值、文件内容、任何类型或大小的存储器内的值或可以使用二进制表示的任何东西。
如结合图4所讨论的,孪生分辨是将消息的两个或更多个相同副本彼此区分的能力。
MCP有助于默认情况下创建嵌入有认证、不可否认性、可调完整性、受管控的访问和的孪生分辨的数据,这些数据被称为智能数据。MCP还有助于在点对点网络中的两方或更多方之间传输智能数据。
明文数据(被称为消息,M)由MCP转换为由图5中详细说明的三个组成部分组成的去中心化文件格式:
·数据控制签名(DCS)——由数字对(I,CMUHT)组成
·重新编码的加密数据对象——密文CMR
·加密密钥——K1、K2。
总的来说,去中心化文件格式的这三个组成部分被称为智能数据。每个组成部分的位置因应用而异,但是通常将DCS存储在区块链上(例如,机器170_1至170_N),重新编码的加密数据对象(CMR)适合于云存储(例如,机器150_1至150_N),并且加密密钥对K1、K2存储在基于虚拟机(VM)或容器的钱包中(例如,在客户端机器102_1上)。
智能数据设计背后的主要目的是克服传统数据同时具有可控性和协作性的限制,这一问题源于目前数据在默认情况下是可访问的,并且数据的副本彼此之间无法区分。
图5表现了数据消息M的处理和去中心化。MCP的前半部分旨在确保所有数据在二进制级别上是唯一的,即使在任何给定数据的两个精确副本之间也是如此,如结合图4所示。唯一标识智能数据的能力被称为孪生分辨,并且对于在每天全球分发多个精确内容副本的世界中建立数据的数字权利、审计和所有权是至关重要的。
MCP的后半部分旨在使数据对象不可读,然后对其进行加密,将其置于一种被称为冷存储的状态。此措施结束根级别文件访问,从而确保数据在默认情况下不可访问。
用户/代理或应用取回智能数据的能力需要钱包持有密钥(例如,加密密钥对306)和区块链条目(例如,DLT条目314)二者。这与智能合同形成鲜明对比,在智能合同中,区块链并不决定智能合同的可用性,而只决定其有效性。智能合同管控值的令牌,而智能数据是值本身的存储。
智能合同中对信息的访问并不局限于区块链库(blockchain base),这意味着智能合同中数据所有权的法律地位并不完整。设置了Ether的所有权,而不是智能合同本身内的数据。
相反,利用所公开的技术,用户/代理或应用取回智能数据的能力需要钱包持有的密钥和区块链条目值CMUHT两者。DCS CMUHT从区块链库确认CMR文件内保存的内容是可访问的。在没有CMUHT值的情况下,CMR文件的内容是不可访问的。这与智能合同形成鲜明对比,在智能合同中,智能合同区块链并不确定智能合同的可用性/可访问性,而只决定其有效性。
图5示出了明文数据M的处理。例如,从静态ASCII、UTF-8、Unicode编码或使用的以相同方式通用地表示任何字符(例如字母A为100001)而不论M的较大上下文的任何编码标准中取出M,并且将M放入将被称为唯一霍夫曼树(UHT)的定制编码方案中。理论上,霍夫曼编码器可以被配置为以相同的方式处理所有M,并为固定的M产生恒定的树结构。MCP与这种传统的实现方式不同,它最大化了可以表示消息内的符号的不同树的数量。MCP的这个方面寻求最大化以随机方式为固定消息M生成树的任意两个连续请求之间的距离,以最大化孪生分辨的效力。
在一个实施例中,使用两种机制(随机栈返回和盐)生成唯一霍夫曼树。在UTF-8中,所有字节都具有8比特的字大小。在霍夫曼编码中,字节字的大小是可变的,从而导致消息长度压缩。通过允许栈随机返回二进制字地址以与相似频率的符号匹配,在统计冲突之前,可以在10kb(或更大)的消息上生成多达2000个唯一的霍夫曼树。
使消息盐化降低了压缩效率,但提高了孪生分辨。对于标准的100kb或更大的文件,5%L盐可以轻松地唯一地分辨数百万个消息副本。增加盐长度将提高孪生分辨力,但在存储大小方面不能有效地重新编码消息,这就是为什么必须设置盐量平衡的原因。5%的盐通常保持99%的压缩效率,相对的是无冲突地分辨400-800万个消息孪生体的能力。对于由统一符号频率组成的两个消息M1、M2,冲突的几率为256!/2,或在4E+506的量级。然而,高度结构化消息的下限可以明显更小。通过经验手段进行冲突检测需要一些详尽的计算。然后,5%消息长度的盐化消息的界限允许随机栈返回大于100,000且小于4E+506,这足以声称有效的孪生分辨。
图5示出了用盐来补充M以产生“M+盐”,“M+盐”被应用于霍夫曼编码器。这对应于图2的编码功能块202和图3的编码表302。如图5中所示,编码功能产生MUHT和MR。MR中的“R”表示重新编码的(recorded),如在重新编码的消息M中一样。UHT表示从消息M导出的唯一霍夫曼树。消息M提供用于生成UHT的符号集。消息派生的MUHT是唯一编码功能。它将消息M重新编码为MR。
MUHT利用私有密钥K1被非对称加密以产生CMUHT。这对应于图2的加密操作206和图3的非对称加密块312。如图5中所示,CMUHT形成被存储到区块链(例如,机器170_1至170_N)的数字对。
图5还描述了消息MR利用公共密钥K2被对称加密。这对应于图2的加密操作206和图3的对称加密块308。这产生重新编码的加密文件310或CMR,其可经由网络(例如,机器150_1至150_N中的一个或多个上的网络可访问存储器位置)存储。
在MagnaCarta协议的后半部分,我们设置了密钥、数据控制签名和重新编码的加密数据对象。这些步骤的先决条件是生成密钥对K1,K2。CMUHT的不可否认性需求要求实现者选择K1,K1是与“签名”方案一起使用的非对称密码。K2是支持对称加密的公共密钥。虽然用于UHT重新编码的消息从M到MR的加密的非对称或对称密码的选择是任意的,但是为了速度性能,我们假设运行诸如AES-256的对称操作。
根据得到的密文CMHUT和CMR对明文MUHT和MR进行加密。在该阶段,在MCP中设置重新编码的加密数据对象(CMR)。数字对(I,CMHUT)是作为两步过程的一部分设置的。
数据控制签名(DCS)在概念上类似于数字签名,但有显著的区别和增加。数据控制签名(DCS)是一种数学方案,用于证明认证、不可否认性,并且还提供消息可访问性和孪生分辨作为新的组成部分。
完整性作为最后的可选步骤进行处理,以生成数字“I”。完整性是确认数据在传输期间或在存储后未被某个第三方更改的数据属性。换句话说,如果在某个遥远的位置或时间检查数据时,数据可以显示为未被更改,则数据具有完整性。此类型的数据是不可变的。完整性不通过任何形式的可访问性来设置;数据可以具有完整性,但仍然不受控制地访问。
这就是智能合同的情况。在Ethereum的分类账上存储的智能合同散列值使某个遥远的裁判相信,正在考虑的智能合同是有效的并且具有完整性,但任何人都可以访问它,因此智能合同中的信息没有所有权。
传统的基于散列的完整性实现起来非常简单,但在信息的未来暴露风险方面存在缺陷。能够进行令人难以置信的散列暴力攻击的后代将能够推断出在这种基于散列的区块链上存储的信息。
缺乏访问控制以及在致盲或保护敏感数据方面的潜在未来弱点是所公开的技术提供不采用原始散列化的完整性设置选项的原因。
智能数据的可访问性是通过消除数据的可读性(通过霍夫曼编码器)以及加密来设置的。UDP上的数据流送不需要设置“I”值,而固定数据产品(诸如预先录制的娱乐节目)需要。因此,DCS允许对动态内容进行认证、不可否认性、孪生分辨和访问,而不会限制在消息传递或流传输应用中重新使用DCS的能力。
当完整性设置适合时(诸如对于静态智能数据产品),下面的完整性方法是有用的,并且不会过时。“I”是确定数据完整性的值。广义上,存在某个依赖于MR的设置完整性的函数“I”。传统上,直接散列函数就足够了。要理解为什么不使用直接散列,重要的是要强调数字对(I,CMHUT)的重要特征。
(I,CMHUT)构成了智能数据的区块链驻留组成部分。区块链记录在全球范围内持续存在,因此需要不会过时。尽管密码分析为我们提供了关于套件B密码学密码的合理保证,但量子计算和大规模并行处理不能保证区块链上存储的散列或加密值在一段时间内将保持私有。
智能数据中数据随时间保持私有的要求得到解决,因为没有MR的信息被编码到区块链上,而仅MR完整性和对MR访问的控制的证据被编码到区块链上。散列函数是有损的还不够;因此简要介绍三种完整性备选方案。
认证加密(AE)和带关联数据的认证加密(AEAD,AE的变体)是一种在数据上同时提供机密性、完整性和真实性保证的加密形式。这些属性在单个、易于使用的编程接口下提供。
还可以使用加密后MAC(encrypt-then-MAC,EtM)方法。也就是说,明文消息首先被加密,然后基于所得到的密文产生MAC(机器认证码)。密文及其MAC在例如IPsec中使用的传统AE协议中一起发送。这是唯一能在AE中达到最高安全性定义的方法,但只有当使用的MAC是“强不可伪造”时,才能实现这一点。上述过程如图6中所示。
当DCS采用AE设置完整性时,机器认证码(MAC)与加密的重新编码消息CMR分开,并作为DCS的一部分被存储在区块链上。重要的是,在不将K1密钥存储在VM中的情况下,不能执行完整性检查,因为需要K1和消息来生成MAC。
因此,所有5个DCS属性(认证、不可否认性、完整性、孪生分辨和消息访问)都受到消息所有者的严格控制。
为了完备性,公开了备选的完整性算法。对于需要最高级别的极端完整性(例如,国家法令或法律文件)的小消息(例如,小于50兆字节),可以引入矿工(miner)作为“联合签名者”。
如上所述,AE提供了实际上不可能打破的完整性。所公开的利用丢弃私有密钥的矿工加密解决方案具有物理上不可能打破完整性的好处。
所有者向矿工控制的代理提交重新编码的消息MR。矿工通过代理利用私有密钥K2加密重新编码的消息,然后当代理返回K2公共密钥作为DCS的“I”值时,私有密钥K2被永久忘记。
打破完整性设置选项1实际上是不可能的,因为欺骗MAC既需要黑客攻击消息作者的VM来盗取MAC密钥,还需要以某种方式编辑MAC的区块链记录或在MAC认证过程期间强制发生有用的散列冲突。这要求所有已知的区块链强度和安全性机制在特定VM钱包黑客攻击上失败。虽然理论上是可能的,但实际上是不可能的。
完整性设置选项2在实际上和理论上都是不可能的,因为私有密钥K2已经被忘记;在任何地方都没有它的记录,也没有可供对手盗取的东西。对手将别无选择,只能尝试暴力破解所采用的非对称密码,这就提出了跨计算的问题,理想情况下,即使是量子计算机也无法在合理的时间内执行。
创建记录元数据(例如符号频率)的文件头或基于MR内容的隔行扫描速记标记都提供了越来越高的完整性置信度,无需以不会过时的方式揭示或暴露区块链上的MR内容。这三种“I”类型技术都阻止了在区块链上以任何形式存储MR内容,从而实现安全且以隐私为中心的不会过时的智能数据条目。
DCS数字对(I,CMUHT)将CMR文件扩展名设置为*.ta,而DCS数字对(null,CMUHT)将CMR文件扩展名设置为*.dl。设置完整性表示静态“da.ta”*.ta,而置空完整性表示数据线(*.dl)。*.dl文件只包含元数据,即CMR内容是使用区块链的CMUHT按需生成的(例如流)。因此,CMR源的选择是任意的。
从用途的角度来看,*.ta文件为世界提供智能数据产品,而*.dl文件为世界提供智能数据服务。从应用的角度来看,*.ta文件通常将处于一个钱包和一个用户的控制之下,直到买卖或转移完成,而*.dl文件必须由双方和两个钱包持有才能具有任何用途。
两个用户将经历密钥协商协议以建立共享秘密。然后,他们会就某个任意的文本达成一致,从而设置CMUHT,这将构成树约定协议。在此阶段,双方(Alice和Bob)将在其各自的本地设备上存储一组密钥和CMUHT值。Alice现在将生成某个内容M,使用CMUHT重新编码M,并对其进行加密以产生CMR。CMR将被转移给Bob,Bob将对其进行解密和解码以取回消息。简单地说,*.ta和*.dl之间的区别在于组成部分在双方之间部署的顺序不同。*.ta明文消息存在于CMUHT传送之前,而*.dl明文消息存在于CMUHT传送之后。
*.ta完整性阻止CMUHT在将来的内容上重复使用,*.dl没有完整性,并且被重复使用,直到在用户认为安全措施有理由创建新的*.dl数据线。*.ta文件不一定是协作的,它们可能只包含仅供一个用户使用的数据。*.dl文件必须涉及两方或更多方。
DCS不同于传统的数字签名方案,因为同一消息签名不仅对消息进行认证,还可以允许签名持有者控制经签名的数据。一个这样的控制示例是消息所有权。默认情况下,所有权权利被授给经签名的消息,并且可以通过算法强制执行,而不是简单地通过自愿的人类遵从。
在数学上表示为数字对(I,CMUHT)的数据控制签名被记录在区块链上。DCS CMUHT可以存储在任何数据库等效存储结构中,该存储结构可以包括(但不限于)有向无环图(诸如IOTA的Tangle)、SQL数据库、XML表、私有区块链等。DCS甚至可以被打印并存储在某个物理位置,并且签名方案仍将提供完备的供应,如下详细描述。
通过使用简单的无盐霍夫曼消息重新编码方案而不是对消息进行散列化,我们保留了对消息“M”进行认证的能力(改进是因为认证是主动性的,而不是如下所述的追溯性的),并获得在数学上可强制执行的消息访问控制。霍夫曼编码方案的使用为用户提供了一种通过所得到的签名来强制执行消息访问的机制。
霍夫曼过程是用于将消息长度减少到最小可能长度的压缩方法,这会从符号级别分析中最大化明文的位熵。霍夫曼过程提取字符长度为“L”的消息“M”,分析符号频率,并产生可用作以最佳压缩方式对消息进行重新编码的编码方案的霍夫曼树“HT”——MR。霍夫曼树依赖于消息的内容,就像散列依赖于消息的内容一样。
传统签名方案中使用的散列算法是追溯性的。如果利用相同的散列算法对相同的消息进行散列化,则会生成相同的明显随机的输出。这种“随机的输出”或散列(H(M))充当一种指纹,它追溯性地(在事件之后)验证目标消息是真实的和未经改变的。
编码方案是主动性的。编码方案在分析之后不识别消息,而是在解码过程期间构建可读消息。依赖于消息的编码方案(诸如霍夫曼编码)通过仅能够唯一地重建一个特定的目标消息,并且同时通过将某个“明显随机”的二进制映射为有用的字符或值来提供对消息内容的访问,来认证消息。
为了强调这一点,可以想象使用霍夫曼树而非ASCII或UTF-8来读取某个霍夫曼编码的明文的应用。计算时间将是相当的。相比之下,首先计算散列然后(如果经过验证)运行应用,将需要两个单独的计算过程。
因此,访问和认证是相伴而生的。不使用指纹匹配来将消息识别为未经更改,而是使用依赖于消息的编码方案来从二进制基础产生未经更改的可读消息。
虽然独立于消息的编码方案(例如ASCII)从二进制中识别字符或值,但它们并不是作为一个整体特定于消息的,这使得它们不适合用于DCS签名方案。散列函数的主要属性是它们依赖于消息内容,从而确保基于散列的签名与特定消息捆绑,有助于不可否认性并防止伪造。不依赖于消息内容并且完全相同的签名可以被非法的第三方简单地复制并重新分配给其他非法消息。
像散列算法一样,霍夫曼编码方案依赖于消息内容,并且由于它们依赖于消息内容,所以对消息来说是“唯一的”。基于消息内容或者可以以某种方式可证地且唯一地捆绑到单个消息的所有编码方案都适合在DCS中使用,并且统称为唯一编码方案。
考虑到DCS作为一个整体在商业、法律和应用开发中的广泛用途和应用,霍夫曼编码方案是有优势的,原因很多,包括压缩和盐化以产生强大的孪生分辨。因此,虽然可以采用其他唯一编码方案作为霍夫曼过程备选并且仍然产生可行的数据控制签名方案,但是在所提供的示例中详细描述并绘制了霍夫曼过程。然而,应该特别注意的是,DCS并不明确依赖霍夫曼过程,并且可以接受被认为实现唯一编码方案的功能的任何过程。事实上,霍夫曼树的正统实现是内射的,并且必须使用随机栈返回和盐化来修改,以确保生成唯一霍夫曼树(UHT)作为非内射函数。
霍夫曼编码器将字符串的熵最大化。在可变字大小的随机编码方案中,你可能会在重新编码时使消息变大(ASCI对所有字符具有每个字符8比特的固定字大小)。霍夫曼没有给出关于字大小(其为加法)的保证,因为在没有树的情况下,从数学上很难知道符号从哪里开始或结束。符号“A”可能具有9比特的字大小,而符号“B”可能具有3比特的字大小,你永远不会知道。霍夫曼的数学原理类似于JPEG压缩中的数学原理。因此,作为压缩模块,它可能成为一种允许媒体播放器加载每次观看付费的“一次性霍夫曼编解码器”的方式,或者在解码端只需很少的计算开销进行流传输。
密钥生成需要证明完美的前向保密性,这在很大程度上依赖于MCP的实现方式。关于K1,在消息传递应用中,可以使用树约定协议。在正运行的内容分发中,可以使用Diffie-Hellman类型的密钥协议或标准密钥封装和传送。对于K2,使用用于密钥封装和传送的混合加密的适当选择。这些问题存在于实现方式中,超出了这里提出的数据处理的一般方案。当Alice向Bob传输智能数据时,去中心化的文件格式给出以相关方式处理每个组件的技术挑战。
图7示出了根据本发明实施例的智能数据转移过程。块700是参与者,例如发布者(例如,Alice)、订阅者(例如,Bob)和作为盲经纪人操作的区块链,其向双方提供协作并向智能数据所有者提供控制。块702表示过程,例如MCP和通道。图7中的其余块表示数据。
DCS是使用分布式分类账上的密码机制从Alice简单地传输到Bob,但它的独特之处在于它是相对于令牌的第二个条目。因此,区块链记录相对于密码令牌的智能数据资源或资产的转移。
双向条目的意义在于,它允许Bob和Alice的金融交易(针对智能数据产品或服务的支付)和智能数据转移在不同的监管考虑下被同时处理。智能数据转移对除Alice和Bob(支持GDPR合规)之外的所有人都是看不见的,并且可以被忘记,而支付记录则不能被忘记,并且充当完美的财务记录。
DCS过程在虚拟机VM上的所需控制点处执行,如图5中所示,该虚拟机通常安装在一些本地主机或本地设备上。消息“M”已被签名,从而产生3个输出,即:CMR(经加密的重新编码的消息)、数字对(I,CMUHT)(DCS)以及密钥K1和K2。不同于同地定位签名和消息的数字签名方案,DCS故意确保三个核心组成部分的去中心化。DCS从VM发送到区块链网络,区块链网络将其提交给区块链。在数学上可以将DCS发送到有向无环图“tangle”、安全数据库、私有区块链、XML文档或任何数据库类型的存储设施。虽然签名方案非常适合区块链技术,但它并不依赖于区块链。
CMR被存储在用户的优选位置。为了使DCS过程的价值最大化,通常会将CMR发送到云存储服务器。用户可以根据下游应用选择将CMR保留在VM上。密钥K1、K2保留在通常设立于本地主机I设备上的VM上,该本地主机I设备用于在以后访问经加密的重新编码的消息CMR。
开发者、企业和用户通常在VM站点管理所有经加密的重新编码的消息CMR和相应的数字控制签名。客户端钱包122包括帮助用户进行消息签名、管理、转移和存储的软件。传统钱包主要充当“密钥环”,存储属于区块链的公共密钥衍生物的所有必要私有密钥相对物,作为控制币或令牌的数学基础。相比之下,客户端钱包122不仅必须充当令牌密钥环,而且还充当DCS密钥环。为了保存DCS密钥,钱包必须与VM和最佳实践密钥管理方案交互,以保护和取回DCS密钥。CMR管理也落在钱包用途之下,具有更直接的要求。
VM为整个DCS过程提供了优势,例如操作系统独立性、标准化、额外的安全性和用户访问日志,其为数据所有权提供了更强大的法律基础。在VM和钱包安装期间,处置登录钱包和签名规则的钱包组件被DCS签名并存储在区块链上。
这些VM优势为消息来源和不可否认性的司法审计奠定了坚实的基础。大量的VM定制将依赖于应用和企业用户需求。在一台本地设备上安装多个VM非常简单,其中每个VM彼此分开以管理单独的操作员。
许多蠕虫、勒索软件攻击和病毒利用了设备往往具有“根级别”访问的事实。在Windows机器上,对C:\root的访问使用户、自动程序(bot)、应用、病毒或其他独立代理可以单边访问消息、文件和设备内容。VM的一种新颖用途是将诸如的应用配置为客户端钱包,其中在专用VM上对制作的内容进行DCS控制。
这样的场景将允许应用发布者拥有和控制所有产生的内容,并限制对特定应用关联内容的访问。获得对VM的“根级别”访问的对手将无法危害或影响在同一本地设备上的不同应用VM上管理的内容。此实现方式结束了根级别访问,转而支持应用级别访问。
图8示出了从去中心化的文件形式中提取有用消息(M)的过程。图8实际上与图5所示的操作相反。该过程需要受控解密,然后是受控制的解压缩。该可访问的有用内容M在控制点按需构建,并且不被发送到某个目标目的地。
密钥K1和K2在本地主机(例如,客户端机器102_1)上的客户端钱包122中,该本地主机可以托管基于容器的虚拟机。从区块链取回数字对(I,CMUHT)。K1将CMUHT解密为MUHT,而K2将CMR解密为MR。CMR可选地经历适当的完整性检查(即,“I”匹配MR)。然后将MR应用于霍夫曼解码以保护M。私有密钥在任何时候都不需要向读取方公开。因此,虽然读取方最终可以访问M,但读取方永远不能生成签名。
诸如2018年5月生效的《欧洲数据隐私总条例》(GDPR)之类的国际数据隐私法赋予用户越来越多的有关数据隐私的权利。主要是,这样的立法坚持提高客户—企业透明度,详细说明客户数据将如何使用,哪些客户数据将被存储,最重要的是,用户主动知道收集了哪些数据并要求忘记这些数据的权利。对于试图存储私有信息(例如用户身份、敏感健康记录、智能合同和其他个人信息)的区块链技术来说,被忘记的权利尤其重要。
不遵守GDPR可能会让公司因单起事件而损失高达其年营业额的4%,到目前为止,由于传统区块链技术中区块链分类账的永久性和公开广播,区块链提供商还没有公认的方法来为用户提供被忘记的自主权利。
所公开的DCS解决方案是有说服力的,因为虽然DCS被存储在区块链上并且永远不会被忘记,但是CMR在链外存在并且可以由消息所有者从VM中删除。
删除CMR会使重建M的任何可能尝试都完全不可能。因此,可以永久地忘记DCS签名的消息。使用链上供应,不可能向客户提供被忘记的权利,而使用基于散列的链外签名(例如由Etherum采用),可以(在理论上,但不是在实践中)暴力执行并测试所有字符串组合,以识别哪些消息将构建曾被存储在区块链上的特定散列,即使原始的链外消息已被删除。
使用所呈现的DCS,在没有CMR的情况下,在物理上不可能重建M。仅根据K1、K2和CMUHT的知识,即使尝试暴力分析,也不可能生成最初签名的唯一的正确M。因此,DCS通过认证、不可否认性、完整性、孪生分辨和消息访问提供数据控制,同时根据规范“欧洲联盟理事会,欧洲议会,GDPR,欧洲议会和理事会2016年4月27日,关于在个人数据处理和此类数据自由流动方面保护自然人的条例(EU)2016I679,并废除了指南95I46IEC(一般数据保护条例)。IMMC:PE17 2016。INITCELEX:32016R0679。OJ:JOL_2016_119_R_0001。2016年4月27日”,允许忘记基于区块链的权利以及默认数据隐私的状态。
本发明的实施例涉及具有计算机可读存储介质的计算机存储产品,计算机可读存储介质上具有用于执行各种计算机实现的操作的计算机代码。介质和计算机代码可以是为本发明的目的专门设计和构造的介质和计算机代码,或者它们可以是计算机软件领域的技术人员所熟知和可用的类型。计算机可读介质的示例包括但不限于:诸如硬盘、软盘和磁带之类的磁性介质;诸如CD-ROM、DVD和全息设备之类的光学介质;磁光介质;以及被特别配置为存储和执行程序代码的硬件设备,诸如专用集成电路(“ASIC”)、可编程逻辑设备(“PLD”)以及ROM和RAM设备。计算机代码的示例包括诸如由编译器产生的机器代码,以及包含由使用解释器的计算机执行的更高级代码的文件。例如,本发明的实施例可以使用C++或其他面向对象的编程语言和开发工具来实现。本发明的另一实施例可以在硬连线电路中代替或组合机器可执行软件指令来实现。
出于解释的目的,前面的描述使用了特定的命名法来提供对本发明的透彻理解。然而,本领域技术人员将清楚,实施本发明不需要具体细节。因此,出于说明和描述的目的,呈现本发明的特定实施例的前面描述。它们不意图是详尽的或将本发明限制于所公开的精确形式;显然,鉴于上述教导,许多修改和变化是可能的。选择和描述实施例是为了最好地解释本发明的原理及其实际应用,从而使本领域技术人员能够最好地利用本发明和具有适合于预期的特定用途的各种修改的各种实施例。意在所附权利要求及其等同限定本发明的范围。
Claims (12)
1.一种非暂时性计算机可读存储介质,具有由处理器执行以进行如下操作的指令:
接收原始符号集合;
对所述原始符号集合应用单次使用编码功能,以形成新符号集合;
形成与用户相关联的加密密钥;
加密所述新符号集合,以形成存储在网络可访问存储位置处的重新编码的加密符号文件;
形成具有数据控制签名的分布式分类帐条目,所述数据控制签名是使用以私有密钥加密的单次使用编码功能形成的;以及
将所述分布式分类帐条目写入分布式分类帐。
2.如权利要求1所述的非暂时性计算机可读存储介质,还包括由所述处理器执行以进行如下操作的指令:
访问所述分布式分类帐条目;
从所述网络可访问存储位置读取所述重新编码的加密符号文件;以及
利用所述数据控制签名和对称密钥将所述重新编码的加密符号文件转换为所述原始符号集合。
3.如权利要求1所述的非暂时性计算机可读存储介质,其中所述数据控制签名被配置为对所述原始符号集合实施认证、不可否认性、完整性、孪生分辨和消息访问。
4.如权利要求1所述的非暂时性计算机可读存储介质,其中所述数据控制签名包括数据完整性值。
5.如权利要求1所述的非暂时性计算机可读存储介质,其中所述数据控制签名是用对称加密功能形成的。
6.如权利要求1所述的非暂时性计算机可读存储介质,其中所述数据控制签名是用非对称加密功能形成的。
7.如权利要求1所述的非暂时性计算机可读存储介质,还包括由所述处理器执行以对所述重新编码的加密符号文件应用完整性功能以确认数据不变性的指令。
8.如权利要求1所述的非暂时性计算机可读存储介质,其中所述编码功能是霍夫曼树。
9.如权利要求1所述的非暂时性计算机可读存储介质,其中所述编码功能是自动编码器。
10.如权利要求1所述的非暂时性计算机可读存储介质,其中所述编码功能是对称加密。
11.如权利要求1所述的非暂时性计算机可读存储介质,其中所述编码功能包括将随机数据添加到所述原始符号集合。
12.如权利要求1所述的非暂时性计算机可读存储介质,该非暂时性计算机可读存储介质被托管在基于容器的虚拟机上。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862692199P | 2018-06-29 | 2018-06-29 | |
US62/692,199 | 2018-06-29 | ||
US201862758121P | 2018-11-09 | 2018-11-09 | |
US62/758,121 | 2018-11-09 | ||
PCT/EP2019/067640 WO2020002712A1 (en) | 2018-06-29 | 2019-07-01 | Apparatus and method for providing authentication, non-repudiation, governed access and twin resolution for data utilizing a data control signature |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113348455A true CN113348455A (zh) | 2021-09-03 |
Family
ID=67180763
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980050779.9A Pending CN113348455A (zh) | 2018-06-29 | 2019-07-01 | 利用数据控制签名提供数据的认证、不可否认性、受管控的访问和孪生分辨的装置和方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11265175B2 (zh) |
EP (1) | EP3814964B8 (zh) |
CN (1) | CN113348455A (zh) |
WO (1) | WO2020002712A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12099997B1 (en) | 2020-01-31 | 2024-09-24 | Steven Mark Hoffberg | Tokenized fungible liabilities |
US20220100835A1 (en) | 2020-02-05 | 2022-03-31 | Quantum Digital Solutions Corporation | Systems and methods for controlling a digital ecosystem using digital genomic data sets |
US20210272106A1 (en) * | 2020-03-02 | 2021-09-02 | Metallicus Inc. | Universal Payment Messaging Using Public Blockchains and Identity Platform |
US11336438B2 (en) * | 2020-03-31 | 2022-05-17 | EMC IP Holding Company LLC | Remote approval and execution of restricted operations |
JP2024507719A (ja) | 2021-02-04 | 2024-02-21 | クアンタム デジタル ソリューションズ コーポレーション | サイファージェニクスベースのエコシステムセキュリティプラットフォーム |
WO2023111316A1 (en) * | 2021-12-17 | 2023-06-22 | Zenotta Holding Ag | Apparatus and method for providing authentication, non-repudiation, governed access and twin resolution for data utilizing a data control signature |
CN114499998B (zh) * | 2021-12-31 | 2024-05-10 | 奇安信科技集团股份有限公司 | 安全防护方法、装置、电子设备和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080082828A1 (en) * | 2006-09-29 | 2008-04-03 | Infineon Technologies Ag | Circuit arrangement and method for starting up a circuit arrangement |
CN101465724A (zh) * | 2009-01-06 | 2009-06-24 | 中国科学院软件研究所 | 一种加密的Huffman编码方法,及其解码方法 |
EP3226165A1 (en) * | 2016-03-28 | 2017-10-04 | Accenture Global Solutions Limited | Secure 3d model sharing using distributed ledger |
US20170286717A1 (en) * | 2016-04-05 | 2017-10-05 | Vchain Technology Limited | Method and system for managing personal information within independent computer systems and digital networks |
CN107409123A (zh) * | 2015-02-09 | 2017-11-28 | 缇零网股份有限公司 | 加密集成平台 |
CN107888375A (zh) * | 2017-11-08 | 2018-04-06 | 深圳市携网科技有限公司 | 一种基于区块链技术的电子证据保全系统及方法 |
Family Cites Families (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0635181B1 (de) * | 1992-04-09 | 1997-01-15 | Siemens Aktiengesellschaft | Verfahren zum erkennen einer unberechtigten wiedereinspielung beliebiger von einem sender zu einem empfänger übertragener daten |
EP1118961B1 (en) * | 1999-11-25 | 2007-08-29 | Matsushita Electric Industrial Co., Ltd. | Apparatus and method for embedding information for tamper detection |
US7111167B1 (en) * | 2000-06-30 | 2006-09-19 | Intel Corporation | Digital watermarks with values derived from remote platforms |
US6823076B2 (en) * | 2001-07-20 | 2004-11-23 | Eastman Kodak Company | Method for embedding digital information in a three dimensional image from a scannerless range imaging system |
US7248696B2 (en) * | 2002-09-12 | 2007-07-24 | International Business Machines Corporation | Dynamic system bus encryption using improved differential transitional encoding |
WO2005107128A1 (en) * | 2004-04-30 | 2005-11-10 | Research In Motion Limited | System and method for securing data |
US8489880B1 (en) * | 2006-09-08 | 2013-07-16 | Cousins Intellectual Properties, Llc | Remote execution of commands transmitted through an open network with decoupled feedback |
US8457304B2 (en) * | 2007-02-23 | 2013-06-04 | Choy Sai Foundation L.L.C. | Efficient encoding processes and apparatus |
US8861727B2 (en) * | 2010-05-19 | 2014-10-14 | Cleversafe, Inc. | Storage of sensitive data in a dispersed storage network |
US8949617B2 (en) * | 2013-05-03 | 2015-02-03 | Citrix Systems, Inc. | Disrupting password attack using compression |
US9614682B2 (en) * | 2014-04-11 | 2017-04-04 | Guardtime IP Holdings, Ltd. | System and method for sequential data signatures |
US20160092492A1 (en) * | 2014-09-27 | 2016-03-31 | Qualcomm Incorporated | Sharing initial dictionaries and huffman trees between multiple compressed blocks in lz-based compression algorithms |
US9491151B2 (en) * | 2015-01-07 | 2016-11-08 | Ememory Technology Inc. | Memory apparatus, charge pump circuit and voltage pumping method thereof |
US10121019B2 (en) * | 2015-06-02 | 2018-11-06 | ALTR Solutions, Inc. | Storing differentials of files in a distributed blockchain |
US10193696B2 (en) * | 2015-06-02 | 2019-01-29 | ALTR Solutions, Inc. | Using a tree structure to segment and distribute records across one or more decentralized, acylic graphs of cryptographic hash pointers |
US10425428B2 (en) * | 2015-08-20 | 2019-09-24 | Guardtime Sa | Verification lineage tracking and transfer control of data sets |
US20170116693A1 (en) * | 2015-10-27 | 2017-04-27 | Verimatrix, Inc. | Systems and Methods for Decentralizing Commerce and Rights Management for Digital Assets Using a Blockchain Rights Ledger |
US10594689B1 (en) * | 2015-12-04 | 2020-03-17 | Digimarc Corporation | Robust encoding of machine readable information in host objects and biometrics, and associated decoding and authentication |
US11514331B2 (en) * | 2016-04-27 | 2022-11-29 | Massachusetts Institute Of Technology | Sequence-controlled polymer random access memory storage |
US11461783B2 (en) * | 2016-09-23 | 2022-10-04 | Raise Marketplace Inc. | Merchant verification in an exchange item marketplace network |
US10832168B2 (en) * | 2017-01-10 | 2020-11-10 | Crowdstrike, Inc. | Computational modeling and classification of data streams |
EP3361408B1 (en) * | 2017-02-10 | 2019-08-21 | Michael Mertens | Verifiable version control on authenticated and/or encrypted electronic documents |
US10255825B2 (en) * | 2017-04-17 | 2019-04-09 | Facebook, Inc. | Calibration of haptic device using sensor harness |
US10691340B2 (en) * | 2017-06-20 | 2020-06-23 | Samsung Electronics Co., Ltd. | Deduplication of objects by fundamental data identification |
US10915641B2 (en) * | 2017-10-30 | 2021-02-09 | Pricewaterhousecoopers Llp | Implementation of continuous real-time validation of distributed data storage systems |
CN113377836B (zh) * | 2017-11-01 | 2024-04-30 | 海德拉哈希图有限责任公司 | 用于高效地实现可快速复制的数据库的方法和装置 |
US10623181B2 (en) * | 2018-01-02 | 2020-04-14 | Bank Of America Corporation | Security system utilizing vaultless tokenization and encryption |
US20190273510A1 (en) * | 2018-03-01 | 2019-09-05 | Crowdstrike, Inc. | Classification of source data by neural network processing |
EP4415309A3 (en) * | 2018-03-27 | 2024-10-30 | nChain Licensing AG | Computer-implemented methods and systems relating to arithmetic coding for serialised arithmetic circuits |
WO2019236482A1 (en) * | 2018-06-04 | 2019-12-12 | Rafalko Noah | Telecommunication system and method for settling session transactions |
US11880349B2 (en) * | 2019-04-30 | 2024-01-23 | Salesforce, Inc. | System or method to query or search a metadata driven distributed ledger or blockchain |
-
2019
- 2019-07-01 US US16/458,951 patent/US11265175B2/en active Active
- 2019-07-01 WO PCT/EP2019/067640 patent/WO2020002712A1/en unknown
- 2019-07-01 CN CN201980050779.9A patent/CN113348455A/zh active Pending
- 2019-07-01 EP EP19736343.5A patent/EP3814964B8/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080082828A1 (en) * | 2006-09-29 | 2008-04-03 | Infineon Technologies Ag | Circuit arrangement and method for starting up a circuit arrangement |
CN101465724A (zh) * | 2009-01-06 | 2009-06-24 | 中国科学院软件研究所 | 一种加密的Huffman编码方法,及其解码方法 |
CN107409123A (zh) * | 2015-02-09 | 2017-11-28 | 缇零网股份有限公司 | 加密集成平台 |
EP3226165A1 (en) * | 2016-03-28 | 2017-10-04 | Accenture Global Solutions Limited | Secure 3d model sharing using distributed ledger |
US20170286717A1 (en) * | 2016-04-05 | 2017-10-05 | Vchain Technology Limited | Method and system for managing personal information within independent computer systems and digital networks |
CN107888375A (zh) * | 2017-11-08 | 2018-04-06 | 深圳市携网科技有限公司 | 一种基于区块链技术的电子证据保全系统及方法 |
Non-Patent Citations (1)
Title |
---|
赵睿斌 等: "基于商密体系的政务链解决数据安全共享交换的研究", 信息安全与通信保密, 31 May 2018 (2018-05-31), pages 83 - 88 * |
Also Published As
Publication number | Publication date |
---|---|
EP3814964B1 (en) | 2022-10-12 |
WO2020002712A1 (en) | 2020-01-02 |
EP3814964A1 (en) | 2021-05-05 |
US20200007345A1 (en) | 2020-01-02 |
US11265175B2 (en) | 2022-03-01 |
EP3814964B8 (en) | 2022-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12069038B2 (en) | Encryption and decryption techniques using shuffle function | |
KR101974075B1 (ko) | 분산 해시 테이블과 피어투피어 분산 원장을 사용하여 디지털 자산의 소유권을 검증하기 위한 방법 및 시스템 | |
US11265175B2 (en) | Apparatus and method for providing authentication, non-repudiation, governed access and twin resolution for data utilizing a data control signature | |
CN106534092B (zh) | 基于消息依赖于密钥的隐私数据加密方法 | |
KR101999188B1 (ko) | 비밀 공유를 위한 타원 곡선 암호를 사용하는 개인용 장치 보안 | |
US7475250B2 (en) | Assignment of user certificates/private keys in token enabled public key infrastructure system | |
EP3585032B1 (en) | Data security service | |
KR20180114942A (ko) | 분산형 해시 테이블 및 블록체인을 사용하여 컴퓨터 소프트웨어를 보호하기 위한 방법 및 시스템 | |
CN108900298B (zh) | 基于量子密码水印的私有区块链诚实节点认证接入方法 | |
EP3652887A1 (en) | Method and system for data security within independent computer systems and digital networks | |
CN101145911A (zh) | 具有私密保护及口令找回功能的身份认证方法 | |
US7739500B2 (en) | Method and system for consistent recognition of ongoing digital relationships | |
CN113761578A (zh) | 一种基于区块链的文书验真方法 | |
Du et al. | The applications of blockchain in the covert communication | |
US20220109455A1 (en) | Apparatus and method for providing authentication, non-repudiation, governed access and twin resolution for data utilizing a data control signature | |
Kulkarni et al. | Checking integrity of data and recovery in the cloud environment | |
WO2023111316A1 (en) | Apparatus and method for providing authentication, non-repudiation, governed access and twin resolution for data utilizing a data control signature | |
Karthik | A Secure Access Code Technique for Remote Data Integrity on Public Cloud | |
Jia et al. | Auxiliary System for Contract Signing Based on Electronic Signature Technology | |
Aguila et al. | Implementation of a Secured Student Record Management using Modified RC6 and OTP Algorithms. | |
Haunts et al. | Final Summary | |
Tamboli et al. | An analysis of access control mechanism with authentication of anonymous user and deduplication of data in decentralized clouds | |
CN116737704A (zh) | 面向文旅消费数据在密文状态下的降重去冗余系统和方法 | |
Upadhyay et al. | Data Security Framework for Offsite Storage of Data |
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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20211231 Address after: Swiss Express Applicant after: Zenota holdings AG Address before: Swiss Express Applicant before: Zenota holdings AG Applicant before: Roelov Louis Barry Applicant before: Andrew Charles Kessler |
|
TA01 | Transfer of patent application right |