KR20210044312A - 문서 인증 및 공개 시스템 및 이의 컴퓨터 기반 방법 - Google Patents

문서 인증 및 공개 시스템 및 이의 컴퓨터 기반 방법 Download PDF

Info

Publication number
KR20210044312A
KR20210044312A KR1020217010823A KR20217010823A KR20210044312A KR 20210044312 A KR20210044312 A KR 20210044312A KR 1020217010823 A KR1020217010823 A KR 1020217010823A KR 20217010823 A KR20217010823 A KR 20217010823A KR 20210044312 A KR20210044312 A KR 20210044312A
Authority
KR
South Korea
Prior art keywords
document
key
data
issuer
authenticated
Prior art date
Application number
KR1020217010823A
Other languages
English (en)
Other versions
KR102357978B1 (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 KR20210044312A publication Critical patent/KR20210044312A/ko
Application granted granted Critical
Publication of KR102357978B1 publication Critical patent/KR102357978B1/ko

Links

Images

Classifications

    • 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/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • 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/602Providing cryptographic facilities or services
    • 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
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • 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/3218Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • H04L2209/38

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 방법은 인터넷을 통해 배치된 컴퓨터 시스템에서 구현되며 블록체인(BKC)과 상호 작용한다. 문서 발행자 및 유효성 검증기가 시스템에 연결된다. 이 방법은 발행자에게 할당된 마스터 키(MK)를 생성하는 단계와, 문서 영구 키(PK)를 생성하는 단계, 마스터 키, 문서 영구 키 및 중간 키(IK)로부터 유도된(
Figure pct00004
) 암호화 키(KAES)와 암호화 알고리즘(AES)을 이용하여 문서 데이터를 암호화(CredData)하는 단계, 암호화된 문서 데이터(EncData)를 블록체인에 등록하는 단계, 및 인증된 문서의 복구 정보를 전달하는 웹 주소(URL)를 생성하는 단계를 포함하는 제1 프로세스(P2)를 통해 문서(DocData)를 인증하는 단계와, 웹 주소에 액세스 가능한 제2 프로세스(P3)를 통해 문서를 판독하는 단계와, 문서의 합법적 소지자로부터의 요청 시 영구 키를 삭제하는 단계를 포함하고, 제2 프로세스는 블록체인 내의 암호화된 데이터와 3개의 키들에 대한 액세스를 복구하는 단계 및 3개의 키들로부터 유도된 암호화 키를 이용하여 암호화된 데이터를 복호화하는 단계를 포함한다.

Description

문서 인증 및 공개 시스템 및 이의 컴퓨터 기반 방법
본원의 기술은 학술 문서와 졸업장뿐만 아니라, 민원 상태, 공문서 및 기타 민감한 문서와 같은 문서들의 진실성 및 온전성을 보장하도록 설계된 컴퓨터 시스템 및 컴퓨터 기반 방법에 관한 것이다. 보다 구체적으로, 본원의 기술은, 개인정보 데이터에 대한 규제 및 잊혀질 권리를 준수하면서, 안전하고 지속 가능한 방식으로 문서들을 인증하기 위해 블록체인을 높은 수준의 암호화와 연관시키는 컴퓨터 시스템 및 프로세스에 관한 것이다.
오늘날, 디지털 및 네트워크화된 사회에서, 문서의 위조를 방지할 필요성이 점점 더 중요해지고 있다. 많은 분야, 기관, 단체들이 문서 위조의 문제에 직면하고 있다. 예를 들어, 위조된 졸업장의 부정 사용 또는 이력서 및 소셜 미디어에서의 위조된 자격증은 학교, 대학, 졸업생 및 고용주에게 영향을 미치는 어려운 문제이다. 실제 존재하지 않는 학교, 대학에서 발행된 졸업장과 실제 교육 기관의 우수한 복사본 졸업장을 웹사이트에서 구입할 수 있다. 이는 직원들이 제공하는 데이터의 진실성에 의존하는 기업들에게는 큰 문제이다. 이것은 자신들의 진실성을 보호해야 하는 교육 및 훈련 시스템의 행위자들에게 중요한 문제이다.
단순하고 반박할 수 없는 방법으로, 이상적으로는 간단한 클릭만으로, 예를 들어, 대학을 졸업했는지, 자격을 갖춘 의사인지 또는 운전면허증 소지자인지를 증명할 수 있는 것은 매우 직면한 사회적 요구이다.
따라서, 디지털 환경 및 소셜 네트워크에 적응된 현대의 인증 시스템은 전문기술의 자격 증명, 규제된 직업의 등록, 내부 비즈니스 등록, 관리 등록 및 기타에서와 같이 많은 애플리케이션을 발견할 것이다.
블록체인 기술이 문서 인증 시스템에 제안되어 왔다.
단순히 '블록체인(blockchain)'으로 불리는 블록체인 기술은 2008년에 공개된 논문 "Bitcoin: A Peer-to-Peer Electronic Cash System"에서 Satoshi Nakamoto에 의해 처음으로 기술되었으며, 그 전체 내용이 본원에 참고로 포함된다. 블록체인은 거래 목록을 저장하는 데이터 구조로, 체인에 연결된 블록으로 묶인 트랜잭션을 기록하는 분산된 전자 장부로 생각할 수 있다. 컴퓨터 노드는 블록체인을 유지 관리하고, 각각의 새로운 블록 및 해당 블록에 포함된 트랜잭션을 소위 "작업 증명(proof-of-work)"으로 불리는 프로토콜을 이용하여 암호적으로 검증한다.
미국 샌프란시스코의 Holberton School과 프랑스 파리의 ESILV 공대는 개방형(public) 블록체인에 새겨진 졸업장의 저장을 기반으로 한 졸업증명서를 만들었다. 졸업장을 만드는 데에는 이른바 "해시(hash) 함수"가 이용된다. 이 방법은 처음에 해싱된 졸업장의 진위를 보증하지만 다음과 같은 문제를 제기한다.
- 1) 졸업장 발행자의 신원은 입증되지 않았으며 데이터의 진위 여부는 인증되지 않았다. 실제, 해싱된 졸업장이 원본이고 학교에서 정말로 발행한 것이라고 어떻게 확신할 수 있는가?
- 2) 졸업장 발행본은 블록체인에 영원히 저장되고, 일단 공유되면, 졸업장은 영원히 인식될 수 있다.
항목 2)는 개인정보 데이터에 대한 규제 준수 및 잊혀질 권리, 특히 "GDPR(General Data Protection Regulation)"이라는 유럽 규제(2018년 5월 25일 이후 발효)를 준수하는 데에 문제가 있다.
2017년 8월 9일자 언론 보도자료 "소니® 및 소니 글로벌 에듀케이션이 IBM 블록체인 상에서 만들어진 학생들의 학습 데이터를 관리하는 새로운 시스템을 개발함"에서, IBM®사는 교육 자료를 안전하게 공유하기 위해, IBM®의 블록체인을 사용하여 개발한 새로운 플랫폼을 발표했다. 이 플랫폼에서는 전용(private) 블록체인과 독점 소프트웨어가 구현될 것이다.
본 발명은 현재 상황의 상기 언급된 문제점에 대한 해결책을 제공하는 것을 목적으로 한다. 구체적으로, 문서 발행자에게는 사용 비용이 저렴하고, 시스템의 다양한 행위자 및 참가자의 신뢰 및 협업을 용이하게 하는 개방형 기술에 기초하는, 개인정보 데이터에 대한 규제를 준수하는 문서 인증 시스템을 제공하는 것이 바람직하다.
제1 양태에 따르면, 본 발명은, 인터넷 네트워크를 통해 배치되고 개방형 블록체인과 상호 작용하는 문서 인증 컴퓨터 시스템에 구현된 컴퓨터 기반 방법을 제공하고, 상기 문서 인증 컴퓨터 시스템은 적어도 하나의 컴퓨터 서버에 위치되고 상기 인터넷 네트워크를 통해 액세스 가능한 하드웨어 및 소프트웨어 자원을 가지며, 상기 문서 인증 컴퓨터 시스템은 전자 데이터 메시지들을 통해서, 문서 발행자가 인증된 문서들의 발행들을 관리하는 적어도 하나의 문서 발행자 컴퓨터 시스템, 및 유효성 검증기가 상기 문서 발행자의 문서 발행자 계정에 할당된 자원 및 액세스 권한을 관리하는 적어도 하나의 유효성 검증기 컴퓨터 시스템과 통신하며, 상기 컴퓨터 기반 방법은,
상기 문서 발행자 계정에 할당되고 제1 키 저장소에 저장되는 발행자 영구 마스터 키를 생성하는 단계,
상기 문서에 할당되고 제2 키 저장소에 저장되는 문서 영구 키와, 상기 문서 발행자 계정에 할당되는 상기 문서 영구 키를 영구적으로 삭제하는 권한을 생성하는 단계, 키 유도 함수에 의해 상기 발행자 영구 마스터 키, 상기 문서 영구 키, 및 생성되어 상기 문서에 할당되는 중간 키로부터 계산된 암호화 키를 암호화 알고리즘과 함께 이용하여 문서 데이터를 암호화하는 단계, 암호화된 문서 데이터를 포함한 정보를 상기 블록체인에 등록하는 단계, 및 대응하는 공개된 인증된 문서의 문서 웹 주소를 생성하는 단계 - 상기 웹 주소는 상기 문서 중간 키의 복구 정보 및 상기 공개된 인증된 문서의 식별 데이터를 전달함 -를 포함하는, 제1 프로세스의 실행을 통해 문서를 인증하고 공개하는 단계,
상기 웹 주소에 액세스 가능한 제2 프로세스의 실행을 통해 상기 공개된 인증된 문서를 판독하는 단계 - 상기 제2 프로세스는 상기 식별 데이터로부터, 상기 블록체인에 등록된 상기 정보 내의 상기 암호화된 문서 데이터 및 상기 제1 및 제2 키 저장소들에 대한 액세스를 복구하는 단계, 상기 웹 주소로부터 복구되는 상기 발행자 영구 마스터 키, 상기 문서 영구 키, 상기 중간 키로부터 상기 키 유도 함수를 이용하여 상기 암호화 키를 계산하는 단계, 상기 암호화 키를 이용하여 상기 암호화된 문서 데이터를 복호화하는 단계, 및 상기 복호화된 문서 데이터를 이용하여 상기 인증된 문서를 디스플레이하는 단계를 포함함 -, 및
상기 공개된 인증된 문서의 합법적 소지자로부터의 잊혀질 권리를 주장하는 요청 시, 상기 문서 발행자 계정으로부터 상기 문서 영구 키의 영구적인 삭제를 동작시켜, 상기 제2 프로세스의 실행 및 상기 인터넷 네트워크에서의 상기 공개된 인증된 문서의 디스플레이를 동작 불가능하게 하는 단계를 포함한다.
문서들을 인증하기 위한 해시 함수의 사용에 기초하는 종래 기술과는 달리, 본 발명은 데이터의 진위를 인증하고 인증된 데이터로부터 문서들을 재구성하는 것임이 이해될 것이다.
본 발명의 컴퓨터 기반 방법의 일 구현예에서, 제1 키 저장소는 하드웨어 보안 모듈에서 구현된다.
본 발명의 컴퓨터 기반 방법의 다른 구현예에서, 제1 및 제2 키 저장소들은 하드웨어 보안 모듈에서 구현된다.
본 발명의 컴퓨터 기반 방법의 다른 특징에 따르면, 암호화 알고리즘은 AES 유형의 암호화 알고리즘이고, 암호화 키는 대칭적이고 256비트의 길이를 갖는다.
본 발명의 컴퓨터 기반 방법의 또 다른 특징에 따르면, 암호화 알고리즘은 GCM 유형의 카운터 모드에서 동작한다.
본 발명의 컴퓨터 기반 방법의 또 다른 특징에 따르면, 키 유도 함수는 KBKDF 유형의 키 유도 함수이다.
본 발명에 따른 컴퓨터 기반 방법의 또 다른 구현예에서, 상기 문서 데이터는 미리 결정된 특이적 데이터를 포함하며, 상기 미리 결정된 특이적 데이터는 상기 문서와 관련된 문서 카테고리 내의 가변 데이터이고, 상기 제1 프로세스는 상기 문서 카테고리에 대응하고 상기 블록체인에 등록된 상기 정보 내의 탬플릿 식별자를 포함하는 HTML 템플릿의 상기 템플릿 식별자를 상기 미리 결정된 특이적 데이터와 연관시키는 단계를 더 포함하며, 상기 제2 프로세스는 상기 식별 데이터로부터 상기 블록체인에 등록된 상기 정보 내의 상기 템플릿 식별자를 복구하는 단계 및 상기 템플릿 식별자를 이용하여 복구된 상기 HTML 템플릿 및 상기 복호화된 문서 데이터를 사용하여 상기 인증된 문서를 디스플레이하는 단계를 더 포함한다.
본 발명의 컴퓨터 기반 방법의 추가적인 특징에 따르면, 상기 제2 프로세스는 상기 발행자 및/또는 유효성 검증기의 진위 증거를 복구하는 단계 - 상기 진위 증거는 상기 블록체인 내의 데이터 저장소에 미리 등록되어 있으며 적어도 상기 식별 데이터를 사용하여 로컬화되어 있음 -, 및 상기 진위 증거를 사용하여 상기 인증된 문서를 디스플레이하는 단계를 더 포함한다.
본 발명의 컴퓨터 기반 방법의 다른 특징에 따르면, 상기 문서 데이터는 텍스트 파일 형식이고, 상기 텍스트 파일은, 미리 결정된 방식으로 배열되되 복수의 문서들에 각각 속하는 복수의 미리 결정된 특이적 데이터의 배치(batch)를 포함한다.
본 발명의 컴퓨터 기반 방법의 또 다른 특징에 따르면, 상기 미리 결정된 특이적 데이터는 하나 또는 복수의 언어로 작성된다.
또 다른 특징에 따르면, 본 발명의 컴퓨터 기반 방법은 복수의 언어로 공개된 하나의 인증된 문서에 대응하는 적어도 하나의 문서 웹 주소를 생성하는 단계를 포함한다.
다른 양태에 따르면, 본 발명은 인터넷 네트워크를 통해 배치되고 개방형 블록체인과 상호 작용하는 문서 인증 컴퓨터 시스템을 제공하고, 상기 문서 인증 컴퓨터 시스템은 적어도 하나의 컴퓨터 서버에 위치하되 상기 인터넷 네트워크를 통해 액세스 가능한 하드웨어 및 소프트웨어 자원을 가지며, 상기 문서 인증 컴퓨터 시스템은 전자 데이터 메시지들을 통해서, 문서 발행자가 인증된 문서들의 발행들을 관리하는 적어도 하나의 문서 발행자 컴퓨터 시스템, 및 유효성 검증기가 상기 문서 발행자의 문서 발행자 계정에 할당된 자원 및 액세스 권한을 관리하는 적어도 하나의 유효성 검증기 컴퓨터 시스템과 통신하며, 상기 컴퓨터 서버는, 프로세서, 비휘발성 및 휘발성 작업 메모리들을 포함하고 전자 데이터 스토리지에 연결되며, 상기 프로세서는,
상기 문서 발행자 계정에 할당되고 제1 키 저장소에 저장되는 발행자 영구 마스터 키를 생성하는 단계,
상기 문서에 할당되고 제2 키 저장소에 저장되는 문서 영구 키와, 상기 문서 발행자 계정에 할당되는 상기 문서 영구 키를 영구적으로 삭제하는 권한을 생성하는 단계, 키 유도 함수에 의해 상기 발행자 영구 마스터 키, 상기 문서 영구 키, 및 생성되어 상기 문서에 할당되는 중간 키로부터 계산된 암호화 키를 암호화 알고리즘과 함께 이용하여 문서 데이터를 암호화하는 단계, 암호화된 문서 데이터를 포함한 정보를 상기 블록체인에 등록하는 단계, 및 대응하는 공개된 인증된 문서의 문서 웹 주소를 생성하는 단계 - 상기 웹 주소는 상기 문서 중간 키의 복구 정보 및 상기 공개된 인증된 문서의 식별 데이터를 전달함 -를 포함하는, 제1 프로세스의 실행을 통해 문서를 인증하고 공개하는 단계,
상기 웹 주소에 액세스 가능한 제2 프로세스의 실행을 통해 상기 공개된 인증된 문서를 판독하는 단계 - 상기 제2 프로세스는 상기 식별 데이터로부터, 상기 블록체인에 등록된 상기 정보 내의 상기 암호화된 문서 데이터 및 상기 제1 및 제2 키 저장소들에 대한 액세스를 복구하는 단계, 상기 웹 주소로부터 복구되는 상기 발행자 영구 마스터 키, 상기 문서 영구 키, 상기 중간 키로부터 상기 키 유도 함수를 이용하여 상기 암호화 키를 계산하는 단계, 상기 암호화 키를 이용하여 상기 암호화된 문서 데이터를 복호화하는 단계, 및 상기 복호화된 문서 데이터를 이용하여 상기 인증된 문서를 디스플레이하는 단계를 포함함 -, 및
상기 공개된 인증된 문서의 합법적 소지자로부터의 잊혀질 권리를 주장하는 요청 시, 상기 문서 발행자 계정으로부터 상기 문서 영구 키의 영구적인 삭제를 동작시켜, 상기 제2 프로세스의 실행 및 상기 인터넷 네트워크에서의 상기 공개된 인증된 문서의 디스플레이를 동작 불가능하게 하는 단계를 포함한다.
본 발명의 시스템의 추가적인 특징에 따르면, 상기 컴퓨터 서버는 상기 하드웨어 프로세서에 연결되는 하드웨어 보안 모듈을 포함하고, 적어도 상기 제1 키 저장소는 상기 하드웨어 보안 모듈에서 구현된다.
본 발명의 시스템의 다른 특징에 따르면, 상기 암호화 알고리즘은 AES 유형의 암호화 알고리즘이고, 상기 암호화 키는 대칭적이며 256비트의 길이를 갖는다.
본 발명의 시스템의 또 다른 특징에 따르면, 상기 암호화 알고리즘은 GCM 유형의 카운터 모드에서 동작한다.
본 발명의 시스템의 또 다른 특징에 따르면, 상기 키 유도 함수는 KBKDF 유형의 키 유도 함수이다.
본 발명에 따른 시스템의 일 실시예에서, 상기 문서 데이터는 미리 결정된 특이적 데이터를 포함하며, 상기 미리 결정된 특이적 데이터는 상기 문서와 관련된 문서 카테고리 내의 가변 데이터이고, 상기 제1 프로세스는 상기 문서 카테고리에 대응하고 상기 블록체인에 등록된 상기 정보 내의 탬플릿 식별자를 포함하는 HTML 템플릿의 상기 템플릿 식별자를 상기 미리 결정된 특이적 데이터와 연관시키는 단계를 더 포함하며, 상기 제2 프로세스는 상기 식별 데이터로부터 상기 블록체인에 등록된 상기 정보 내의 상기 템플릿 식별자를 복구하는 단계 및 상기 템플릿 식별자를 이용하여 복구된 상기 HTML 템플릿 및 상기 복호화된 문서 데이터를 사용하여 상기 인증된 문서를 디스플레이하는 단계를 더 포함한다.
본 발명의 문서 인증 컴퓨터 시스템의 추가적인 특징에 따르면, 상기 제2 프로세스는 상기 발행자 및/또는 유효성 검증기의 진위 증거를 복구하는 단계 - 상기 진위 증거는 상기 블록체인 내의 데이터 저장소에 미리 등록되어 있으며 적어도 상기 식별 데이터를 사용하여 로컬화되어 있음 -, 및 상기 진위 증거를 사용하여 상기 인증된 문서를 디스플레이하는 단계를 더 포함한다.
본 발명의 시스템의 다른 특징에 따르면, 상기 문서 데이터는 텍스트 파일 형식이고, 상기 텍스트 파일은 미리 결정된 방식으로 배열되되 복수의 문서들에 각각 속하는 복수의 상기 미리 결정된 특이적 데이터의 배치(batch)를 포함한다.
본 발명의 시스템의 또 다른 특징에 따르면, 미리 결정된 특이적 데이터는 하나 또는 복수의 언어로 작성된다.
또 다른 특징에 따르면, 본 발명의 시스템은 복수의 언어로 공개된 하나의 증명된 문서에 대응하는 적어도 하나의 문서 웹 주소를 생성하는 것을 포함한다.
이러한 몇몇 특징은 통상의 기술자에게 본 발명의 이점을 종래 기술에 비해 명백하게 할 것이다.
본 발명의 상기 언급된 및 다른 특징들 및 이점들은 첨부된 도면들과 함께 예시적인 비제한적인 실시예들의 다음의 상세한 설명을 참조함으로써 더욱 완전하게 이해될 것이며, 여기서 도면부호들은 개별 도면들 전체에 걸쳐 동일하거나 기능적으로 유사한 구성요소들을 지칭한다. 도면들은 단지 설명의 텍스트를 예시하고 본 발명의 다양한 원리들 및 장점들을 설명하기 위해 제공되며, 어떠한 방식으로도 본 발명의 범위를 제한하는 것은 아님에 유의해야 한다. 첨부된 도면에서:
- 도 1은 블록체인과 인터페이스하고 본 발명의 문서 인증 시스템의 예시적인 실시예가 구현되는, 컴퓨터 시스템의 비제한적인 예시적인 개요이다.
- 도 2는 본 발명의 컴퓨터 기반 방법의 하나의 예시적인 구현에서의 증명된 문서의 디스플레이에 수반되는 다양한 데이터 파일들의 비제한적인 예시적인 도면이다.
- 도 3은 도 1의 예시적인 실시예에서 구현된 다양한 프로세스들의 비제한적인 예시적인 블록도이다.
- 도 4는 본 발명의 컴퓨터 기반 방법에서 구현되는 문서 증명 및 공개 프로세스의 비제한적인 예시적인 함수 알고리즘이다.
- 도 5는 본 발명의 컴퓨터 기반 방법에서 구현되는 인증된 문서 판독 프로세스의 비제한적인 예시적인 함수 알고리즘이다.
- 도 6은 본 발명의 문서 인증 시스템의 예시적인 실시예에 배치된 비제한적인 데이터 구조를 도시한다.
- 도 7 내지 도 9는 본 발명의 컴퓨터 기반 방법에 따라 처리되는 문서 인증 시스템의 다양한 예시적인 실시예들에 대응하는 문서에 특이적인 데이터의 다양한 비제한적인 파일들을 도시한다.
이하의 설명에서, 설명을 위해 그리고 및 비제한적인 목적으로, 설명되는 기술의 이해를 제공하기 위해 특정한 기능적 엔티티들, 기술들, 프로토콜들 등과 같은 특정 세부사항들이 제시된다. 통상의 기술자에게는 아래에 설명되는 특정 세부사항들로부터 구분되는 다른 실시예들이 실시될 수 있음이 명백할 것이다. 다른 예들에서, 잘 알려진 방법, 장치, 기술 등의 상세한 설명은 불필요한 세부사항으로 설명을 모호하게 하지 않기 위해 생략된다.
도 1을 참조하면, 본 발명에 따른 문서 인증 컴퓨터 시스템(DCS: document certification computer system)에서, 상이한 컴퓨터 시스템들 및 장치들은 인터넷 네트워크(IT)를 통해 전자 데이터 메시지들을 교환함으로써 통신하고 상호 작용한다. 따라서, 문서 발행 엔티티들 및 적어도 하나의 검증 엔티티는 그들의 컴퓨터 시스템들 또는 장치들, 즉 도 1의 VAS 및 DIS를 통해 각각, 문서 인증 컴퓨터 시스템 DCS에 연결된다. 졸업장과 같은 의도적으로 인증된 문서를 원하는 사용자는 컴퓨터, 태블릿 및/또는 스마트폰 PC에서 이러한 문서를 볼 수 있다. 예를 들어, 사용자는, 이하 "웹 주소"라고도 불리는 "URL"(Uniform Resource Locator의 약어)을 이용하여 자신의 졸업장을 보여주는 졸업생이거나, 지원자가 자신에게 전달한 졸업장 웹 주소를 사용하여 취업 지원자의 학위의 유효성을 검사하는 고용주이다.
특히, 단순히 "유효성 검증기(validator)"라고 하는 유효성 검증 엔티티는, 문서 발행 엔티티에 대한 계정을 생성하고 설치하기 전에 KYC/KYB 검사("Know Your Customer"/"Know Your Business"의 약어)를 수행해야 하는 책임이 있다.
이하 "발행자"라고 지칭되는 문서 발행 엔티티는 문서 인증 컴퓨터 시스템 DCS의 고객이다. 본원에서 고려되는 비제한적인 예에서, 발행자들은 학교들이고, 문서들은 이들 학교들에 의해 발행된 졸업장들이다.
문서 인증 컴퓨터 시스템(DCS)은 인터넷 네트워크(IT)를 통해 전개되고, 하나 또는 복수의 블록체인(BCK)과 상호 작용한다. 문서 인증 컴퓨터 시스템(DCS)은 네트워크(IT)를 통해 액세스 가능한 하드웨어 및 소프트웨어 자원을 사용한다.
도 1에 도시된 예시적인 실시예에서, 문서 인증 컴퓨터 시스템(DCS)은 클라우드 서비스 제공자(SCP)에서 이용가능한 소프트웨어 및 하드웨어 자원들을 사용한다.
이 예에서, 시스템(DCS)의 시스템 소프트웨어(SW)는 클라우드 서비스 제공자(SCP)의 적어도 하나의 컴퓨터 서버(SRC)에서 전체적으로 호스팅된다. 구체적으로, 시스템 소프트웨어(SW)는 하드드라이브(들)와 같은 전용 전자 데이터 스토리지(DS)에서 호스팅된다. 본 발명의 컴퓨터 기반 방법은 특히, 시스템 소프트웨어(SW)의 코드 명령들의 실행에 의해 구현된다.
컴퓨터 서버(SRC)는, 하나 이상의 프로세싱 유닛(CPU)을 포함하되 비휘발성 및 휘발성 메모리(예를 들어, ROM 및 RAM)와 연관되며 네트워크 인터페이스(NI) 및 다른 장치(도시되지 않음)와 같은 통상적인 하드웨어 장치와 전자 데이터 스토리지(DS)에 연결되는, 하드웨어 프로세서(PU)를 포함한다.
통상의 기술자에 의해 소위 "HSM"이라고 불리는 선택적인 하드웨어 보안 모듈이 도 1에 도시되어 있다. 본 발명에서, 그리고 이하 더 명확해지는 바와 같이, 이러한 하드웨어 보안 모듈은 시스템(DCS)에 전용되고, 적어도 하나의 키 저장소에 대해 사용될 수 있다.
시스템 소프트웨어(SW)는 문서 발행자 계정의 KYC/KYB 검사, 설치 및 관리를 수행하는 다양한 소프트웨어 모듈(IM)을 포함한다. 시스템 소프트웨어(SW)는 특히, 웹 플랫폼(WP)을 구현하는데, 그 위에서 유효성 검증기와 발행자가 각각의 계정에 안전하게 액세스할 수 있고 시스템(DCS)을 사용할 수 있다. 시스템 소프트웨어(SW)는 또한, 문서 인증 및 공개 및 판독 프로세스를 각각 지원하는, 웹 애플리케이션(CER 및 REA)도 포함한다.
다른 예시적인 실시예들에서, 시스템(DCS)은 하나 이상의 전용 유효성 검증기 서버(SRD)에 설치될 수 있고, 이의 소프트웨어 및 하드웨어 자원을 사용할 수 있다. 또는, 다른 예로서, 시스템(DCS)은 클라우드 서비스의 하나 이상의 서버(SRC)에 부분적으로 설치될 수 있고, 부분적으로는 유효성 검증기(들)의 하나 이상의 전용 서버(SRD)에 설치될 수 있다.
블록체인(BKC)과 관련하여, 이 블록체인의 환경은 소위 "스마트 계약", 즉 블록체인에 기록되어 가상 머신에 의해 실행되는 프로그램을 가능하게 해야 한다는 점에 유의해야 한다. 따라서 블록체인 환경은 블록체인에서 이러한 스마트 계약을 프로그램하도록 구성된 컴퓨터 명령들의 집합을 제공해야 한다. 예를 들어, 본 발명의 시스템(DCS)의 구현에 적합한 하나의 블록체인 환경은 이더리움(Ethereum) 환경이다. 논문 "Ethereum: A Next-Generation Generalized Smart Contract and Decentralized Application Platform"(Vitalik Buterin, Ethereum, 2017) 및 "Ethereum: A Secure Decentralized Generalized Transaction Ledger"(Gavin Wood, Ethereum, 2014)는 이 기술에 대한 상세한 설명을 제공하며, 그 전체 내용이 본원에 참고로 포함된다.
시스템(DCS)은 하나 이상의 블록체인(BKC)과 상호 작용할 수 있음에 주목해야 한다. 따라서 본 특허출원에서 사용되는 "블록체인(BKC)"이라는 용어는 광범위하게 해석되어야 한다. 따라서, 예를 들어, 제1 블록체인은 암호화된 데이터 저장을 위해 사용될 수 있고, 제2 블록체인은 인증 및 작성 권한 관리에 전용되는 스마트 계약을 호스팅하기 위해 사용될 수 있다. 또는, 필요한 모든 작업에 대해, 스마트 계약을 지원하는 하나의 블록체인이 사용될 수 있다.
스마트 계약을 체결하고 블록체인(BKC)에 작성하는 데에는 비용이 수반된다. 본 발명에 따른 컴퓨터 기반 방법은 이러한 비용을 최소화하도록 설계된다.
바람직한 비제한적인 구현에서, 인증된 문서의 모든 데이터는 블록체인(BKC)에 등록되어 있지 않다. 문서를 식별하고, 발행자가 전송한 동일한 유형의 문서마다 상이할 수 있는 특정 데이터만이, 블록체인(BKC)에 등록되기 전에 템플릿 식별자를 이용하여 암호화된다. 정적 템플릿 데이터가 블록체인(BKC)에 등록되어 인증을 받을 수도 있지만 암호화되지는 않을 수 있다.
상기 동작들의 예시적인 예가 도 2에 도시되어 있다. 이러한 비제한적인 예에서, 증명된 문서는, 졸업장의 형식으로, 3개의 파일들(HTML_Template, Template_Def 및 CredData_file)로부터 재구성된다.
파일(HTML_Template)은 인증된 문서의 하이퍼텍스트 HTML 형식의 템플릿이다. 파일(HTML_Template)은 식별자(TemplateID)를 가진다. 파일(HTML_Template)은 문서 내에서의 위치가 파일(HTML_Template)에 있는 태그/플레이스홀더에 의해 정의되고, A부터 T까지 레이블이 지정된 복수의 데이터 입력 필드를 가진다.
파일(Template_Def)은 파일(HTML_Template)의 데이터 입력 필드 A부터 T까지 입력될 데이터를 정의한다. 필드 A부터 T까지 입력될 데이터는 "고정" 유형 또는 "가변" 유형이다. 고정 유형의 데이터(예를 들어, 필드 A에 대응하는 "Executive MBA")는 파일(Template_Def) 내에 직접 정의된다. 가변 유형의 데이터(예를 들어, 필드 B에 대응하는 "FirstName", "LastName")는 파일(CredData_file)의 평문 텍스트에 포함된 문서에 특이적인 데이터이다. 가변 유형 데이터의 경우, HTML 파일에 삽입될, 파일(CredData_file) 내의 대응하는 데이터를 나타내기 위해 식별자들(예를 들어, 필드 B에 대응하는 "│FirstName│", "│LastName│")이 파일(Template_Def)에 포함된다.
따라서 본 발명의 컴퓨터 기반 방법은 인증된 문서의 완전하고 풍부한 시각화를 가능하게 하는 한편, 블록체인(BKC)과 관련된 비용을 최소화한다. 문서 특이적 데이터(CredData)는 블록체인(BKC)에 등록되기 전에만 암호화된다. 결국, 데이터(CredData)는 블록체인(BKC)에 등록하기 전에 압축되어 비용을 더욱 최소화한다. 식별자(TemplateID)는 문서 특이적 데이터(CredData)를 사용하여 등록되며, 파일들(HTML_Template 및 Template_Def)을 식별한다. 파일(Template_Def)은 블록체인(BKC)에서 한 번 등록될 수도 있으며, 동일한 카테고리의 많은 인증 서류에 사용될 것이다. 파일(HTML_Template)은 전용 전자 데이터 스토리지(DS)(도 1)에 저장될 수 있다.
도 3의 블록도는 본 발명의 시스템(DCS) 내에서 수행되는 다양한 기능 및 프로세스를 개략적으로 도시한다.
도 3에 도시된 바와 같이, 시스템(DCS)은 발행자들의 유효성 검증 및 등록을 위한 프로세스(P1)를 포함한다. 프로세스(P1)는 유효성 검증기에 의해 실행된다. 프로세스(P1)의 초기에, 발행자의 진위성에 대한 다양한 법적 문서 및 증거가 수집되고 저장된다.
KYC/KYB 검사가 완료된 후에, 유효성 검증 및 등록 프로세스(P1)는 블록체인(BKC) 내의 스마트 계약 및 데이터 스토리지의 보안 영역에 기초하여 데이터 구조를 구성하는 다음의 처리 단계(P10)의 실행을 인가한다. 유효성 검증 및 등록 프로세스(P1) 동안, 검증된 발행자(블록체인 계정 및 웹 플랫폼 계정)에 첨부된 계정들을 생성하고, 관리자를 허여된 로그인으로 등록하며, 인증된 문서들의 공개를 위한 템플릿들의 생성 및 관리 동작들을 허용하는, 다른 프로세싱 단계들(P11)이 또한 실행된다. 또한, 유효성 검증 및 등록 프로세스(P1)의 종료 시, 발행자에 대한 비밀 마스터 키(MK)를 생성하기 위한 인가(MK_EN)가 유효성 검증기에 의해 주어진다. 도 3에 도시된 바와 같이, 이 마스터 키(MK)는 생성되어 키 저장소에 저장된다. 마스터 키(MK)는 발행자 계정에 첨부된 영구 비밀 키이다. 이 마스터 키(MK)는 인증된 문서의 공개를 위해 문서 데이터를 암호화/복호화하는 데에 사용된다. 특정 실시예들에서, 마스터 키(MK)의 키 저장소는 전술한 하드웨어 보안 모듈(HSM) 내에 구현될 것이다(도 1참조).
발행자 블록체인 계정이 생성되면(연관된 주소 및 개인 키와 함께), 발행자 계정과 연관된 유효성 검증기 스마트 계약(SC0)과 발행자 스마트 계약(SC1)이 블록체인(BKC)에 등록된다.
유효성 검증기 스마트 계약(SC0)은 발행자의 식별 데이터가 등록된 유효성 검증기 데이터 스토리지(ST0)를 특히 관리한다.
도 6을 또한 참조하면, 유효성 검증기 데이터 스토리지(ST0)는 특히, 유효성 검증기 식별자(ValidatorID)(정수임), 문자열 형식의 발행자 이름, 발행자 계정의 블록체인 계정 주소(KpubETH), 블록체인의 최종 유효 블록(Last_Block_Validity)의 식별자(정수임), "json"("JavaScript Object Notation"의 약어) 형식의 법적 참조 파일(Legal_Reference), KYC/KYB 문서 해시(KYC_Documents_hash), 발행자 웹 사이트의 웹 주소(Corporate_URL)(문자열임), 및 발행자 로고의 웹 주소(Logo_URL)(문자열임)을 포함한다.
도 3에 도시된 바와 같이, 발행자 스마트 계약(SC1)은 식별 스마트 계약(SC10), 및 발행자에 의해 공개된 인증된 문서의 암호화된 데이터의 관리를 위해 특별히 의도된 공개 스마트 계약(SC11)을 포함한다. 식별 스마트 계약(SC10)은 특히 데이터 스토리지(ST1, ST2 및 ST3)를 관리하며, 공개 스마트 계약(SC11)은 특히 데이터 스토리지(ST4)를 관리한다.
도 6을 또한 참조하면, 데이터 스토리지(ST1, ST2 및 ST3)는 각각, 발행자 식별 데이터, 템플릿 데이터 및 발생 비용(특히, 블록체인(BKC) 상의 트랜잭션 비용)의 지불에 이용 가능한 크레딧의 데이터에 전용된다. 데이터 스토리지(ST4)는 특히, 인증된 문서의 암호화된 특이적 데이터의 등록에 전용된다.
도 6에 도시된 바와 같이, 발행자 식별 데이터 스토리지(ST1)는 특히, 유효성 검증기 식별자(ValidatorID), 발행자 식별자(IssuerID)(정수임), 발행자 이름, 블록체인 계정 주소(KpubETH), 최종 유효 블록의 식별자(Last_Block_Validity), 법적 참조 파일(Legal_Reference), KYC/KYB 문서 해시(KYC_Documents_hash), 발행자 웹사이트의 웹 주소(Corporate_URL), 발행자 로고의 웹 주소(Logo_URL), json-type 파일로서의 인텐트(intent) 파일, 연결된 발행자의 식별자(CurrentissuerID), 발행자의 서버의 웹 주소(Server_URL)(문자열임)를 포함한다.
ValidatorID, Name, KpubETH, Last_Block_Validity, Legal_Reference, KYC_Document_hash, Corporate_URL 및 Logo_URL 데이터와 같은 데이터 스토리지(ST0 및 ST1)에서의 식별 데이터의 중복은, 중요한 것으로 간주되는 특정 트랜잭션 동안의 발행자 계정의 유효성을 검사하고, 인증된 문서를 표시할 때 사용할 수 있는 발행자 및/또는 유효성 검증기의 진위 증명을 검증할 수 있게 한다.
템플릿 데이터 스토리지(ST2)는 발행자 식별자(IssuerID), 템플릿 식별자(TemplateID)(정수임), 최종 유효 블록(Last_Block_Validity), 공개된 인증 문서에 대응하는 HTML 템플릿인 하이퍼텍스트 파일(HTML_Template)의 웹 주소(URL_HTML_Template)(문자열임), 템플릿 정의 파일(Template_Def)(json-type 파일임), 및 공개된 인증 문서에 대해 디폴트로 사용될 언어를 알리는 식별자(DefaultLanguage)를 포함한다.
크레딧 데이터 스토리지(ST3)는 식별자(IssuerID) 및 크레딧 수량(Credits)을 포함한다. 예를 들어, 크레딧 수량은 토큰으로 표시될 수 있다. 토큰을 사용하는 경우에, 계정의 동작은 특히, 합법적인 불환 통화(fiduciary currency)들만을 다루는 사용자에 대해 토큰들이 완전히 투명하도록 설계될 수 있다.
도 6에 또한 도시된 바와 같이, 공개 스마트 계약(SC11)에 의해 관리되는 데이터 스토리지(ST4)는, 문서 특이적 데이터(CredData)의 암호화 및 공개된 인증된 문서에 대한 HTML 템플릿의 TemplateID 식별자 및 블록체인 계정 주소(KpubETH)를 초래하는, 암호화된 데이터(EncData)를 포함한다.
도 3을 다시 참조하면, 시스템(DCS)은 또한 문서 증명 및 공개 프로세스(P2)와, 인증된 문서 판독 프로세스(P3)를 포함한다. 이러한 프로세스들(P2 및 P3)은 특히, 도 1과 관련하여 위에서 언급된 웹 애플리케이션들(CER 및 REA)에 의해 구현된다. 프로세스(P2 및 P3)는 키 저장소에 의해 제공되는 안전한 환경뿐만 아니라 블록체인(BKC)에서의 스마트 계약 및 등록을 위해 사용한다. 본 발명의 실시예들에 따르면, 소프트웨어 및/또는 하드웨어에 의해 구현되는 키 저장소들이 사용될 수 있다.
도 4를 또한 참조하면, 프로세스(P2)에서 수행된 문서 인증은 3개의 키들, 즉 영구 마스터 키(MK), 문서에 부착되는 영구 키(PK) 및 문서에 또한 전용되는 중간 키(IK)를 필요로 하는 암호화 알고리즘을 사용한다. 특정 구현예에서, 키(MK와 PK)는 모두 소프트웨어 키 저장소에 안전하게 저장된다. 다른 특정 구현예에서, 키(MK)는 강화된 보안을 위해 하드웨어 보안 모듈(HSM)에 저장되고, 키(PK)는 소프트웨어 키 저장소에 저장된다. 또 다른 특정 구현예에서, 키(MK 및 PK)는 모두 하드웨어 보안 모듈(HSM)에 저장된다.
바람직하게는, 키(MK, PK 및 IK)는, 적용 가능한 경우, 고성능 난수 발생기, 예를 들어, 하드웨어 보안 모듈(HSM)에 포함된 고성능 난수 발생기에 의해 생성될 것이다.
영구 키(PK)는 그의 "잊혀질 권리"를 주장하는 문서의 합법적 소지자로부터의 요청 시, 발행자에 의해 제거될 수 있고, 그리고/또는 삭제 인증 코드, 예를 들어, 고유 코드가 시스템(DCS)에 의해 할당되었던 문서의 합법적 소지자에 의해 제거될 수 있다. 영구 키(PK)를 삭제하면 프로세스(P3)는 공개된 인증 문서를 읽을 수 없게 되며, 이는 이하 더욱 명확해질 것이다.
도 4는 프로세스(P2)에 의해 수행되는 상이한 처리 단계들(S2-0 내지 S2-14)을 상세히 도시함으로써 도 3의 단순화된 블록도를 완성한다.
단계(S2-0)에서, 문서 인증의 시작 시, 발행자 시스템(DIS)(도 1)은 먼저, 문서 특이적 데이터(CredData) 및 식별자(TemplateID)를 포함하는 문서 데이터(DocData)뿐만 아니라 블록체인 계정 주소(KpubETH)를 프로세스(P2)에 제공한다.
단계(S2-1)에서, 난수 생성기에 의해 3개의 랜덤 데이터(IdData, RND1 및 RND2)가 생성된다. 단계(S2-2)에서, IdData에 의해 식별된 키 저장소 테이블이 생성된다. 랜덤 데이터(RND1)가 할당되는 영구 키(PK)와, 블록체인 계정 주소(KpubETH)는 키 저장소(IdData)에 등록된다. 단계(S2-3)에서, 랜덤 데이터(RND2)가 중간 키(IK)에 할당된다.
단계(S2-4)에서, 키 유도 함수
Figure pct00001
를 이용하여 키(MK, PK 및 IK)로부터 암호화 키(KAES)가 계산된다. 암호화 키(KAES)는 문서 특이적 데이터(CredData)의 암호화에 사용되도록 의도된다.
예를 들어, 유형 KBKDF의 키 유도 함수("키 기반 키 유도 함수(Key-Based Key Derivation Function)"의 약어)가 키 유도 함수
Figure pct00002
에 사용될 수 있다. 계산된 암호화 키(KAES)는 다음과 같다: KAES = KBKDF(MK, PK || IK).
단계(S2-5)에서, 본 기술분야에서 "Nonce"라고 불리는 추가적인 랜덤 데이터가, 유도 카운터(DCTR)의 값을 마스터 nonce값 MNonce(랜덤 데이터)에 더함으로써 계산된다.
단계(S2-6)에서, 본 예시적인 실시예에서, 문서 특이적 데이터(CredData)를 암호화하기 위해 대칭 암호화 알고리즘(AES)("Advanced Encryption Standard"의 약어)이 사용된다. 구체적으로, 본 예시적인 실시예에서, 암호화 알고리즘은 카운터 모드, 즉, 소위 GCM("갈루아/카운터 모드"의 약어)인 카운터 모드에서 사용되고 암호화 키의 길이는 256비트의 길이를 갖는다. CredData, MK, IK, 및 Nonce 항목은 암호화된 문서 특이적 데이터(EncData)를 전달하는 암호화 알고리즘(AES_256_GCM_Encrypt)에 제공된다.
단계(S2-7) 및 단계(S2-8)에서, 암호화 키(KAES)가 작업 메모리로부터 제거되고, 유도 카운터(DCTR)는 각각, 증분되고 레지스터에 저장된다.
단계(S2-9)에서, 인증된 문서에 대해, 웹 주소 "URL = https//Reader/IdData || IK"를 생성한다. 테이블(IdData) 및 중간 키(IK)에 대한 액세스에 필요한 정보는 이 웹 주소 "URL = https//Reader/IdData || IK"에 통합된다. 이 웹 주소는 인증된 문서 판독 프로세스(P3)을 구현하는 웹 애플리케이션(REA)으로 이어진다.
단계(S2-10) 및 단계(S2-11)에서, 중간 키(IK)가 작업 메모리로부터 제거되고, 랜덤 데이터(Nonce) 및 카운터 인덱스 "i"가 테이블(IdData)에 저장된다.
단계(S2-12)에서, 블록체인(BKC) 내의 암호화된 문서 특이적 데이터(EncData) 및 템플릿 식별자(TemplateID)를 공개하기 위해 트랜잭션이 수행된다. 블록체인 계정 주소(KpubETH)가 이 트랜잭션에 사용된다. 블록체인(BKC)의 블록에서의 이 트랜잭션의 등록은 도 3 및 도 6과 관련하여 위에서 설명된 문서 특이적 데이터 스토리지(ST4)에 대응한다. 트랜잭션 식별자(EthTxId)가 또한 도 6에 도시되어 있는데, 트랜잭션은 블록체인(BKC)에서 발견될 수 있고, EncData 및 TemplateID가 검색될 수 있다.
단계(S2-13)에서, 트랜잭션 식별자(EthTxId)는 테이블(IdData)에 저장된다. 이는, 인증된 문서 판독 프로세스(P3)로 하여금 EncData와 TemplateID를 검색하게 할 것이다. 단계(S2-13)을 실행한 후에, 키 저장소 테이블(IdData)이 완성되고, 모든 필수 데이터를 가진다.
json-type 파일로서의 키 저장소 테이블(IdData)의 예가 도 6에 도시되어 있다. 도 6에서 볼 수 있는 바와 같이, 키 저장소 테이블(IdData) 및 영구 마스터 키(MK)의 키 저장소는 블록체인 계정 주소(KpubETH)와 연관되고, 어드레스(KpubETH)는 마스터 키(MK)의 키 저장소에 대한 액세스 경로를 허용한다.
단계(S2-14)에서, 프로세스(P2)는 문서의 인증 및 공개를 완료하였고, 인증된 문서의 웹 주소 "URL = https//Reader/IdData || IK"는 예를 들어, QR 코드("Quick Response Code"의 약어)의 형식으로 수신인에게 전달될 수 있다.
이제, 도 3 및 도 5를 보다 구체적으로 참조하면, 인증된 문서 판독 프로세스(P3)는 인증된 문서 판독 웹 애플리케이션(REA)에 의해 구현된다. 프로세스(P3)는 웹 주소 "URL = https//Reader/IdData || IK"를 통해 액세스 가능한 인증된 문서를 입력으로서 디스플레이하도록 설계된다. 이를 위해, 프로세스(P3)는 블록체인(BKC)에 등록된 암호화된 데이터(EncData)와, 블록체인(BKC)에 등록된 식별자(TemplateID)를 사용하는 파일들(HTML_Template 및 Template_Def)로부터 문서 특이적 데이터를 검색해야 한다. 또한, 발행자 진위 및/또는 유효성 검증기 진위의 증거들이 블록체인(BKC) 내의 유효성 검증기 스토리지(ST0) 및 발행자 스토리지(ST1)(도 6)로부터 검색되어야 한다.
도 5는 프로세스(P3)에 의해 수행되는 상이한 처리 단계들(S3-0 내지 S3-12)을 상세히 도시함으로써 도 3의 단순화된 블록도를 완성시킨다.
단계(S3-0)에서, 사용자의 인터넷 브라우저와 웹 주소 "URL = https//Reader/IdData || IK"를 통해 사용자는 웹 애플리케이션(REA)을 호스팅하는 서버에 연결된다. 웹 애플리케이션(REA)은 인증된 문서 판독 프로세스(P3)를 구현한다.
단계(S3-1)에서, 프로세스(P3)는 웹 주소 "URL = https//Reader/IdData || IK"로부터 테이블(IdData)의 식별자를 검색한다.
단계(S3-2)에서, 트랜잭션 식별자(EthTxId) 및 블록체인 계정 주소(KpubETH)가 테이블(IdData)로부터 검색된다.
단계(S3-3)에서, 블록체인(BKC)에서, EthTxld 식별자를 이용하여 암호화된 데이터(EncData) 및 템플릿 ID가 문서 특이적 데이터 스토리지(ST4)에서 검색된다.
단계(S3-4) 및 단계(S3-5)에서 각각, 테이블(IdData)에서 영구 키(PK)가 판독되고, 웹 주소 "URL = https//Reader/IdData || IK"로부터 중간 키(IK)가 검색된다.
단계(S3-6)에서, 암호화 키(KAES)는 KBKDF 유형의 키 유도 함수
Figure pct00003
를 이용하여 KAES = KBKDF(MK, PK || IK)로 계산된다. 블록체인 계정 주소(KpubETH)는 영구 마스터 키(MK)의 키 저장소에 대한 액세스 경로를 허용한다.
단계(S3-7)에서, 트랜잭션 식별자(EthTxId) 및 키들(PK 및 IK)이 작업 메모리에서 제거된다.
단계(S3-8)에서, 복호화를 위해 적용될 랜덤 데이터(Nonce)가 테이블(IdData)에서 판독된다.
단계(S3-9)에서, EncData, MK, IK 및 Nonce 데이터가 복호화 알고리즘(AES_256_GCM_Decrypt)에 대한 입력으로서 제공되며, 이는 문서 특이적 데이터(CredData)를 평문 텍스트로 출력한다. 이어서, 단계(S3-10)에서 암호화 키(KAES)가 작업 메모리로부터 제거된다.
단계(S3-11)에서, 블록체인 계정 주소(KpubETH) 및 식별자(TemplateID)는 블록체인(BKC) 내의 데이터 스토리지(ST0, ST1, ST2)(도 6)에 대한 액세스를 제공한다.
식별자(TemplateID)를 사용하여, HTML_Template 파일 및 Template_Def 파일의 웹 주소(URL_HTML_Template)가 데이터 스토리지(ST2)에서 검색된다. 웹 주소(URL_HTML_Template)는, 예를 들어, 클라우드 서비스 제공자의 서버(도 6, SRC, CSP)에 저장된 HTML _Template 파일에 대한 액세스를 제공한다. CSS("Cascading Style Sheets"의 약어)의 하나 이상의 스타일 정의 파일이 HTML_Template 파일과 연관될 수 있음에 유의해야 한다.
유효성 검증기 데이터 스토리지(ST0) 및 발행자 데이터 스토리지(ST1)는 식별자들(IssuerID 및 ValidatorID)과, 발행자의 진위 및/또는 유효성 검증기의 진위에 대한 증거들을 이용하여 액세스될 수 있다.
단계(S3-12)에서, 프로세스(P3)는 문서 특이적 데이터(CredData), HTML _Template 파일, 및 데이터 스토리지(SC0-SC2)로부터 검색된 다른 데이터를 이용하여, 인증된 문서에 대응하는 완전한 HTML 파일을 형성한다. 프로세스(P3)는 사용자의 컴퓨터 장치의 스크린 상에 인증된 문서의 완전한 HTML 파일의 디스플레이하여 자신의 동작을 종료한다.
본 발명의 다른 예시적인 실시예들에서, 인증된 문서들은 다수의 언어들로 디스플레이될 수 있다. 도 7 및 도 8은 문서의 영어(en) 및 프랑스어(fr)의 디스플레이를 위한 이중 언어 파일들(Template_Def_en/fr 및 CredData_file_en/fr)의 예들을 도시한다. 예를 들어, 상이한 언어로 된 여러 HTML 템플릿 파일이 제공될 수 있으며, 각각의 템플릿은 대응하는 언어로 된 데이터를 포함한다. 또는, 예를 들어, 두 언어의 경우, 하나의 다국어 템플릿만 사용될 수 있다. 실시예들에 따르면, 다국어 인증된 문서의 하나 이상의 웹 주소들(URL)이 사용자에게 전달될 것이다. 다수의 웹 주소들(URL)의 경우, 각각의 웹 주소(URL)는 하나의 언어로 인증된 문서에 대응할 수 있다. 바람직하게는, 전체 다국어 인증된 문서에 대한 액세스를 위해 오직 하나의 웹 주소(URL)만이 사용자에게 전달될 것이다.
본 발명의 다른 예시적인 실시예들에서, 블록체인의 암호화 및 등록을 위해, 복수의 문서 특이적 데이터 세트(CredData1, CredData2, ...)의 배치(batch)가 복수의 증명된 문서들에 각각 대응하도록, 인증된 문서 특이적 데이터 파일(CredData_file)이 형성될 수 있다. 이 구현예는 블록체인과의 트랜잭션 횟수 및 등록된 데이터의 크기를 줄이는 데에 유리하며, 이에 따라 경제적 비용이 절감된다. CredData_file 파일을 압축하면 비용이 더 줄어들 것이다. 도 9는 이러한 파일의 일례(CredData_file_batch_en/fr)를 나타낸다. 이 텍스트 파일은 영어(en) 및 프랑스어(fr)의 이중언어로 된 문서 특이적 데이터의 2개의 세트(CredData1, CredData2)의 배치를 포함한다.
본 발명의 다양한 비제한적인 예시적 실시예들의 상기 설명에서, 어느 동작이 수행"될 수 있다(may, can, or could)"거나, 어느 특징, 구성요소, 또는 컴포넌트가 포함"될 수 있(may, can, or could)"거나 주어진 맥락에서 적용될 수 있다거나, 주어진 항목이 주어진 속성을 가질 "수 있다(may, can, or could)"라고 기재되든지, 또는 용어 "할 수 있다(may, can, or could)"를 포함한 임의의 유사한 어구가 사용되든지 간에, 해당 주어진 동작, 특징, 구성요소, 컴포넌트, 속성 등이 적어도 하나의 실시예에서 존재하고 모든 실시예들에서 반드시 필수적이지는 않는 것으로 이해되어야 한다.
본 설명에서 사용된 용어 및 어구, 및 그 변형은 달리 명시적으로 언급되지 않는 한, 제한적인 것이 아니라 개방적인 것으로 해석되어야 한다. 전술한 것의 예로서, "및/또는"은 하나 이상의 관련된 열거된 항목들 중 임의의 조합 및 모든 조합을 포함하고, 단수 형식 "a", "an" 및 "the"는 "적어도 하나(at least one)", "하나 이상(one or more)"을 포함하는 것으로 읽어야 하며, 용어 "예(example)"는 포괄적이거나 제한적인 리스트가 아니라, 논의되는 대상의 예를 제공하기 위해 사용되며, 용어 "포함하는(comprise)" 및 "포함하는(incldue)"(및 기타 활용형 및 변형 포함)은 관련된 나열된 항목의 존재를 명시하지만 하나 이상의 다른 항목의 존재 또는 추가를 제외하지 않고, 하나의 항목이 "선택적(optional)"이라 설명된 경우, 그 설명은 다른 항목들 또한 선택적이 아님을 나타내는 것으로 이해되어서는 안 된다.
프로세스 단계들, 알고리즘들 등이 특정 순서로 설명되거나 청구될 수 있지만, 이러한 프로세스들은 상이한 순서로 동작하도록 구성될 수 있다. 즉, 본 명세서에서 명시적으로 설명되거나 청구될 수 있는 단계들의 임의의 서열 또는 순서가 반드시 그 순서로 단계들이 수행되어야 하는 요건을 나타내는 것은 아니며, 오히려, 본원에 기술된 프로세스들의 단계들은 임의의 순서로 수행될 수 있다. 또한, 일부 단계들은 (예를 들어, 하나의 단계가 다른 단계 이후에 설명되기 때문에) 동시에 발생하는 것이 아닌 것으로 설명되거나 암시되더라도, 동시에 또는 병렬로 수행될 수 있다. 또한, 도면에서의 그의 묘사에 의한 프로세스의 예시는 도시된 프로세스가 다른 변형 및 그에 대한 변경들을 배제하고 있음을 의미하지 않고, 도시된 프로세스 또는 그의 단계들이 필수적임을 의미하지 않으며, 도시된 프로세스가 바람직함을 의미하지는 않는다.
비록 다양한 비제한적인 예시적 실시예들이 상세히 도시되고 설명되었지만, 청구항들은 임의의 특정 실시예 또는 예에 제한되지 않는다. 상기 설명 중 어느 것도 특정 요소, 단계 또는 기능이 반드시 필요함을 의미하는 것으로 해석되어서는 안 된다. 통상의 기술자에게 공지된 상기 기재된 바람직한 실시예의 구성요소에 대한 모든 구조적 및 기능적 균등물들이 본원에 참고로 명백하게 포함되며, 포함되는 것으로 의도된다. 더욱이, 본 발명에 의해 포함되는 장치 또는 방법이 본 발명에 의해 해결되고자 하는 각각의 문제 및 모든 문제를 해결할 필요는 없다.

Claims (19)

  1. 인터넷 네트워크를 통해 배치되고 개방형 블록체인과 상호 작용하는 문서 인증 컴퓨터 시스템에 구현된 컴퓨터 기반 방법으로서, 상기 문서 인증 컴퓨터 시스템은 적어도 하나의 컴퓨터 서버에 위치되고 상기 인터넷 네트워크를 통해 액세스 가능한 하드웨어 및 소프트웨어 자원을 가지고, 상기 문서 인증 컴퓨터 시스템은 전자 데이터 메시지들을 통해서, 문서 발행자가 인증된 문서들의 발행들을 관리하는 적어도 하나의 문서 발행자 컴퓨터 시스템, 및 유효성 검증기가 상기 문서 발행자의 문서 발행자 계정에 할당된 자원 및 액세스 권한을 관리하는 적어도 하나의 유효성 검증기 컴퓨터 시스템과 통신하며, 상기 컴퓨터 기반 방법은,
    상기 문서 발행자 계정에 할당되고 제1 키 저장소에 저장되는 발행자 영구 마스터 키를 생성하는 단계,
    상기 문서에 할당되고 제2 키 저장소에 저장되는 문서 영구 키와, 상기 문서 발행자 계정에 할당되는 상기 문서 영구 키를 영구적으로 삭제하는 권한을 생성하는 단계, 키 유도 함수에 의해 상기 발행자 영구 마스터 키, 상기 문서 영구 키, 및 생성되어 상기 문서에 할당되는 중간 키로부터 계산된 암호화 키를 암호화 알고리즘과 함께 이용하여 문서 데이터를 암호화하는 단계, 암호화된 문서 데이터를 포함한 정보를 상기 블록체인에 등록하는 단계, 및 대응하는 공개된 인증된 문서의 문서 웹 주소를 생성하는 단계 - 상기 웹 주소는 상기 문서 중간 키의 복구 정보 및 상기 공개된 인증된 문서의 식별 데이터를 전달함 -를 포함하는, 제1 프로세스의 실행을 통해 문서를 인증하고 공개하는 단계,
    상기 웹 주소에 액세스 가능한 제2 프로세스의 실행을 통해 상기 공개된 인증된 문서를 판독하는 단계 - 상기 제2 프로세스는 상기 식별 데이터로부터, 상기 블록체인에 등록된 상기 정보 내의 상기 암호화된 문서 데이터 및 상기 제1 및 제2 키 저장소들에 대한 액세스를 복구하는 단계, 상기 웹 주소로부터 복구되는 상기 발행자 영구 마스터 키, 상기 문서 영구 키, 상기 중간 키로부터 상기 키 유도 함수를 이용하여 상기 암호화 키를 계산하는 단계, 상기 암호화 키를 이용하여 상기 암호화된 문서 데이터를 복호화하는 단계, 및 상기 복호화된 문서 데이터를 이용하여 상기 인증된 문서를 디스플레이하는 단계를 포함함 -, 및
    상기 공개된 인증된 문서의 합법적 소지자로부터의 잊혀질 권리를 주장하는 요청 시, 상기 문서 발행자 계정으로부터 상기 문서 영구 키의 영구적인 삭제를 동작시켜, 상기 제2 프로세스의 실행 및 상기 인터넷 네트워크에서의 상기 공개된 인증된 문서의 디스플레이를 동작 불가능하게 하는 단계를 포함하는, 컴퓨터 기반 방법.
  2. 제1항에 있어서, 상기 제1 키 저장소는 하드웨어 보안 모듈에서 구현되는, 컴퓨터 기반 방법.
  3. 제1항에 있어서, 상기 제1 및 제2 키 저장소들은 하드웨어 보안 모듈에서 구현되는, 컴퓨터 기반 방법.
  4. 제1항에 있어서, 상기 암호화 알고리즘은 AES 유형의 암호화 알고리즘이고, 상기 암호화 키는 대칭적이며, 256 비트의 길이를 갖는, 컴퓨터 기반 방법.
  5. 제4항에 있어서, 상기 암호화 알고리즘은 GCM 유형의 카운터 모드에서 동작하는, 컴퓨터 기반 방법.
  6. 제1항에 있어서, 상기 키 유도 함수는 KBKDF 유형의 키 유도 함수인, 컴퓨터 기반 방법.
  7. 제1항에 있어서,
    상기 문서 데이터는 미리 결정된 특이적 데이터를 포함하며, 상기 미리 결정된 특이적 데이터는 상기 문서와 관련된 문서 카테고리 내의 가변 데이터이고, 상기 제1 프로세스는 상기 문서 카테고리에 대응하고 상기 블록체인에 등록된 상기 정보 내의 탬플릿 식별자를 포함하는 HTML 템플릿의 상기 템플릿 식별자를 상기 미리 결정된 특이적 데이터와 연관시키는 단계를 더 포함하며,
    상기 제2 프로세스는 상기 식별 데이터로부터 상기 블록체인에 등록된 상기 정보 내의 상기 템플릿 식별자를 복구하는 단계 및 상기 템플릿 식별자를 이용하여 복구된 상기 HTML 템플릿 및 상기 복호화된 문서 데이터를 사용하여 상기 인증된 문서를 디스플레이하는 단계를 더 포함하는, 컴퓨터 기반 방법.
  8. 제7항에 있어서, 상기 제2 프로세스는 상기 발행자 및/또는 유효성 검증기의 진위 증거를 복구하는 단계 - 상기 진위 증거는 상기 블록체인 내의 데이터 저장소에 미리 등록되어 있으며 적어도 상기 식별 데이터를 사용하여 로컬화되어 있음 -, 및 상기 진위 증거를 사용하여 상기 인증된 문서를 디스플레이하는 단계를 더 포함하는, 컴퓨터 기반 방법.
  9. 제8항에 있어서, 상기 문서 데이터는 텍스트 파일 형식이고, 상기 텍스트 파일은 미리 결정된 방식으로 배열되되 복수의 문서들에 각각 속하는 복수의 상기 미리 결정된 특이적 데이터의 배치(batch)를 포함하는, 컴퓨터 기반 방법.
  10. 제9항에 있어서, 상기 미리 결정된 특이적 데이터는 하나 또는 복수의 언어로 작성되는, 컴퓨터 기반 방법.
  11. 제10항에 있어서, 복수의 언어로 공개된 하나의 인증된 문서에 대응하는 적어도 하나의 문서 웹 주소를 생성하는 단계를 포함하는, 컴퓨터 기반 방법.
  12. 인터넷 네트워크를 통해 배치되고 개방형 블록체인과 상호 작용하는 문서 인증 컴퓨터 시스템으로서, 상기 문서 인증 컴퓨터 시스템은 적어도 하나의 컴퓨터 서버에 위치하되 상기 인터넷 네트워크를 통해 액세스 가능한 하드웨어 및 소프트웨어 자원을 가지고, 상기 문서 인증 컴퓨터 시스템은 전자 데이터 메시지들을 통해서, 문서 발행자가 인증된 문서들의 발행들을 관리하는 적어도 하나의 문서 발행자 컴퓨터 시스템, 및 유효성 검증기가 상기 문서 발행자의 문서 발행자 계정에 할당된 자원 및 액세스 권한을 관리하는 적어도 하나의 유효성 검증기 컴퓨터 시스템과 통신하며, 상기 컴퓨터 서버는, 프로세서, 비휘발성 및 휘발성 작업 메모리들을 포함하고 전자 데이터 스토리지 및 적어도 하나의 네트워크 인터페이스에 연결되며, 상기 프로세서는,
    상기 문서 발행자 계정에 할당되고 제1 키 저장소에 저장되는 발행자 영구 마스터 키를 생성하는 단계,
    상기 문서에 할당되고 제2 키 저장소에 저장되는 문서 영구 키와, 상기 문서 발행자 계정에 할당되는 상기 문서 영구 키를 영구적으로 삭제하는 권한을 생성하는 단계, 키 유도 함수에 의해 상기 발행자 영구 마스터 키, 상기 문서 영구 키, 및 생성되어 상기 문서에 할당되는 중간 키로부터 계산된 암호화 키를 암호화 알고리즘과 함께 이용하여 문서 데이터를 암호화하는 단계, 암호화된 문서 데이터를 포함한 정보를 상기 블록체인에 등록하는 단계, 및 대응하는 공개된 인증된 문서의 문서 웹 주소를 생성하는 단계 - 상기 웹 주소는 상기 문서 중간 키의 복구 정보 및 상기 공개된 인증된 문서의 식별 데이터를 전달함 -를 포함하는, 제1 프로세스의 실행을 통해 문서를 인증하고 공개하는 단계,
    상기 웹 주소에 액세스 가능한 제2 프로세스의 실행을 통해 상기 공개된 인증된 문서를 판독하는 단계 - 상기 제2 프로세스는 상기 식별 데이터로부터, 상기 블록체인에 등록된 상기 정보 내의 상기 암호화된 문서 데이터 및 상기 제1 및 제2 키 저장소들에 대한 액세스를 복구하는 단계, 상기 웹 주소로부터 복구되는 상기 발행자 영구 마스터 키, 상기 문서 영구 키, 상기 중간 키로부터 상기 키 유도 함수를 이용하여 상기 암호화 키를 계산하는 단계, 상기 암호화 키를 이용하여 상기 암호화된 문서 데이터를 복호화하는 단계, 및 상기 복호화된 문서 데이터를 이용하여 상기 인증된 문서를 디스플레이하는 단계를 포함함 -, 및
    상기 공개된 인증된 문서의 합법적 소지자로부터의 잊혀질 권리를 주장하는 요청 시, 상기 문서 발행자 계정으로부터 상기 문서 영구 키의 영구적인 삭제를 동작시켜, 상기 제2 프로세스의 실행 및 상기 인터넷 네트워크에서의 상기 공개된 인증된 문서의 디스플레이를 동작 불가능하게 하는 단계를 수행하도록 구성되는, 문서 인증 컴퓨터 시스템.
  13. 제12항에 있어서, 상기 컴퓨터 서버는 상기 하드웨어 프로세서에 연결되는 하드웨어 보안 모듈을 포함하고, 적어도 상기 제1 키 저장소는 상기 하드웨어 보안 모듈에서 구현되는, 문서 인증 컴퓨터 시스템.
  14. 제13항에 있어서, 상기 암호화 알고리즘은 AES 유형의 암호화 알고리즘이고, 상기 암호화 키는 대칭적이며 256비트의 길이를 갖는, 문서 인증 컴퓨터 시스템.
  15. 제14항에 있어서, 상기 암호화 알고리즘은 GCM 유형의 카운터 모드에서 동작하는, 문서 인증 컴퓨터 시스템.
  16. 상기 문서 인증 컴퓨터 시스템(15)으로서, 상기 키 유도 함수는 KBKDF 유형의 키 유도 함수인, 문서 인증 컴퓨터 시스템.
  17. 제12항에 있어서,
    상기 문서 데이터는 미리 결정된 특이적 데이터를 포함하며, 상기 미리 결정된 특이적 데이터는 상기 문서와 관련된 문서 카테고리 내의 가변 데이터이고, 상기 제1 프로세스는 상기 문서 카테고리에 대응하고 상기 블록체인에 등록된 상기 정보 내의 탬플릿 식별자를 포함하는 HTML 템플릿의 상기 템플릿 식별자를 상기 미리 결정된 특이적 데이터와 연관시키는 단계를 더 포함하며,
    상기 제2 프로세스는 상기 식별 데이터로부터 상기 블록체인에 등록된 상기 정보 내의 상기 템플릿 식별자를 복구하는 단계 및 상기 템플릿 식별자를 이용하여 복구된 상기 HTML 템플릿 및 상기 복호화된 문서 데이터를 사용하여 상기 인증된 문서를 디스플레이하는 단계를 더 포함하는, 문서 인증 컴퓨터 시스템.
  18. 제17항에 있어서, 상기 제2 프로세스는 상기 발행자 및/또는 유효성 검증기의 진위 증거를 복구하는 단계 - 상기 진위 증거는 상기 블록체인 내의 데이터 저장소에 미리 등록되어 있으며 적어도 상기 식별 데이터를 사용하여 로컬화되어 있음 -, 및 상기 진위 증거를 사용하여 상기 인증된 문서를 디스플레이하는 단계를 더 포함하는, 문서 인증 컴퓨터 시스템.
  19. 제18항에 있어서, 상기 문서 데이터는 텍스트 파일 형식이고, 상기 텍스트 파일은 미리 결정된 방식으로 배열되되 복수의 문서들에 각각 속하는 복수의 상기 미리 결정된 특이적 데이터의 배치(batch)를 포함하는, 문서 인증 컴퓨터 시스템.
KR1020217010823A 2018-09-21 2019-09-23 문서 인증 및 공개 시스템 및 이의 컴퓨터 기반 방법 KR102357978B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/138,082 US10715313B2 (en) 2018-09-21 2018-09-21 Systems and computer-based methods of document certification and publication
US16/138,082 2018-09-21
PCT/EP2019/075505 WO2020058527A1 (en) 2018-09-21 2019-09-23 Systems and computer-based methods of document certification and publication

Publications (2)

Publication Number Publication Date
KR20210044312A true KR20210044312A (ko) 2021-04-22
KR102357978B1 KR102357978B1 (ko) 2022-02-08

Family

ID=68062940

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217010823A KR102357978B1 (ko) 2018-09-21 2019-09-23 문서 인증 및 공개 시스템 및 이의 컴퓨터 기반 방법

Country Status (9)

Country Link
US (1) US10715313B2 (ko)
EP (1) EP3853758B1 (ko)
KR (1) KR102357978B1 (ko)
CN (1) CN112740216B (ko)
CA (1) CA3113543C (ko)
ES (1) ES2929810T3 (ko)
IL (1) IL281671B2 (ko)
SG (1) SG11202102626RA (ko)
WO (1) WO2020058527A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10715313B2 (en) * 2018-09-21 2020-07-14 Blockchain Certified Data Sas Systems and computer-based methods of document certification and publication
US10756896B2 (en) * 2018-10-12 2020-08-25 Jeff Pickhardt Trustless account recovery
US11128459B2 (en) * 2018-11-28 2021-09-21 Its, Inc. Mitigating service disruptions in key maintenance
US10795882B2 (en) * 2019-04-30 2020-10-06 Alibaba Group Holding Limited Blockchain-based data compression and searching
JP2021118370A (ja) * 2020-01-22 2021-08-10 キオクシア株式会社 メモリシステム、情報処理装置、および情報処理システム
FR3113751A1 (fr) 2020-08-28 2022-03-04 Athena Holding Group Procédé de certification et publication en ligne de diplômes et de mises à jour de diplôme
FR3121524A1 (fr) 2021-03-30 2022-10-07 Blockchain Certified Data Procédé et système informatique de stockage decentralisé et de partage de fichiers numériques certifiés

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017090041A1 (en) * 2015-11-24 2017-06-01 Ben-Ari Adi A system and method for blockchain smart contract data privacy

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100675837B1 (ko) * 2004-12-13 2007-01-29 한국전자통신연구원 고속 gcm-aes 블록 암호화 장치 및 방법
US20130227653A1 (en) * 2008-11-29 2013-08-29 Yu Yung Choi System and method for streamlined registration of products over a communication network and for verification and management of information related thereto
CN101271501B (zh) * 2008-04-30 2011-06-15 北京握奇数据系统有限公司 数字媒体文件的加解密方法及装置
US20170149560A1 (en) * 2012-02-02 2017-05-25 Netspective Communications Llc Digital blockchain authentication
US10075298B2 (en) * 2015-06-02 2018-09-11 ALTR Solutions, Inc. Generation of hash values within a blockchain
KR101661930B1 (ko) * 2015-08-03 2016-10-05 주식회사 코인플러그 블록체인을 기반으로 하는 공인인증서 발급시스템
EP3438902B1 (en) * 2015-12-14 2021-04-28 Coinplug, Inc System for issuing public certificate on basis of block chain, and method for issuing public certificate on basis of block chain by using same
US10063529B2 (en) * 2016-03-28 2018-08-28 Accenture Global Solutions Limited Secure 3D model sharing using distributed ledger
US9967096B2 (en) * 2016-05-23 2018-05-08 Accenture Global Solutions Limited Rewritable blockchain
US10749681B2 (en) * 2016-10-26 2020-08-18 Black Gold Coin, Inc. Systems and methods for providing a universal decentralized solution for verification of users with cross-verification features
US20180268504A1 (en) * 2017-03-15 2018-09-20 Factom Indexing Mortgage Documents via Blockchains
CN107360156B (zh) * 2017-07-10 2019-10-29 广东工业大学 一种大数据环境下基于区块链的p2p网络云端存储方法
EP3489874A1 (en) * 2017-11-27 2019-05-29 Wipro Limited System and method for dual blockchain based validation of instrument reference data and transaction reporting
US10715313B2 (en) * 2018-09-21 2020-07-14 Blockchain Certified Data Sas Systems and computer-based methods of document certification and publication

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017090041A1 (en) * 2015-11-24 2017-06-01 Ben-Ari Adi A system and method for blockchain smart contract data privacy

Also Published As

Publication number Publication date
KR102357978B1 (ko) 2022-02-08
ES2929810T3 (es) 2022-12-01
CA3113543A1 (en) 2020-03-26
US20200099511A1 (en) 2020-03-26
US10715313B2 (en) 2020-07-14
SG11202102626RA (en) 2021-04-29
EP3853758B1 (en) 2022-09-14
IL281671B1 (en) 2023-08-01
CA3113543C (en) 2021-08-24
CN112740216A (zh) 2021-04-30
EP3853758A1 (en) 2021-07-28
CN112740216B (zh) 2022-03-15
IL281671B2 (en) 2023-12-01
WO2020058527A1 (en) 2020-03-26
IL281671A (en) 2021-05-31

Similar Documents

Publication Publication Date Title
KR102357978B1 (ko) 문서 인증 및 공개 시스템 및 이의 컴퓨터 기반 방법
US11777726B2 (en) Methods and systems for recovering data using dynamic passwords
US11818265B2 (en) Methods and systems for creating and recovering accounts using dynamic passwords
CN109074579B (zh) 使用分布式散列表和区块链保护计算机软件的方法及系统
KR20200002985A (ko) 데이터 공유 방법, 클라이언트, 서버, 컴퓨팅 장치 및 저장 매체
US20140254796A1 (en) Method and apparatus for generating and/or processing 2d barcode
US8359473B1 (en) System and method for digital rights management using digital signatures
US10341353B1 (en) System and method for issuing, authenticating, storing, retrieving, and verifying documents
KR20110113205A (ko) 물리적으로 표현될 수 있는 가상 다수 공동 계약서를 안전하게 작성하는 방법
Yahya et al. A new academic certificate authentication using leading edge technology
KR101578550B1 (ko) 전용 뷰어 기반 전자증명서 생성 열람 시스템
Shakila et al. Design and analysis of digital certificate verification and validation using blockchain-based technology
US11916916B2 (en) System and method for authenticating, storing, retrieving, and verifying documents
US20230179588A1 (en) Verifiable credential with dynamic claim
TWI313998B (en) Method of digital signature for electrical documents in the internet
More et al. Blockchain based Tamper Proof Certificates
KR20200082186A (ko) 법률 문서 자동 작성 방법 및 시스템
US20180294970A1 (en) Methods of affiliation, emancipation and verification between a tutor and tutee
KR101321335B1 (ko) 이미지 기반의 웹페이지 사용자 인증 방법 및 이를 위한 컴퓨터로 판독가능한 기록매체
Hellwig et al. Blockchain Foundations
TAGLIA et al. Pistis, a credentials management system based on self-sovereign identity
Polemi et al. A secure e-ordering Web service
Bratli Document Verification System on iOS with Face ID/Touch ID
Sowers Architecture for Issuing DoD Mobile Derived Credentials
Pintado et al. Integrating User Identity with Ethereum Smart Contract Wallet

Legal Events

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