KR102332031B1 - 블록체인-기반 디지털 인증서를 구현하기 위한 시스템 및 방법 - Google Patents

블록체인-기반 디지털 인증서를 구현하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR102332031B1
KR102332031B1 KR1020197018110A KR20197018110A KR102332031B1 KR 102332031 B1 KR102332031 B1 KR 102332031B1 KR 1020197018110 A KR1020197018110 A KR 1020197018110A KR 20197018110 A KR20197018110 A KR 20197018110A KR 102332031 B1 KR102332031 B1 KR 102332031B1
Authority
KR
South Korea
Prior art keywords
digital
blockchain
certificate
digital certificate
mark
Prior art date
Application number
KR1020197018110A
Other languages
English (en)
Other versions
KR20200106000A (ko
Inventor
롱 쳉
옌펑 리
Original Assignee
어드밴스드 뉴 테크놀로지스 씨오., 엘티디.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. filed Critical 어드밴스드 뉴 테크놀로지스 씨오., 엘티디.
Publication of KR20200106000A publication Critical patent/KR20200106000A/ko
Application granted granted Critical
Publication of KR102332031B1 publication Critical patent/KR102332031B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2308Concurrency control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3821Electronic credentials
    • G06Q20/38215Use of certificates or encrypted proofs of transaction rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3827Use of message hashing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic 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/3239Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • H04L2209/38
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Abstract

디지털 인증서를 구현하기 위해, 컴퓨터 저장 매체에 인코딩된 컴퓨터 프로그램을 포함한, 방법, 시스템, 및 장치가 제공된다. 방법들 중 하나의 방법은, 디지털 인증서를 생성하는 단계; 디지털 인증서의 디지털 요약을 생성하는 단계; 블록체인에 저장하기 위해 디지털 인증서의 디지털 요약을 블록체인의 하나 이상의 노드로 송신하는 단계; 블록체인에 디지털 인증서의 디지털 요약을 저장하는 것과 연관된 트랜잭션 식별을 획득하는 단계; 및 디지털 마크를 트랜잭션 식별과 연관시키는 단계를 포함한다.

Description

블록체인-기반 디지털 인증서를 구현하기 위한 시스템 및 방법
본 출원은 일반적으로 블록체인-기반 디지털 인증서를 구현하기 위한 방법 및 디바이스에 관한 것이다.
인증서는 경제적 트랜잭션(transaction) 또는 다른 활동에 대한 물증 또는 증거를 제공할 수 있으며 특정 법적 목적을 담당할 수 있다. 전통적인 교환의 경우, 인증서는 종이-기반이며 고무-잉크 인감(seal) 또는 서명으로 보증된다. 일례에서, 법인 인감 또는 서명은 공식적으로 등록된 관련 기업을 나타낸다. 그러나 종이 인증서는 쉽게 분실되거나 손상될 수 있다. 이에 대응하여, 디지털 인증서가 이러한 단점을 극복하기 위해 점차 종이-기반 인증서를 대체하고 있다. 그럼에도 불구하고, 디지털 인증서는 종이 인증서보다 복사하거나 그렇지 않으면 위조하기 쉽다. 현재의 기술에서, 디지털 인증서는 물리적 인증서의 디지털 이미지 또는 pdf 렌더링으로 종종 구현된다. 이러한 디지털 인증서는 변조 또는 다른 허가되지 않은 개조에 취약하다. 결과적으로, 종이 인증서에 비해 특정의 편의를 제공함에도 불구하고, 현재의 디지털 인증서는 보안을 보장할 수 없으며 종종 법적 물증으로서 그 효과를 감소시키거나 잃는다. 따라서, 보안 및 변조-방지 디지털 인증서를 갖는 것이 바람직하다.
본 명세서의 다양한 실시형태는 블록체인-기반 디지털 인증서를 구현하기 위한 시스템, 방법, 및 비일시적 컴퓨터 판독 가능 매체를 포함하지만, 이에 한정되는 것은 아니다.
하나의 양상에 따르면, 디지털 인증서를 구현하기 위한 컴퓨터 구현 방법은, 디지털 인증서를 생성하는 단계; 디지털 인증서의 디지털 요약(digital abstract)을 생성하는 단계; 블록체인에 저장하기 위해 디지털 인증서의 디지털 요약을 블록체인의 하나 이상의 노드로 송신하는 단계; 블록체인에 디지털 인증서의 디지털 요약을 저장하는 것과 연관된 트랜잭션 식별(transaction identification)을 획득하는 단계; 및 디지털 마크를 트랜잭션 식별과 연관시키는 단계를 포함한다.
일부 실시형태에서, 디지털 마크는 엔티티와 연관된다. 디지털 마크는 블록체인에 엔티티의 엔티티 정보를 저장하는 것과 연관된 또 다른 트랜잭션 식별과 연관된다.
다른 실시형태에서, 디지털 마크를 트랜잭션 식별과 연관시키는 단계는 엔티티에 의한 보증을 나타낸다.
일부 실시형태에서, 디지털 마크는 디지털 인감 또는 디지털 서명 중 적어도 하나를 포함한다. 하나의 실시형태에서, 디지털 마크는 디지털 인감을 포함한다. 또 다른 실시형태에서, 디지털 마크는 디지털 서명을 포함한다. 디지털 마크는 엔티티에 의한 보증과 연관된다. 디지털 마크와 연관될 때, 디지털 인증서는 디지털 마크와 연관되고 그리고 엔티티에 의해 보증된다.
다른 실시형태에서, 블록체인에 저장하기 위해 디지털 인증서의 디지털 요약을 블록체인의 하나 이상의 노드로 송신하는 단계는, 디지털 인증서의 디지털 요약 및 디지털 요약을 생성하기 위해 사용되는 암호화 프로세스를 블록체인 계약에 기입하는 것; 및 하나 이상의 노드가 블록체인 트랜잭션을 개시시켜서 블록체인 계약을 배포하게 하는 것을 포함한다.
또 다른 실시형태에서, 디지털 요약은 디지털 인증서의 해시값(hash value)을 포함하고; 그리고 트랜잭션 식별은 블록체인 트랜잭션의 해시값을 포함한다.
또 다른 실시형태에서, 디지털 마크를 트랜잭션 식별과 연관시키는 단계는, 디지털 마크, 트랜잭션 식별, 및 디지털 요약을 연관시키는 것을 포함한다.
일부 실시형태에서, 디지털 인증서를 생성하는 단계는, 엔티티로부터 디지털 인증서의 내용을 획득하는 것으로서, 엔티티는 법인인, 엔티티로부터 디지털 인증서의 내용을 획득하는 것; 및 내용을 포함한 디지털 인증서를 생성하는 것을 포함한다.
다른 실시형태에서, 방법은, 디지털 마크와 트랜잭션 식별 사이의 연관 관계를 블록체인에 저장하기 위해 하나 이상의 노드로 송신하는 단계를 더 포함한다.
또 다른 실시형태에서, 방법은, 검증되지 않은 디지털 마크에 의해 보증되는 검증되지 않은 디지털 인증서에 대한 검증 요청에 응답하여, 검증되지 않은 디지털 인증서에 대응하는 트랜잭션 식별을 획득하는 단계; 검증되지 않은 디지털 인증서에 대응하는 트랜잭션 식별 정보에 따라, 블록체인에 저장된 디지털 요약 및 블록체인에 저장된 디지털 마크를 획득하는 단계; 디지털 인증서의 디지털 요약을 생성하기 위해 사용되는 암호화 프로세스에 따라 검증되지 않은 디지털 인증서의 디지털 요약을 생성하는 단계; 블록체인에 저장된 디지털 요약이 검증되지 않은 디지털 인증서의 디지털 요약과 일치하는지, 및 블록체인에 저장된 디지털 마크가 검증되지 않은 디지털 마크와 일치하는지를 검증하는 단계; 블록체인에 저장된 디지털 요약이 검증되지 않은 디지털 인증서의 디지털 요약과 일치하고 그리고 블록체인에 저장된 디지털 마크가 검증되지 않은 디지털 마크와 일치한다고 결정한 것에 응답하여, 검증되지 않은 디지털 인증서가 진정한 것으로 결정하는 단계를 더 포함한다.
일부 실시형태에서, 디지털 인증서 시스템은, 하나 이상의 프로세서; 및 하나 이상의 프로세서에 결합되고 그리고 이전의 실시형태 중 임의의 실시형태의 방법을 수행하도록 하나 이상의 프로세서에 의해 실행 가능한 명령어가 저장된 하나 이상의 컴퓨터-판독 가능 메모리를 포함한다.
다른 실시형태에서, 디지털 인증 장치는 이전의 실시형태 중 임의의 실시형태의 방법을 수행하기 위한 복수의 모듈을 포함한다.
또 다른 양상에 따르면, 디지털 인증서 시스템은 하나 이상의 프로세서, 및 하나 이상의 프로세서에 결합되고 그리고 시스템이 작동을 수행하게 하도록 하나 이상의 프로세서에 의해 실행 가능한 명령어로 구성된 하나 이상의 비일시적 컴퓨터-판독 가능 메모리를 포함하고, 작동은, 디지털 인증서를 생성하는 것; 디지털 인증서의 디지털 요약을 생성하는 것; 블록체인에 저장하기 위해 디지털 인증서의 디지털 요약을 블록체인의 하나 이상의 노드로 송신하는 것; 블록체인에 디지털 인증서의 디지털 요약을 저장하는 것과 연관된 트랜잭션 식별을 획득하는 것; 및 디지털 마크를 트랜잭션 식별과 연관시키는 것을 포함한다.
또 다른 양상에 따르면, 비일시적 컴퓨터-판독 가능 저장 매체는 하나 이상의 프로세서가 작동을 수행하게 하도록 하나 이상의 프로세서에 의해 실행 가능한 명령어로 구성되고, 작동은, 디지털 인증서를 생성하는 것; 디지털 인증서의 디지털 요약을 생성하는 것; 블록체인에 저장하기 위해 디지털 인증서의 디지털 요약을 블록체인의 하나 이상의 노드로 송신하는 것; 블록체인에 디지털 인증서의 디지털 요약을 저장하는 것과 연관된 트랜잭션 식별을 획득하는 것; 및 디지털 마크를 트랜잭션 식별과 연관시키는 것을 포함한다.
또 다른 양상에 따르면, 블록체인-기반 디지털 인증 장치는 디지털 인증서를 생성하기 위한 제1 생성 모듈; 디지털 인증서의 디지털 요약을 생성하기 위한 제2 생성 모듈; 블록체인에 저장하기 위해 디지털 인증서의 디지털 요약을 블록체인의 하나 이상의 노드로 송신하기 위한 송신 모듈; 블록체인에 디지털 인증서의 디지털 요약을 저장하는 것과 연관된 트랜잭션 식별을 획득하기 위한 획득 모듈; 및 디지털 마크를 트랜잭션 식별과 연관시키기 위한 연관 모듈을 포함할 수도 있다.
본 명세서에 개시된 실시형태는 하나 이상의 기술적 효과를 갖는다. 일부 실시형태에서, 방법 및 시스템은 엔티티 보증을 나타내기 위한 변조-방지 디지털 마크를 생성할 수 있다. 블록체인 내 저장은 원래 데이터의 정확한 기록 유지를 허용한다. 다른 실시형태에서, 엔티티가 (예를 들어, 권한을 갖는) 정보를 등록할 때, 등록 정보뿐만 아니라 등록 엔티티와의 등록 정보의 앵커(anchor)(연관)가 블록체인 트랜잭션에서 블록체인에 저장될 수 있다. 따라서, 등록 정보는 불변으로 되고 검증을 위해 검색 가능하게 된다. 또 다른 실시형태에서, 방법 및 시스템은 디지털 인증서 또는 다른 데이터를 보증하기 위해 이에 대해 등록된 엔티티와 연관된 고유한 디지털 마크를 생성할 수 있다. 또 다른 실시형태에서, 디지털 마크는 블록체인에 등록 정보를 저장하는 것과 연관된 트랜잭션 식별에 기초하여 생성될 수 있다. 이는 디지털 마크를 대응하는 등록된 엔티티에 고유하게 링크하고 아이덴티티(identity)의 조작을 방해한다. 일부 실시형태에서, 본 방법 및 시스템은 디지털 인증서를 생성할 수 있고 그리고 디지털 표현을 블록체인에 저장할 수 있다. 다른 실시형태에서, 엔티티가 디지털 인증서를 보증할 때, 디지털 인증서뿐만 아니라 보증 엔티티의 디지털 마크와의 디지털 인증서의 앵커(연관)가 블록체인 트랜잭션에서 블록체인에 저장될 수 있다. 따라서, 디지털 인증서 및 디지털 인증서의 보증인은 불변으로 되고 검증을 위해 검색 가능하게 된다. 따라서, 디지털 인증서의 보안이 향상된다.
본 명세서에 개시된 시스템, 방법 및 비일시적 컴퓨터 판독 가능 매체의 이러한 및 다른 특징뿐만 아니라 동작의 방법 및 구조의 관련 요소의 기능과 부분의 조합 및 제조의 경제는 첨부된 도면을 참조하여 다음의 설명 및 첨부된 청구항을 고려하면 더욱 명백해질 것이며, 이들 모두는 본 명세서의 일부를 형성하며, 여기서 동일한 참조 부호는 다양한 도면에서 대응하는 부분을 나타낸다. 그러나, 도면은 단지 예시 및 설명의 목적을 위한 것이며 한정하기 위한 것이 아님이 명백하게 이해될 것이다.
도 1a는 다양한 실시형태에 따른 블록체인-기반 디지털 인증 시스템의 예를 나타낸다.
도 1b는 다양한 실시형태에 따른 블록체인 네트워크의 예를 나타낸다.
도 2는 다양한 실시형태에 따라 블록체인-기반 디지털 마크를 생성하기 위한 방법의 예를 나타낸다.
도 3은 다양한 실시형태에 따라 블록체인-기반 디지털 인증서를 발행하기 위한 방법의 예를 나타낸다.
도 4는 다양한 실시형태에 따라 블록체인-기반 디지털 인증서를 검증하기 위한 방법의 예를 나타낸다.
도 5a는 다양한 실시형태에 따라 블록체인-기반 디지털 마크를 생성하기 위한 방법의 예의 흐름도를 나타낸다.
도 5b는 다양한 실시형태에 따라 블록체인-기반 디지털 인증서를 구현하기 위한 방법의 예의 흐름도를 나타낸다.
도 6a는 다양한 실시형태에 따른 블록체인-기반 디지털 마크 생성 컴퓨터 시스템의 예의 블록도를 나타낸다.
도 6b는 다양한 실시형태에 따른 블록체인-기반 디지털 인증 컴퓨터 시스템의 예의 블록도를 나타낸다.
도 7은 본 명세서에 설명되는 임의의 실시형태가 구현될 수 있는 컴퓨터 시스템의 예의 블록도를 나타낸다.
본 명세서에 개시된 실시형태는 블록체인-기반 디지털 인증 시스템, 방법 및 비일시적 컴퓨터 판독 가능 매체를 포함하지만, 이에 한정되지는 않는다. 다양한 실시형태에서, 디지털 마크(예를 들어, 인감/서명)가 엔티티의 공식적으로 검증된 정보에 기초하여 생성되어 엔티티에 의한 보증으로서의 역할을 할 수 있다. 일부 실시형태에서, 디지털 인증서는 보증 디지털 마크로 디지털 인증서를 앵커링(anchoring)하는 것에 기초하여 발행될 수 있다. 블록체인의 불변성, 일관성 및 정확성은 디지털 인증서의 유효성과 고유성을 보장할 수 있고, 비일관성 또는 비정확성을 종종 야기하는 변조를 방지한다. 다른 실시형태에서, 디지털 서명으로 디지털 인증서를 인증하는 것은 인증서 내용을 인증 엔티티와 링크시킨다. 따라서 디지털 인증서의 유효성이 효과적으로 검증될 수 있고 디지털 인증서의 보안이 향상되며 법적 효과가 증진된다.
다양한 실시형태에서, 개시된 디지털 인증 시스템, 방법 및 비일시적인 컴퓨터 판독 가능 매체는 누가 네트워크에 참여하고 합의 프로토콜을 실행하고 공유되는 블록체인 원장을 유지할 수 있는지에 따라 다양한 유형의 블록체인에 기초할 수 있다. 다양한 유형의 블록체인은 예를 들어, 공개 블록체인, 컨소시엄 블록체인, 사설 블록체인 등을 포함할 수 있다. 이하의 설명은 컨소시엄 블록체인을 참조한다. 그럼에도 불구하고, 개시된 디지털 인증 시스템, 방법 및 비일시적인 컴퓨터 판독 가능 매체는 다른 유형의 블록체인에 대해서도 적용될 수 있다.
블록체인은, 동작이 네트워크의 다양한 노드(예를 들어, 컴퓨팅 디바이스)에 의해 수행되므로, 통상적으로 분산 원장이라고 칭해지는 탈중앙화되거나 부분적으로 중앙화된 데이터베이스로 고려될 수 있다. 임의의 정보가 블록체인에 기재되고 저장되거나 이로부터 판독될 수 있다. 노드는 예를 들어, 블록체인 네트워크를 지원하고 원활하게 이를 실행되게 하는 컴퓨팅 디바이스 또는 대형 컴퓨터 시스템이다. 각각의 노드는 블록체인의 일부 또는 전부를 제공할 수 있다. 예를 들어, 합의 검증을 제공하는 노드는 합의-참여 노드(또는 합의 노드)로 칭해질 수 있다. 합의는 통상적으로 수용된 프로세싱 결과를 달성하기 위해 블록체인 노드의 네트워크에 대한 규칙의 알고리즘일 수 있다. 합의를 통해 데이터가 연속적으로 블록의 체인에 추가된다. 블록에 변경이 이루어지면, 체인의 선행 블록에 대한 링크가 유효하지 않게 되며, 합의 규칙을 통해 임의의 추가적인 허가되지 않은 액션을 방지할 수 있는 모든 참여자에게 보이게 된다.
컨소시엄 블록체인은 사전 설정된 노드에 의해 제어되는 합의 절차를 갖는 블록체인을 칭한다. 블록체인은 모든 사람 또는 승인된 참여자만 하이브리드 액세스 방법에 액세스하거나 채용하도록 허용할 수 있다. 예를 들어, 루트 해시(root hash)와 그 API(어플리케이션 프로그램 인터페이스)는 공개될 수 있으며; 외부 당사자는 API를 사용하여 특정 수의 조회를 하고 블록체인 상태와 관련된 정보를 얻을 수 있다.
컨소시엄 블록체인은 더욱 대중적인 카운터파트인 공개 블록체인과 비교될 때 가장 잘 이해될 수 있다. 공개 블록체인은 액세스 제한이 없으며, 인터넷 접속을 갖는 완전히 모든 사람이 공개 블록체인에 참여할 수 있음을 의미한다. 보다 구체적으로, 전 세계 누구나 블록체인에 포함된 데이터를 판독할 수 있으며 전 세계 누구나 공개 블록체인 상에서 트랜잭션을 실행할 수 있다. 또한, 블록체인에 블록을 추가할 수 있는 개인 또는 엔티티를 결정하는 프로세스인, 블록체인에 대한 합의 프로세스에 누가 참여할 수 있는지에 대한 제한이 없다. 공개 블록체인은 완전히 탈중앙화된 것으로 고려되며, 블록체인에 대한 제어는 임의의 단일 개인 또는 엔티티의 손에 있지 않다.
컨소시엄 블록체인은 허가되므로, 인터넷 접속을 갖는 모든 사람이 컨소시엄 블록체인에 대한 액세스를 얻을 수 없다는 점에서 공개 카운터파트와 상이하다. 이러한 유형의 블록체인은 또한 반(semi)-탈중앙화된 것으로 설명될 수 있다. 컨소시엄 블록체인에 대한 제어는 단일 엔티티에 부여되는 것이 아니라 승인된 개인의 그룹에 부여된다. 컨소시엄 블록체인을 사용하면, 합의 프로세스가 공개 블록체인의 합의 프로세스와 다를 수 있다. 누구든지 절차에 참여할 수 있는 대신, 컨소시엄 블록체인의 합의 참여자는 네트워크 상의 사전-승인된 노드의 그룹일 가능성이 크다. 노드는 다양한 국가, 기업 또는 다른 엔티티에 대응할 수 있다. 따라서, 컨소시엄 블록체인은 공개 블록체인에 내재된 보안 피처를 보유하고 있으며, 또한 네트워크를 통해 더 큰 제어의 정도를 허용한다.
도 1a는 다양한 실시형태에 따라 다양하게 개시된 단계 및 방법을 수행하기 위한 시스템(110)의 예를 나타낸다. 나타낸 바와 같이, 시스템(110)은 등록 시스템(111), 블록체인 시스템(112), 인증 시스템(113) 및 공식 에이전시 시스템(114)을 포함할 수 있으며, 그 각각은 네트워크(119)에 의해 나타내어지는 다양한 유형의 통신을 통해 하나 이상의 물리적 하드웨어 디바이스 또는 함께 결합된 가상 디바이스에 대응할 수 있다.
등록 시스템(111), 블록체인 시스템(112), 인증 시스템(113) 및 공식 에이전시 시스템(114) 각각은 서버, 컴퓨터, 모바일 폰 등과 같은 하나 이상의 컴퓨팅 디바이스에서 구현될 수 있다. 예를 들어, 각각의 시스템은 서버의 클러스터에 구현될 수 있다. 서버의 클러스터는 부하 밸런싱을 채용할 수 있다.
이 도면에서는 등록 시스템(111), 블록체인 시스템(112), 인증 시스템(113) 및 공식 에이전시 시스템(114)이 단일 구성 요소로서 나타내어져 있지만, 이들 시스템은 단일 디바이스 또는 함께 결합된 복수의 디바이스로서 구현될 수 있다. 즉, 도 1a의 시스템 중 2개 이상이, 단일 시스템에 통합되거나 별개의 시스템으로서 구현될 수 있다. 예를 들어, 등록 시스템(111) 및 인증 시스템(113)은 하나 이상의 컴퓨팅 디바이스를 포함하는 디지털 인증 시스템(118)에 통합될 수 있다. 디지털 인증 시스템(118)은 블록체인-기반 디지털 인증 시스템으로 칭해질 수 있다. 통합된 경우, 등록 시스템(111) 및 인증 시스템(113)은 통합 시스템의 다양한 모듈 또는 유사한 구성 요소로서 구현될 수 있다.
각각의 등록 시스템(111), 블록체인 시스템(112), 인증 시스템(113) 및 공식 에이전시 시스템(114)은 적절한 소프트웨어(예를 들어, 등록 어플리케이션 프로그램 인터페이스, 블록체인 어플리케이션 프로그램 인터페이스, 디지털 인증서 생성 프로그램, 공식 에이전시 어플리케이션 인터페이스) 및/또는 하드웨어(예를 들어, 유선, 무선 접속)로 설치되어 시스템(110)의 다른 시스템 또는 디바이스에 액세스할 수 있다. 각각의 등록 시스템(111), 블록체인 시스템(112), 인증 시스템(113) 및 공식 에이전시 시스템(114)은 하나 이상의 프로세서 및 하나 이상의 프로세서에 결합된 하나 이상의 메모리를 포함할 수 있다. 메모리는 비일시적이고 컴퓨터-판독 가능하며, 하나 이상의 프로세서로 하여금 본 명세서에 설명된 동작을 수행하게 하기 위해 하나 이상의 프로세서에 의해 실행 가능한 명령어로 구성될 수 있다.
일반적으로, 등록 시스템(111), 블록체인 시스템(112), 인증 시스템(113) 및 공식 에이전시 시스템(114)은 네트워크(119)를 통해 서로 통신할 수 있다. 예를 들어, 등록 시스템(111), 블록체인 시스템(112), 인증 시스템(113) 및 공식 에이전시 시스템(114)은 데이터가 통신될 수 있는 하나 이상의 유선 또는 무선 네트워크(예를 들어, 인터넷)를 통해 서로 통신할 수 있다. 시스템 구성 요소의 다양한 양상이 도 1b 내지 도 7을 참조하여 이하 더욱 상세하게 설명된다.
도 1b는 다양한 실시형태에 따른 블록체인 네트워크(120)의 예를 나타낸다. 나타낸 바와 같이, 블록체인 네트워크(120)는 전술한 블록체인 시스템(112)을 포함할 수 있다. 블록체인 시스템(112)은 복수의 블록체인 노드(예컨대, 노드 1, 노드 2, 노드 3, 노드 4, 노드 i 등)를 포함할 수 있다. 블록체인 노드는 하나의 블록체인 노드가 다른 블록체인 노드와 통신하는 네트워크(예를 들어, 피어-투-피어 네트워크)를 형성할 수 있다. 나타낸 바와 같은 블록체인 노드의 순서 및 개수는 단지 예일 뿐이고, 설명의 단순화를 위한 것이다. 블록체인 노드는 서버, 컴퓨터 등에 구현될 수 있다. 각각의 블록체인 노드는 TCP/IP와 같은 다양한 유형의 통신 방법을 통해 함께 결합된 하나 이상의 물리적 하드웨어 디바이스 또는 가상 디바이스에 대응할 수 있다. 분류에 따라, 블록체인 노드는 전체 노드, 게스(Geth) 노드, 합의 노드 등을 포함할 수 있다.
다양한 실시형태에서, 블록체인 시스템(112)의 하나 이상의 노드는 전술한 등록 시스템(111), 인증 시스템(113) 및 공식 에이전시 시스템(114)과 같은 다른 시스템 및 디바이스와 상호 작용할 수 있다. 상호 작용은 예를 들어, 트랜잭션, 인증, 계약 등을 목적으로 데이터의 송신 및/또는 수신을 수반할 수 있다. 일 예에서, 노드 A(예를 들어, 모바일 폰, 컴퓨터 등)는 디지털 인증 시스템(118)의 디바이스에 대응할 수 있으며, 블록체인에 저장하기 위해 노드 1(또는 블록체인 시스템(112)의 복수의 노드)에 정보를 송신할 수 있다. 저장 프로세스는 블록체인 트랜잭션을 통해 달성될 수 있다. 예를 들어, 정보는 블록체인 계약(예를 들어, 스마트 계약)에 기입될 수 있으며, 블록체인 트랜잭션은 노드 1(또는 블록체인 합의 규칙에 기반한 권한을 가진 하나 이상의 다른 노드)에 의해 개시되어 계약을 블록체인에 배포할 수 있다. 다른 블록체인 트랜잭션과 마찬가지로, 여기의 트랜잭션은 트랜잭션 해시에 대응할 수 있다. 트랜잭션 해시는 다양한 트랜잭션 정보를 해시 함수에 제시한 출력일 수 있다. 블록체인은 트랜잭션의 해시값을 저장할 수 있다. 나중에 (예를 들어, 검증을 위해) 정보가 검색될 필요가 있을 때, 노드 A/노드 B(예를 들어, 모바일 폰, 컴퓨터 등)는 노드 1/노드 2(또는 블록체인 시스템(112)의 복수의 노드)에 블록체인으로부터 정보를 획득하기 위해 다른 트랜잭션을 개시하도록 명령할 수 있다. 다른 트랜잭션은 정보를 획득하기 위해 주소를 조회할 수 있다. 노드 B는 디지털 인증 시스템(118), 공식 에이전시 시스템(114), 또는 블록체인 시스템(112)에 결합된 다른 시스템(미도시)에 속할 수 있다.
블록체인 시스템(112)과의 상호 작용에서, 노드 A 및 노드 B는 적절한 블록체인 소프트웨어와 함께 설치되어 트랜잭션을 개시, 전달 또는 액세스할 수 있다. 노드 A는 노드 1 또는 블록체인의 하나 이상의 다른 노드와의 통신을 통해 블록체인에 액세스할 수 있고, 노드 B는 노드 2 또는 블록체인의 하나 이상의 다른 노드와의 통신을 통해 블록체인에 액세스할 수 있다. 노드 A는 노드 1 또는 유사한 노드를 통해 블록체인에 트랜잭션을 제출하여 트랜잭션을 블록체인에 추가하도록 요청할 수 있다.
블록체인은 각각 메모리를 포함하거나 메모리에 결합하는 복수의 블록체인 노드에 의해 유지될 수 있다. 일부 실시형태에서, 메모리는 풀(pool) 데이터베이스를 저장할 수 있다. 풀 데이터베이스는 분산된 방식으로 복수의 블록체인 노드에 액세스 가능할 수 있다. 예를 들어, 풀 데이터베이스는 각각 블록체인 노드의 메모리에 저장될 수 있다. 풀 데이터베이스는 노드 A와 유사한 하나 이상의 사용자 디바이스에 의해 제출된 복수의 트랜잭션을 저장할 수 있다.
일부 실시형태에서, 확인되지 않은 트랜잭션의 트랜잭션 요청을 수신한 후에, 수신 블록체인 노드는 트랜잭션의 일부 예비 검증을 수행할 수 있다. 예를 들어, 도 1b를 참조하면, 노드 1은 노드 A로부터 트랜잭션을 수신한 후에 예비 검증을 수행할 수 있다. 일단 검증되면, 트랜잭션은 수신 블록체인 노드(예를 들어, 노드 1)의 풀 데이터베이스에 저장될 수 있으며, 이는 하나 이상의 다른 블록체인 노드(예를 들어, 노드 3, 노드 4)에 트랜잭션을 또한 전달할 수 있다. 하나 이상의 다른 블록체인 노드는 수신 노드에 의해 행해진 프로세스를 반복할 수 있다. 일단 대응하는 풀 데이터베이스의 트랜잭션이 특정 레벨(예를 들어, 임계량)에 도달하면, 블록체인 노드는 합의 규칙 또는 다른 규칙에 따라 대응하는 풀 데이터베이스에서 트랜잭션의 배치(batch)를 각각 검증할 수 있다.
블록체인 트랜잭션이 블록체인 계약(예를 들어, 스마트 계약)을 포함하면, 블록체인 노드는 블록체인 계약을 국부적으로 실행할 수 있다. 블록체인 계약은 디지털 방식으로 계약의 협상 또는 성과를 촉진, 검증 또는 시행하기 위해 의도된 컴퓨터 프로토콜이다. 블록체인 계약은 제3자 없이 신뢰성 있는 블록체인 트랜잭션을 수행할 수 있다. 블록체인 트랜잭션의 예는 (계약 배포에 의한) 데이터 저장 및 (계약에의 액세스 또는 실행에 의한) 검색에 대한 계약 코드로 데이터를 인코딩할 수 있다. 블록체인 계약은 엔티티 정보, 디지털 인증서의 디지털 요약 등과 같은 사용자-기입 계약 코드를 포함할 수 있다.
합의 규칙에 따라 블록체인 트랜잭션의 배치(batch)를 성공적으로 검증하는 특정 블록체인 노드는 블록체인의 로컬 사본에 추가하고 다른 블록체인 노드에 결과를 확산시키기 위해 블록체인 트랜잭션을 패킹(packing)할 수 있다. 특정 블록체인 노드는 우선 검증을 성공적으로 완료했거나 검증 권한을 획득했거나, 다른 합의 규칙 등에 기초하여 결정된 블록체인 노드일 수 있다. 그 후, 다른 블록체인 노드는 블록체인 트랜잭션을 국부적으로 실행하고, 실행 결과를 (예를 들어, 해시 계산을 수행함으로써) 서로 검증하고, 블록체인의 사본을 특정 블록체인 노드의 사본과 동기화할 수 있다. 블록체인의 로컬 사본을 갱신함으로써, 다른 블록체인 노드는 유사하게 블록체인 트랜잭션의 이러한 정보를 각각의 로컬 메모리에 기입할 수 있다. 따라서, 블록체인 계약이 배포된다. 배포된 계약은 실행을 위해 블록체인 상의 대응 주소를 통해 나중에 액세스될 수 있다. 예를 들어, 계약서에 저장된 데이터가 검색될 수 있다. 어떤 지점에서 검증이 실패하면 블록체인 트랜잭션이 거부된다. 전술한 내용에도 불구하고, 다른 유형의 블록체인 시스템 및 연관된 합의 규칙이 개시된 블록체인 시스템에 적용될 수 있다.
도 2는 다양한 실시형태에 따라 블록체인-기반 디지털 마크를 생성하기 위한 방법(200)의 예를 나타낸다. 방법(200)은 도 1a의 시스템(110)의 하나 이상의 구성 요소(예를 들어, 등록 시스템(111), 블록체인 시스템(112), 인증 시스템(113), 공식 에이전시 시스템(114))에 의해 구현될 수 있다. 전술한 바와 같이, 별개의 시스템으로 나타내었지만, 등록 시스템(111) 및 인증 시스템(113)은 하나 이상의 컴퓨팅 디바이스를 포함하는 디지털 인증 시스템(118)에 통합될 수 있다. 이하 제시되는 동작은 예시적인 것으로 의도된다. 구현에 따라, 방법(200)은 다양한 순서 또는 병렬로 수행되는 추가적인, 더 적은 또는 대안적인 단계를 포함할 수 있다.
일부 실시형태에서, 단계 211에서, 제1 엔티티는 등록 시스템(111)을 통해 정보 등록을 개시할 수 있다. 등록 정보는 식별 번호, 주소, 연락처 정보 등과 같은 엔티티의 아이덴티티 정보를 포함할 수 있다. 엔티티는 개인, 법인 또는 기업 또는 기관 등과 연관될 수 있다. 예를 들어, 법인은 법인의 정보(예를 들어, 법인의 명칭, 법인의 대표자, 또는 법인의 연락처 등)를 제출함으로써 등록 시스템(111)에 법인 정보의 등록을 개시할 수 있다.
단계 212에서, 등록 시스템(111)은 인증 시스템(113)에 검증 요청(212)을 송신할 수 있다. 등록 정보는 또한 인증 시스템(113)으로 송신될 수 있다.
단계 213에서, 인증 시스템(113)은 공식 에이전시 시스템(114)에 엔티티의 아이덴터티의 검증을 요청할 수 있다. 예를 들어, 인증 시스템(113)은 공식 에이전시 시스템(114)의 어플리케이션 프로그램 인터페이스와 통신하여 아이덴티티를 검증할 수 있다. 다른 예로서, 인증 시스템(113)은 공식 에이전시 시스템(114)에 법인 등록 데이터베이스에 조회하고 법인의 아이덴티티를 검증하도록 요청하기 위해 등록 정보를 송신할 수 있다.
단계 214에서, 공식 에이전시 시스템(114)은 검증 결과를 인증 시스템(113)으로 반환할 수 있다.
단계 221에서, 검증이 성공하면, 인증 시스템(113)은 블록체인 시스템(112)으로 등록 정보를 송신하여 블록체인 시스템(112)에 의해 유지되는 블록체인에 저장할 수 있다. 등록 정보는 공개 정보로 고려되어 블록체인의 다양한 노드에서 이용 가능할 수 있다.
다양한 실시형태에서, 인증 시스템(113)은 하나 이상의 경량 노드(예를 들어, 노드 A, 노드 B)를 포함할 수 있다. 인증 시스템(113)은 경량 노드(들)에 결합된 블록체인 시스템(112)의 노드(예를 들어, 노드 1)를 통해 블록체인 트랜잭션(또는 축약하여 트랜잭션)을 개시할 수 있다. 예를 들어, 등록 정보는 블록체인 계약(예를 들어, 스마트 계약)에 기입될 수 있고, 블록체인 트랜잭션이 개시되어 계약을 블록체인에 배포할 수 있다. 배포에 의해, 계약은 실행, 검색 또는 다른 동작을 위해 블록체인으로부터 액세스될 수 있다. 이 경우의 블록체인 트랜잭션은 트랜잭션 식별(예를 들어, 제1 트랜잭션 해시)에 대응할 수 있다. 예를 들어, 블록체인 트랜잭션 식별은 블록체인 트랜잭션의 해시값일 수 있다. 트랜잭션 식별은 또한 엔티티와 연관될 수 있다. 블록체인은 등록 정보를 저장할 수 있다. 블록체인은 또한 대응 트랜잭션 식별을 저장할 수 있다. 따라서, 블록체인 트랜잭션 식별 및 등록 정보는 앵커링(연관)된다. 트랜잭션 식별을 조회함으로써, 블록체인에 저장된 등록 정보가 검색될 수 있다. 예를 들어, 블록체인 트랜잭션 식별이 블록체인 시스템(112)(예를 들어, 블록체인 노드)에 전송되면, 블록체인 시스템(112)은 블록체인 계약을 실행하여 블록체인에 저장된 등록 정보를 검색할 수 있다. 블록체인 상에 등록 정보를 저장하고 검색하는 다른 많은 적절한 방식이 있다. 본 기술 분야의 통상의 기술자는 본 명세서의 실시형태가 전술한 예에 한정되지 않음을 이해해야 한다. 이 단락에 설명된 트랜잭션 및 트랜잭션 식별은 제1 트랜잭션 및 제1 트랜잭션 식별로 칭해질 수 있다.
단계 222에서, 블록체인 시스템(112)은 인증 시스템(113)으로 제1 트랜잭션 식별(예를 들어, 디지털 요약)을 반환할 수 있다. 제1 트랜잭션 식별은 엔티티를 고유하게 나타내고 등록 정보에 대응하는 디지털 변조-방지 표현일 수 있다. 예를 들어, 블록체인 시스템(112)은 제1 트랜잭션의 해시값을 제1 트랜잭션 식별로서 인증 시스템(113)으로 반환할 수 있다. 제1 트랜잭션 식별은, 엔티티가 블록체인 내에 존재함을 나타낸다.
단계 231에서, 인증 시스템(113)은 적어도 엔티티에 대한 제1 트랜잭션 식별에 기초하여 디지털 마크(예를 들어, 디지털 서명/인감)를 생성할 수 있다. 디지털 마크(예를 들어, 디지털 서명/인감)는 제1 트랜잭션 식별(예를 들어, 제1 트랜잭션의 해시값)에 기초하여 고유하게 식별될 수 있다. 인증 시스템(113)은 엔티티와 디지털 마크(예를 들어, 디지털 서명/인감) 사이의 관계를 유지할 수 있다.
단계 241에서, 인증 시스템(113)은 블록체인에 저장하기 위해 블록체인 시스템(112)에 디지털 마크(예를 들어, 디지털 서명/인감)와 엔티티 사이의 연관 관계를 송신할 수 있다. 따라서, 생성된 디지털 마크(예를 들어, 디지털 서명/인감)와 엔티티 사이의 연관 관계는 블록체인 시스템(112) 및/또는 인증 시스템(113)에 의해 저장될 수 있다.
다양한 실시형태에서, 인증 시스템(113)은 블록체인 시스템(112)의 노드를 통해 다른 블록체인 트랜잭션을 개시할 수 있다. 이 단락에서 설명되는 트랜잭션은 제2 트랜잭션으로 칭해질 수 있고 제2 트랜잭션 식별에 대응할 수 있다. 예를 들어, 디지털 마크(예를 들어, 디지털 서명/인감)와 엔티티 사이의 단계 241에서의 연관의 연관 관계가 블록체인 계약(예를 들어, 스마트 계약)에 기입될 수 있다. 전술한 단계 221을 참조하여 전술한 프로세스와 유사하게, 제2 블록체인 트랜잭션이 개시되어 계약을 블록체인에 배포할 수 있다. 제2 블록체인 트랜잭션은 또한 엔티티와 연관되는 제2 트랜잭션 식별(예를 들어, 제2 트랜잭션 해시)에 대응할 수 있다. 블록체인은 연관 관계를 저장할 수 있다. 블록체인은 또한 대응하는 제2 트랜잭션 식별을 저장할 수 있다. 제2 트랜잭션 식별을 조회함으로써, 블록체인에 저장된 연관이 검색될 수 있다.
단계 251에서, 전술한 단계가 성공적으로 실행되면, 인증 시스템(113)은 등록 시스템(111)에 등록 성공의 메시지를 반환할 수 있다.
도 3은 다양한 실시형태에 따라 블록체인-기반 디지털 인증서를 발행하기 위한 방법(300)의 예를 나타낸다. 방법(300)은 도 1a의 시스템(110)의 하나 이상의 구성 요소(예를 들어, 등록 시스템(111), 블록체인 시스템(112), 인증 시스템(113))에 의해 구현될 수 있다. 전술한 바와 같이, 별개의 시스템으로 나타내었지만, 등록 시스템(111) 및 인증 시스템(113)은 하나 이상의 컴퓨팅 디바이스를 포함하는 디지털 인증 시스템(118)에 통합될 수 있다. 이하에 제시되는 동작은 예시적인 것으로 의도된다. 구현에 따라, 본 방법(300)은 다양한 순서 또는 병렬로 수행되는 추가적인, 더 적은 또는 대안적인 단계를 포함할 수 있다. 본 방법(300)은 방법(200) 후에 실행될 수 있다.
일부 실시형태에서, 단계 311에서, 제1 엔티티는 등록 시스템(111)을 통해 인증서(예를 들어, 디지털 인증서) 생성 요청을 개시할 수 있다. 본 명세서에서, 인증서는 특정 사실 또는 다른 정보를 증명하는 문서를 포함할 수 있다. 인증서는 엔티티에 의해 보증될 수 있다. 예를 들어, 법인이나 기관과 같은 엔티티는 디지털 인증서 형태로 금융 트랜잭션 영수증을 발행할 수 있다. 다른 예에서, 보험 기관은 디지털 인증서의 형태로 보험 증권 또는 보험 증서를 발행할 수 있다.
단계 312에서, 등록 시스템(111)은 인증 데이터를 생성할 수 있다. 인증 데이터는 요청에 따라 인증서의 내용을 포함할 수 있다. 예를 들어, 금융 트랜잭션에 대한 영수증을 생성하라는 요청은 금융 트랜잭션의 날짜, 금융 트랜잭션의 양, 금융 트랜잭션의 지불자 및 수취인 등과 같은 인증 데이터에 대응할 수 있다.
단계 321에서, 등록 시스템(111)은 요청된 인증서를 인증 시스템(113)에 송신하고, 인증 시스템(113)에 요청된 인증서를 도 2와 관련하여 전술한 디지털 마크(예를 들어, 디지털 서명/인감)로 앵커링할 것을 요청할 수 있다. 본 명세서에서, 앵커링은 연관을 의미하거나 이와 다르게 연관을 확립하는 것을 의미할 수 있다. 연관은 디지털 인증 시스템(118)의 하나 이상의 구성 요소에 저장될 수 있다.
단계 322에서, 인증 시스템(113)은 요청된 인증서를 디지털 마크(예를 들어, 디지털 서명/인감)로 앵커링할 수 있다. 일부 실시형태에서, 인증 시스템(113)은 디지털 인증서의 디지털 요약을 생성할 수 있다.
단계 331에서, 인증 시스템(113)은 블록체인에 디지털 요약을 저장하도록 블록체인 시스템(112)에 요청하기 위해 디지털 인증서의 디지털 요약을 블록체인 시스템(112)에 송신할 수 있다.
다양한 실시형태에서, 인증 시스템(113)은 블록체인 시스템(112)의 노드를 통해 다른 블록체인 트랜잭션을 개시할 수 있다. 이 단락에서 설명되는 트랜잭션은 제3 트랜잭션으로 칭해질 수 있고 제3 트랜잭션 식별에 대응할 수 있다. 예를 들어, 디지털 인증서의 디지털 요약은 블록체인 계약(예를 들어, 스마트 계약)에 기입될 수 있다. 전술한 단계 221을 참조하여 전술한 프로세스와 유사하게, 제3 블록체인 트랜잭션이 개시되어 블록체인에 계약을 배포할 수 있다. 제3 블록체인 트랜잭션은 제3 트랜잭션 식별(예를 들어, 제3 트랜잭션 해시)에 대응할 수 있다. 제3 트랜잭션 식별은 디지털 인증서의 디지털 요약, 제3 트랜잭션의 타임스탬프, 제3 트랜잭션의 개시자 등과 같은 정보와 연관될 수 있다. 블록체인은 디지털 요약(예를 들어, 디지털 인증서의 해시값)을 저장할 수 있지만, 프라이버시를 보장하기 위해 디지털 인증서의 상세 사항(예를 들어, 일반 텍스트)을 저장하지 않는다. 블록체인은 또한 대응하는 제3 트랜잭션 식별을 저장할 수 있다. 제3 트랜잭션 식별을 조회함으로써, 디지털 인증서의 블록체인에 저장된 디지털 요약이 검색될 수 있다. 스마트 계약에 대한 다른 대안적인 방법이 채용되어 블록체인에 인증서의 저장을 달성할 수 있다.
단계 332에서, 블록체인 시스템(112)은 디지털 인증서의 디지털 요약을 저장하기 위해 제3 트랜잭션의 제3 트랜잭션 식별(예를 들어, 제3 트랜잭션 해시)을 인증 시스템(113)으로 반환할 수 있다. 단계 331 및 332에 의해, 블록체인에 저장된 디지털 인증서의 디지털 요약은 나중에 의심스러운 디지털 인증서의 요약에 대해 검증하는 데 사용될 수 있다.
단계 341에서, 인증 시스템(113)은 인증서의 디지털 요약을 저장하기 위해 제3 트랜잭션의 제3 트랜잭션 식별로 디지털 인감/서명을 앵커링할 수 있다. 단계 322에서, 요청된 인증서는 디지털 마크(예를 들어, 디지털 서명/인감)로 앵커링되기 때문에, 인증 시스템(113)에 저장된 디지털 인증서는 블록체인에 저장된 디지털 요약 표현에 링크된다.
단계 351에서, 인증 시스템(113)은 디지털 인감/서명, 인증서의 디지털 요약을 저장하기 위한 제3 트랜잭션의 제3 트랜잭션 식별 및 디지털 인증서의 디지털 요약 사이의 연관을 블록체인에 저장하기 위해 블록체인 시스템(112)에 송신할 수 있다. 따라서 엔티티, 디지털 인감/서명 및 디지털 인증서가 연관되고 연관 관계가 블록체인에 저장된다.
다양한 실시형태에서, 인증 시스템(113)은 블록체인 시스템(112)의 노드를 통해 다른 블록체인 트랜잭션을 개시할 수 있다. 이 단락에서 설명되는 트랜잭션은 제4 트랜잭션으로 칭해질 수 있고 제4 트랜잭션 식별에 대응할 수 있다. 예를 들어, 단계 351에서 연관의 연관 관계는 블록체인 계약(예를 들어, 스마트 계약)에 기입될 수 있다. 전술한 단계 221을 참조하여 전술된 프로세스와 유사하게, 제4 블록체인 트랜잭션이 개시되어 계약을 블록체인에 배포할 수 있다. 제4 블록체인 트랜잭션은 제4 트랜잭션 식별(예를 들어, 제4 트랜잭션 해시)에 대응할 수 있다. 블록체인은 연관 관계를 저장할 수 있다. 블록체인은 또한 대응하는 트랜잭션 식별을 저장할 수 있다. 제4 트랜잭션 식별을 조회함으로써, 블록체인에 저장된 연관이 검색될 수 있다.
단계 361에서, 전술한 단계가 성공적으로 실행되면, 인증 시스템(113)은 성공의 메시지를 등록 시스템(111)으로 반환할 수 있다.
도 4는 다양한 실시형태에 따라 블록체인-기반 디지털 인증서를 검증하기 위한 방법(400)의 예를 나타낸다. 본 방법(400)은 도 1a의 시스템(110)의 하나 이상의 구성 요소(예를 들어, 등록 시스템(111), 블록체인 시스템(112), 인증 시스템(113))에 의해 구현될 수 있다. 전술한 바와 같이, 별개의 시스템으로 나타내었지만, 등록 시스템(111) 및 인증 시스템(113)은 하나 이상의 컴퓨팅 디바이스를 포함하는 디지털 인증 시스템(118)에 통합될 수 있다. 이하 제시되는 동작은 예시적인 것으로 의도된다. 구현에 따라, 본 방법(400)은 다양한 순서로 또는 병렬로 수행되는 추가적인, 더 적은 또는 대안적인 단계를 포함할 수 있다.
일부 실시형태에서, 단계 411에서, 제3자 엔티티는 등록 시스템(111)을 통해 인증서의 검증을 개시할 수 있다. 예를 들어, 제3자가 디지털 인증서를 획득했을 수 있고, 인증서를 인증하기 위해 획득된 디지털 인증서가 블록체인에 존재하는지 검증하기를 원한다. 따라서, 제3자는 검증을 위해 디지털 인증서를 제출할 수 있다.
단계 412에서, 등록 시스템(111)은 디지털 마크(예를 들어, 디지털 서명/인감)의 앵커링과 같은 인증서를 검증하기 위한 요청을 인증 시스템(113)에 송신할 수 있다.
단계 413에서, 인증 시스템(113)은 이에 응답하여 인증서에 대응되는 데이터를 블록체인으로부터 획득하여 인증서를 검증할 수 있다. 예를 들어, 인증 시스템(113)은 블록체인 시스템(112)의 노드를 통해 블록체인에 저장된 정보(예를 들어, 인증서와 연관된 디지털 요약, 인증서와 연관된 디지털 마크(예를 들어, 디지털 서명/인감))를 조회할 수 있다.
단계 421에서, 인증 시스템(113)은 블록체인으로부터 대응하는 데이터를 획득할 수 있다. 인증서가 블록체인에 존재하면, 데이터는 (블록체인에 저장된 디지털 요약으로 칭해지는) 인증서와 연관된 디지털 요약, (블록체인에 저장된 디지털 마크로 칭해지는) 인증서와 연관된 디지털 마크(예를 들어, 디지털 서명/인감)와 같은, 도 3을 참조하여 전술한 블록체인에 저장된 정보를 포함할 수 있다.
단계 422에서, 인증 시스템(113)은 (1) 디지털 마크(예를 들어, 디지털 서명/인감)와 인증서 사이 및 (2) 인증서의 요약과 인증서와 연관된 블록체인에 저장된 디지털 요약 사이의 앵커링을 검증할 수 있다. 데이터는 디지털 인증서의 디지털 요약을 생성하기 위해 사용되는 암호화 프로세스(예를 들어, SHA-256 해싱)를 포함할 수 있기 때문에, 인증 시스템(113)은 단계 422에서 검증을 수행하기 위해 인증서의 요약을 생성할 수 있다.
대안적으로, 블록체인 시스템(112)은 검증을 수행하고 인증 시스템(113)으로 결과를 반환할 수 있다.
단계 431에서, 인증 시스템(113)은 등록 시스템(111)으로 검증 결과를 반환할 수 있다.
도 5a는 다양한 실시형태에 따라 블록체인-기반 디지털 마크를 생성하기 위한 방법(510)의 예의 흐름도를 나타낸다. 본 방법(510)은 도 1a의 시스템(110)의 하나 이상의 구성 요소(예를 들어, 디지털 인증 시스템(118))에 의해 구현될 수 있다. 본 방법(510)은 다양한 하드웨어 머신 및/또는 소프트웨어를 포함하는 시스템에 의해 구현될 수 있다. 예를 들어, 디지털 인증 시스템(118)은 하나 이상의 시스템 또는 디바이스(예를 들어, 컴퓨터, 서버)에 의해 구현될 수 있다. 본 방법(510)을 구현하는 시스템은 하나 이상의 프로세서 및 하나 이상의 프로세서에 결합되고 시스템(예를 들어, 프로세서)으로 하여금 본 방법(510)을 수행하게 하도록 하나 이상의 프로세서에 의해 실행 가능한 명령어로 구성되는 하나 이상의 비일시적인 컴퓨터-판독 가능 저장 매체(예를 들어, 하나 이상의 메모리)를 포함할 수 있다. 이하에 제시되는 동작은 예시적인 것으로 의도된다. 구현에 따라, 본 방법(510)은 다양한 순서 또는 병렬로 수행되는 추가적인, 더 적은 또는 대안적인 단계를 포함할 수 있다. 본 방법(510)의 구현의 예는 도 2를 참조하여 위에서 기재되어 있다.
단계 511은 엔티티의 엔티티 정보를 획득하는 단계를 포함한다. 일부 실시형태에서, 엔티티는 법인이고, 엔티티 정보는 공식 에이전시에 의해 인증된 법인 등록 정보를 포함한다. 예를 들어, 디지털 인증 시스템(118)은 엔티티로부터 등록 정보로서 엔티티 정보를 획득할 수 있다. 디지털 인증 시스템(118)은 검증을 위해 공식 에이전시 시스템에 등록 정보를 전달할 수 있다. 일단 검증되면, 이하의 단계가 수행되어 디지털 마크를 생성할 수 있다.
단계 512는 블록체인에 저장하기 위해 블록체인의 하나 이상의 노드에 엔티티 정보를 송신하는 단계를 포함한다. 일부 실시형태에서, 블록체인에 저장하기 위해 블록체인의 하나 이상의 노드로 엔티티 정보를 송신하는 단계는, 적어도 엔티티 정보를 블록체인 계약에 기입하는 단계; 및 하나 이상의 노드로 하여금 블록체인 거래를 개시하게 하여 블록체인 거래를 배포하는 단계를 포함한다. 예를 들어, 블록체인의 노드는 블록체인 트랜잭션을 개시하는 권한을 가질 수 있다. 디지털 인증 시스템(118)은 블록체인 트랜잭션을 개시하기 위해 하나 이상의 노드에 결합될 수 있다. 노드는 합의 규칙에 따라 블록체인 트랜잭션을 검증하고 실행할 수 있다. 배포 후에, 블록체인 트랜잭션이 블록체인의 새 블록으로 패킹되며, 이 사본은 노드에서 이용 가능하다. 상세 사항은 전술한 단계 221을 참조할 수 있다. 이 경우의 블록체인 트랜잭션은 트랜잭션 식별(예를 들어, 트랜잭션 해시)에 대응할 수 있다. 블록체인은 엔티티 정보를 저장할 수 있다. 블록체인은 또한 대응하는 트랜잭션 식별을 저장할 수 있다. 트랜잭션 식별을 조회함으로써, 블록체인에 저장된 엔티티 정보가 검색될 수 있다.
단계 513은 엔티티 정보를 블록체인에 저장하는 것과 연관된 트랜잭션 식별(예를 들어, 디지털 요약)을 획득하는 단계를 포함한다. 엔티티 정보가 블록체인에 성공적으로 저장되면 트랜잭션 식별은 블록체인의 하나 이상의 노드에 의해 반환될 수 있다. 일부 실시형태에서, 트랜잭션 식별은 블록체인 트랜잭션의 해시값을 포함한다. 예를 들어, 해시 알고리즘은 임의의 길이의 메시지를 고정-길이 메시지 다이제스트로 압축하는 함수로서 이해될 수 있다. 통상적으로 사용되는 해시 함수는 MD5 및 SHA를 포함한다. 블록체인 트랜잭션의 해시값은 입력으로서 블록체인 트랜잭션의 다양한 정보를 갖는 해시 함수의 출력을 포함할 수 있다. 블록체인 트랜잭션의 다양한 정보는 "로부터(from)"(전송자 주소), "값"(트랜잭션 값), "가스"(트랜잭션을 완료하기 위한 비용), "데이터"(블록체인 계약 데이터) 등과 같은 하나 이상의 트랜잭션 파라미터를 포함할 수 있다. 블록체인의 해시 알고리즘은 비가역적이며, 즉, 순방향 계산이 쉽고, 모든 컴퓨팅 자원이 소모되어도 역 계산이 수행될 수 없다. 따라서, 블록체인 트랜잭션의 해시값은 고유하다. 상세 사항은 전술한 단계222를 참조할 수 있다.
단계 514는 적어도 트랜잭션 식별에 기초하여 엔티티에 대한 디지털 마크를 생성하는 단계를 포함한다. 디지털 마크는 엔티티와 연관된다. 연관 관계는 디지털 인증 시스템(118)에 의해 유지될 수 있다. 일부 실시형태에서, 디지털 마크는 트랜잭션 식별(예를 들어, 블록체인 트랜잭션의 해시값)을 포함한다. 특정 데이터의 해시값은 전술한 블록체인 트랜잭션의 다양한 정보와 같은 데이터에 해시 알고리즘을 적용한 수치 결과이다. 예를 들어, 디지털 마크는 단계 513의 트랜잭션 식별일 수 있다. 트랜잭션 식별은 대응하는 트랜잭션의 다이제스트로서 대안적으로 칭해질 수 있다. 상세 사항은 전술한 단계 231을 참조할 수 있다.
일부 실시형태에서, 디지털 마크는 디지털 인감 또는 디지털 서명 중 적어도 하나를 포함하고; 디지털 마크는 엔티티의 보증을 나타내기 위해 디지털 인증서와 연관된다. 예를 들어, 연관에 의해, 디지털 마크와 디지털 인증서가 하나의 파일로 결합될 수 있다. 다른 예로서, 연관에 의해, 디지털 인증서는 디지털 마크에 링크될 수 있다.
일부 실시형태에서, 본 방법은 블록체인에 저장하기 위해 엔티티와 디지털 마크 사이의 연관 관계를 하나 이상의 노드로 송신하는 단계를 추가로 포함한다. 예를 들어, 블록체인의 노드는 블록체인 트랜잭션을 개시하는 권한을 가질 수 있다. 디지털 인증 시스템(118)은 블록체인 트랜잭션을 개시하기 위해 하나 이상의 노드에 결합될 수 있다. 노드는 합의 규칙에 따라 블록체인 트랜잭션을 검증하고 실행할 수 있다. 배포 후에, 블록체인 트랜잭션은 블록체인의 새 블록으로 패킹되며, 그 사본은 노드에서 이용 가능하다. 상세 사항은 전술한 단계 241을 참조할 수 있다. 이 경우의 블록체인 트랜잭션은 트랜잭션 식별(예를 들어, 트랜잭션 해시)에 대응할 수 있다. 블록체인은 연관을 저장할 수 있다. 블록체인은 또한 대응하는 트랜잭션 식별을 저장할 수 있다. 트랜잭션 식별을 조회함으로써, 블록체인에 저장된 연관이 검색될 수 있다.
일부 실시형태에서, 본 방법은, 디지털 인증서를 생성하는 단계; 디지털 마크를 상기 디지털 인증서와 연관시키는 단계; 블록체인에 저장하기 위해 블록체인의 하나 이상의 노드에 디지털 인증서를 송신하는 단계; 디지털 인증서를 블록체인에 저장하는 것과 관련된 다른 디지털 요약을 획득하는 단계; 디지털 마크를 다른 디지털 요약과 연관시키는 단계; 및 블록체인에 저장하기 위해 디지털 마크와 트랜잭션 식별 사이의 연관 관계를 하나 이상의 노드로 송신하는 단계를 더 포함한다. 디지털 마크와 다른 디지털 요약의 연관은 엔티티에 의한 보증을 나타낸다. 디지털 인증서가 다른 디지털 요약에 링크되어 있기 때문에, 디지털 인증서는 엔티티에 의해 보증된다. 본 방법은 블록체인에 저장하기 위해 트랜잭션 식별 정보와 디지털 마크의 연관 관계를 하나 이상의 노드로 송신하는 단계를 추가로 포함할 수 있다. 보다 상세한 사항은 도 5b를 참조하여 이하에서 설명된다.
다른 실시형태에서, 디지털 인증서는 임의의 수단에 의해 획득될 수 있다. 본 방법은 엔티티와 연관된 디지털 인증서의 디지털 요약을 생성하는 단계; 블록체인에 저장하기 위해 디지털 인증서의 디지털 요약을 블록체인의 하나 이상의 노드로 송신하는 단계; 블록체인에서 디지털 인증서의 디지털 요약을 저장하는 것과 연관된 다른 트랜잭션 식별을 획득하는 단계; 및 디지털 마크를 다른 트랜잭션 식별과 연관시키는 단계를 추가로 포함한다. 디지털 마크와 다른 트랜잭션 식별의 연관은 엔티티에 의한 보증을 나타낸다. 디지털 인증서가 다른 트랜잭션 식별과 링크되어 있기 때문에, 디지털 인증서는 엔티티에 의해 보증된다. 본 방법은 블록체인에 저장하기 위해 디지털 마크와 다른 트랜잭션 식별의 연관 관계를 하나 이상의 노드로 송신하는 단계를 추가로 포함할 수 있다.
또 다른 실시형태에서, 본 방법은, 엔티티와 연관된 디지털 인증서의 디지털 요약을 생성하는 단계; 및 디지털 마크를 디지털 요약과 연관시키는 단계를 추가로 포함한다. 디지털 마크와 디지털 요약의 연관은 엔티티에 의한 보증을 나타낸다. 디지털 인증서가 디지털 요약에 링크되어 있으므로, 디지털 인증서는 엔티티에 의해 보증된다. 본 방법은 블록체인에 저장하기 위해 디지털 마크와 디지털 요약의 연관 관계를 하나 이상의 노드로 송신하는 단계를 추가로 포함할 수 있다.
또 다른 실시형태에서, 본 방법은, 디지털 마크를 엔티티와 연관된 디지털 인증서와 연관시키는 단계를 추가로 포함한다. 디지털 마크와 디지털 인증서의 연관은 엔티티에 의한 보증을 나타낸다. 본 방법은 블록체인에 저장하기 위해 디지털 마크와 디지털 인증서의 연관 관계를 하나 이상의 노드로 송신하는 단계를 추가로 포함할 수 있다.
도 5b는 다양한 실시형태에 따라 블록체인-기반 디지털 인증서를 구현하기 위한 방법(520)의 예의 흐름도를 나타낸다. 본 방법(520)은 도 1a의 시스템(110)의 하나 이상의 구성 요소(예를 들어, 디지털 인증 시스템(118))에 의해 구현될 수 있다. 본 방법(520)은 다양한 하드웨어 머신 및/또는 소프트웨어를 포함하는 시스템에 의해 구현될 수 있다. 예를 들어, 디지털 인증 시스템(118)은 하나 이상의 시스템 또는 디바이스(예를 들어, 컴퓨터, 서버)에 의해 구현될 수 있다. 방법(520)을 구현하는 시스템은 하나 이상의 프로세서 및 하나 이상의 프로세서에 결합되고 시스템(예를 들어, 프로세서)으로 하여금 방법(520)을 수행하게 하도록 하나 이상의 프로세서에 의해 실행 가능한 명령어로 구성되는 하나 이상의 비일시적 컴퓨터-판독 가능 저장 매체(예를 들어, 하나 이상의 메모리)를 포함할 수 있다. 이하에 제시되는 동작은 예시적인 것으로 의도된다. 구현에 따라, 본 방법(520)은 다양한 순서 또는 병렬로 수행되는 추가적인, 더 적은 또는 대안적인 단계를 포함할 수 있다. 본 방법(520)의 구현의 예는 도 3 및 도 4를 참조하여 위에서 기재되어 있다.
단계 521은 디지털 인증서를 생성하는 단계를 포함한다. 일부 실시형태에서, 디지털 인증서를 생성하는 단계는, 법인인 엔티티로부터 디지털 인증서의 내용을 획득하는 단계; 및 내용을 포함하는 디지털 인증서를 생성하는 단계를 포함한다. 예를 들어, 디지털 인증 시스템(118)은 엔티티 또는 다른 소스로부터 디지털 인증서 상에 나타낼 필요가 있는 내용을 획득할 수 있다. 상세 사항은 전술한 단계 312를 참조할 수 있다.
선택적인 단계 522는 디지털 마크를 디지털 인증서와 연관시키는 단계를 포함한다. 디지털 마크는 도 5a를 참조하여 전술된 것일 수 있다. 디지털 마크는 디지털 인증 시스템(118)에 의해 유지될 수 있다. 일부 실시형태에서, 디지털 마크는 디지털 인감 및/또는 디지털 서명을 포함하고; 디지털 마크는 엔티티에 의한 보증과 연관된다. 상세 사항은 전술한 단계 322를 참조할 수 있다.
단계 523은 디지털 인증서의 디지털 요약을 생성하는 단계를 포함한다. 예를 들어, SHA-256과 같은 해시 프로세스가 사용되어 디지털 인증서로부터 디지털 요약을 생성할 수 있다. 따라서, 디지털 인증서의 내용은 암호화 표현으로 변환된다.
단계 524는 블록체인에 저장하기 위해 디지털 인증서의 디지털 요약을 블록체인의 하나 이상의 노드에 송신하는 단계를 포함한다. 일부 실시형태에서, 블록체인에 저장하기 위해 디지털 인증서의 디지털 요약을 블록체인의 하나 이상의 노드에 송신하는 단계는, 디지털 인증서의 디지털 요약 및 디지털 요약을 생성하기 위해 사용되는 암호화 프로세스(예를 들어, SHA-256 해싱)를 블록체인 계약에 기입하는 단계; 및 상기 하나 이상의 노드로 하여금 블록체인 계약을 배포하기 위해 블록체인 트랜잭션을 개시하게 하는 단계를 포함한다. 예를 들어, 블록체인의 노드는 블록체인 트랜잭션을 개시하는 권한을 가질 수 있다. 디지털 인증 시스템(118)은 블록체인 트랜잭션을 개시하기 위해 하나 이상의 노드에 결합될 수 있다. 노드는 합의 규칙에 따라 블록체인 트랜잭션을 검증하고 실행할 수 있다. 배포 후에, 블록체인 트랜잭션이 블록체인의 새 블록으로 패킹되며 이 사본은 노드에서 이용 가능하다. 상세 사항은 전술한 단계 331을 참조할 수 있다. 이 경우의 블록체인 트랜잭션은 트랜잭션 식별(예를 들어, 트랜잭션 해시)에 대응할 수 있다. 블록체인은 디지털 요약(예를 들어, 디지털 인증서의 해시값)을 저장할 수 있지만, 프라이버시를 보장하기 위해 디지털 인증서의 상세 사항(예를 들어, 일반 텍스트)은 저장할 수 없다. 블록체인은 또한 대응하는 트랜잭션 식별을 저장할 수 있다. 트랜잭션 식별을 조회함으로써, 디지털 인증서의 블록체인에 저장된 디지털 요약이 검색될 수 있다.
단계 525는 디지털 인증서의 디지털 요약을 블록체인에 저장하는 것과 연관된 트랜잭션 식별을 획득하는 단계를 포함한다. 디지털 인증서의 디지털 요약이 블록체인에 성공적으로 저장되면, 트랜잭션 식별(예를 들어, 트랜잭션의 요약)이 블록체인의 하나 이상의 노드에 의해 반환될 수 있다. 일부 실시형태에서, 디지털 요약은 디지털 인증서의 해시값을 포함하고; 트랜잭션 식별은 블록체인 트랜잭션의 해시값을 포함한다. 블록체인은 또한 프라이버시를 보호하기 위해 디지털 인증서의 일반 텍스트가 아닌 디지털 요약을 저장할 수 있다. 상세 사항은 전술한 단계 332를 참조할 수 있다.
단계 526은 디지털 마크를 트랜잭션 식별과 연관시키는 단계를 포함한다. 상세 사항은 전술한 앵커링 단계 341을 참조할 수 있다. 일부 실시형태에서, 디지털 마크를 트랜잭션 식별과 연관시키는 단계는, 디지털 마크, 트랜잭션 식별 및 디지털 요약을 연관시키는 단계를 포함한다. 일부 실시형태에서, 본 방법은, 디지털 마크와 트랜잭션 식별 정보 사이의 연관 관계를 블록체인에 저장하기 위해 하나 이상의 노드로 송신하는 단계를 추가로 포함한다. 일부 실시형태에서, 본 방법은, 디지털 마크, 트랜잭션 식별 및 디지털 요약 사이의 연관을 송신하는 단계를 추가로 포함한다. 예를 들어, 블록체인의 노드는 블록체인 트랜잭션을 개시하는 권한을 가질 수 있다. 디지털 인증 시스템(118)은 블록체인 트랜잭션을 개시하기 위해 하나 이상의 노드에 결합될 수 있다. 노드는 합의 규칙에 따라 블록체인 트랜잭션을 검증하고 실행할 수 있다. 배포 후에, 블록체인 트랜잭션이 블록체인의 새 블록으로 패킹되며, 이 사본은 노드에서 이용 가능하다. 상세 사항은 전술한 단계 351을 참조할 수 있다. 이 경우의 블록체인 트랜잭션은 트랜잭션 식별(예를 들어, 트랜잭션 해시)에 대응할 수 있다. 블록체인은 연관을 저장할 수 있다. 블록체인은 또한 대응하는 트랜잭션 식별을 저장할 수 있다. 트랜잭션 식별을 조회함으로써, 블록체인에 저장된 연관이 검색될 수 있다.
일부 실시형태에서, 본 방법은, 검증되지 않은 디지털 마크에 의해 보증되는 검증되지 않은 디지털 인증서에 대한 검증 요청에 응답하여, 검증되지 않은 디지털 인증서에 대응하는 트랜잭션 식별을 획득하는 단계; 검증되지 않은 디지털 인증서에 대응하는 트랜잭션 식별 정보에 따라, 블록체인에 저장된 디지털 요약 및 블록체인에 저장된 디지털 마크를 획득하는 단계; 디지털 인증서의 디지털 요약을 생성하기 위해 사용되는 암호화 프로세스에 따라 검증되지 않은 디지털 인증서의 디지털 요약을 생성하는 단계; 블록체인에 저장된 디지털 요약이 검증되지 않은 디지털 인증서의 디지털 요약과 일치하는지, 및 블록체인에 저장된 디지털 마크가 검증되지 않은 디지털 마크와 일치하는지를 검증하는 단계; 블록체인에 저장된 디지털 요약이 검증되지 않은 디지털 인증서의 디지털 요약과 일치하고 블록체인에 저장된 디지털 마크가 검증되지 않은 디지털 마크와 일치하는 것으로 결정한 것에 응답하여, 검증되지 않은 디지털 인증서가 진정한 것으로 결정하는 단계; 및 블록체인에 저장된 디지털 요약이 검증되지 않은 디지털 인증서의 디지털 요약과 불일치하거나 블록체인에 저장 디지털 마크가 검증되지 않은 디지털 마크와 불일치하는 것으로 결정한 것에 응답하여, 검증되지 않은 디지털 인증서가 진정하지 않은 것으로 결정하는 단계를 추가로 포함한다.
예를 들어, 도 4를 참조하여 전술한 바와 같이, 제3자는 검증되지 않은 엔티티의 검증되지 않은 마크로 보증된 검증되지 않은 디지털 인증서를 수신했을 수 있으며 그 진정성을 검증하기를 원한다. 블록체인은 엔티티, 디지털 인증서에 대한 요약, 트랜잭션 식별 및 대응하는 디지털 마크 사이의 연관 관계를 저장하기 때문에, 디지털 인증 시스템(118)은 검증되지 않은 디지털 인증서에 대응하는 트랜잭션 식별을 획득할 수 있고, 검증되지 않은 디지털 인증서와 연관된 데이터(예를 들어, 블록체인에 저장된 디지털 요약, 블록체인에 저장된 디지털 마크, 블록체인에 저장된 엔티티 정보)를 획득하기 위해 예를 들어, 블록체인의 하나 이상의 노드를 통해 트랜잭션을 개시함으로써 대응하여 블록체인에 저장된 정보를 검색할 수 있다. 검증을 위해, 디지털 인증 시스템(118)은 검증되지 않은 디지털 인증서의 디지털 요약을 도출할 수 있다. 디지털 인증 시스템(118)은 검증되지 않은 디지털 인증서의 디지털 요약이 (디지털 인증서의 내용이 변조되지 않았음을 보장하기 위해) 블록체인에 저장된 디지털 요약과 일치하는지, 및 검증되지 않은 디지털 마크가 (보증 엔티티가 정확한 것을 보증하기 위해) 디지털 마크와 일치하는지를 검증할 수 있다. 선택적으로, 디지털 인증 시스템(118)은, 검증되지 않은 엔티티가 디지털 인증서와 연관된 블록체인에 저장된 엔티티 정보와 일치하는지를 검증할 수 있다. 일관성 검증이 성공하면, 디지털 인증 시스템(118)은, 검증되지 않은 디지털 인증서가 진정한 것으로 결정할 수 있다. 데이터가 획득될 수 없거나 임의의 일관성 검증이 실패하면, 디지털 인증 시스템(118)은 검증되지 않은 디지털 인증서가 진정하지 않은 것으로 결정할 수 있다.
도 6a는 다양한 실시형태에 따라 블록체인-기반 디지털 마크를 생성하기 위한 컴퓨터 시스템(610)의 예의 블록도를 나타낸다. 시스템(610)은 도 1a의 시스템(110)의 하나 이상의 구성 요소(예를 들어, 디지털 인증 시스템(118))의 구현의 예일 수 있다. 본 방법(510)은 컴퓨터 시스템(610)에 의해 구현될 수 있다. 컴퓨터 시스템(610)은 하나 이상의 프로세서 및 하나 이상의 프로세서에 결합되고 시스템 또는 디바이스(예를 들어, 프로세서)로 하여금 방법(510)을 수행하게 하도록 하나 이상의 프로세서에 의해 실행 가능한 명령어로 구성되는 하나 이상의 비일시적 컴퓨터-판독 가능 저장 매체(예를 들어, 하나 이상의 메모리)를 포함할 수 있다. 컴퓨터 시스템(610)은 명령어(예를 들어, 소프트웨어 명령어)에 대응하는 다양한 유닛/모듈을 포함할 수 있다. 일부 실시형태에서, 컴퓨터 시스템(610)은 블록체인-기반 디지털 마크 생성 장치로 칭해질 수 있다. 블록체인-기반 디지털 마크 생성 장치는 엔티티의 엔티티 정보를 획득하기 위한 제1 획득 모듈(611); 블록체인에 저장하기 위하여 엔티티 정보를 블록체인의 하나 이상의 노드로 송신하기 위한 송신 모듈(612); 엔티티 정보를 블록체인에 저장하는 것과 연관된 트랜잭션 식별을 획득하기 위한 제2 획득 모듈(613); 및 적어도 트랜잭션 식별에 기초하여 엔티티에 대한 디지털 마크를 생성하기 위한 생성 모듈(614)을 포함할 수 있다.
도 6b는 다양한 실시형태에 따라 블록체인-기반 디지털 인증서를 구현하기 위한 컴퓨터 시스템(620)의 예의 블록도를 나타낸다. 시스템(620)은 도 1a의 시스템(110)의 하나 이상의 구성 요소(예를 들어, 디지털 인증 시스템(118))의 구현의 예일 수 있다. 본 방법(520)은 컴퓨터 시스템(620)에 의해 구현될 수 있다. 컴퓨터 시스템(620)은 하나 이상의 프로세서 및 하나 이상의 프로세서에 결합되고 시스템 또는 디바이스(예를 들어, 프로세서)로 하여금 방법(520)을 수행하게 하도록 하나 이상의 프로세서에 의해 실행 가능한 명령어로 구성되는 하나 이상의 비일시적 컴퓨터-판독 가능 저장 매체(예를 들어, 하나 이상의 메모리)를 포함할 수 있다. 일부 실시형태에서, 컴퓨터 시스템(620)은 명령어(예를 들어, 소프트웨어 명령어)에 대응하는 다양한 유닛/모듈을 포함할 수 있다. 일부 실시형태에서, 컴퓨터 시스템(620)은 블록체인-기반 디지털 인증 장치로 칭해질 수 있다. 블록체인-기반 디지털 인증 장치는 디지털 인증서를 생성하기 위한 제1 생성 모듈(621); 디지털 인증서의 디지털 요약을 생성하기 위한 제2 생성 모듈(622); 블록체인에 저장하기 위하여 디지털 인증서의 디지털 요약을 블록체인의 하나 이상의 노드로 송신하기 위한 송신 모듈(623); 블록체인에 디지털 인증서의 디지털 요약을 저장하는 것과 연관된 트랜잭션 식별을 획득하기 위한 획득 모듈(624); 및 디지털 마크를 트랜잭션 식별과 연관시키기 위한 연관 모듈(625)을 포함할 수 있다.
나타낸 바와 같이, 디지털 인증서의 디지털 요약을 획득하고 블록체인에 요약을 저장함으로써, 원래의 디지털 인증서의 표현이 안전하게 유지되고 검증을 위해 액세스 가능하게 될 수 있다. 디지털 인증서의 변조는 해싱을 포함하는 블록체인 합의 규칙에 기초하여 좌절될 수 있다. 디지털 인증서의 디지털 요약 표현은 또한 프라이버시를 보호하기 위해 일반 텍스트 정보를 숨길 수 있다. 또한, 원래의 디지털 인증서의 블록체인에 저장된 표현은 대응하는 보증 디지털 마크 및 보증 관계를 저장하는 대응하는 트랜잭션 식별과 연관된다. 조회 트랜잭션 식별을 통해, 이러한 연관된 정보가 검증을 위해 블록체인으로부터 검색될 수 있다. 따라서, 디지털 인증서 발행 및 검증이 보안 보증과 함께 제공될 수 있다.
본 명세서에 설명되는 기술은 하나 이상의 특수-목적 컴퓨팅 디바이스에 의해 구현된다. 특수-목적 컴퓨팅 디바이스는 데스크탑 컴퓨터 시스템, 서버 컴퓨터 시스템, 휴대용 컴퓨터 시스템, 휴대용 디바이스, 네트워킹 디바이스 또는 임의의 다른 디바이스 또는 기술을 구현하기 위해 하드-와이어 및/또는 프로그램 논리를 통합하는 디바이스의 조합일 수 있다. 특수-목적 컴퓨팅 디바이스는 퍼스널 컴퓨터, 랩탑, 셀룰러 폰, 카메라 폰, 스마트 폰, 개인 디지털 기기, 미디어 플레이어, 내비게이션 디바이스, 이메일 디바이스, 게임 콘솔, 태블릿 컴퓨터, 웨어러블 디바이스, 또는 이들의 조합으로 구현될 수 있다. 컴퓨팅 디바이스(들)는 일반적으로 운영 체제 소프트웨어에 의해 제어되고 조정된다. 종래의 운영 체제는 실행을 위해 컴퓨터 프로세스를 제어 및 스케줄링하고, 메모리 관리를 수행하고, 파일 시스템, 네트워킹, I/O 서비스를 제공하며, 특히 그래픽 사용자 인터페이스(“GUI")와 같은 사용자 인터페이스 기능을 제공한다. 본 명세서에 설명되는 다양한 시스템, 장치, 저장 매체, 모듈 및 유닛은 특수-목적 컴퓨팅 디바이스 또는 하나 이상의 특수-목적 컴퓨팅 디바이스의 하나 이상의 컴퓨팅 칩에 구현될 수 있다. 일부 실시형태에서, 본 명세서에 설명되는 명령어는 특수-목적 컴퓨팅 디바이스 상의 가상 머신에서 구현될 수 있다. 실행될 때, 명령어는 특수-목적 컴퓨팅 디바이스로 하여금 본 명세서에 설명되는 다양한 방법을 수행하게 할 수 있다. 가상 머신은 소프트웨어, 하드웨어 또는 이들의 조합을 포함할 수 있다. 예를 들어, 가상 머신은 이더리움(Ethereum)의 스마트 계약을 위한 런타임 환경을 제공하는 이더리움 가상 머신(EVM) 소프트웨어를 포함할 수 있다.
도 7은 본 명세서에 설명되는 임의의 실시형태가 구현될 수 있는 컴퓨터 시스템(700)을 나타내는 블록도이다. 시스템(700)은 본 명세서에 설명되는 시스템 및 디바이스 중 임의의 것에서 구현될 수 있고 블록체인-기반 디지털 인증서를 구현하기 위한 대응하는 단계를 수행하도록 구성될 수 있다. 컴퓨터 시스템(700)은 정보를 통신하기 위한 버스(702) 또는 다른 통신 메커니즘, 정보를 프로세싱하기 위해 버스(702)와 결합된 하나 이상의 하드웨어 프로세서(들)(704)를 포함한다. 하드웨어 프로세서(들)(704)는 예를 들어, 하나 이상의 범용 마이크로프로세서일 수 있다.
컴퓨터 시스템(700)은 또한 프로세서(들)(704)에 의해 실행 가능한 정보 및 명령어를 저장하기 위해 버스(702)에 결합된 랜덤 액세스 메모리(RAM), 캐시 및/또는 다른 동적 저장 디바이스와 같은 메인 메모리(706)를 포함한다. 메인 메모리(706)는 또한 프로세서(들)(704)에 의해 실행 가능한 명령어의 실행 동안 임시 변수 또는 다른 중간 정보를 저장하기 위해 사용될 수 있다. 프로세서(들)(704)에 액세스 가능한 저장 매체에 저장될 때 이러한 명령어는 컴퓨터 시스템(700)을 명령어에 특정된 동작을 수행하도록 맞춤화된 특수-목적 머신으로 렌더링한다. 컴퓨터 시스템(700)은 정적인 정보 및 프로세서(들)(704)에 대한 명령어를 저장하기 위해 버스(702)에 결합된 판독 전용 메모리(ROM)(708) 또는 다른 정적인 저장 디바이스를 추가로 포함한다. 자기 디스크, 광 디스크 또는 USB 썸(thumb) 드라이브(플래시 드라이브) 등과 같은 저장 디바이스(710)가 제공되고, 정보 및 명령어를 저장하기 위해 버스(702)에 결합된다.
컴퓨터 시스템(700)은 컴퓨터 시스템과 조합하여 컴퓨터 시스템(700)을 특수-목적 머신이 되게 하거나 프로그래밍하는 맞춤화된 하드-와이어 논리, 하나 이상의 ASIC 또는 FPGA, 펌웨어 및/또는 프로그램 논리를 사용하여 본 명세서에 설명되는 기술을 구현할 수 있다. 일 실시형태에 따르면, 본 명세서에 설명되는 동작, 방법 및 프로세스는 메인 메모리(706)에 포함된 하나 이상의 명령어의 하나 이상의 시퀀스를 실행하는 프로세서(들)(704)에 응답하여 컴퓨터 시스템(700)에 의해 수행된다. 이러한 명령어는 저장 디바이스(710)와 같은 다른 저장 매체로부터 메인 메모리(706)로 판독될 수 있다. 메인 메모리(706)에 포함된 명령어의 시퀀스의 실행은 프로세서(들)(704)로 하여금 본 명세서에 설명되는 프로세스 단계를 수행하게 한다. 대안적인 실시형태에서, 하드-와이어 회로가 소프트웨어 명령어 대신 또는 소프트웨어 명령어와 조합하여 사용될 수 있다.
메인 메모리(706), ROM(708) 및/또는 저장소(710)는 비일시적인 저장 매체를 포함할 수 있다. 본 명세서에서 사용되는 "비일시적 매체"라는 용어 및 이와 유사한 용어는 머신으로 하여금 특정 방식으로 동작하게 하는 데이터 및/또는 명령어를 저장하는 매체를 칭하며, 매체는 일시적인 신호를 배제한다. 이러한 비일시적인 매체는 비휘발성 매체 및/또는 휘발성 매체를 포함할 수 있다. 비휘발성 매체는 예를 들어, 저장 디바이스(710)와 같은 광 또는 자기 디스크를 포함한다. 휘발성 매체는 메인 메모리(706)와 같은 동적 메모리를 포함한다. 통상적인 형태의 비일시적인 매체는 예를 들어, 플로피 디스크, 플렉시블 디스크, 하드 디스크, 솔리드 스테이트 드라이브, 자기 테이프 또는 임의의 다른 자기 데이터 저장 매체, CD-ROM, 임의의 다른 광 데이터 저장 매체, 홀(hole) 패턴을 갖는 임의의 물리적 매체, RAM, PROM, 및 EPROM, FLASH-EPROM, NVRAM, 임의의 다른 메모리 칩 또는 카트리지 및 이들의 네트워킹된 버전을 포함한다.
또한, 컴퓨터 시스템(700)은 버스(702)에 결합된 네트워크 인터페이스(718)를 포함한다. 네트워크 인터페이스(718)는 하나 이상의 로컬 네트워크에 접속된 하나 이상의 네트워크 링크에 양방향 데이터 통신 결합을 제공한다. 예를 들어, 네트워크 인터페이스(718)는 통합 서비스 디지털 네트워크(ISDN) 카드, 케이블 모뎀, 위성 모뎀 또는 대응하는 유형의 전화선에 데이터 통신 접속을 제공하는 모뎀일 수 있다. 다른 예로서, 네트워크 인터페이스(718)는 호환 가능한 LAN(또는 WAN과 통신되는 WAN 구성 요소)에 데이터 통신 접속을 제공하는 근거리 네트워크(LAN) 카드일 수 있다. 무선 링크가 또한 구현될 수 있다. 임의의 이러한 구현에서, 네트워크 인터페이스(718)는 다양한 유형의 정보를 나타내는 디지털 데이터 스트림을 운반하는 전기, 전자기 또는 광 신호를 전송 및 수신한다.
컴퓨터 시스템(700)은 네트워크(들), 네트워크 링크 및 네트워크 인터페이스(718)를 통해 메시지를 전송하고 프로그램 코드를 포함하는 데이터를 수신할 수 있다. 인터넷의 예에서, 서버는 어플리케이션 프로그램에 대한 요청된 코드를 인터넷, ISP, 로컬 네트워크 및 네트워크 인터페이스(718)를 통해 송신할 수 있다.
수신된 코드는 수신될 때 프로세서(들)(704)에 의해 실행될 수 있고 및/또는 나중의 실행을 위해 저장 디바이스(710) 또는 다른 비휘발성 저장소에 저장될 수 있다.
이전 부문들에서 설명된 프로세스, 방법 및 알고리즘의 각각은 하나 이상의 컴퓨터 시스템 또는 컴퓨터 하드웨어를 포함하는 컴퓨터 프로세서에 의해 실행되는 코드 모듈로 구현될 수 있고, 이에 의해 완전히 또는 부분적으로 자동화될 수 있다. 프로세스 및 알고리즘은 어플리케이션-특정 회로에서 부분적으로 또는 전체적으로 구현될 수 있다.
전술한 다양한 특징 및 프로세스는 서로 독립적으로 사용될 수 있거나, 다양한 방식으로 조합될 수 있다. 모든 가능한 조합 및 하위-조합은 본 명세서의 범위 내에 속하는 것으로 의도된다. 또한, 일부 구현에서 특정 방법 또는 프로세스 블록이 생략될 수 있다. 본 명세서에 설명되는 방법 및 프로세스는 또한 임의의 특정 시퀀스로 제한되지 않으며, 그에 관련된 블록 또는 상태는 적절한 다른 시퀀스에서 수행될 수 있다. 예를 들어, 설명되는 블록 또는 상태는 구체적으로 개시된 순서와 다른 순서로 수행될 수 있거나, 복수의 블록 또는 상태가 단일 블록 또는 상태로 결합될 수 있다. 블록 또는 상태의 예는 직렬, 병렬 또는 몇몇 다른 방식으로 수행될 수 있다. 블록 또는 상태는 개시된 실시형태에 추가되거나 이로부터 제거될 수 있다. 본 명세서에 설명되는 시스템 및 구성 요소의 예는 설명된 것과 다르게 구성될 수 있다. 예를 들어, 개시된 실시형태와 비교하여 요소가 추가, 제거 또는 재배치될 수 있다.
본 명세서에서 설명되는 방법의 다양한 동작은 적어도 부분적으로 알고리즘에 의해 수행될 수 있다. 알고리즘은 메모리(예를 들어, 전술한 비일시적 컴퓨터-판독 가능 저장 매체)에 저장된 프로그램 코드 또는 명령어로 구성될 수 있다. 이러한 알고리즘은 머신 학습 알고리즘을 포함할 수 있다. 일부 실시형태에서, 머신 학습 알고리즘은 기능을 수행하도록 컴퓨터를 명시적으로 프로그래밍하지 않을 수 있지만, 기능을 수행하는 예측 모델을 만들기 위해 트레이닝 데이터로부터 학습할 수 있다.
본 명세서에 설명되는 방법의 다양한 동작은 관련 동작을 수행하도록 (예를 들어, 소프트웨어에 의해) 일시적으로 구성되거나 영구적으로 구성된 하나 이상의 프로세서에 의해 적어도 부분적으로 수행될 수 있다. 일시적으로 또는 영구적으로 구성되어 있는지 여부에 관계없이, 이러한 프로세서는 본 명세서에 설명되는 하나 이상의 동작 또는 기능을 수행하도록 동작하는 프로세서-구현 엔진을 구성할 수 있다.
유사하게, 본 명세서에 설명되는 방법은 적어도 부분적으로 프로세서-구현될 수 있고, 특정 프로세서 또는 프로세서들은 하드웨어의 예이다. 예를 들어, 방법의 동작 중 적어도 일부는 하나 이상의 프로세서 또는 프로세서-구현 엔진에 의해 수행될 수 있다. 또한, 하나 이상의 프로세서는 "클라우드 컴퓨팅" 환경에서 또는 "서비스로서의 소프트웨어"(SaaS)로서 관련 동작의 수행을 지원하도록 또한 동작할 수 있다. 예를 들어, 적어도 일부 동작은 (프로세서를 포함하는 머신의 예로서) 컴퓨터의 그룹에 의해 수행될 수 있으며, 이러한 동작은 네트워크(예를 들어, 인터넷)를 통해 그리고 하나 이상의 적절한 인터페이스(예를 들어, 어플리케이션 프로그램 인터페이스(API))를 통해 액세스 가능하다.
특정 동작의 수행은 프로세서들 사이에서 분산될 수 있으며, 단일 머신 내에 존재할 뿐만 아니라 다수의 머신에 걸쳐 배치된다. 일부 실시형태에서, 프로세서 또는 프로세서-구현 엔진은 단일 지리적 위치(예를 들어, 가정 환경, 사무실 환경 또는 서버 팜(farm) 내)에 위치될 수 있다. 다른 실시형태에서, 프로세서 또는 프로세서-구현 엔진은 다수의 지리적 위치에 걸쳐 분산될 수 있다.
본 명세서 전체에서, 복수의 인스턴스는 단일 인스턴스로 설명된 구성 요소, 동작 또는 구조를 구현할 수 있다. 하나 이상의 방법의 개별적인 동작이 개별적인 동작으로 나타내어지고 설명되었지만, 하나 이상의 개별적인 동작이 동시에 수행될 수 있고, 동작이 나타내어진 순서대로 수행될 필요는 없다. 구성에서 별개의 구성 요소로 제시되는 구조 및 기능은 결합된 구조 또는 구성 요소로서 구현될 수 있다. 유사하게, 단일 구성 요소로서 제시된 구조 및 기능은 개별 구성 요소로서 구현될 수 있다. 이들 및 다른 변형, 수정, 추가 및 개선은 본 명세서의 주제의 범위 내에 속한다.
주제의 개요가 특정 실시형태를 참조하여 설명되었지만, 본 명세서의 실시형태의 더 넓은 범위를 벗어나지 않으면서 이들 실시형태에 대한 다양한 수정 및 변경이 이루어질 수 있다. 상세한 설명은 제한적인 의미로 이해되어서는 안되며, 다양한 실시형태의 범위는, 이러한 청구항에 부여되는 등가물의 전체 범위와 함께 첨부된 청구항에 의해서만 정의된다. 또한, 본 명세서에서 사용되는 ("제1", "제2", "제3" 등과 같은) 관련 용어는 임의의 순서, 높이 또는 중요성을 나타내지 않고, 하나의 요소를 다른 요소와 구별하기 위해 사용된다. 또한, "단수 표현" 및 "복수 표현" 용어는 본 명세서에서 양의 제한을 나타내지 않고, 언급된 항목의 적어도 하나의 존재를 나타낸다.

Claims (14)

  1. 디지털 인증서를 구현하기 위한 컴퓨터 구현 방법으로서,
    상기 디지털 인증서를 생성하는 단계;
    암호화 프로세스를 사용하여 상기 디지털 인증서의 디지털 요약(digital abstract)을 생성하는 단계;
    블록체인에 저장하기 위해 상기 디지털 인증서의 상기 디지털 요약을 상기 블록체인의 하나 이상의 노드로 송신하는 단계;
    상기 블록체인에 상기 디지털 인증서의 상기 디지털 요약을 저장하는 것과 연관된 트랜잭션 식별(transaction identification)을 획득하는 단계;
    디지털 마크를 상기 트랜잭션 식별과 연관시키는 단계;
    상기 디지털 마크와 상기 트랜잭션 식별 사이의 연관 관계를 상기 블록체인에 저장하기 위해 상기 하나 이상의 노드로 송신하는 단계;
    검증되지 않은 디지털 마크에 의해 보증되는 검증되지 않은 디지털 인증서에 대한 검증 요청에 응답하여, 상기 검증되지 않은 디지털 인증서에 대응하는 트랜잭션 식별을 획득하는 단계;
    상기 검증되지 않은 디지털 인증서에 대응하는 상기 트랜잭션 식별 정보에 따라, 블록체인에 저장된 디지털 요약 및 블록체인에 저장된 디지털 마크를 획득하는 단계;
    상기 디지털 인증서의 상기 디지털 요약을 생성하기 위해 사용되는 상기 암호화 프로세스에 따라 상기 검증되지 않은 디지털 인증서의 디지털 요약을 생성하는 단계;
    상기 블록체인에 저장된 디지털 요약이 상기 검증되지 않은 디지털 인증서의 상기 디지털 요약과 일치하는지, 및 상기 블록체인에 저장된 디지털 마크가 상기 검증되지 않은 디지털 마크와 일치하는지를 검증하는 단계; 및
    상기 블록체인에 저장된 디지털 요약이 상기 검증되지 않은 디지털 인증서의 상기 디지털 요약과 일치하고 그리고 상기 블록체인에 저장된 디지털 마크가 상기 검증되지 않은 디지털 마크와 일치한다고 결정한 것에 응답하여, 상기 검증되지 않은 디지털 인증서가 진정한 것으로 결정하는 단계를 포함하는, 디지털 인증서를 구현하기 위한 컴퓨터 구현 방법.
  2. 제1항에 있어서,
    상기 디지털 마크는 엔티티와 연관되는, 디지털 인증서를 구현하기 위한 컴퓨터 구현 방법.
  3. 제2항에 있어서,
    상기 디지털 마크는 상기 블록체인에 상기 엔티티의 엔티티 정보를 저장하는 것과 연관된 또 다른 트랜잭션 식별과 연관되는, 디지털 인증서를 구현하기 위한 컴퓨터 구현 방법.
  4. 제2항에 있어서,
    상기 디지털 마크를 상기 트랜잭션 식별과 연관시키는 단계는 상기 엔티티에 의한 보증을 나타내는, 디지털 인증서를 구현하기 위한 컴퓨터 구현 방법.
  5. 제1항에 있어서,
    상기 디지털 마크는 디지털 인감(seal)을 포함하는, 디지털 인증서를 구현하기 위한 컴퓨터 구현 방법.
  6. 제1항에 있어서,
    상기 디지털 마크는 디지털 서명을 포함하는, 디지털 인증서를 구현하기 위한 컴퓨터 구현 방법.
  7. 제1항에 있어서, 상기 블록체인에 저장하기 위해 상기 디지털 인증서의 상기 디지털 요약을 상기 블록체인의 상기 하나 이상의 노드로 송신하는 단계는,
    상기 디지털 인증서의 상기 디지털 요약 및 상기 디지털 요약을 생성하기 위해 사용되는 상기 암호화 프로세스를 블록체인 계약에 기입하는 것; 및
    상기 하나 이상의 노드가 상기 블록체인 트랜잭션을 개시시켜서 상기 블록체인 계약을 배포하게 하는 것을 포함하는, 디지털 인증서를 구현하기 위한 컴퓨터 구현 방법.
  8. 제7항에 있어서,
    상기 디지털 요약은 상기 디지털 인증서의 해시값(hash value)을 포함하고; 그리고
    상기 트랜잭션 식별은 상기 블록체인 트랜잭션의 해시값을 포함하는, 디지털 인증서를 구현하기 위한 컴퓨터 구현 방법.
  9. 제1항에 있어서, 상기 디지털 마크를 상기 트랜잭션 식별과 연관시키는 단계는,
    상기 디지털 마크, 상기 트랜잭션 식별, 및 상기 디지털 요약을 연관시키는 것을 포함하는, 디지털 인증서를 구현하기 위한 컴퓨터 구현 방법.
  10. 제1항에 있어서, 상기 디지털 인증서를 생성하는 단계는,
    엔티티로부터 상기 디지털 인증서의 내용을 획득하는 것으로서, 상기 엔티티는 법인인, 상기 엔티티로부터 상기 디지털 인증서의 내용을 획득하는 것; 및
    상기 내용을 포함한 상기 디지털 인증서를 생성하는 것을 포함하는, 디지털 인증서를 구현하기 위한 컴퓨터 구현 방법.
  11. 삭제
  12. 삭제
  13. 디지털 인증서 시스템으로서,
    하나 이상의 프로세서; 및
    상기 하나 이상의 프로세서에 결합되고 그리고 제1항 내지 제10항 중 어느 한 항의 방법을 수행하기 위해 상기 하나 이상의 프로세서에 의해 실행 가능한 명령어가 저장된 하나 이상의 컴퓨터-판독 가능 메모리를 포함하는, 디지털 인증서 시스템.
  14. 제1항 내지 제10항 중 어느 한 항의 방법을 수행하기 위한 복수의 모듈을 포함하는, 디지털 인증 장치.
KR1020197018110A 2019-02-28 2019-02-28 블록체인-기반 디지털 인증서를 구현하기 위한 시스템 및 방법 KR102332031B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/076485 WO2019101227A2 (en) 2019-02-28 2019-02-28 System and method for implementing blockchain-based digital certificates

Publications (2)

Publication Number Publication Date
KR20200106000A KR20200106000A (ko) 2020-09-10
KR102332031B1 true KR102332031B1 (ko) 2021-11-29

Family

ID=66630458

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197018110A KR102332031B1 (ko) 2019-02-28 2019-02-28 블록체인-기반 디지털 인증서를 구현하기 위한 시스템 및 방법

Country Status (7)

Country Link
US (2) US10708068B2 (ko)
EP (1) EP3593491A4 (ko)
JP (1) JP6853364B2 (ko)
KR (1) KR102332031B1 (ko)
CN (1) CN110771095B (ko)
PH (1) PH12019501433A1 (ko)
WO (1) WO2019101227A2 (ko)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019101226A2 (en) 2019-02-28 2019-05-31 Alibaba Group Holding Limited System and method for generating digital marks
US10735204B2 (en) 2019-02-28 2020-08-04 Alibaba Group Holding Limited System and method for generating digital marks
SG11202002786UA (en) 2019-03-27 2020-04-29 Alibaba Group Holding Ltd Retrieving public data for blockchain networks using trusted execution environments
SG11201908981SA (en) 2019-03-27 2019-10-30 Alibaba Group Holding Ltd Retrieving public data for blockchain networks using highly available trusted execution environments
AU2019204725B2 (en) 2019-03-29 2020-11-26 Advanced New Technologies Co., Ltd. Retrieving access data for blockchain networks using highly available trusted execution environments
US10764062B2 (en) * 2019-06-03 2020-09-01 Alibaba Group Holding Limited Blockchain ledger compression
CN110288477A (zh) * 2019-06-26 2019-09-27 深圳市元征科技股份有限公司 一种区块链交易数据处理方法及相关设备
CN111316303B (zh) * 2019-07-02 2023-11-10 创新先进技术有限公司 用于基于区块链的交叉实体认证的系统和方法
CN110717759A (zh) * 2019-10-18 2020-01-21 成都九宽科技有限公司 一种跨链锚定的区块链异构系统
CN110852648A (zh) * 2019-11-19 2020-02-28 腾讯科技(深圳)有限公司 一种数据处理方法、装置及计算机存储介质
US20210224253A1 (en) * 2020-01-20 2021-07-22 International Business Machines Corporation Conflict-free version control
CN111275553B (zh) * 2020-01-20 2023-08-11 联动优势科技有限公司 一种区块链的数据存储方法及区块链系统
CN111666554B (zh) * 2020-06-03 2023-09-12 泰康保险集团股份有限公司 一种证书认证方法、装置、设备及存储介质
CN113781021A (zh) * 2020-06-10 2021-12-10 徐蔚 采用码链区块的数字货币模型、方法、系统及装置
CN114095515A (zh) * 2020-07-31 2022-02-25 京东方科技集团股份有限公司 基于区块链的数据管理方法、装置和系统
CN111814129B (zh) * 2020-08-28 2021-06-04 支付宝(杭州)信息技术有限公司 数字凭证的失效和验证方法及装置
CN112242904B (zh) * 2020-11-19 2023-06-02 中国联合网络通信集团有限公司 档案信息处理方法及设备
US20220366088A1 (en) * 2021-01-11 2022-11-17 Micro Focus Llc Blockchain auditing system and method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180227130A1 (en) * 2017-02-06 2018-08-09 ShoCard, Inc. Electronic identification verification methods and systems

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006320018A (ja) * 2001-03-29 2006-11-24 Sony Corp 情報処理装置および方法、記録媒体、並びにプログラム
JP2007006122A (ja) * 2005-06-23 2007-01-11 Mitsubishi Electric Information Systems Corp 電子印鑑システムおよび電子印鑑プログラム
US9853819B2 (en) 2013-08-05 2017-12-26 Guardtime Ip Holdings Ltd. Blockchain-supported, node ID-augmented digital record signature method
KR101637854B1 (ko) * 2015-10-16 2016-07-08 주식회사 코인플러그 블록체인을 기반으로 하는 공인인증서 발급시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 발급방법 및 블록체인을 기반으로 하는 공인인증서 인증시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 인증방법
US9948467B2 (en) 2015-12-21 2018-04-17 Mastercard International Incorporated Method and system for blockchain variant using digital signatures
US9849364B2 (en) 2016-02-02 2017-12-26 Bao Tran Smart device
US10366388B2 (en) * 2016-04-13 2019-07-30 Tyco Fire & Security Gmbh Method and apparatus for information management
WO2018006956A1 (en) 2016-07-06 2018-01-11 Hp Indigo B.V. Release layer
JP6939791B2 (ja) * 2016-07-28 2021-09-22 日本電気株式会社 掲示板情報管理システム
US11227675B2 (en) 2016-08-23 2022-01-18 BBM Health LLC Blockchain-based mechanisms for secure health information resource exchange
US11170346B2 (en) 2016-09-19 2021-11-09 Sap Se Decentralized credentials verification network
WO2018067271A1 (en) * 2016-10-06 2018-04-12 Mastercard International Incorporated Method and system for identity and credential protection and verification via blockchain
US10157295B2 (en) 2016-10-07 2018-12-18 Acronis International Gmbh System and method for file authenticity certification using blockchain network
US10547457B1 (en) 2016-10-21 2020-01-28 Wells Fargo Bank N.A. Systems and methods for notary agent for public key infrastructure names
WO2018114585A1 (en) 2016-12-22 2018-06-28 Itext Group Nv Improved blockchain-based method for registration and verification of a file
EP3560136B1 (en) 2016-12-22 2020-12-02 Itext Group NV Distributed blockchain-based method for saving the location of a file
JP6826290B2 (ja) * 2017-01-19 2021-02-03 富士通株式会社 証明書配付システム、証明書配付方法、および証明書配付プログラム
WO2018145127A1 (en) * 2017-02-06 2018-08-09 ShoCard, Inc. Electronic identification verification methods and systems with storage of certification records to a side chain
US9998286B1 (en) 2017-02-17 2018-06-12 Accenture Global Solutions Limited Hardware blockchain consensus operating procedure enforcement
US10291413B2 (en) 2017-02-17 2019-05-14 Accenture Global Solutions Limited Hardware blockchain corrective consensus operating procedure enforcement
CN110537346B (zh) 2017-03-06 2023-03-24 诺基亚技术有限公司 安全去中心化域名系统
JP7060221B2 (ja) * 2017-03-31 2022-04-26 Necソリューションイノベータ株式会社 物品情報管理装置、システム、方法およびプログラム
US10102526B1 (en) * 2017-03-31 2018-10-16 Vijay K. Madisetti Method and system for blockchain-based combined identity, ownership, integrity and custody management
CN117579281A (zh) 2017-06-02 2024-02-20 维萨国际服务协会 用于使用区块链的所有权验证的方法和系统
CN107316239A (zh) 2017-07-14 2017-11-03 众安信息技术服务有限公司 一种基于区块链的信息认证和溯源方法及系统
KR20180041055A (ko) * 2017-09-06 2018-04-23 주식회사 코인플러그 스마트 컨트랙트 기반의 인증서 서비스를 제공하는 방법 및 이를 이용한 서버
US10601598B2 (en) 2017-11-02 2020-03-24 Keir Finlow-Bates System and method for storing the location on a blockchain of a hash of a digital item within said digital item
US20190140844A1 (en) 2017-11-08 2019-05-09 Averon Us, Inc. Identity-linked authentication through a user certificate system
US10771449B2 (en) 2017-12-04 2020-09-08 Mastercard International Incorporated Method and system for trustworthiness using digital certificates
US11206133B2 (en) 2017-12-08 2021-12-21 Ping Identity Corporation Methods and systems for recovering data using dynamic passwords
US11544708B2 (en) 2017-12-29 2023-01-03 Ebay Inc. User controlled storage and sharing of personal user information on a blockchain
CN108537556A (zh) 2018-03-13 2018-09-14 深圳信息职业技术学院 一种基于区块链和nfc芯片的动态信息防伪方法
US10320569B1 (en) 2018-04-05 2019-06-11 HOTYB, Inc. Systems and methods for authenticating a digitally signed assertion using verified evaluators
US20190319948A1 (en) 2018-04-11 2019-10-17 Settleware Secure Services, Inc. Remote authentication and identification proofing systems and methods
CN108768657A (zh) * 2018-04-17 2018-11-06 深圳技术大学(筹) 一种基于区块链平台的数字证书颁发系统及方法
US20190363896A1 (en) 2018-05-26 2019-11-28 Keir Finlow-Bates Blockchain based decentralized and distributed certificate authority
JP7299971B2 (ja) 2018-06-25 2023-06-28 オース9 インコーポレイテッド デジタルシールされたアセットを作成および登録し、デジタルシールされたアセットが本物であるかを確認するための方法、コンピュータプログラム製品および装置
US10243748B1 (en) 2018-06-28 2019-03-26 Jonathan Sean Callan Blockchain based digital certificate provisioning of internet of things devices
CN109064120A (zh) 2018-07-10 2018-12-21 马上游科技股份有限公司 基于区域链的旅游电子合同数字存证系统及存证方法
CN108810895B (zh) * 2018-07-12 2021-05-11 西安电子科技大学 基于区块链的无线Mesh网络身份认证方法
CN109067543B (zh) * 2018-07-24 2020-04-14 腾讯科技(深圳)有限公司 数字证书管理方法、装置、计算机设备和存储介质
CN108964924B (zh) * 2018-07-24 2020-06-05 腾讯科技(深圳)有限公司 数字证书校验方法、装置、计算机设备和存储介质

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180227130A1 (en) * 2017-02-06 2018-08-09 ShoCard, Inc. Electronic identification verification methods and systems

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Ma Zhaofeng, Huang Weihua, and Gao Hongmin. "A new blockchain-based trusted DRM scheme for built-in content protection." EURASIP Journal on Image and Video Processing, 2018. Vol. 1, pp.1-12(2018.) 1부.*

Also Published As

Publication number Publication date
US20200145233A1 (en) 2020-05-07
WO2019101227A2 (en) 2019-05-31
EP3593491A4 (en) 2020-08-19
CN110771095B (zh) 2023-06-30
US10735207B2 (en) 2020-08-04
KR20200106000A (ko) 2020-09-10
JP2020511017A (ja) 2020-04-09
PH12019501433A1 (en) 2020-02-10
US10708068B2 (en) 2020-07-07
JP6853364B2 (ja) 2021-03-31
CN110771095A (zh) 2020-02-07
EP3593491A2 (en) 2020-01-15
US20190319806A1 (en) 2019-10-17
WO2019101227A3 (en) 2019-12-26

Similar Documents

Publication Publication Date Title
KR102332031B1 (ko) 블록체인-기반 디지털 인증서를 구현하기 위한 시스템 및 방법
KR102404284B1 (ko) 디지털 마크를 생성하기 위한 시스템 및 방법
US10824701B2 (en) System and method for mapping decentralized identifiers to real-world entities
CN110771120B (zh) 用于基于区块链的认证的系统和方法
US20200267002A1 (en) Blinded endorsement for blockchain
US10735204B2 (en) System and method for generating digital marks
CN113302610A (zh) 基于区块链的可信平台
KR20230005353A (ko) 탈중앙화된 데이터베이스에서 허가된 이벤팅
JP2023087665A (ja) システム、方法、およびコンピュータプログラム製品(許可型ブロックチェーンのためのマルチ発行者匿名クレデンシャル)
WO2023099357A1 (en) Compressible blockchains
CN113491090A (zh) 基于区块链的可信平台
Ibor et al. A conceptual framework for augmenting the security of digitized academic records in Nigerian tertiary institutions using blockchain technology

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant