CN112740216A - 文档认证和公布的系统和基于计算机的方法 - Google Patents
文档认证和公布的系统和基于计算机的方法 Download PDFInfo
- Publication number
- CN112740216A CN112740216A CN201980061524.2A CN201980061524A CN112740216A CN 112740216 A CN112740216 A CN 112740216A CN 201980061524 A CN201980061524 A CN 201980061524A CN 112740216 A CN112740216 A CN 112740216A
- Authority
- CN
- China
- Prior art keywords
- document
- key
- data
- authentication
- publisher
- 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
- 238000000034 method Methods 0.000 title claims abstract description 116
- 230000008569 process Effects 0.000 claims abstract description 72
- 230000002085 persistent effect Effects 0.000 claims abstract description 24
- 238000011084 recovery Methods 0.000 claims abstract description 5
- 230000006870 function Effects 0.000 claims description 24
- 238000009795 derivation Methods 0.000 claims description 22
- 238000013500 data storage Methods 0.000 claims description 20
- 230000003936 working memory Effects 0.000 claims description 6
- 238000009877 rendering Methods 0.000 claims description 4
- 238000004891 communication Methods 0.000 claims description 3
- 238000012795 verification Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000007726 management method Methods 0.000 description 4
- 239000008186 active pharmaceutical agent Substances 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 2
- 208000013036 Dopa-responsive dystonia due to sepiapterin reductase deficiency Diseases 0.000 description 2
- 102100039643 Rho-related GTP-binding protein Rho6 Human genes 0.000 description 2
- 101710199571 Rho-related GTP-binding protein Rho6 Proteins 0.000 description 2
- 102100039642 Rho-related GTP-binding protein RhoN Human genes 0.000 description 2
- 108050007497 Rho-related GTP-binding protein RhoN Proteins 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 238000013479 data entry Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 201000001195 sepiapterin reductase deficiency Diseases 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000015654 memory Effects 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000003362 replicative effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
- 239000002023 wood Substances 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/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
-
- 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/602—Providing cryptographic facilities or services
-
- 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/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/0631—Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES 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/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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- 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/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
-
- 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/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)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- Storage Device Security (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
在通过互联网部署的计算机系统中实施方法,并且所述方法与区块链(BKC)交互。文档发布者和验证器连接到所述系统。所述方法包括:生成指配给发布者的主密钥(MK);通过第一过程(P2)认证文档(DocData),所述第一过程包含生成文档持久密钥(PK),使用加密算法(AES)和从所述主密钥、所述文档持久密钥和中间密钥(IK)导出的加密密钥(KAES)对文档数据(CredData)进行加密,在所述区块链中注册加密文档数据(EncData),以及生成携载所述认证文档的恢复信息的网址(URL);通过能访问所述网址的第二过程(P3)读取所述文档,所述第二过程包含恢复所述区块链中的所述加密数据以及对所述三个密钥的访问,使用从所述三个密钥导出的所述加密密钥对所述加密数据进行解密,并且显示所述文档;以及应所述文档的合法持有人的请求擦除所述持久密钥。
Description
技术领域
本文中的技术涉及计算机系统和基于计算机的方法,所述计算机系统和基于计算机的方法被设计成确保例如学术文档和文凭等文档以及公民身份、官方文档和其它敏感文档的真实性和完整性。更具体地,本文中的技术涉及计算机系统和过程,其使区块链与高级密码相关联以遵守关于个人数据和被遗忘权的法规以安全且可持续的方式对文档进行认证。
背景技术
在当今数字化、网络化的社会,防范文档伪造的必要性日益突出。许多部门、机构和组织都面临着伪造文档的祸害。例如,在简历和社交媒体上冒用假文凭或伪造资质是影响学校、大学、毕业生和雇主的铁一般的事实。从不存在的学校、大学颁发的文凭以及来自真实教育机构的高质量复制文凭,都可以在网站上购买。对于依赖其雇员提供的数据真实性的公司来说,这有很大问题。对于必须捍卫自己诚信的教育和培训系统的参与者来说,这也有很大问题。
能够以简单且无可辩驳的方式,例如理想情况下只需点击一下,证明一个人是大学毕业生、有资质的医生或驾驶执照持有人是当前非常迫切的社会需求。
因此,适应数字环境和社会网络的现代认证系统将在职业技能认证、受监管职业注册薄、内部业务注册薄、行政注册薄和其它方面得到广泛应用。
已经提议将区块链技术用于文档认证系统。
Satoshi Nakamoto在2008年公布的论文《比特币:点对点电子现金系统(Bitcoin:A Peer-to-Peer Electronic Cash System)》中首次描述了区块链技术,简称“区块链”,所述论文的全部内容以引用的方式并入本文中。区块链是存储交易列表的数据结构,并且可以被认为是记录捆绑成链接在链中的区块的交易的分布式电子分类账。计算机节点维护区块链,并且使用所谓“工作证明”的协议,对每个新区块以及包含在区块中的交易进行密码验证。
位于旧金山(美国)的霍尔伯顿学校(Holberton School)和位于巴黎(法国)的ESILV工程学校都建立了基于在公共区块链中存储文凭印记的文凭认证。使用所谓的“散列函数”来产生文凭印记。这种方法确保最初散列的文凭的真实性,但会引发以下问题:
-1)文凭颁发者的身份没有得到证实,并且数据的真实性也没有得到认证。实际上,如何确定散列的文凭是原始文凭,并且是真正由学校颁发的?
-2)文凭印记永远存储在区块链中,且一旦共享,文凭就永远可以被识别。
项2)对于遵守关于个人数据和被遗忘权的法规,尤其是自2018年5月25日起生效的“一般数据保护法规(General Data Protection Regulation)”、首字母缩写为“GDPR”的欧洲法规存在问题。
在2017年8月9日新闻稿“和索尼国际教育开发了基于IBM区块链的管理学生学习数据的新系统”中,International Business Machines宣布了新平台,所述平台使用区块链开发,用于保护和共享学校凭据。私有区块链和专用软件将在这个平台上实施。
本发明旨在提供一种解决上述现状问题的方法。具体地,期望提供一种遵守个人数据法规的文档认证系统,所述系统对文档发布者来说使用成本较低,并且是基于促进系统的各个参与者与主导者之间的信任和协作的开放技术。
发明内容
根据第一方面,本发明提供一种在通过互联网络部署的文档认证计算机系统中实施并且与公共区块链交互的基于计算机的方法,所述文档认证计算机系统具有位于至少一个计算机服务器中并且能通过所述互联网络访问的硬件和软件资源,所述文档认证计算机系统经由电子数据消息与至少一个文档发布者计算机系统和至少一个验证器计算机系统进行通信,文档发布者通过所述文档发布者计算机系统管理认证文档的发布,并且验证器通过所述验证器计算机系统管理分配给所述文档发布者的文档发布者账户的访问权限和资源,所述基于计算机的方法包括:
生成发布者永久主密钥,所述发布者永久主密钥被指配到所述文档发布者账户并且存储在第一密钥库中,
通过执行第一过程来认证和公布文档,所述第一过程包含:生成指配到所述文档并存储在第二密钥库中的文档持久密钥、永久擦除指配到所述文档发布者账户的所述文档持久密钥的权利;使用加密算法和加密密钥对文档数据进行加密,所述加密密钥是利用密钥导出函数根据所述发布者永久主密钥、所述文档持久密钥和生成并指配到所述文档的中间密钥计算的;在所述区块链中注册包含加密文档数据的信息;以及生成相应公布认证文档的文档网址,所述网址携载所述文档中间密钥的恢复信息和所述公布认证文档的标识数据,
通过执行能访问所述网址的第二过程读取所述公布认证文档,所述第二过程包含:从所述标识数据中恢复在所述区块链中注册的所述信息中的所述加密文档数据以及对所述第一和第二密钥库的访问;利用所述密钥导出函数根据所述发布者永久主密钥、所述文档持久密钥和从所述网址恢复的所述中间密钥计算所述加密密钥;使用所述加密密钥对所述加密文档数据进行解密;并且使用所述解密文档数据显示所述认证文档,以及
应所述公布认证文档的合法持有人声称有权被遗忘的请求,从所述文档发布者账户操作所述文档持久密钥的永久擦除,从而使得所述第二过程的执行和所述公布认证文档在所述互联网络中的显示不起作用。
应了解,与基于使用散列函数来认证文档的现有技术不同,本发明认证数据的真实性并且根据验证数据重构文档。
在本发明的基于计算机的方法的一个实施方案中,所述第一密钥库在硬件安全模块中实施
在本发明的基于计算机的方法的另一实施方案中,所述第一和第二密钥库在硬件安全模块中实施。
根据本发明的基于计算机的方法的另一特征,所述加密算法是AES类型的加密算法,所述加密密钥是对称的并且长度为256位。
根据本发明的基于计算机的方法的又一特征,所述加密算法在GCM类型的计数器模式下操作。
根据本发明的基于计算机的方法的又一特征,所述密钥导出函数是KBKDF类型的密钥导出函数。
在根据本发明的基于计算机的方法的又一实施方案中,所述文档数据包括预定特定数据,所述预定特定数据是与所述文档相关的文档类别中的可变数据,并且所述第一过程还包含使与所述文档类别相对应的HTML模板的模板标识符与所述预定特定数据相关联,并且将所述模板标识符包含在所述区块链中注册的所述信息中,并且所述第二过程还包含:从所述标识数据中恢复在所述区块链中注册的所述信息中的所述模板标识符,以及使用所述解密文档数据和使用所述模板标识符恢复的所述HTML模板显示所述认证文档。
根据本发明的基于计算机的方法的额外特征,所述第二过程还包含:恢复所述发布者和/或验证器的真实性证明,所述真实性证明先前已在所述区块链中的数据存储装置中注册并且至少使用所述标识数据进行了本地化;以及使用所述真实性证明显示所述认证文档。
根据本发明的基于计算机的方法的另一特征,所述文档数据采用文本文件的形式,所述文本文件包含以预定方式排列并且分别与多个文档相关的一批多个所述预定特定数据。
根据本发明的基于计算机的方法的又一特征所述预定特定数据以一种或多种语言编写。
根据又一特征,本发明的基于计算机的方法包括生成与以多种语言公布的一个认证文档相对应的至少一个文档网址。
根据另一方面,本发明提供了一种通过互联网络部署并且与公共区块链交互的文档认证计算机系统,所述文档认证计算机系统具有位于至少一个计算机服务器中并且能通过所述互联网络访问的硬件和软件资源,所述文档认证计算机系统经由电子数据消息与至少一个文档发布者计算机系统和至少一个验证器计算机系统进行通信,文档发布者通过所述文档发布者计算机系统管理认证文档的发布,并且验证器通过所述验证器计算机系统管理分配给所述文档发布者的文档发布者账户的访问权限和资源,所述计算机服务器包括处理器、非易失性和易失性工作存储器,并且耦合到电子数据存储装置和至少一个网络接口,其中所述处理器被配置成执行:
生成发布者永久主密钥,所述发布者永久主密钥被指配到所述文档发布者账户并且存储在第一密钥库中,
通过执行第一过程来认证和公布文档,所述第一过程包含:生成指配到所述文档并存储在第二密钥库中的文档持久密钥、永久擦除指配到所述文档发布者账户的所述文档持久密钥的权利;使用加密算法和加密密钥对文档数据进行加密,所述加密密钥是利用密钥导出函数根据所述发布者永久主密钥、所述文档持久密钥和生成并指配到所述文档的中间密钥计算的;在所述区块链中注册包含加密文档数据的信息;以及生成相应公布认证文档的文档网址,所述网址携载所述文档中间密钥的恢复信息和所述公布认证文档的标识数据,
通过执行能访问所述网址的第二过程读取所述公布认证文档,所述第二过程包含:从所述标识数据中恢复在所述区块链中注册的所述信息中的所述加密文档数据以及对所述第一和第二密钥库的访问;利用所述密钥导出函数根据所述发布者永久主密钥、所述文档持久密钥和从所述网址恢复的所述中间密钥计算所述加密密钥;使用所述加密密钥对所述加密文档数据进行解密;并且使用所述解密文档数据显示所述认证文档,以及
应所述公布认证文档的合法持有人声称有权被遗忘的请求,从所述文档发布者账户操作所述文档持久密钥的永久擦除,从而使得所述第二过程的执行和所述公布认证文档在所述互联网络中的显示不起作用。
根据本发明的系统的额外特征,所述计算机服务器包括耦合到所述硬件处理器的硬件安全模块,至少所述第一密钥库在所述硬件安全模块中实施。
根据本发明的系统的另一特征,所述加密算法是AES类型的加密算法,所述加密密钥是对称的并且长度为256位。
根据本发明的系统的又一特征,所述加密算法在GCM类型的计数器模式下操作。
根据本发明的系统的又一特征,所述密钥导出函数是KBKDF类型的密钥导出函数。
在根据本发明的系统的一个实施例中,所述文档数据包括预定特定数据,所述预定特定数据是与所述文档相关的文档类别中的可变数据,并且所述第一过程还包含使与所述文档类别相对应的HTML模板的模板标识符与所述预定特定数据相关联,并且将所述模板标识符包含在所述区块链中注册的所述信息中,并且所述第二过程还包含:从所述标识数据中恢复在所述区块链中注册的所述信息中的所述模板标识符,以及使用所述解密文档数据和使用所述模板标识符恢复的所述HTML模板显示所述认证文档。
根据本发明的特征文档认证计算机系统的额外特征,所述第二过程还包含:恢复所述发布者和/或验证器的真实性证明,所述真实性证明先前已在所述区块链中的数据存储装置中注册并且至少使用所述标识数据进行了本地化;以及使用所述真实性证明显示所述认证文档。
根据本发明的系统的其它特征,所述文档数据采用文本文件的形式,所述文本文件包含以预定方式排列并且分别与多个文档相关的一批多个所述预定特定数据。
根据本发明的系统的又一特征,所述预定特定数据以一种或多种语言编写。
根据本发明的特征,本发明的系统包括生成与以多种语言公布的一个认证文档相对应的至少一个文档网址。
这些特征将使本领域的技术人员清楚地看到本发明相对于现有技术的优点。
附图说明
通过结合附图对示例非限制性示意性实施例进行以下详细描述,将更好地并且更全面地理解本发明的上述和其它特征和优点,其中在各个图中,附图标记表示相同或功能相似的元件。应注意,图示仅用于示出描述的文本和用于解释本发明的各种原理和优点,并且不以任何方式构成对本发明范围的限制。在附图中:
-图1是与区块链对接的计算机系统的非限制性示例概述,并且其中实施了本发明的文档认证系统的示例实施例;
-图2是在本发明的基于计算机的方法的一个示例实施方案中,在认证文档的显示中涉及的各种数据文件的非限制性示意图;
-图3是在图1的示例实施例中实施的各种过程的非限制性示例框图;
-图4是在本发明的基于计算机的方法中实施的文档认证和公布过程的非限制性示例功能算法;
-图5是在本发明的基于计算机的方法中实施的认证文档读取过程的非限制性示例功能算法;
-图6示出了部署在本发明的文档认证系统的示例实施例中的非限制性数据结构。
-图7-9示出了与文档认证系统的各种示例实施例相对应并且根据本发明的基于计算机的方法处理的文档特定数据的各种非限制性文件。
具体实施方式
在以下描述中,出于解释和非限制的目的,阐述了例如特定功能实体、技术、协议等具体细节,以便提供对所描述技术的理解。对于本领域技术人员将显而易见的是,除了下面描述的具体细节之外,可以实践其它实施例。在其它实例中,省略对公知方法、装置、技术等的详细描述,以免以不必要的细节混淆描述。
参考图1,在根据本发明的文档认证计算机系统DCS中,不同的计算机系统和装置通过经由互联网络IT交换电子数据消息来进行通信和交互。因此,文档发布实体和至少一个验证实体通过其计算机系统或装置,即图1中的VAS和DIS,分别连接到文档认证计算机系统DCS。想要获得例如文凭之类的认证文档的用户可以在计算机、平板电脑和/或智能手机PC上查看这些文档。例如,用户是通过下文中也称为“网址”的“URL”(《统一资源定位器(Uniform Resource Locator)》的首字母缩写),将其文凭可视化的毕业生,或者是检查求职者文凭的有效性的雇主,其文凭网址由申请人传达给他。
具体地,在下文中简称为“验证器”的验证实体负责在为文档发布实体创建和安装账户之前执行KYC/KYB(缩写为《了解您的客户》/《了解您的业务》)检查。
下文被称作“发布者实体”的文档发布实体是文档认证计算机系统DCS的客户。在此处考虑的非限制性实例中,发布者是学校,并且文档是由这些学校颁发的文凭。
文档认证计算机系统DCS通过互联网络IT部署,并且与一个或多个区块链BCK交互。文档认证计算机系统DCS使用可通过网络IT访问的硬件和软件资源。
在图1所示的示例实施例中,文档认证计算机系统DCS使用云服务提供商SCP中可用的软件和硬件资源。
在此实例中,系统DCS的系统软件SW完全托管在云服务提供商SCP的至少一个计算机服务器SRC中。具体地,系统软件SW托管在例如硬盘驱动器之类的专用电子数据存储装置DS中。本发明的基于计算机的方法尤其通过执行系统软件SW的代码指令来实施。
计算机服务器SRC包括硬件处理器PU,所述PU包含一个或多个处理单元CPU,并且与非易失性和易失性存储器(例如ROM和RAM)相关联,并且耦合到电子数据存储装置DS和例如网络接口NI和其它装置(未示出)的常规硬件装置。
图1中示出了由本领域技术人员所谓的HSM的可选硬件安全模块。在本发明中,并且如稍后将变得更清楚的那样,此硬件安全模块专用于系统DCS并且可用于至少一个密钥库。
系统软件SW包含执行文档发布者账户的KYC/KYB检验、安装和管理的各种软件模块IM。系统软件SW特别地实施了网络平台WP,验证器和发布者可以在所述平台上安全地访问其相应的账户并且使用系统DCS。系统软件SW还包含分别支持文档认证、公布和读取过程的网络应用程序CER和REA。
应注意,在其它示例实施例中,系统DCS可以安装在一个或多个专用验证器服务器SRD中并且使用其软件和硬件资源。或者,作为另一实例,系统DCS可以部分地安装在云服务的一个或多个服务器SRC中,并且部分地安装在验证器的一个或多个专用服务器SRD中。
关于区块链BKC,应注意,此区块链的环境必须能够编程所谓的“智能合约”,即在区块链中编写并由虚拟机执行的程序。因此,区块链环境必须提供适于在区块链中对这些智能合约进行编程的一组计算指令。例如,一个适合于本发明的系统DCS的实施方案的区块链环境是以太坊环境。论文“以太坊:下一代广义智能合约和分散式应用平台”(VitalikButerin,以太坊,2017)和“以太坊:安全的分散式广义交易分类账”(Gavin Wood,以太坊,2014)提供了对此技术的详细描述,所述论文的全部内容在此通过引用并入。
应注意,系统DCS可以与一个或多个区块链BKC交互。因此,必须宽泛地解释本专利申请中使用的术语“区块链BKC”。因此,例如,第一区块链可用于加密数据存储装置,并且第二区块链可用于托管专用于认证和编写权限管理的智能合约。或者,支持智能合约的单个区块链可用于所有必需的操作。
在建立智能合约和在区块链BKC中编写方面涉及成本问题。根据本发明的基于计算机的方法被设计成使这些成本降到最低。
在优选的非限制性实施方案中,认证文档的所有数据不在区块链BKC中注册。在区块链BKC中使用模板标识符注册之前,仅对标识文档的特定数据进行加密,并且这些特定数据在一个文档与由发布者发送的另一相同类型的文档之间有所不同。静态模板数据也可以在区块链BKC中注册,并进行认证但不进行加密。
图2中示出了上述操作的示意性实例。在此非限制性示例中,根据三个文件HTML_Template、Template_Def和CredData_file重构文凭形式的认证文档。
文件HTML_Template是呈认证文档的超文本HTML格式的模板。文件HTML_Template具有标识符TemplateID。文件HTML_Template具有多个标记为A到T的数据输入字段,其在文档中的位置由文件HTML_Template中的标记/占位符限定。
文件Template_Def限定要在文件HTML_Template的数据输入字段A到T中输入的数据。要在A到T字段中输入的数据是“固定”类型或“可变”类型。直接在文件Template_Def中限定固定类型的数据(例如,与字段A相对应的“行政工商管理硕士”)。可变类型数据(例如,与字段B相对应的“名”、“姓”)是文件CredData_file中以明文形式包含的文档特定数据CredData。对于可变类型数据,标识符(例如,与字段B相对应的“|名|”、“|姓|”)包含在文件Template_Def中,以指示要插入HTML文件的文件CredData_file中的对应数据。
因此,本发明的基于计算机的方法允许认证文档的完整且丰富的可视化,同时使与区块链BKC相关的成本降到最低。在区块链BKC中注册之前,只有文档特定数据CredData被加密。最终,将数据CredData压缩后再将其注册到区块链BKC中,从而进一步降低了成本。标识符TemplateID用文档特定数据CredData注册,并且标识文件HTML_Template和Template_Def。文件Template_Def也可以在区块链BKC中注册一次,并且将用于许多相同类别的认证文档。HTML_Template文件可以存储在专用电子数据存储装置DS(图1)中。
图3的框图示意性地示出了在本发明的系统DCS中执行的各种功能和过程。
如图3所示,系统DCS包括针对发布者的验证和注册的过程P1。过程P1由验证器执行。在过程P1开始时,收集并存储发布者真实性的各种法律文档和证明。
在KYC/KYB检查完成之后,验证和注册过程P1授权执行以下处理步骤P10,以在区块链BKC和数据存储装置的安全区域中基于智能合约组织数据结构。在验证和注册过程P1期间还执行其它处理步骤P11,以创建附加到验证发布者的账户(区块链账户和网络平台账户),注册具有授权登录的管理员,并且允许创建和管理用于公布认证文档的模板操作。另外,在验证和注册过程P1结束时,由验证器给出用于为发布者生成秘密主密钥MK的授权MK_EN。如图3所示,生成此主密钥MK并将其存储在密钥库中。主密钥MK是附加到发布者账户的永久密钥。此主密钥MK用于对文档数据进行加密/解密,以公布认证文档。在特定实施例中,主密钥MK的密钥库将在上述硬件安全模块HSM(参见图1)中实施。
一旦(用相关联的地址和私钥)创建了发布者区块链账户,与发布者账户相关联的验证器智能合约SC0以及发布者智能合约SC1将在区块链BKC中注册。
验证器智能合约SC0具体管理其中注册了发布者的标识数据的验证器数据存储装置ST0。
还参考图6,验证器数据存储装置ST0具体包括呈整数形式的验证器标识符ValidatorID、呈字符串或短字符串形式的发布者名称、发布者账户的区块链账户地址KpubETH、区块链中的最后有效区块的呈整数形式的标识符Last_Block_Validity、发布者的格式为“json”(《Java描述语言对象表示法(JavaScript Object Notation)》的首字母缩写)的法律参考文件Legal_Reference、KYC/KYB文档散列KYC_Documents_hash、呈字符串形式的发布者网站的网址Corporate_URL,以及呈字符串形式的发布者徽标的网址Logo_URL。
如图3所示,发布者智能合约SC1包含标识智能合约SC10和公布智能合约SC11,所述公布智能合约具体用于管理由发布者公布的认证文档的加密数据。标识智能合约SC10具体管理数据存储装置ST1、ST2和ST3,并且公布智能合约SC11具体管理数据存储装置ST4。
还参考图6,数据存储装置ST1、ST2和ST3分别专用于发布者标识数据、模板数据和可用于支付产生费用(具体是针对区块链BKC上的交易成本)的信用数据。数据存储装置ST4具体专用于认证文档的加密的特定数据的注册。
如图6所示,发布者标识数据存储装置ST1具体包含验证器标识符ValidatorID、呈整数形式的发布者标识符IssuerID、发布者名称、区块链账户地址KpubETH、最后有效区块的标识符Last_Block_Validity、法律参考文件Legal_Reference、KYC/KYB文档散列KYC_Documents_hash、发布者网站的网址Corporate_URL、发布者徽标的网址Logo_URL、作为json类型文件的意图文件、呈整数形式的所连接发布者的标识符CurrentissuerID,以及呈字符串形式的发布者服务器的网址Server_URL。
复制数据存储装置ST0和ST1中的标识数据,例如ValidatorID、Name、KpubETH、Last_Block_Validity、Legal_Reference、KYC_Document_hash、Corporate_URL和Logo_URL数据,使得能够在某些被视为关键的交易期间检查发布者账户的有效性,并且验证在显示认证文档时可提供的发布者和/或验证器真实性证明。
模板数据存储装置ST2包含发布者标识符IssuerID、呈整数形式的模板标识符TemplateID、最后有效区块Last_Block_Validity、超文本文件HTML_Template的呈字符串形式的网址URL_HTML_Template,所述超文本文件是与公布认证文档相对应的HTML模板、呈json类型文件形式的模板定义文件Template_Def,以及报告默认用于公布认证文档的语言的标识符DefaultLanguage。
信用数据存储装置ST3包含标识符IssuerID和信用金额Credit。例如,可以用令牌指示信用金额。在使用令牌的情况下,可以具体设计账户的操作,使得令牌对于仅操纵合法信托货币的用户来说是完全透明的。
同样如图6所示,由公布智能合约SC11管理的数据存储装置ST4包含由对文档特定数据CredData和用于公布认证文档的HTML模板的TemplateID标识符进行加密产生的加密数据EncData,以及区块链账户地址KpubETH。
再次参考图3,系统DCS还包含文档认证以及公布过程P2和认证文档读取过程P3。如上面关于图1所提到的,这些过程P2和P3具体由网络应用程序CER和REA来实施。过程P2和P3使用由密钥库提供的安全环境以及智能合约和区块链BKC中的注册来进行其操作。根据本发明的实施例,可以使用由软件和/或硬件实施的密钥库。
还参考图4,在过程P2中执行的文档认证使用需要三个密钥的加密算法,即永久主密钥MK、附加到文档的持久密钥PK以及也专用于文档的中间密钥IK。在特定实施方案中,密钥MK和PK都安全地存储在软件密钥库中。在另一特定实施方案中,密钥MK存储在硬件安全模块HSM中以增强安全性,并且密钥PK存储在软件密钥库中。在又一特定实施方案中,密钥MK和PK都存储在硬件安全模块HSM中。
优选地,密钥MK、PK和IK将由高性能随机数生成器生成,例如,如果适用,则由包含在硬件安全模块HSM中的高性能随机数生成器生成。
持久密钥PK可由发布者根据要求其“被遗忘权”的文档合法持有人的请求来擦除,和/或由系统DCS向其指配了例如唯一码之类的擦除授权码的文档合法持有人来擦除。删除持久密钥PK使得过程P3不可能读取公布认证文档,这将在下文中变得更清楚。
图4通过详细示出由处理P2执行的不同处理步骤S2-0到S2-14来完成图3的简化框图。
在文档认证开始时,在步骤S2-0,发布者系统DIS(图1)首先向过程P2提供文档数据DocData,所述文档数据包含文档特定数据CredData和标识符TemplateID,以及区块链账户地址KpubETH。
在步骤S2-1中,由随机数生成器生成三个随机数据IdData、RND1和RND2。在步骤S2-2中,创建由IdData标识的密钥库表。指配了随机数据RND1的持久密钥PK和区块链账户地址KpubETH在密钥库IdData中注册。在步骤S2-3中,将随机数据RND2指配到中间密钥IK。
例如,KBKDF(《基于密钥的密钥导出函数(Key-Based Key DerivationFunction)》的首字母缩写)类型的密钥导出函数可用于密钥导出函数然后,计算出的加密密钥KAES为:KAES=KBKDF(MK,PK||IK)。
在步骤S2-5中,通过将导出计数器DCTR的值与主随机数MNonce(随机数据)相加来计算额外的随机数据,在本领域中称为“随机数”,且在此处指定为Nonce。
在步骤S2-6中,在此示例实施例中,使用对称加密算法AES(“高级加密标准(Advanced Encryption Standard)”的首字母缩写)来对文档特定数据CredData进行加密。具体地,在此示例实施例中,加密算法在计数器模式下使用,即,计数器模式即所谓的GCM(《伽罗瓦/计数器模式(Galois/counter mode)》的首字母缩写),并且加密密钥的长度为256位。将CredData、MK、IK和Nonce条目提供给加密算法AES_256_GCM_Encrypt,所述算法传递加密的文档特定数据。
在步骤S2-7和S2-8中,从工作存储器中擦除加密密钥KAES,并且分别递增导出计数器DCTR并将其存储在寄存器中。
在步骤S2-9中,生成用于认证文档的网址《URL=https//Reader/IdData||IK》。访问IdData表和中间密钥IK所需的信息整合在此网址《URL=https//Reader/IdData||IK》中。此网址通向实施认证文档读取过程P3的网络应用程序REA。
在步骤S2-10和S2-11中,从工作存储器中擦除中间密钥IK,并且将随机数据Nonce和计数器索引“i”存储在IdData表中。
在步骤S2-12中,执行交易以在区块链BKC中公布加密文档特定数据EncData和模板标识符TemplateID。区块链账户地址KpubETH用于此交易。此交易在区块链BKC的区块中的注册与上文关于图3和6所述的文档特定数据存储装置ST4相对应。也如图6所示,使用交易标识符EthTxId可以在区块链BKC中找到交易,并且可以检索到EncData和TemplateID。
在步骤S2-13中,交易标识符EthTxId存储在IdData表中。它将允许认证文档读取过程P3检索EncData和TemplateID。在执行步骤S2-13之后,密钥库IdData表完成,其中具有所有必需的数据。
图6中示出了作为json类型文件的密钥库IdData表的实例。如图6所示,密钥库IdData表和永久主密钥MK的密钥库与区块链账户地址KpubETH相关联,所述地址KpubETH允许访问到主密钥MK的密钥库的路径。
在步骤S2-14中,过程P2已经完成了文档的认证和公布,并且认证文档的网址《URL=https//Reader/IdData||IK》可以例如以QR码(《快速响应代码(Quick Response Code)》的首字母缩写)的形式传送给接收者。
现在更具体地参考图3和5,认证文档读取过程P3由认证文档读取网络应用程序REA实施。过程P3被设计成显示可通过作为输入的网址《URL=https//Reader/IdData||IK》访问的认证文档。为此,过程P3必须使用在区块链BKC中注册的标识符TemplateID从区块链BKC中注册的加密数据EncData以及文件HTML_Template和Template_Def中检索文档特定数据CredData。还必须从区块链BKC中的验证器存储装置ST0和发布者存储装置ST1(图6)中检索发布者和/或验证器真实性的证明。
图5通过详细示出由过程P3执行的不同处理步骤S3-0到S3-12来完成图3的简化框图。
在步骤S3-0,用户通过其互联网浏览器和网址《URL=https//Reader/IdData||IK》连接到托管网络应用程序REA的服务器。网络应用程序REA实施认证文档读取过程P3。
在步骤S3-1中,过程P3从网址《URL=https//Reader/IdData||IK》检索IdData表的标识符。
在步骤S3-2中,从IdData表中检索交易标识符EthTxId和区块链账户地址KpubETH。
在步骤S3-3中,使用EthTxld标识符在区块链BKC、文档特定数据存储装置ST4中检索加密数据EncData和Template ID。
在步骤S3-4和S3-5中,分别在IdData表中读取持久密钥PK,并且从网址《URL=https//Reader/IdData||IK》检索中间密钥IK。
在步骤S3-7中,在工作存储器中擦除交易标识符EthTxId以及密钥PK和IK。
在步骤S3-8中,在IdData表中读取要应用于解密的随机数据Nonce。
在步骤S3-9中,EncData、MK、IK和Nonce数据被提供作为解密算法AES_256_GCM_Decrypt的输入,所述算法以明文形式输出文档特定数据CredData。然后在步骤S3-10从工作存储器中擦除加密密钥KAES。
在步骤S3-11中,区块链账户地址KpubETH和标识符TemplateID提供对区块链BKC中的数据存储装置ST0、ST1和ST2(图6)的访问。
使用标识符TemplateID从数据存储装置ST2检索HTML_Template文件和Template_Def文件的网址URL_HTML_Template。网址URL_HTML_Template提供对存储在例如云服务提供商(图6,SRC、CSP)的服务器中的HTML_Template文件的访问。应注意,一个或多个CSS(《层叠样式表(Cascading Style Sheets)》的首字母缩写)类型的样式定义文件可能与HTML_Template文件相关联。
验证器数据存储装置ST0和发布者数据存储装置ST1可以通过IssuerID和ValidatorID标识符访问,并且可以检索发布者和/或验证器真实性的证明。
在步骤S3-12中,过程P3使用文档特定数据CredData、HTML_Template文件以及从数据存储装置SC0-SC2检索到的其它数据来形成与认证文档相对应的完整HTML文件。过程P3以在用户的计算机装置的屏幕上显示认证文档的完整HTML文件来结束其操作。
在本发明的其它示例实施例中,认证文档可以多种语言显示。图7和8示出了以英语(en)和法语(fr)显示文档的双语文件Template_Def_en/fr和CredData_file_en/fr的实例。例如,可以提供多个不同语言的HTML模板文件,每个模板都包含其相应语言的数据。或者,例如在两种语言的情况下,仅能使用一种多语言模板。根据实施例,多语言认证文档的一个或多个网址URL将传送给用户。在多个网址URL的情况下,每个网址URL可以一种语言与认证文档相对应。优选地,仅将一个网址URL传送给用户以访问整个多语言认证文档。
在本发明的其它示例实施例中,可以形成用于在区块链中进行加密和注册的认证文档特定数据文件CredData_file,所述文件具有分别与多个认证文档相对应的一批多个文档特定数据组CredData1、CredData2、...。此实施方案有利于减少与区块链的交易数量和注册数据量,且从而降低了经济成本。压缩文件CredData_file将进一步降低成本。图9示出了此类文件的实例CredData_file_batch_en/fr。此文本文件包含一批两组双语文档特定数据CredData1、CredData2,分别为英语(en)和法语(fr)。
在本发明的各种非限制性示例实施例的上述描述中,每当描述动作“可(may)”、“可以(can)”或“可能(could)”被执行时,特征、元件或部件“可”、“可以”或“可能”被包含在给定上下文中或适用于给定上下文,给定项“可”、“可以”或“可能”具有给定的属性,或者每当使用涉及术语“可”、“可以”或“可能”的任何类似短语时,应理解,给定的动作、特征、元件、部件、属性等在至少一个实施例中存在,但不一定在所有实施例中都存在。
除非另外明确陈述,否则在此描述中使用的术语和短语及其变型应理解为开放性的而非限制性的。作为上述实例:“和/或”包含一个或多个相关联的所列项目的任何和所有组合;单数形式“一”、“一个”和“所述”应理解为“至少一个”、“一个或多个”等;术语“实例”用于提供所讨论主题的实例,并非其详尽或限制性的列表;术语“包括”和“包含”(及其其它变化形式和其它变型)规定了相关联的所列项目的存在,但不排除一个或多个其它项目的存在或添加;并且如果项目被描述为“可选的”,此类描述不应理解为指示其它项目也不是可选的。
虽然可按特定顺序描述或要求过程步骤、算法等,但此类过程可被配置成按不同次序工作。换句话说,可在本文档中明确地描述或要求的步骤的任何序列或次序不一定指示按所述次序执行所述步骤的要求;相反,可以任何可能的次序执行本文中所描述的过程的步骤。此外,尽管被描述或暗示为非同时发生(例如,因为一个步骤在另一步骤之后被描述),一些步骤可以同时或并行地执行。此外,通过在图示中的描述对过程进行说明并不意味着所示出的过程排除了它的其它变型和修改,也不意味着所示出的过程或其任何步骤是必要的,并且不意味着所示出的过程是优选的。
虽然已经示出且详细描述各种实施例,但权利要求书并不限于任何具体实施例或实例。以上描述均不应理解为暗示任何特定元件、步骤或功能是必不可少的。所属领域的技术人员已知上文所描述的优选实施例的元件的所有结构性及功能性等效物都明确地以引用的方式并入本文中,并且旨在被涵盖在内。此外,对于装置或方法处理寻求通过本发明解决的每个问题并非是必需的,因为本发明将其涵盖在内。
Claims (19)
1.一种在通过互联网络部署的文档认证计算机系统中实施并且与公共区块链交互的基于计算机的方法,所述文档认证计算机系统具有位于至少一个计算机服务器中并且能通过所述互联网络访问的硬件和软件资源,所述文档认证计算机系统经由电子数据消息与至少一个文档发布者计算机系统和至少一个验证器计算机系统进行通信,文档发布者通过所述文档发布者计算机系统管理认证文档的发布,并且验证器通过所述验证器计算机系统管理分配给所述文档发布者的文档发布者账户的访问权限和资源,所述基于计算机的方法包括:
生成发布者永久主密钥,所述发布者永久主密钥被指配到所述文档发布者账户并且存储在第一密钥库中,
通过执行第一过程来认证和公布文档,所述第一过程包含:生成指配到所述文档并存储在第二密钥库中的文档持久密钥、永久擦除指配到所述文档发布者账户的所述文档持久密钥的权利;使用加密算法和加密密钥对文档数据进行加密,所述加密密钥是利用密钥导出函数根据所述发布者永久主密钥、所述文档持久密钥和生成并指配到所述文档的中间密钥计算的;在所述区块链中注册包含加密文档数据的信息;以及生成相应公布认证文档的文档网址,所述网址携载所述文档中间密钥的恢复信息和所述公布认证文档的标识数据,
通过执行能访问所述网址的第二过程读取所述公布认证文档,所述第二过程包含:从所述标识数据中恢复在所述区块链中注册的所述信息中的所述加密文档数据以及对所述第一和第二密钥库的访问;利用所述密钥导出函数根据所述发布者永久主密钥、所述文档持久密钥和从所述网址恢复的所述中间密钥计算所述加密密钥;使用所述加密密钥对所述加密文档数据进行解密;并且使用所述解密文档数据显示所述认证文档,以及
应所述公布认证文档的合法持有人声称有权被遗忘的请求,从所述文档发布者账户操作所述文档持久密钥的永久擦除,从而使得所述第二过程的执行和所述公布认证文档在所述互联网络中的显示不起作用。
2.根据权利要求1所述的基于计算机的方法,其中所述第一密钥库在硬件安全模块中实施。
3.根据权利要求1所述的基于计算机的方法,其中所述第一和第二密钥库在硬件安全模块中实施。
4.根据权利要求1所述的基于计算机的方法,其中所述加密算法是AES类型的加密算法,所述加密密钥是对称的并且长度为256位。
5.根据权利要求4所述的基于计算机的方法,其中所述加密算法在GCM类型的计数器模式下操作。
6.根据权利要求1所述的基于计算机的方法,其中所述密钥导出函数是KBKDF类型的密钥导出函数。
7.根据权利要求1所述的基于计算机的方法,其中:
所述文档数据包括预定特定数据,所述预定特定数据是与所述文档相关的文档类别中的可变数据,并且所述第一过程还包含使与所述文档类别相对应的HTML模板的模板标识符与所述预定特定数据相关联,并且将所述模板标识符包含在所述区块链中注册的所述信息中,并且
所述第二过程还包含:从所述标识数据中恢复在所述区块链中注册的所述信息中的所述模板标识符,以及使用所述解密文档数据和使用所述模板标识符恢复的所述HTML模板显示所述认证文档。
8.根据权利要求7所述的基于计算机的方法,其中所述第二过程还包含:恢复所述发布者和/或验证器的真实性证明,所述真实性证明先前已在所述区块链中的数据存储装置中注册并且至少使用所述标识数据进行了本地化;以及使用所述真实性证明显示所述认证文档。
9.根据权利要求8所述的基于计算机的方法,其中所述文档数据采用文本文件的形式,所述文本文件包含以预定方式排列并且分别与多个文档相关的一批多个所述预定特定数据。
10.根据权利要求9所述的基于计算机的方法,其中所述预定特定数据以一种或多种语言编写。
11.根据权利要求10所述的基于计算机的方法,包括生成与以多种语言公布的一个认证文档相对应的至少一个文档网址。
12.一种通过互联网络部署并且与公共区块链交互的文档认证计算机系统,所述文档认证计算机系统具有位于至少一个计算机服务器中并且能通过所述互联网络访问的硬件和软件资源,所述文档认证计算机系统经由电子数据消息与至少一个文档发布者计算机系统和至少一个验证器计算机系统进行通信,文档发布者通过所述文档发布者计算机系统管理认证文档的发布,并且验证器通过所述验证器计算机系统管理分配给所述文档发布者的文档发布者账户的访问权限和资源,所述计算机服务器包括处理器、非易失性和易失性工作存储器,并且耦合到电子数据存储装置和至少一个网络接口,其中所述处理器被配置成执行:
生成发布者永久主密钥,所述发布者永久主密钥被指配到所述文档发布者账户并且存储在第一密钥库中,
通过执行第一过程来认证和公布文档,所述第一过程包含:生成指配到所述文档并存储在第二密钥库中的文档持久密钥、永久擦除指配到所述文档发布者账户的所述文档持久密钥的权利;使用加密算法和加密密钥对文档数据进行加密,所述加密密钥是利用密钥导出函数根据所述发布者永久主密钥、所述文档持久密钥和生成并指配到所述文档的中间密钥计算的;在所述区块链中注册包含加密文档数据的信息;以及生成相应公布认证文档的文档网址,所述网址携载所述文档中间密钥的恢复信息和所述公布认证文档的标识数据,
通过执行能访问所述网址的第二过程读取所述公布认证文档,所述第二过程包含:从所述标识数据中恢复在所述区块链中注册的所述信息中的所述加密文档数据以及对所述第一和第二密钥库的访问;利用所述密钥导出函数根据所述发布者永久主密钥、所述文档持久密钥和从所述网址恢复的所述中间密钥计算所述加密密钥;使用所述加密密钥对所述加密文档数据进行解密;并且使用所述解密文档数据显示所述认证文档,以及
应所述公布认证文档的合法持有人声称有权被遗忘的请求,从所述文档发布者账户操作所述文档持久密钥的永久擦除,从而使得所述第二过程的执行和所述公布认证文档在所述互联网络中的显示不起作用。
13.根据权利要求12所述的文档认证计算机系统,其中所述计算机服务器包括耦合到所述硬件处理器的硬件安全模块,至少所述第一密钥库在所述硬件安全模块中实施。
14.根据权利要求13所述的文档认证计算机系统,其中所述加密算法是AES类型的加密算法,所述加密密钥是对称的并且长度为256位。
15.根据权利要求14所述的文档认证计算机系统,其中所述加密算法在GCM类型的计数器模式下操作。
16.所述文档认证计算机系统15,其中所述密钥导出函数是KBKDF类型的密钥导出函数。
17.根据权利要求12所述的文档认证计算机系统,其中:
所述文档数据包括预定特定数据,所述预定特定数据是与所述文档相关的文档类别中的可变数据,并且所述第一过程还包含使与所述文档类别相对应的HTML模板的模板标识符与所述预定特定数据相关联,并且将所述模板标识符包含在所述区块链中注册的所述信息中,并且
所述第二过程还包含:从所述标识数据中恢复在所述区块链中注册的所述信息中的所述模板标识符,以及使用所述解密文档数据和使用所述模板标识符恢复的所述HTML模板显示所述认证文档。
18.根据权利要求17所述的文档认证计算机系统,其中所述第二过程还包含:恢复所述发布者和/或验证器的真实性证明,所述真实性证明先前已在所述区块链中的数据存储装置中注册并且至少使用所述标识数据进行了本地化;以及使用所述真实性证明显示所述认证文档。
19.根据权利要求18所述的文档认证计算机系统,其中所述文档数据采用文本文件的形式,所述文本文件包含以预定方式排列并且分别与多个文档相关的一批多个所述预定特定数据。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/138,082 | 2018-09-21 | ||
US16/138,082 US10715313B2 (en) | 2018-09-21 | 2018-09-21 | Systems and computer-based methods of document certification and publication |
PCT/EP2019/075505 WO2020058527A1 (en) | 2018-09-21 | 2019-09-23 | Systems and computer-based methods of document certification and publication |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112740216A true CN112740216A (zh) | 2021-04-30 |
CN112740216B CN112740216B (zh) | 2022-03-15 |
Family
ID=68062940
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980061524.2A Active CN112740216B (zh) | 2018-09-21 | 2019-09-23 | 文档认证和公布的系统和基于计算机的方法 |
Country Status (9)
Country | Link |
---|---|
US (1) | US10715313B2 (zh) |
EP (1) | EP3853758B1 (zh) |
KR (1) | KR102357978B1 (zh) |
CN (1) | CN112740216B (zh) |
CA (1) | CA3113543C (zh) |
ES (1) | ES2929810T3 (zh) |
IL (1) | IL281671B2 (zh) |
SG (1) | SG11202102626RA (zh) |
WO (1) | WO2020058527A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10715313B2 (en) * | 2018-09-21 | 2020-07-14 | Blockchain Certified Data Sas | Systems and computer-based methods of document certification and publication |
US10756896B2 (en) * | 2018-10-12 | 2020-08-25 | Jeff Pickhardt | Trustless account recovery |
US11128459B2 (en) * | 2018-11-28 | 2021-09-21 | Its, Inc. | Mitigating service disruptions in key maintenance |
US10795882B2 (en) * | 2019-04-30 | 2020-10-06 | Alibaba Group Holding Limited | Blockchain-based data compression and searching |
JP2021118370A (ja) * | 2020-01-22 | 2021-08-10 | キオクシア株式会社 | メモリシステム、情報処理装置、および情報処理システム |
FR3113751A1 (fr) | 2020-08-28 | 2022-03-04 | Athena Holding Group | Procédé de certification et publication en ligne de diplômes et de mises à jour de diplôme |
US12003623B2 (en) * | 2020-12-18 | 2024-06-04 | Dell Products, L.P. | Multilayer encryption for user privacy compliance and corporate confidentiality |
FR3121524A1 (fr) | 2021-03-30 | 2022-10-07 | Blockchain Certified Data | Procédé et système informatique de stockage decentralisé et de partage de fichiers numériques certifiés |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101271501A (zh) * | 2008-04-30 | 2008-09-24 | 北京握奇数据系统有限公司 | 数字媒体文件的加解密方法及装置 |
US20170206532A1 (en) * | 2007-12-03 | 2017-07-20 | Yu Yung Choi | System and method for streamlined registration and management of products over a communication network related thereto |
EP3226165A1 (en) * | 2016-03-28 | 2017-10-04 | Accenture Global Solutions Limited | Secure 3d model sharing using distributed ledger |
CN107360156A (zh) * | 2017-07-10 | 2017-11-17 | 广东工业大学 | 一种大数据环境下基于区块链的p2p网络云端存储方法 |
US20180115426A1 (en) * | 2016-10-26 | 2018-04-26 | Fintech Fund Family Limited Partnership | Systems and methods for providing a universal decentralized solution for verification of users with cross-verification features |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100675837B1 (ko) * | 2004-12-13 | 2007-01-29 | 한국전자통신연구원 | 고속 gcm-aes 블록 암호화 장치 및 방법 |
US20170149560A1 (en) * | 2012-02-02 | 2017-05-25 | Netspective Communications Llc | Digital blockchain authentication |
US10075298B2 (en) * | 2015-06-02 | 2018-09-11 | ALTR Solutions, Inc. | Generation of hash values within a blockchain |
KR101661930B1 (ko) * | 2015-08-03 | 2016-10-05 | 주식회사 코인플러그 | 블록체인을 기반으로 하는 공인인증서 발급시스템 |
US10841082B2 (en) * | 2015-11-24 | 2020-11-17 | Adi BEN-ARI | System and method for blockchain smart contract data privacy |
CA3008705C (en) * | 2015-12-14 | 2020-03-10 | Coinplug, Inc. | System for issuing public certificate on basis of block chain, and method for issuing public certificate on basis of block chain by using same |
US9785369B1 (en) * | 2016-05-23 | 2017-10-10 | Accenture Global Solutions Limited | Multiple-link blockchain |
US20180268504A1 (en) * | 2017-03-15 | 2018-09-20 | Factom | Indexing Mortgage Documents via Blockchains |
EP3489874A1 (en) * | 2017-11-27 | 2019-05-29 | Wipro Limited | System and method for dual blockchain based validation of instrument reference data and transaction reporting |
US10715313B2 (en) * | 2018-09-21 | 2020-07-14 | Blockchain Certified Data Sas | Systems and computer-based methods of document certification and publication |
-
2018
- 2018-09-21 US US16/138,082 patent/US10715313B2/en active Active
-
2019
- 2019-09-23 CN CN201980061524.2A patent/CN112740216B/zh active Active
- 2019-09-23 IL IL281671A patent/IL281671B2/en unknown
- 2019-09-23 SG SG11202102626RA patent/SG11202102626RA/en unknown
- 2019-09-23 KR KR1020217010823A patent/KR102357978B1/ko active IP Right Grant
- 2019-09-23 CA CA3113543A patent/CA3113543C/en active Active
- 2019-09-23 ES ES19773812T patent/ES2929810T3/es active Active
- 2019-09-23 WO PCT/EP2019/075505 patent/WO2020058527A1/en unknown
- 2019-09-23 EP EP19773812.3A patent/EP3853758B1/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170206532A1 (en) * | 2007-12-03 | 2017-07-20 | Yu Yung Choi | System and method for streamlined registration and management of products over a communication network related thereto |
CN101271501A (zh) * | 2008-04-30 | 2008-09-24 | 北京握奇数据系统有限公司 | 数字媒体文件的加解密方法及装置 |
EP3226165A1 (en) * | 2016-03-28 | 2017-10-04 | Accenture Global Solutions Limited | Secure 3d model sharing using distributed ledger |
US20180115426A1 (en) * | 2016-10-26 | 2018-04-26 | Fintech Fund Family Limited Partnership | Systems and methods for providing a universal decentralized solution for verification of users with cross-verification features |
CN107360156A (zh) * | 2017-07-10 | 2017-11-17 | 广东工业大学 | 一种大数据环境下基于区块链的p2p网络云端存储方法 |
Non-Patent Citations (1)
Title |
---|
王伟康: "区块链技术在文档管理中的应用与研究", 《中国优秀博硕学位论文全文数据库(硕士)信息科技楫》 * |
Also Published As
Publication number | Publication date |
---|---|
IL281671B1 (en) | 2023-08-01 |
IL281671B2 (en) | 2023-12-01 |
SG11202102626RA (en) | 2021-04-29 |
CN112740216B (zh) | 2022-03-15 |
US20200099511A1 (en) | 2020-03-26 |
WO2020058527A1 (en) | 2020-03-26 |
US10715313B2 (en) | 2020-07-14 |
EP3853758A1 (en) | 2021-07-28 |
IL281671A (en) | 2021-05-31 |
KR20210044312A (ko) | 2021-04-22 |
CA3113543C (en) | 2021-08-24 |
KR102357978B1 (ko) | 2022-02-08 |
ES2929810T3 (es) | 2022-12-01 |
EP3853758B1 (en) | 2022-09-14 |
CA3113543A1 (en) | 2020-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112740216B (zh) | 文档认证和公布的系统和基于计算机的方法 | |
US20220029802A1 (en) | Methods and systems for creating and recovering accounts using dynamic passwords | |
EP3560138B1 (en) | Distributed blockchain-based method for the collective signing of a file by several parties | |
Ghazali et al. | A graduation certificate verification model via utilization of the blockchain technology | |
US6990585B2 (en) | Digital signature system, digital signature method, digital signature mediation method, digital signature mediation system, information terminal and storage medium | |
US6671805B1 (en) | System and method for document-driven processing of digitally-signed electronic documents | |
US20140282900A1 (en) | Methods and systems for providing secure transactions | |
US10992683B2 (en) | System and method for authenticating, storing, retrieving, and verifying documents | |
CN110189184A (zh) | 一种电子发票存储方法和装置 | |
US20210036865A1 (en) | Automatic form completion from a set of federated data providers | |
US7958363B2 (en) | Toolbar signature | |
KR101578550B1 (ko) | 전용 뷰어 기반 전자증명서 생성 열람 시스템 | |
US11916916B2 (en) | System and method for authenticating, storing, retrieving, and verifying documents | |
CN102024192A (zh) | 一种使用电子交易安全支撑平台的电子化报销流程 | |
Nargis et al. | A Secure Platform for Storing, Generating and Verifying Degree Certificates using Blockchain | |
TWI313998B (en) | Method of digital signature for electrical documents in the internet | |
Siswanto et al. | Implementation of digital signature for research paper legalization, authentication and ratification case study: training center for national cyber and crypto agency people | |
More et al. | Blockchain based Tamper Proof Certificates | |
Polemi et al. | A secure e-ordering Web service | |
Nandini et al. | Proof of Authentication for Secure and Digitalization of Land Registry Using Blockchain Technology | |
Georgioska | Application of Digital Signatures in the Electronic System for Public Procurement in Republic of North Macedonia | |
Hellwig et al. | Blockchain Foundations | |
TAGLIA et al. | Pistis, a credentials management system based on self-sovereign identity | |
Chandrakumar et al. | Enhancing data security in ERP projects using XML | |
Jayalakshmi et al. | A Private Blockchain-based Distributed Ledger Storage Structure for Enhancing Data Security of Academic Documents. |
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 |