CN108770370A - 用于对文件进行认证和验证的方法和服务器 - Google Patents
用于对文件进行认证和验证的方法和服务器 Download PDFInfo
- Publication number
- CN108770370A CN108770370A CN201680077263.XA CN201680077263A CN108770370A CN 108770370 A CN108770370 A CN 108770370A CN 201680077263 A CN201680077263 A CN 201680077263A CN 108770370 A CN108770370 A CN 108770370A
- Authority
- CN
- China
- Prior art keywords
- message
- user
- private key
- file
- server
- 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 17
- 238000004891 communication Methods 0.000 claims description 24
- 238000012545 processing Methods 0.000 claims description 18
- 230000004044 response Effects 0.000 claims description 17
- 230000006870 function Effects 0.000 description 31
- 230000014509 gene expression Effects 0.000 description 17
- 238000012795 verification Methods 0.000 description 17
- 230000008859 change Effects 0.000 description 3
- 235000013399 edible fruits Nutrition 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000035622 drinking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
- G06F16/148—File search processing
- G06F16/152—File search processing using file content signatures, e.g. hash values
-
- 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
-
- 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
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/22—Payment schemes or models
- G06Q20/223—Payment schemes or models based on the use of peer-to-peer networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/18—Legal services
-
- 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
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- 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
-
- 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- Software Systems (AREA)
- Bioethics (AREA)
- Accounting & Taxation (AREA)
- Economics (AREA)
- Primary Health Care (AREA)
- Marketing (AREA)
- Human Resources & Organizations (AREA)
- Technology Law (AREA)
- Databases & Information Systems (AREA)
- Library & Information Science (AREA)
- Data Mining & Analysis (AREA)
- Storage Device Security (AREA)
- Finance (AREA)
- Power Engineering (AREA)
Abstract
提供了根据本发明的方法,所述方法包括以下步骤:(a)当获得对特定文件的认证请求时,生成特定文件的消息摘要;(b)当获得使用第一用户的私钥进行编码得到的消息摘要和使用第二用户的私钥进行编码得到的消息摘要时,并且如果(i)(A)用第一用户的私钥进行编码的、用第一用户的公钥进行解码的消息摘要的信息、(ii)(B)用第二用户的私钥进行编码的、用第二用户的公钥进行解码的消息摘要的信息和(C)在步骤(a)中生成的消息摘要匹配,则将使用第一用户的私钥、第二用户的私钥以及服务器的私钥进行编码得到的消息摘要的哈希值登记在数据库中;以及(c)获得反映数据库中的所登记的哈希值的位置信息的交易ID。
Description
技术领域
本发明涉及一种用于对文件进行认证和验证的方法;更具体而言,涉及通过如下的“认证处理”对文件进行认证和验证的方法:如果取得对文件的认证请求,则(i)使用哈希函数(hash function)生成或支持另一装置使用哈希函数生成文件的特定消息摘要;(ii)如果取得通过使用用户的私钥对特定消息摘要进行编码而生成的第一消息摘要,并且,如果通过使用用户的公钥对第一消息摘要进行解码而取得的参考信息对应于特定消息摘要,则登记或支持另一装置登记使用用户的私钥和服务器的私钥对特定消息摘要进行编码而生成的第二消息摘要的哈希值到数据库中;以及(iii)取得或支持另一装置取得表示哈希值登记在数据库中的位置的交易ID,并且,本发明涉及通过如下的“验证处理”对文件进行认证和验证的方法:如果取得对第二文件的验证请求,则(i)取得或支持另一装置取得与用户的公钥和通过使用哈希函数生成的第二文件的原始消息摘要中的至少一者相对应的交易ID;(ii)参照交易ID从数据库中取得或支持另一装置参照交易ID从数据库中取得OP消息,OP消息包括通过使用用户的私钥和服务器的私钥对特定消息摘要进行编码而生成的第二消息摘要的哈希值;以及(iii)如果OP消息中的第二消息摘要的哈希值对应于通过使用服务器的私钥、用户的私钥以及使用该私钥的服务器对原始消息摘要进行编码而生成的第三消息摘要的哈希值,则确定或支持另一装置确定第二文件为已验证。
背景技术
认证是公开证明特定事实或特定法律关系的存在或内容的行为。当被委托认证特定法律关系时,认证官员通常在认证办公室书写、签署、密封以及保存文档。
然而,由于在以往的认证中客户带着要认证的文档实际访问认证办公室并将其证书保存在认证办公室中,因此具有时间和空间上的限制以及遗失、伪制和伪造认证文档的可能性。
这里,本发明的发明人开发了一种文件的认证系统,通过在虚拟货币的区块链中记录认证信息,实时进行认证,不存在伪制和伪造的可能性并且没有空间限制。
发明内容
本发明的目的是解决所有的上述问题。
本发明的另一个目的是提供一种文件的认证系统,通过在虚拟货币的区块链中记录认证信息,实时进行认证和验证,不存在伪制和伪造的可能性并且没有空间限制。
本发明的另一目的是提供安全性有保证的文件的认证系统,通过使用哈希函数和加密技术,实时地执行认证和验证,而不存在伪制或伪造的可能性,并且没有空间限制。
根据本发明的一个方面,提供一种对文件进行认证的方法,包括以下步骤:(a)如果取得对文件的认证请求,则服务器使用哈希函数生成或支持另一装置使用哈希函数生成文件的特定消息摘要;(b)如果取得通过使用第一用户的私钥对特定消息摘要进行编码而生成的第一消息摘要以及通过使用第二用户的私钥对特定消息摘要进行编码而生成的第二消息摘要,并且如果(i)通过使用第一用户的公钥对第一消息摘要进行解码而取得的第一信息和(ii)通过使用第二用户的公钥对第二消息摘要进行解码而取得的第二信息中的每一者对应于在步骤(a)中生成的特定消息摘要,则服务器登记或支持另一装置登记使用第一用户的私钥、第二用户的私钥以及服务器的私钥对特定消息摘要进行编码而生成的第三消息摘要的哈希值到数据库中;以及(c)服务器取得或支持另一装置取得表示哈希值登记在数据库中的位置的交易ID。
根据本发明的另一方面,提供一种用于对文件进行认证的方法,包括以下步骤:(a)如果取得认证请求,则服务器使用哈希函数生成或支持另一装置使用哈希函数生成文件的特定消息摘要;(b)(i)如果取得通过使用第一用户的私钥对特定消息摘要进行编码而生成的第一消息摘要,并且如果通过使用第一用户的公钥对第一消息摘要进行解码而取得的第一信息对应于特定消息摘要以及(ii)如果取得通过使用第一用户的私钥和第二用户的私钥对特定消息摘要进行编码而生成的第二消息摘要,并且如果通过使用第二用户的公钥对第二消息摘要进行解码而取得的第二信息对应于第一消息摘要,则服务器登记或支持另一装置登记通过使用第一用户的私钥、第二用户的私钥以及服务器的私钥对特定消息摘要进行编码而生成的第三消息摘要的哈希值到数据库中;以及(c)服务器取得或支持另一装置取得表示哈希值登记在数据库中的位置的交易ID。
根据本发明的又一方面,提供一种用于对文件进行验证的服务器,包括以下步骤:(a)在服务器响应于对作为参考文件的第一文件的认证请求已经将第一用户和第二用户确定为与第一文件有关,并且作为结果,服务器已经将通过使用第一用户的私钥、第二用户的私钥以及服务器的私钥对第一文件的消息摘要进行编码而生成的第一消息摘要的哈希值存储在数据库中,并且服务器已管理其相对应的交易ID的条件下,如果取得对第二文件的验证请求,则服务器取得或支持另一装置取得与通过使用哈希函数而生成的第二文件的特定消息摘要和请求第二文件的验证的特定用户的公钥中的至少一者相对应的交易ID;(b)服务器参照交易ID从数据库中取得或支持另一装置参照交易ID从数据库中取得OP消息,所述OP消息包括第一消息摘要的第一哈希值;以及(c)如果OP消息中的第一哈希值对应于通过使用服务器的私钥、第一用户的私钥和第二用户的私钥对特定消息摘要进行编码而生成的第二消息摘要的第二哈希值,则服务器确定或支持另一装置确定第二文件为已验证。
根据本发明的又一方面,提供一种用于对文件进行认证的服务器,包括:通信部,用于取得或支持另一装置取得对文件的认证请求;以及处理器,(I)如果取得对文件的认证请求,则处理器使用哈希函数生成或支持另一装置使用哈希函数生成文件的特定消息摘要;(II)如果取得通过使用第一用户的私钥对特定消息摘要进行编码而生成的第一消息摘要以及通过使用第二用户的私钥对特定消息摘要进行编码而生成的第二消息摘要,并且如果(i)通过使用第一用户的公钥对第一消息摘要进行解码而取得的第一信息以及(ii)通过使用第二用户的公钥对第二消息摘要进行解码而取得的第二信息中的每一者对应于在(I)的处理中生成的特定消息摘要,则处理器登记或支持另一装置登记通过使用第一用户的私钥、第二用户的私钥以及服务器的私钥对特定消息摘要进行编码而生成的第三消息摘要的哈希值到数据库中;以及(III)所述处理器取得或支持另一装置取得表示哈希值登记在数据库中的位置的交易ID。
根据本发明的再一方面,提供一种用于对文件进行认证的服务器,包括:通信部,用于取得或支持另一装置取得对该文件的验证请求;以及处理器,(I)如果取得认证请求,则处理器使用哈希函数生成或支持另一装置使用哈希函数生成所述文件的特定消息摘要;(II)(i)如果取得通过使用第一用户的私钥对特定消息摘要进行编码而生成的第一消息摘要,并且如果通过使用第一用户的公钥对第一消息摘要进行解码而取得的第一信息对应于特定消息摘要,以及(ii)如果取得通过使用第一用户的私钥和第二用户的私钥对特定消息摘要进行编码而生成的第二消息摘要,并且如果通过使用第二用户的公钥对第二消息摘要进行解码而取得的第二信息对应于第一消息摘要,则所述处理器登记或支持另一装置登记通过使用第一用户的私钥、第二用户的私钥以及服务器的私钥对特定消息摘要进行编码而生成的第三消息摘要的哈希值到数据库中;以及(III)所述处理器取得或支持另一装置取得表示哈希值登记在数据库中的位置的交易ID。
根据本发明的又一方面,提供一种用于对文件进行验证的服务器,包括:通信部,用于取得或支持另一装置取得对文件的验证请求;以及处理器,(I)在服务器响应于对作为参考文件的第一文件的认证请求已经将第一用户和第二用户确定为与第一文件有关,并且作为结果,服务器已经将通过使用第一用户的私钥、第二用户的私钥以及服务器的私钥对第一文件的消息摘要进行编码而生成的第一消息摘要的第一哈希值存储在数据库中,并且服务器已管理其相对应的交易ID的条件下,如果取得对第二文件的验证请求,则处理器取得或支持另一装置取得与通过使用哈希函数生成的第二文件的特定消息摘要和请求第二文件的验证的特定用户的公钥中的至少一者相对应的交易ID;(II)处理器参照交易ID从数据库中取得或支持另一装置参照交易ID从数据库中取得OP消息,OP消息包括第一消息摘要的第一哈希值;以及(III)如果OP消息中的第一哈希值对应于通过使用服务器的私钥、第一用户的私钥和第二用户的私钥对特定消息摘要进行编码而生成的第二消息摘要的第二哈希值,则处理器确定或支持另一装置确定第二文件为已验证。
附图说明
用于说明本发明的示例实施例的下面的附图仅是本发明的示例实施例的一部分,并且可以基于附图获得其他附图而无需本领域技术人员的创造性工作。
图1是示出根据本发明的一个示例实施例的执行文件的认证的服务器的配置的框图;
图2至图6是示出根据本发明的多个示例实施例的执行文件的认证的处理的时序图。
具体实施方式
在下面的详细描述中,参照附图,附图以示例的方式示出了可实施本发明的具体实施例。这些实施例被充分详细地描述以使本领域技术人员能够实施本发明。应该理解的是,本发明的各种实施例虽然不同,但并不一定是相互排斥。例如,在不背离本发明的精神和范围的情况下,本文结合一个实施例描述的特定特征、结构或特性可以在其他实施例内实现。此外,应该理解的是,在不背离本发明的精神和范围的情况下,可以改变所公开的每个实施例中的各个元件的位置或配置。因此,下面的详细描述不以限制的意义来理解,本发明的范围仅由所附权利要求以及权利要求所赋予权利的等同物的全部范围限定、适当地解释。在附图中,在几个图中,相同的附图标记指代相同或相似的功能性。
图1是示出根据本发明的一个示例实施例的执行文件的认证的服务器的配置的框图。图2至图6是示出根据本发明的多喝示例实施例的用于执行文件的认证和验证的处理的时序图。
在说明示例实施例之前,在本说明书中使用的表达式如下定义。‘:’的左边是表达式,‘:’的右边是表达式的定义。
<表达式的定义>
PrivX:X的私钥
PubX:X的公钥
AESX:X的AES密钥
EncPrivX(Y):使用PrivX的Y的加密的输出
DecPubX(Y):使用PubX的Y的解密的输出
EncAESX(Y):使用AESX的Y的AES加密的输出
DecAESX(Y):使用AESX的Y的AES解密的输出
哈希(Y):Y的哈希值
首先,参照图1和图2说明响应于来自单个用户的请求对文件进行认证的处理。
参照图1,根据本发明的一个示例实施例的执行文件的认证的服务器100可以包括通信部110和处理器120。
通信部110可以被配置为向用户或用户装置和数据库200发送数据以及从用户或用户装置和数据库200接收数据。首先,通信部110可以在步骤S210中取得对文件的认证请求。如图2所示,如果取得对文件的认证请求,则可以取得文件和请求认证的用户的公钥PubU。通信部110可以在步骤S220中响应请求,其中,可以在一个TCP会话的过程中执行请求及其相应的响应。
如果取得对文件的认证请求,则在步骤S215中,处理器120可以通过使用哈希函数(即,MD=Hash(File))生成或支持另一装置通过使用哈希函数(即,MD=Hash(File))生成文件(File)的消息摘要。在此,哈希函数可以在其类型上变化。例如,哈希函数可以是三重(triple)sha256。另外,本说明书中的哈希函数通常是指用于转换原始文件的函数,但是可以包括在极端情况下不进行任何修改就存储文件的函数。在这种情况下,使用哈希函数生成的消息摘要可以与文件相同。
在步骤S220中,响应于认证请求而生成的消息摘要MD可被发送给请求对文件进行认证的用户。如果用户已经通过图中未示出的用户装置请求对文件的认证,则生成的MD可被发送给用户装置。
接下来,在步骤S225中,通信部110可以从用户取得通过使用用户的私钥PrivU对MD进行编码而生成的EncPrivU(MD)。在这种情况下,由于TCP会话可在步骤S220的响应之后断开连接,因此也可以从用户接收MD和PubU。作为参考,虽然通过使用利用私钥和公钥对MD进行编码的表达式EncPriv(MD)和EncPub(MD)来描述本说明书,但表达式EncPriv(MD)和EncPub(MD)可以用SigPriv(File)和SiPub(File)替代。另外,在消息摘要生成一次以上的情况下,可以使用表达式SigPriv(MD)和SipPub(MD)。
此外,如果取得通过使用PrivU对MD进行编码而生成的EncPrivU(MD),并且如果生成的消息摘要B对应于信息A,其中,信息A是通过在步骤S230-2中用PubU对EncPrivU(MD)进行解码取得的DecPubU(EncPrivU(MD)),则处理器120可以在步骤S240中生成或支持另一装置生成通过使用PrivU和服务器100的私钥PrivC对MD进行编码生成的第一编码消息摘要的哈希值,并且可以在步骤S250中登记或支持另一装置登记生成的哈希值到数据库200中。将消息摘要以哈希值的形式登记在数据库200中的原因是,由于数据库200的存储容量的限制,需要减小数据的大小。在此,数据库200可以是虚拟货币的区块链。例如,它可以是比特币区块链。
作为参考,在图2中,使用表达式‘DecPubU(EncPrivU(MD))==MD’来表示A对应于B,但是本发明的表达式不限于此。例如,‘True==VerPubU(SigPriv(File))’也可以表示相同的关系。此外,如果消息摘要生成一次以上,则可以使用表达式‘True==VerPubU(SigPriv(MD))’。
此外,如果A对应于B,则处理器120可以登记或支持另一装置登记Hash[EncPrivC(EncPrivU(MD))]到数据库200中,Hash[EncPrivC(EncPrivU(MD))]是通过使用PrivU和PrivC依次对MD进行编码而生成的第一编码消息摘要的哈希值。换句话说,在作为客户的用户首先用PrivU签署MD,然后作为认证官的服务器100用PrivC对其进行签署之后,第一编码消息摘要的哈希值可被登记在数据库200中,然而,签署的顺序可能与此不同。特别地,如果用户与服务器100之间的会话被保持,则服务器100可以首先签署MD,然后用户可以进行签署。
在通过利用PrivU和PrivC对MD进行编码而生成的第一编码消息摘要的哈希值被登记在数据库200中的情况下,通信部110可以在步骤S255中从数据库200取得交易ID,即,TxID,其中,交易ID表示第一编码消息摘要的哈希值登记在数据库200中的位置。
另一方面,如果在步骤S230-1中A不对应于B,则处理器120可以在步骤S235中基于用户不是与该文件相关的人(例如交易者)的原因,向用户发送登记不成功的消息。
另外,如果A对应于B,则处理器120可以在步骤S245中存储或支持另一装置存储文件。在此,可以使用诸如AES(即,高级加密标准)的对称密钥加密算法对文件进行加密。在这种情况下,密钥可以是从用户的公钥处理后的特定密钥,但是本发明的范围不限于此。
处理器120可以存储或支持另一装置存储PubU、MD、EncPrivU(MD)和TxID。此外,处理器120可以进一步存储或支持另一装置存储EncPrivC(EncPrivU(MD)),EncPrivC(EncPrivU(MD))是通过使用PrivU和PrivC依次对MD进行编码而生成的第一编码消息摘要及其哈希值(Hash[EncPrivC(EncPrivU(MD))])。
如果认证信息如上所述地被登记在数据库200中,则通信部110可以在步骤S260中将登记成功的消息发送给用户。
接下来,参照图3说明响应于来自单个用户的请求对文件进行验证的处理。
该文件可以由可参照上述服务器100的信息的单独装置来验证,或者可以由上述服务器100来验证。下文中,为了方便,基于上述服务器100对文件的验证进行说明。
参照图3,类似于上述示例,通信部110可以在步骤S310中取得对文件的验证请求。如图3所示,如果取得对文件的验证请求,则可以取得文件和请求认证的用户的公钥PubU。通信部110可以响应请求,并且该请求及其相应的响应可以在一个TCP会话内执行。
如上所述,在服务器100响应于对文件的认证请求已经将请求文件认证的用户确定为与文件有关,并且作为结果,服务器100已经将通过使用PrivU和PrivC对文件的MD进行编码而生成的第一编码消息摘要的哈希值存储在数据库200中,并且已管理其相对应的交易ID的条件下,如果取得对文件的验证请求,则处理器200可以取得或支持另一装置取得与PubU和文件的MD中的至少一者相对应的交易ID。在这种情况下,交易ID即TxID可以已经存储在服务器100中或服务器100可以参考的装置中。
在步骤S310中通信部110接收到对文件的验证请求的情况下,如果取得文件用于验证,则处理器120可以在步骤S315中使用哈希函数生成或支持另一装置使用哈希函数生成文件的原始消息摘要,即MD=Hash(File)。在这种情况下,处理器120可以参照与PubU和所生成的文件的原始消息摘要中的至少一者相对应的交易ID。
如果尽管在步骤S320-1中有验证请求但没有发现与原始消息摘要相对应的信息,则通信部110可在步骤S325中向用户发送验证不成功的消息。
另外,如果在步骤S320-2中发现信息,即,与该消息摘要相对应的交易ID,则通信部110可以在步骤S325中使用TxID向数据库200发送查询,并在步骤S330中从数据库200取得OP消息,OP消息包括用PrivU和PrivC对MD进行编码而生成的第一编码消息摘要的哈希值。
进一步,如果通过使用PrivC和PrivU对原始消息摘要进行编码而生成的第二编码消息摘要的哈希值对应于OP消息中的通过使用PrivU和PrivC对MD进行编码而生成的第一编码消息摘要的哈希值,则处理器120可以在步骤S335中确定或支持另一装置确定文件为已验证。
在此,通过使用PrivC和PrivU对原始消息摘要进行编码而生成的第二编码消息可以为EncPrivC(EncPrivU(MD)),EncPrivC(EncPrivU(MD))是通过使用PrivU和PrivC依次对原始消息摘要进行编码而生成的。
然而,即使通过使用PrivC和PrivU对原始消息摘要进行编码而生成的第二编码消息摘要,即,X的哈希值对应于OP消息中的通过使用PrivU和PrivC对MD进行编码而生成的第一编码消息摘要的哈希值的情况下,如果通过使用服务器100的公钥PubC以及PubU对X进行解码得到的结果值DecPubU(DecPubC(EncPrivC(EncPrivU(MD))))对应于文件的MD,则处理器120可以在步骤S340中进一步确定或支持另一装置确定文件为已验证。换句话说,文件的验证可以通过两个以上的步骤来完成。这是因为考虑到用户的私钥、公钥等的改变的可能性。
以上验证的三个步骤可以表示为下面的表达式。
<表达式1>
OP_MESSAGE==Hash[EncPrivC(EncPrivU(MD))]
EncPrivU(MD)==DecPubC[EncPrivC(EncPrivU(MD))]
MD(=Hash[File])==DecPubU[EncPrivU(MD)]
如果文件的验证成功,则通信部110可以在步骤S345中向用户发送成功验证的消息。
而且,如果文件被确定为已验证,则处理器120可允许文件的下载。在这种情况下,用户可以通过使用户装置等下载文件。
接下来,通过参照图4和5说明响应于来自多个用户的请求对文件进行认证的处理。然而,省略了重复的解释。
图4表示并行执行认证的并行签署的处理,图5表示响应于来自多个用户的认证请求依次进行认证的串行签署的处理。
首先,参照图4,如果在S410和S420的每个步骤中取得认证请求,则处理器120可以在S412和S422的每个步骤中使用哈希函数生成或支持另一装置使用哈希函数生成文件的消息摘要,即,MD=Hash(File)。而且,如果在步骤S440和S450中取得通过使用第一用户的私钥PrivU1对消息摘要进行编码而生成的第一消息摘要和通过使用第二用户的私钥PrivU2对消息摘要进行编码而生成的第二消息摘要,并且如果在步骤S440-3中(i)信息A’,即,通过使用第一用户的公钥PubU1对第一消息摘要进行解码而取得的DecPubU1(EncPrivU1(MD))以及(ii)信息B’,即,通过使用第二用户的公共密钥PubU2对第二消息摘要进行解码而取得的DecPubU2(EncPrivU2(MD))中的每一者对应于所生成的消息摘要C’,即,MD,则处理器120可以在步骤S475中登记或支持另一装置登记通过使用PrivU1、PrivU2和PrivC对MD进行编码而生成的第三消息摘要的哈希值到数据库200中。
接下来,在步骤S480中,通信部110可以取得表示第三消息摘要的登记的哈希值在数据库200中的位置的交易ID。
此外,如果A’和B’中的每一者对应于C’,则处理器120可以登记或支持另一装置登记EncPrivC(EncPrivU1(MD)+EncPrivU2(MD))到数据库200中,EncPrivC(EncPrivU1(MD)+EncPrivU2(MD))是通过使用PrivC对和值进行编码而取得的,其中,和值是通过使用PrivU1对MD进行编码而生成的第一消息摘要和通过使用PrivU2对MD进行编码而生成的第二消息摘要之和。
接下来,参照图5,如果在S510和S535的每个步骤中取得对文件的认证请求,则处理器120可以在S512和S537的每个步骤中使用哈希函数生成或支持另一装置使用哈希函数生成文件的消息摘要,即,MD=Hash(File)。在这种情况下,如图5所示,可以一起取得PubU1、PubU2和文件。
如果(i)在步骤S520中取得通过使用PrivU1对消息摘要进行编码而生成的第一消息摘要EncPrivU1(MD),并且信息A”,即,通过使用PubU1对第一消息摘要进行解码而取得的DecPubU1(EncPrivU1(MD))对应于所生成的消息摘要B”,即,MD,并且如果(ii)在步骤S545中取得用PrivU1和PrivU2对消息摘要进行编码而生成的EncPrivU2(EncPrivU1(MD)),并且信息C”,即,通过使用PubU2对EncPrivU2(EncPrivU1(MD))进行解码而取得的DecPubU2(EncPrivU2(EncPrivU1(MD)))对应于信息D”,即,第一消息摘要EncPrivU1(MD),则处理器120可以在步骤S575中登记或支持另一装置登记通过使用PrivU1、PrivU2和PrivC对消息摘要进行编码而生成的第三消息摘要的哈希值到数据库200中。
而且,如果A”对应于B”,并且如果C”对应于D”,则处理器120可以登记或支持另一装置登记通过使用PrivU1、PrivU2和PrivC依次对消息摘要进行编码而生成的SO=EncPrivC(EncPrivU2(EncPrivU1(MD)))到数据库200中。
在此,通信部110可以在步骤S580中取得表示第三消息摘要的登记的哈希值在数据库200中的位置的交易ID,即,TxID。
接下来,参照图6说明响应于来自多个用户的请求对文件进行验证的处理。但是,省略了重复的解释。作为参考,步骤S625到S650表示响应于来自多个用户中的至少一部分的验证请求依次验证文件的串行签署处理,步骤S660至S685表示响应于来自多个用户中的至少一部分的验证请求并行验证文件的并行签署处理。这些处理可以在不同的时间执行或同时执行。
参照图6,如上所述,在服务器100响应于对文件的认证请求已经将第一用户和第二用户确定为与文件有关,并且作为结果,服务器100已经将通过使用PrivU1、PrivU2以及PrivC对文件的MD进行编码而生成的第三消息摘要的哈希值存储在数据库200中,并且服务器100已管理其相对应的交易ID,即,TxID,的条件下,如果在步骤S610中取得对文件的验证请求中的至少一者,则处理器120可以取得与文件的特定消息摘要(即,MD=Hash(File))以及请求验证文件的用户的公钥中的至少一者相对应的TxID。
此外,通信部110可以在S635和S670的每个步骤使用TxID从数据库200取得OP消息,OP消息包括通过使用PrivU1、PrivU2和PrivC对消息摘要进行编码而生成的第三消息摘要的哈希值。
此外,如果通过使用PrivC、PrivU1和PrivU2对特定消息摘要进行编码而生成的第四消息摘要的哈希值对应于OP消息中的通过使用PrivU1、PrivU2和PrivC对MD进行编码而生成的第三消息摘要的哈希值,则处理器120可以在S640和S675的每个步骤中确定或支持另一装置确定文件为已验证。
在并行签署处理的情况下,处理器120可以根据作为通过使用PrivC对和值进行编码而取得的第一编码值的哈希值Hash[EncPrivC(EncPrivU1(MD)+EncPrivU2(MD))]是否对应于OP消息中的通过使用PrivU1、PrivU2和PrivC对MD进行编码而生成的第三消息摘要的哈希值,确定或支持另一装置确定文件为已验证,其中,和值是通过使用PrivU1对特定消息摘要进行编码而生成的第五消息摘要和通过使用PrivU2对特定消息摘要进行编码而生成的第六消息摘要之和。
然而,即使在Y,即,通过使用PrivC对和值进行编码而取得的第一编码值,的哈希值Hash[EncPrivC(EncPrivU1(MD)+EncPrivU2(MD))]对应于OP消息中的通过使用PrivU1、PrivU2和PrivC对消息摘要进行编码而生成的第三消息摘要的哈希值的情况下,如果(i)通过用PubU1对通过使用PubC对Y解码获得的第五消息摘要进行解码而获得的第一解码值对应于MD,并且如果(ii)通过用PubU2对通过使用PubC对Y解码获得的第六消息摘要进行解码而获得的第二解码值对应于MD,则处理器120可以确定或支持另一装置确定文件为已验证。换句话说,文件的验证可以通过三个以上的步骤完成。
以上验证的四个步骤可以表示为下面的表达式。
<表达式2>
OP_MESSAGE==Hash[EncPrivC(EncPrivU1(MD)+EncPrivU2(MD))]
EncPrivU1(MD)+EncPrivU2(MD)==DecPubC[EncPrivC(EncPrivU1(MD)+EncPrivU2(MD))]
MD(=Hash[File])==DecPubU1[EncPrivU1(MD)]
MD(=Hash[File])==DecPubU2[EncPrivU2(MD)]
另一方面,在串行签署处理的情况下,处理器120可以根据作为通过使用PrivU1、PrivU2和PrivC依次对特定消息摘要进行编码而获得的第二编码值的哈希值Hash[EncPrivC(EncPrivU2(EncPrivU1(MD)))]是否对应于OP消息中的通过使用PrivU1、PrivU2和PrivC对消息摘要进行编码而生成的第三消息摘要的哈希值,确定或支持另一装置确定文件为已验证。
然而,即使在Z,即,通过使用PrivU1、PrivU2和PrivC依次对特定消息摘要进行编码而取得的第二编码值的哈希值Hash[EncPrivC(EncPrivU2(EncPrivU1(MD)))]]对应于OP消息中的通过使用PrivU1、PrivU2和PrivC对消息摘要进行编码而生成的第三消息摘要的哈希值的情况下,如果通过使用PubC、PubU2和PubU1依次对Z进行解码而获得的DecPubU1(DecPubU2(DecPubC(EncPrivC(EncPrivU2(EncPrivU1(MD))))))对应于MD,则处理器120可以确定或支持另一装置确定文件为已验证。换句话说,文件的验证可以通过三个以上的步骤来完成。
上述验证的四个步骤可以表示为下面的表达式。
<表达式3>
OP_MESSAGE==Hash[EncPrivC(EncPrivU2(EncPrivU1(MD)))]
EncPrivU2(EncPrivU1(MD))==DecPubC[EncPrivC(EncPrivU2(EncPrivU1(MD)))]
EncPrivU1(MD)==DecPubU2[EncPrivU2(EncPrivU1(MD))]
MD(=Hash[File])==DecPubU1[EncPrivU1(MD)]
本发明具有如下效果:通过在虚拟货币的区块链中记录认证信息,提供文件的认证系统以实时执行认证和验证而不存在伪制和伪造的可能性以及没有空间限制。
本发明的另一效果如下:通过使用哈希函数和加密技术,提供安全性有保证的文件认证系统,以实时执行认证和验证而不存在伪制和伪造的可能性并且没有空间限制。
另一方面,处理器120可以控制通信部110和其他部件之间的数据流。也就是说,处理器120可以通过控制服务器100内的每个部件之间的数据流来控制通信部110和其他部件执行它们的独特的功能。
处理器120可以包括MPU(微处理单元)或CPU(中央处理单元)、高速缓冲存储器、数据总线等硬件配置。另外,可以进一步包括实现特定目的的应用的OS和软件配置。
如上所述的本发明的实施例可以通过可记录到计算机可读介质的各种计算机装置以可执行程序命令的形式来实施。计算机可读介质可以单独或组合地包括程序命令、数据文件和数据结构。记录到介质的程序命令可以是专门为本发明设计的组件,或者可以对于计算机软件领域的技术人员有用。计算机可读记录介质包括:诸如硬盘、软盘和磁带的磁介质;诸如CD-ROM和DVD的光介质;诸如光磁软盘的磁光介质;以及诸如ROM、RAM的硬件装置;以及专门设计用于存储和执行程序的闪存。程序命令不仅包括由编译器编写的机器语言代码,还包括可被由计算机执行的解释器等使用的高级代码。上述硬件装置可以超出软件模块来工作以执行本发明的动作,并且它们可以在相反的情况下执行相同的动作。硬件装置可以与诸如ROM和RAM的存储器结合以存储程序命令,并且包括诸如CPU或GPU的处理器以执行存储在存储器中的命令,并且还包括用于与外部装置发送和接收信号的通信部。
如上所述,已经通过诸如详细部件、有限实施例和附图的具体事项对本发明进行了说明。虽然已经参照优选实施例示出和说明了本发明,然而,本领域技术人员将理解的是,在不背离由下面的权利要求书限定的本发明的精神和范围的情况下可以进行各种改变和变更。
因此,本发明的构想不应局限于所说明的实施例,并且以下的专利权利要求书以及包括与专利权利要求书相等或等同的变型的所有内容都属于本发明的构想的范畴。
Claims (14)
1.一种用于对文件进行认证的方法,包括以下步骤:
(a)如果取得对所述文件的认证请求,则服务器使用哈希函数生成或支持另一装置使用哈希函数生成所述文件的特定消息摘要;
(b)如果取得通过使用第一用户的私钥对所述特定消息摘要进行编码而生成的第一消息摘要和通过使用第二用户的私钥对所述特定消息摘要进行编码而生成的第二消息摘要,并且如果(i)通过使用所述第一用户的公钥对所述第一消息摘要进行解码而取得的第一信息和(ii)通过使用所述第二用户的公钥对所述第二消息摘要进行解码而取得的第二信息中的每一者对应于在所述步骤(a)中生成的所述特定消息摘要,则所述服务器登记或支持另一装置登记使用所述第一用户的私钥、所述第二用户的私钥以及所述服务器的私钥对所述特定消息摘要进行编码而生成的第三消息摘要的哈希值到数据库中;以及
(c)所述服务器取得或支持另一装置取得表示所述哈希值登记在所述数据库中的位置的交易ID。
2.如权利要求1所述的方法,其中,在所述步骤(b)中,如果所述第一信息和所述第二信息的所述每一者对应于所述特定消息摘要,则所述服务器登记或支持另一装置登记通过使用所述服务器的私钥对和值编码而取得的编码值到所述数据库中,并且其中,所述和值是所述第一消息摘要和所述第二消息摘要之和。
3.一种用于对文件进行认证的方法,包括以下步骤:
(a)如果取得认证请求,则服务器使用哈希函数生成或支持另一装置使用哈希函数生成所述文件的特定消息摘要;
(b)(i)如果取得通过使用第一用户的私钥对所述特定消息摘要进行编码而生成的第一消息摘要,并且如果通过使用所述第一用户的公钥对所述第一消息摘要进行解码而取得的第一信息对应于所述特定消息摘要,以及(ii)如果取得通过使用所述第一用户的私钥和第二用户的私钥对所述特定消息摘要进行编码而生成的第二消息摘要,并且如果通过使用所述第二用户的公钥对所述第二消息摘要进行解码而取得的第二信息对应于所述第一消息摘要,则所述服务器登记或支持另一装置登记通过使用所述第一用户的私钥、所述第二用户的私钥以及所述服务器的私钥对所述特定消息摘要进行编码而生成的第三消息摘要的哈希值到数据库中;以及
(c)所述服务器取得或支持另一装置取得表示所述哈希值登记在所述数据库中的位置的交易ID。
4.如权利要求3所述的方法,其中,在所述步骤(b),如果所述第一信息对应于所述特定消息摘要,并且如果所述第二信息对应于所述第一消息摘要,则所述服务器登记或支持另一装置登记通过使用所述第一用户的私钥、所述第二用户的私钥以及所述服务器的私钥依次对所述特定消息摘要进行编码而生成的所述第三消息摘要到所述数据库中。
5.一种用于对文件进行验证的方法,包括以下步骤:
(a)在服务器响应于对作为参考文件的第一文件的认证请求已经将第一用户和第二用户确定为与所述第一文件有关,并且作为结果,所述服务器已经将通过使用所述第一用户的私钥、所述第二用户的私钥以及所述服务器的私钥对所述第一文件的消息摘要进行编码而生成的第一消息摘要的第一哈希值存储在数据库中,并且所述服务器已管理其相对应的交易ID的条件下,如果取得对第二文件的验证请求,则所述服务器取得或支持另一装置取得与通过使用哈希函数而生成的所述第二文件的特定消息摘要和请求所述第二文件的验证的特定用户的公钥中的至少一者相对应的交易ID;
(b)所述服务器参照所述交易ID从所述数据库中取得或支持另一装置参照所述交易ID从所述数据库中取得OP消息,所述OP消息包括所述第一消息摘要的所述第一哈希值;以及
(c)如果所述OP消息中的所述第一哈希值对应于通过使用所述服务器的私钥、所述第一用户的私钥和所述第二用户的私钥对所述特定消息摘要进行编码而生成的第二消息摘要的第二哈希值,则所述服务器确定或支持另一装置确定所述第二文件为已验证。
6.根据权利要求5所述的方法,其中,在所述步骤(c)中,根据所述OP消息中的所述第一哈希值是否对应于通过使用所述服务器的私钥对和值进行编码而生成的所述第二消息摘要的所述第二哈希值,所述服务器确定或支持另一装置确定所述第二文件为已验证,其中,所述和值是通过使用所述第一用户的私钥对所述特定消息摘要进行编码而生成的第三消息摘要与通过使用所述第二用户的私钥对所述特定消息摘要进行编码而生成的第四消息摘要之和。
7.根据权利要求5所述的方法,其中,在所述步骤(c)中,根据所述OP消息中的所述第一哈希值是否对应于通过使用所述第一用户的私钥、所述第二用户的私钥以及所述服务器的私钥依次对所述特定消息摘要进行编码而生成的所述第二消息摘要的所述第二哈希值,所述服务器确定或支持另一装置确定所述第二文件为已验证。
8.一种用于对文件进行认证的服务器,包括:
通信部,用于取得或支持另一装置取得对所述文件的认证请求;以及
处理器,(I)如果取得对所述文件的所述认证请求,则所述处理器使用哈希函数生成或支持另一装置使用哈希函数生成所述文件的特定消息摘要;(II)如果取得通过使用第一用户的私钥对所述特定消息摘要进行编码而生成的第一消息摘要以及通过使用第二用户的私钥对所述特定消息摘要进行编码而生成的第二消息摘要,并且如果(i)通过使用所述第一用户的公钥对所述第一消息摘要进行解码而取得的第一信息以及(ii)通过使用所述第二用户的公钥对所述第二消息摘要进行解码而取得的第二信息中的每一者对应于在处理(I)中生成的所述特定消息摘要,则所述处理器登记或支持另一装置登记通过使用所述第一用户的私钥、所述第二用户的私钥以及所述服务器的私钥对所述特定消息摘要进行编码而生成的第三消息摘要的哈希值到数据库中;以及(III)所述处理器取得或支持另一装置取得表示所述哈希值登记在所述数据库中的位置的交易ID。
9.根据权利要求8所述的服务器,其中,在处理(II)中,如果所述第一信息和所述第二信息中的所述每一者对应于所述特定消息摘要,则所述处理器登记或支持另一装置登记通过使用所述服务器的私钥对和值进行编码而取得的编码值到所述数据库中,其中所述和值是所述第一消息摘要和所述第二消息摘要之和。
10.一种用于对文件进行认证的服务器,包括:
通信部,用于取得或支持另一装置取得对所述文件的认证请求;以及
处理器,(I)如果取得所述认证请求,则所述处理器使用哈希函数生成或支持另一装置使用哈希函数生成所述文件的特定消息摘要;(II)(i)如果取得通过使用第一用户的私钥对所述特定消息摘要进行编码而生成的第一消息摘要,并且如果通过使用第一用户的公钥对所述第一消息摘要进行解码而取得的第一信息对应于所述特定消息摘要,以及(ii)如果取得通过使用所述第一用户的私钥和第二用户的私钥对所述特定消息摘要进行编码而生成的第二消息摘要,并且如果通过使用所述第二用户的公钥对所述第二消息摘要进行解码而取得的第二信息对应于所述第一消息摘要,则所述处理器登记或支持另一装置登记通过使用所述第一用户的私钥、所述第二用户的私钥以及所述服务器的私钥对所述特定消息摘要进行编码而生成的第三消息摘要的哈希值到数据库中;以及(III)所述处理器取得或支持另一装置取得表示所述哈希值登记在所述数据库中的位置的交易ID。
11.如权利要求10所述的服务器,其中,在处理(II)中,如果所述第一信息对应于所述特定消息摘要,并且如果所述第二信息对应于所述第一消息摘要,则所述处理器登记或支持另一装置登记通过使用所述第一用户的私钥、所述第二用户的私钥以及所述服务器的私钥依次对所述特定消息摘要进行编码而生成的所述第三消息摘要到所述数据库中。
12.一种用于对文件进行验证的服务器,包括:
通信部,用于取得或支持另一装置取得对所述文件的验证请求;以及
处理器,(I)在所述服务器响应于对作为参考文件的第一文件的认证请求已经将第一用户和第二用户确定为与所述第一文件有关,并且作为结果,所述服务器已经将通过使用所述第一用户的私钥、所述第二用户的私钥以及所述服务器的私钥对所述第一文件的消息摘要进行编码而生成的第一消息摘要的第一哈希值存储在数据库中,并且所述服务器已管理其相对应的交易ID的条件下,如果取得对第二文件的验证请求,则所述处理器取得或支持另一装置取得与通过使用哈希函数生成的所述第二文件的特定消息摘要和请求所述第二文件的认证的特定用户的公钥中的至少一者相对应的所述交易ID;(II)所述处理器参照所述交易ID从所述数据库中取得或支持另一装置参照所述交易ID从所述数据库中取得OP消息,所述OP消息包括所述第一消息摘要的所述第一哈希值;以及(III)如果所述OP消息中的所述第一哈希值对应于通过使用所述服务器的私钥、所述第一用户的私钥和所述第二用户的私钥对所述特定消息摘要进行编码而生成的第二消息摘要的第二哈希值,则所述处理器确定或支持另一装置确定所述第二文件为已验证。
13.根据权利要求12所述的服务器,其中,在处理(III)中,根据所述OP消息中的所述第一哈希值是否对应于通过使用所述服务器的私钥对和值进行编码而生成的所述第二消息摘要的所述第二哈希值,所述处理器确定或支持另一装置确定所述第二文件为已验证,其中,所述和值是通过使用所述第一用户的私钥对所述特定消息摘要进行编码而生成的第三消息摘要与通过使用所述第二用户的私钥对所述特定消息摘要进行编码而生成的第四消息摘要之和。
14.根据权利要求12所述的服务器,其中,在处理(III)中,根据所述OP消息中的所述第一哈希值是否对应于通过使用所述第一用户的私钥、所述第二用户的私钥以及所述服务器的私钥依次对所述特定消息摘要进行编码而生成的所述第二消息摘要的所述第二哈希值,所述处理器确定或支持另一装置确定所述第二文件为已验证。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150188981A KR101727126B1 (ko) | 2015-12-29 | 2015-12-29 | 파일에 대한 공증 및 검증을 수행하는 방법 및 서버 |
KR10-2015-0188981 | 2015-12-29 | ||
PCT/KR2016/014995 WO2017116062A1 (ko) | 2015-12-29 | 2016-12-21 | 파일에 대한 공증 및 검증을 수행하는 방법 및 서버 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108770370A true CN108770370A (zh) | 2018-11-06 |
CN108770370B CN108770370B (zh) | 2022-05-03 |
Family
ID=58579443
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680077263.XA Active CN108770370B (zh) | 2015-12-29 | 2016-12-21 | 用于对文件进行认证和验证的方法和服务器 |
Country Status (6)
Country | Link |
---|---|
US (1) | US10469264B2 (zh) |
EP (1) | EP3399485B1 (zh) |
KR (1) | KR101727126B1 (zh) |
CN (1) | CN108770370B (zh) |
CA (1) | CA3010118C (zh) |
WO (1) | WO2017116062A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105681032B (zh) * | 2016-01-08 | 2017-09-12 | 腾讯科技(深圳)有限公司 | 密钥存储方法、密钥管理方法及装置 |
CN116599677A (zh) * | 2017-03-10 | 2023-08-15 | 维萨国际服务协会 | 紧凑记录协议 |
EP3633915B1 (en) | 2018-10-01 | 2023-05-10 | Schneider Electric Industries SAS | Secure storage of data in a blockchain |
CN113793151A (zh) * | 2018-11-28 | 2021-12-14 | 创新先进技术有限公司 | 基于区块链的数据存证方法及装置、电子设备 |
CN110532290B (zh) * | 2019-07-25 | 2023-05-12 | 深圳壹账通智能科技有限公司 | 基于区块链的信息验证装置、方法及存储介质 |
US12099997B1 (en) | 2020-01-31 | 2024-09-24 | Steven Mark Hoffberg | Tokenized fungible liabilities |
JP2023094838A (ja) * | 2021-12-24 | 2023-07-06 | キヤノン株式会社 | プログラム、情報処理装置、情報処理装置の制御方法 |
US20240056424A1 (en) * | 2022-08-11 | 2024-02-15 | Microsoft Technology Licensing, Llc | Verifiable identity maps |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0963637A2 (en) * | 1997-12-31 | 1999-12-15 | Koninklijke Philips Electronics N.V. | Transmitting revisions with digital signatures |
WO2001013574A1 (en) * | 1999-08-16 | 2001-02-22 | Accela.Com, Inc. | A digital signature service |
US20020018560A1 (en) * | 2000-06-22 | 2002-02-14 | Lauter Kristin E. | Cryptosystem based on a jacobian of a curve |
CN102236766A (zh) * | 2011-05-10 | 2011-11-09 | 桂林电子科技大学 | 安全的数据项级数据库加密系统 |
CN103003831A (zh) * | 2012-02-14 | 2013-03-27 | 张龙其 | 一种智能卡支付系统 |
CN103136665A (zh) * | 2013-03-06 | 2013-06-05 | 天地融科技股份有限公司 | 一种网络交易方法及系统 |
CN103220295A (zh) * | 2013-04-26 | 2013-07-24 | 福建伊时代信息科技股份有限公司 | 一种文档加密及解密的方法、装置和系统 |
CN104320262A (zh) * | 2014-11-05 | 2015-01-28 | 中国科学院合肥物质科学研究院 | 基于加密数字货币公开账本技术的用户公钥地址绑定、检索和校验的方法及系统 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100241349B1 (ko) | 1997-09-11 | 2000-02-01 | 정선종 | 문서의 전자적 공증 방법 |
KR100248378B1 (ko) | 1997-10-24 | 2000-03-15 | 정선종 | 전자거래에서 안전한 거래 내역 공증방법 |
KR19990033432U (ko) * | 1999-04-21 | 1999-08-05 | 차보현 | 위생 숟가락 |
US7240199B2 (en) * | 2000-12-06 | 2007-07-03 | Rpost International Limited | System and method for verifying delivery and integrity of electronic messages |
KR20010106364A (ko) | 2001-10-31 | 2001-11-29 | 김성기 | 인터넷상에서 전송되는 전자문서에 대한 공증방법 |
KR100646948B1 (ko) * | 2002-10-17 | 2006-11-17 | 주식회사 로마켓아시아 | 전자문서의 공증 및 검증 처리가 가능한 공증 센터 서버 및 그 방법 |
KR100527171B1 (ko) * | 2003-05-13 | 2005-11-08 | (주)드림투리얼리티 | 인터넷을 이용한 전자계약 시스템 및 방법 |
US7395437B2 (en) * | 2004-01-05 | 2008-07-01 | International Business Machines Corporation | System and method for fast querying of encrypted databases |
KR100725414B1 (ko) * | 2006-02-07 | 2007-06-07 | 삼성전자주식회사 | 디지털 컨텐츠 동기화를 위한 동기화 식별자 생성 방법 및장치 |
US8756674B2 (en) * | 2009-02-19 | 2014-06-17 | Securekey Technologies Inc. | System and methods for online authentication |
US9219604B2 (en) * | 2011-05-09 | 2015-12-22 | Cleversafe, Inc. | Generating an encrypted message for storage |
US9721071B2 (en) * | 2011-06-29 | 2017-08-01 | Sonic Ip, Inc. | Binding of cryptographic content using unique device characteristics with server heuristics |
US9270758B2 (en) * | 2014-03-31 | 2016-02-23 | Cellco Partnership | System for mobile application notary service |
-
2015
- 2015-12-29 KR KR1020150188981A patent/KR101727126B1/ko active IP Right Grant
-
2016
- 2016-12-21 CN CN201680077263.XA patent/CN108770370B/zh active Active
- 2016-12-21 EP EP16882014.0A patent/EP3399485B1/en active Active
- 2016-12-21 WO PCT/KR2016/014995 patent/WO2017116062A1/ko active Application Filing
- 2016-12-21 CA CA3010118A patent/CA3010118C/en active Active
- 2016-12-21 US US16/066,155 patent/US10469264B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0963637A2 (en) * | 1997-12-31 | 1999-12-15 | Koninklijke Philips Electronics N.V. | Transmitting revisions with digital signatures |
WO2001013574A1 (en) * | 1999-08-16 | 2001-02-22 | Accela.Com, Inc. | A digital signature service |
US20020018560A1 (en) * | 2000-06-22 | 2002-02-14 | Lauter Kristin E. | Cryptosystem based on a jacobian of a curve |
CN102236766A (zh) * | 2011-05-10 | 2011-11-09 | 桂林电子科技大学 | 安全的数据项级数据库加密系统 |
CN103003831A (zh) * | 2012-02-14 | 2013-03-27 | 张龙其 | 一种智能卡支付系统 |
CN103136665A (zh) * | 2013-03-06 | 2013-06-05 | 天地融科技股份有限公司 | 一种网络交易方法及系统 |
CN103220295A (zh) * | 2013-04-26 | 2013-07-24 | 福建伊时代信息科技股份有限公司 | 一种文档加密及解密的方法、装置和系统 |
CN104320262A (zh) * | 2014-11-05 | 2015-01-28 | 中国科学院合肥物质科学研究院 | 基于加密数字货币公开账本技术的用户公钥地址绑定、检索和校验的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
EP3399485A4 (en) | 2019-07-31 |
EP3399485B1 (en) | 2023-08-02 |
EP3399485C0 (en) | 2023-08-02 |
CA3010118A1 (en) | 2017-07-06 |
KR101727126B1 (ko) | 2017-04-14 |
WO2017116062A1 (ko) | 2017-07-06 |
EP3399485A1 (en) | 2018-11-07 |
CN108770370B (zh) | 2022-05-03 |
US20190020485A1 (en) | 2019-01-17 |
CA3010118C (en) | 2020-07-21 |
US10469264B2 (en) | 2019-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108431842A (zh) | 用于对文件进行认证和验证的方法和服务器 | |
CN108770370A (zh) | 用于对文件进行认证和验证的方法和服务器 | |
JP7472338B2 (ja) | ブロックチェーンにおける擬似乱数生成 | |
CN108604335A (zh) | 用于提供对文件的公证服务并通过公证服务验证记录文件的方法和服务器 | |
CN108604336A (zh) | 用于提供对文件的公证服务并通过公证服务验证记录文件的方法和服务器 | |
EP3726412A1 (en) | Selectively verifying personal data | |
CN110383752A (zh) | 紧凑记录协议 | |
CN108833093A (zh) | 账户密钥的确定方法、装置、设备及存储介质 | |
CN107888384A (zh) | 一种身份数据管理方法、系统和计算机可读存储介质 | |
CN108985772A (zh) | 一种区块链的验证方法、装置、设备及存储介质 | |
JP2015180097A (ja) | データの署名生成方法、データの署名検証方法及び管理計算機 | |
US20140157382A1 (en) | Observable authentication methods and apparatus | |
JP5038807B2 (ja) | 検証装置及びプログラム | |
CN109934593A (zh) | 用于实现支持多重签名的区块链系统的设计方法及设备 | |
CN111092719B (zh) | 标签数据刷新方法及其系统、支付方法及其系统 | |
CN109862006A (zh) | 一种区块链系统接入方法、装置及系统 | |
US20110225634A1 (en) | CAPTCHA (Completely Automated Public Test to Tell Computers and Humans Apart) Data Generation Methods and Related Data Management Systems and Computer Program Products Thereof | |
CN109685507A (zh) | 事务请求有效性识别和发起方法、装置、设备和介质 | |
CN108985025A (zh) | 增强保密的生物计量访问请求 | |
Badlani et al. | Educrypto: Transforming education using blockchain | |
KR101829731B1 (ko) | 주주명부를 등록하고 주식 소유권 이전을 기록하는 방법 및 서버 | |
KR20200085204A (ko) | 증명 가능한 전자투표시스템 | |
WO2022144966A1 (ja) | 情報処理システム、制御方法、情報処理装置および制御プログラム | |
CN116076053A (zh) | 生物锁定种子 | |
JP7519856B2 (ja) | 情報処理装置、情報処理方法およびプログラム |
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 | ||
CP03 | Change of name, title or address |
Address after: Gyeonggi Do, South Korea Patentee after: CP Laboratory Co.,Ltd. Country or region after: Republic of Korea Address before: Gyeonggi Do, South Korea Patentee before: COINPLUG, Inc. Country or region before: Republic of Korea |
|
CP03 | Change of name, title or address |