KR20230042346A - 마스터 키 에스크로 프로세스 - Google Patents

마스터 키 에스크로 프로세스 Download PDF

Info

Publication number
KR20230042346A
KR20230042346A KR1020237006366A KR20237006366A KR20230042346A KR 20230042346 A KR20230042346 A KR 20230042346A KR 1020237006366 A KR1020237006366 A KR 1020237006366A KR 20237006366 A KR20237006366 A KR 20237006366A KR 20230042346 A KR20230042346 A KR 20230042346A
Authority
KR
South Korea
Prior art keywords
master
master key
party
shard
escrow
Prior art date
Application number
KR1020237006366A
Other languages
English (en)
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 KR20230042346A publication Critical patent/KR20230042346A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • 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
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • 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
    • H04L9/0877Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
    • 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/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
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • 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/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]
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

마스터 키들의 에스크로화를 위해, 그리고 이전에 에스크로화된 마스터 키들의 복구를 위한 방법들, 컴퓨터 판독 가능 매체, 및 디바이스들이 개시된다. 마스터 키들의 에스크로화를 위한 방법은 2 개의 제1-자 하드웨어 보안 모듈들(HSM들) 각각 내에 루트 인증 기관(CA)을 등록하는 단계, 3 개의 제3-자 HSM들 각각을 마스터 에스크로 복구 디바이스들로서 초기화하는 단계, 3 개의 마스터 키들을 생성하기 위해 권위적 블록체인 상의 부트스트랩 동작을 실행하는 단계, 3 개의 마스터 에스크로 복구 디바이스들 중 제1 마스터 에스크로 복구 디바이스를 사용하여 제1 세트의 마스터 키 샤드 암호문들을, 3 개의 마스터 에스크로 복구 디바이스들 중 제2 마스터 에스크로 복구 디바이스를 사용하여 제2 세트를, 그리고 3 개의 마스터 에스크로 복구 디바이스들 중 제3 마스터 에스크로 복구 디바이스를 사용하여 제3 세트를 생성하는 단계, 및 제1, 제2, 및 제3 세트의 마스터 키 샤드 암호문들을 불투명한 개체들로서 2 개의 제1-자 HSM들 각각에 저장하는 단계를 포함할 수 있다.

Description

마스터 키 에스크로 프로세스
본 출원은 2020년 7월 23일 자로 출원되고 발명 명칭이 "MASTER KEY ESCROW PROCESS"인 미국 가출원 특허 제63/055,760호의 우선권 주장 출원이며, 상기 가출원 전체는 참조로 여기에서 병합된다.
블록체인들은 한 엔티티로부터 또 다른 엔티티로의 리소스 이동과 같은 거래형 데이터를 포함하여 다양한 타입의 데이터를 저장하는 점점 더 대중적인 수단이다. 예를 들어, 블록체인들은 종종 하나 이상의 암호화폐와 연관된 거래를 저장하는데 사용되며, 여기서 거래에 관련된 각 엔티티는 암호화폐 주소, 또는 엔티티가 소유한 암호화폐의 양을 저장하는 유사한 구조를 가진다. 그러한 주소는 통상적으로 주소 제어를 제공하는 하나 이상의 비밀을 사용하여 동작한다. 예를 들어, 암호화폐 주소는, 임의의 엔티티가 지갑에 값을 보낼 수 있도록 허용하는 공개 부분, 및 키 소유자만 주소의 동작을 변경하고 값을 상기 주소로부터 또 다른 주소 등으로 보낼 수 있도록 허용하는 하나 이상의 암호화 보안 키를 가질 수 있다.
본 발명의 목적은 마스터 키 에스크로 프로세스를 제공하는 것에 있다.
개시된 주제의 실시예에 따르면, 마스터 키들의 에스크로에 대한 컴퓨터-구현 방법은 2 개의 제1-자 하드웨어 보안 모듈들(hardware security modules, HSM들) 각각 내에서 루트 인증 기관(CA)을 등록하는 단계, 2 개의 제1-자 HSM들은 단일의 제1 자에 대응됨, 3 개의 제3-자 HSM들 각각을 마스터 에스크로 복구 디바이스들로서 초기화하는 단계, 3 개의 마스터 키들을 생성하기 위해 권위적 블록체인(authoritative blockchain)에 관해 부트스트랩 동작을 수행하는 단계, 3 개의 마스터 에스크로 복구 디바이스들 중 제1 마스터 에스크로 복구 디바이스를 사용하여 제1 세트의 마스터 키 샤드 암호문들을, 3 개의 마스터 에스크로 복구 디바이스들 중 제2 마스터 에스크로 복구 디바이스를 사용하여 제2 세트의 마스터 키 샤드 암호문들을, 그리고 3 개의 마스터 에스크로 복구 디바이스들 중 제3 마스터 에스크로 복구 디바이스를 사용하여 제3 세트의 마스터 키 샤드 암호문들 생성하는 단계, 및 제1 세트의 마스터 키 샤드 암호문들, 제2 세트의 마스터 키 샤드 암호문들, 및 제3 세트의 마스터 키 샤드 암호문들을, 불투명 개체들(opaque objects)로서, 2 개의 제1-자 HSM들 각각에 저장하는 단계를 포함할 수 있다.
다양한 실시예들에서, 각각의 제3-자 HSM은 서로 다른 제3 자에 대응될 수 있고, 서로 다른 제3 자들은 단일의 제1 자와는 다를 수 있으며, 그리고 서로 다른 제3 자들 및 단일의 제1 자 모두는 마스터 에스크로 복구 디바이스 초기화를 피어 리뷰(peer review)할 수 있다.
일부 실시예들에서, 3 개의 제3-자 HSM들 각각을 마스터 에스크로 복구 디바이스들로서 초기화하는 단계는: 각각의 제3-자 HSM에 인증서를 로딩하는 단계(loading), 여기서 인증서는 루트 CA(root certificate authority)에 대응하는 중간 CA에 의해 서명된 공개 키를 포함함, 상기 2 개의 제1-자 HSM들 각각에 인증서를 등록하는 단계, 및 상기 3 개의 제3-자 HSM들 각각에 대해: 해당하는 제3-자 HSM의 시리얼 넘버를 2 개의 제1-자 HSM들 각각에 등록하는 단계; 해당하는 제3-자 HSM의 공개 개인 키 쌍을 생성하는 단계, 여기서 상기 공개 개인 키 쌍의 증명 인증서는 내보내기 능력(export capability)이 없이 제1 자에 의해 검증됨; 해당하는 제3-자 HSM로부터 공개 키 부분을 내보내는 단계; 및 내보내진 공개 키 부분을 2 개의 제1-자 HSM들 각각에 등록하는 단계;를 포함한다.
일부 실시예들에서, 제1 마스터 에스크로 복구 디바이스를 사용하여 제1 세트의 마스터 키 샤드 암호문들을, 제2 마스터 에스크로 복구 디바이스를 사용하여 제2 세트의 마스터 키 샤드 암호문들을, 그리고 제3 마스터 에스크로 복구 디바이스를 사용하여 제3 세트의 마스터 키 샤드 암호문들을 생성하는 단계는 3 개의 마스터 키들 각각에 대해, 제1 마스터 키 샤드(master key shard), 제2 마스터 키 샤드, 및 제3 마스터 키 샤드를 생성하는 단계, 제1 세트의 마스터 키 샤드 암호문들을 생성하기 위해, 제1 마스터 에스크로 복구 디바이스로부터 내보내진 제1 공개 키를 사용하여, 제1 마스터 키 샤드들 각각을 암호화하는 단계, 제2 세트의 마스터 키 샤드 암호문들을 생성하기 위해, 제2 마스터 에스크로 복구 디바이스로부터 내보내진 제2 공개 키를 사용하여, 제2 마스터 키 샤드들 각각을 암호화하는 단계, 및 제3 세트의 마스터 키 샤드 암호문들을 생성하기 위해, 제3 마스터 에스크로 복구 디바이스로부터 내보내진 제3 공개 키를 사용하여, 제3 마스터 키 샤드들 각각을 암호화하는 단계를 포함할 수 있다. 이들 실시예들에서, 제1, 제2, 및 제3 공개 키들은 2 개의 제1-자 HSM들 각각에 등록될 수 있다.
다양한 실시예들에서, 방법은 3 개의 추가적인 제3-자 HSM들 각각을, 리던던트(redundant) 마스터 에스크로 복구 디바이스들로서 초기화하는 단계를 더욱 포함할 수 있으며, 각각의 리던던트 마스터 에스크로 복구 디바이스는 하나의 마스터 에스크로 복구 디바이스에 대응된다.
다양한 실시예들에서, 방법은 적어도 하나의 추가적인 제3-자 HSM들을, 추가적인 마스터 에스크로 복구 디바이스로서 초기화하는 단계, 여기서 각각의 추가적인 제3-자 HSM은 서로 다른 제3 자에 대응됨, 적어도 하나의 추가적인 마스터 에스크로 복구 디바이스를 사용하여 적어도 하나의 추가적인 세트의 마스터 키 샤드 암호문들을 생성하는 단계, 적어도 하나의 추가적인 세트의 마스터 키 샤드 암호문들을 적어도 2 개의 서로 다른 WORM(write once read many) 저장부에 저장하는 단계, 및 적어도 하나의 추가적인 세트의 마스터 키 샤드 암호문들을, 불투명 개체들로서, 상기 2 개의 제1-자 HSM들 각각에 저장하는 단계를 더욱 포함할 수 있다.
일부 실시예들에서, 서로 다른 제3 자들 및 단일의 제1 자 모두는 마스터 에스크로 복구 디바이스 초기화를 피어 리뷰할 수 있다.
다양한 구현예들에서, 방법은 제1 세트의 마스터 키 샤드 암호문들, 제2 세트의 마스터 키 샤드 암호문들, 및 제3 세트의 마스터 키 샤드 암호문들을 적어도 2 개의 서로 다른 WORM(write once read many) 저장 디바이스들에 저장하는 단계를 포함할 수 있다.
개시된 주제의 일 실시예에 따르면, 에스크로로부터 마스터 키들의 복구에 대한 컴퓨터-구현 방법은 3 개의 서로 다른 제3 자들 중 첫번째 제3 자에 연관된 제1 마스터 에스크로 복구 디바이스를 사용하여 생성된 이전의 에스크로로부터 제1 세트의 마스터 키 샤드 암호문들을 검색하는 단계, 여기서 제1 세트의 마스터 키 샤드 암호문들은 제1 자의 권위적 블록체인의 제1 마스터 키의 제1 마스터 키 샤드 암호문, 권위적 블록체인의 제2 마스터 키의 제1 마스터 키 샤드 및 권위적 블록체인의 제3 마스터 키의 제1 마스터 키 샤드를 포함함, 3 개의 서로 다른 제3 자들 중 두번째 제3 자에 연관된 제2 마스터 에스크로 복구 디바이스를 사용하여 생성된 이전의 에스크로로부터 제2 세트의 마스터 키 샤드 암호문들을 검색하는 단계, 여기서 제2 세트의 마스터 키 샤드 암호문들은 제1 마스터 키의 제2 마스터 키 샤드 암호문, 제2 마스터 키의 제2 마스터 키 샤드, 및 제3 마스터 키의 제2 마스터 키 샤드를 포함함, 3 개의 서로 다른 제3 자들 중 세번째 제3 자에 연관된 제3 마스터 에스크로 복구 디바이스를 사용하여 생성된 이전의 에스크로로부터 제3 세트의 마스터 키 샤드 암호문들을 검색하는 단계, 여기서 제3 세트의 마스터 키 샤드 암호문들은 제1 마스터 키의 제3 마스터 키 샤드 암호문, 제2 마스터 키의 제3 마스터 키 샤드, 및 제3 마스터 키의 제3 마스터 키 샤드를 포함함, 한 세트의 마스터 에스크로 복구 디바이스들을 획득하는 단계, 여기서 각각의 마스터 에스크로 복구 디바이스는 제3-자 하드웨어 보안 모듈(HSM)을 포함하고, 각각의 제3-자 HSM은, 각각의 제3-자 HSM에 대응하는 정보를 제1 자의 제1-자 HSM에 등록하여, 마스터 에스크로 복구 디바이스로서 이전에 초기화되었고, 그리고 상기 세트의 마스터 에스크로 복구 디바이스들은 제1, 제2, 및 제3 마스터 에스크로 복구 디바이스들 중 적어도 2 개를 포함함, 3 개 세트들의 복구된 마스터 키 샤드들을 생성하기 위해, 각 세트의 마스터 키 샤드 암호문들의 적어도 2 개의 마스터 키 샤드 암호문들을, 상기 세트의 마스터 에스크로 복구 디바이스들을 사용하여 해독하는 단계, 3 개의 그룹들 각각의 제1-자 HSM들에 대해, 공개 개인 키 쌍을 생성하는 단계, 제1 그룹의 제1-자 HSM들에 제1 세트의 복구된 마스터 키 샤드들을, 제2 그룹의 제1-자 HSM들에 제2 세트의 복구된 마스터 키 샤드들을, 그리고 제3 그룹의 제1-자 HSM들에 제3 세트의 복구된 마스터 키 샤드들을 로딩하는 단계, 해당 그룹의 제1-자 HSM들의 해당 개인 키를 사용하여, 3 개 세트들의 복구된 마스터 키 샤드들의 복구된 마스터 키 샤드 각각을 해독하는 단계, 및 3 개 세트들의 복구된 마스터 키 샤드들을 사용하여, 제1 자의 권위적 블록체인의 3 개의 마스터 키들을 복구하는 단계를 포함할 수 있다.
일부 구현예들에서, 제1 자는 3 개의 서로 다른 제3 자들 각각과는 다르다.
다양한 구현예들에서, 제1 세트의 마스터 키 샤드 암호문들은, 제1 마스터 에스크로 복구 디바이스로부터 내보내진 제1 공개 키를 사용하여 제1 마스터 키의 제1 마스터 키 샤드를 암호화하고, 제2 마스터 에스크로 복구 디바이스로부터 내보내진 제2 공개 키를 사용하여 제2 마스터 키의 제1 마스터 키 샤드를 암호화하며, 그리고 제3 마스터 에스크로 복구 디바이스로부터 내보내진 제3 공개 키를 사용하여 제3 마스터 키의 제1 마스터 키 샤드를 암호화하여, 이전에 생성되었고, 제2 세트의 마스터 키 샤드 암호문들은, 제1 마스터 에스크로 복구 디바이스로부터 내보내진 제1 공개 키를 사용하여 제1 마스터 키의 제2 마스터 키 샤드를 암호화하고, 제2 마스터 에스크로 복구 디바이스로부터 내보내진 제2 공개 키를 사용하여 제2 마스터 키의 제2 마스터 키 샤드를 암호화하며, 그리고 제3 마스터 에스크로 복구 디바이스로부터 내보내진 제3 공개 키를 사용하여 제3 마스터 키의 제2 마스터 키 샤드를 암호화하여, 이전에 생성되었으며, 그리고 제3 세트의 마스터 키 샤드 암호문들은, 제1 마스터 에스크로 복구 디바이스로부터 내보내진 제1 공개 키를 사용하여 제1 마스터 키의 제3 마스터 키 샤드를 암호화하고, 제2 마스터 에스크로 복구 디바이스로부터 내보내진 제2 공개 키를 사용하여 제2 마스터 키의 제3 마스터 키 샤드를 암호화하며, 그리고 제3 마스터 에스크로 복구 디바이스로부터 내보내진 제3 공개 키를 사용하여 제3 마스터 키의 제3 마스터 키 샤드를 암호화하여, 이전에 생성되었다.
일부 구현예들에서, 제1 세트의 복구된 마스터 키 샤드들은 제1 마스터 키에 대응되고, 제2 세트의 복구된 마스터 키 샤드들은 제2 마스터 키에 대응되며, 그리고 제3 세트의 복구된 마스터 키 샤드들은 제3 마스터 키에 대응된다.
일부 구현예들에서, 각 그룹의 제1-자 HSM들은 2 개의 제1-자 HSM들을 포함할 수 있으며, 그리고 제1-자 HSM들은 제1 자에 대응될 수 있다.
다양한 구현예들에서, 제1 그룹의 제1-자 HSM들에 제1 세트의 복구된 마스터 키 샤드들을, 제2 그룹의 제1-자 HSM들에 제2 세트의 복구된 마스터 키 샤드들을, 그리고 제3 그룹의 제1-자 HSM들에 제3 세트의 복구된 마스터 키 샤드들을 로딩하는 단계는, 제1 세트의 복구된 마스터 키 샤드들에 대해: 상기 제1 그룹의 제1-자 HSM들을 사용하여, 제1 그룹의 제1-자 HSM들의 공개 개인 키 쌍의 공개 키를 사용하여 제1 세트의 복구된 마스터 키 샤드들의 각 복구된 마스터 키 샤드를 암호화하는 단계; 및 제1 세트의 복구된 마스터 키 샤드들의 암호화된 복구된 마스터 키 샤드들을 제1 그룹의 제1-자 HSM들에 저장하는 단계, 제2 세트의 복구된 마스터 키 샤드들에 대해: 상기 제2 그룹의 제1-자 HSM들을 사용하여, 제2 그룹의 제1-자 HSM들의 공개 개인 키 쌍의 공개 키를 사용하여 제2 세트의 복구된 마스터 키 샤드들의 각 복구된 마스터 키 샤드를 암호화하는 단계; 및 제2 세트의 마스터 키 샤드들의 암호화된 복구된 마스터 키 샤드들을 제2 그룹의 제1-자 HSM들에 저장하는 단계, 및 제3 세트의 복구된 마스터 키 샤드들에 대해: 제3 그룹의 제1-자 HSM들을 사용하여, 제3 그룹의 제1-자 HSM들의 공개 개인 키 쌍의 공개 키를 사용하여 제3 세트의 복구된 마스터 키 샤드들의 각 복구된 마스터 키 샤드를 암호화하는 단계; 및 제3 세트의 마스터 키 샤드들의 암호화된 복구된 마스터 키 샤드들을 제3 그룹의 제1-자 HSM들에 저장하는 단계를 포함할 수 있다.
다양한 구현예들에서, 방법은 적어도 하나의 추가적인 세트의 마스터 키 샤드 암호문들을 검색하는 단계를 더욱 포함할 수 있으며, 각 추가적인 세트의 마스터 키 샤드 암호문들은 제1 마스터 키의 추가적인 마스터 키 샤드 암호문, 제2 마스터 키의 추가적인 마스터 키 샤드, 및 제3 마스터 키의 추가적인 마스터 키 샤드를 포함하며, 그리고 각 추가적인 세트의 마스터 키 샤드 암호문들은 추가적인 마스터 에스크로 복구 디바이스를 사용하여 이전에 에스크로화되고, 상기 세트의 마스터 에스크로 복구 디바이스들은 제1, 제2, 제3, 및 적어도 하나의 추가적인 마스터 에스크로 복구 디바이스들 중 적어도 3 개를 포함한다.
일부 구현예들에서, 3 개 세트들의 마스터 키 샤드들을 생성하기 위해, 각 세트의 마스터 키 샤드 암호문들의 적어도 2 개의 마스터 키 샤드 암호문들을 해독하는 단계는 물리적으로 격리된 컴퓨팅 디바이스를 사용하는 단계를 포함할 수 있다.
개시된 주제의 실시예에 따르면, 컴퓨터-구현 방법은 3 개의 서로 다른 제3 자들과 함께 제1 자의 권위적 블록체인의 3 개의 마스터 키들을 에스크로화하는 단계, 여기서 에스크로화하는 단계는 제1 자 및 3 개의 서로 다른 제3 자들에 의해 피어 리뷰됨, 및 3 개의 마스터 키들을 에스크로로부터 복구하는 단계, 여기서 복구하는 단계는 제1 자, 및 3 개의 서로 다른 제3 자들 중 적어도 2 개를 수반하며, 그리고 상기 복구하는 단계는 제1 자 및 3 개의 서로 다른 제3 자들 중 적어도 2 개에 의해 피어 리뷰됨을 포함할 수 있다.
다양한 구현예들에서, 3 개의 서로 다른 제3 자들과 함께 제1 자의 권위적 블록체인의 3 개의 마스터 키들을 에스크로화하는 단계는 2 개의 제1-자 하드웨어 보안 모듈들(HSM들) 각각 내에서 루트 인증 기관(CA)을 등록하는 단계, 2 개의 제1-자 HSM들은 제1 자에 대응됨, 3 개의 제3-자 HSM들 각각을 마스터 에스크로 복구 디바이스들로서 초기화하는 단계, 여기서: 각각의 제3-자 HSM는 3 개의 서로 다른 제3 자들 중 서로 다른 것에 대응되고; 서로 다른 제3 자들은 단일의 제1 자와는 다르며; 그리고 서로 다른 제3 자들 및 단일의 제1 자 모두는 마스터 에스크로 복구 디바이스 초기화를 피어 리뷰함, 3 개의 마스터 키들을 생성하기 위해 권위적 블록체인에 관해 부트스트랩 동작을 수행하는 단계, 3 개의 마스터 에스크로 복구 디바이스들 중 제1 마스터 에스크로 복구 디바이스를 사용하여 제1 세트의 마스터 키 샤드 암호문들을, 3 개의 마스터 에스크로 복구 디바이스들 중 제2 마스터 에스크로 복구 디바이스를 사용하여 제2 세트의 마스터 키 샤드 암호문들을, 그리고 3 개의 마스터 에스크로 복구 디바이스들 중 제3 마스터 에스크로 복구 디바이스를 사용하여 제3 세트의 마스터 키 샤드 암호문들을 생성하는 단계, 제1 세트의 마스터 키 샤드 암호문들, 제2 세트의 마스터 키 샤드 암호문들, 및 제3 세트의 마스터 키 샤드 암호문들을 불투명 개체들로서, 2 개의 제1-자 HSM들 각각에 저장하는 단계를 포함할 수 있다.
다양한 구현예들에서, 3 개의 마스터 키들을 에스크로로부터 복구하는 단계는 제1 자의 권위적 블록체인의 3 개의 마스터 키들에 대응하는 3 개 세트들의 마스터 키 샤드 암호문들을 검색하는 단계, 여기서: 제1 세트의 마스터 키 샤드 암호문들은 제1 마스터 키의 제1 마스터 키 샤드 암호문, 제2 마스터 키의 제1 마스터 키 샤드, 및 제3 마스터 키의 제1 마스터 키 샤드를 포함하고, 제1 세트의 마스터 키 샤드 암호문들은 제1 마스터 에스크로 복구 디바이스을 사용하여 이전에 에스크로화됨; 제2 세트의 마스터 키 샤드 암호문들은 제1 마스터 키의 제2 마스터 키 샤드 암호문, 제2 마스터 키의 제2 마스터 키 샤드, 및 제3 마스터 키의 제2 마스터 키 샤드를 포함하고, 제2 세트의 마스터 키 샤드 암호문들은 제2 마스터 에스크로 복구 디바이스를 사용하여 이전에 에스크로화됨; 제3 세트의 마스터 키 샤드 암호문들은 제1 마스터 키의제3 마스터 키 샤드 암호문, 제2 마스터 키의 제3 마스터 키 샤드, 및 제3 마스터 키의 제3 마스터 키 샤드를 포함하고, 제3 세트의 마스터 키 샤드 암호문들은 제3 마스터 에스크로 복구 디바이스를 사용하여 이전에 에스크로화됨; 각각의 마스터 에스크로 복구 디바이스는 3 개의 제3 자들 중 서로 다른 것에 대응하며; 그리고 제1 자는 3 개의 제3 자들 각각과는 다름, 한 세트의 마스터 에스크로 복구 디바이스들을 획득하는 단계, 여기서: 각각의 마스터 에스크로 복구 디바이스는 제3-자 하드웨어 보안 모듈(HSM)을 포함하고; 각각의 제3-자 HSM은, 각각의 제3-자 HSM에 대응하는 정보를 제1 자의 제1-자 HSM에 등록하여, 마스터 에스크로 복구 디바이스로서 이전에 초기화되었으며; 그리고 상기 세트의 마스터 에스크로 복구 디바이스들은 제1, 제2 및 제 3 마스터 에스크로 복구 디바이스들 중 적어도 2 개를 포함함, 3 개 세트들의 마스터 키 샤드들을 생성하기 위해, 각 세트의 마스터 키 샤드 암호문들의 적어도 2 개의 마스터 키 샤드 암호문들을, 상기 세트의 마스터 에스크로 복구 디바이스들을 사용하여 해독하는 단계, 제1-자 HSM들의 3 개의 그룹들 각각에 대해, 공개 개인 키 쌍을 생성하는 단계, 제1 그룹의 제1-자 HSM들에 제1 세트의 복구된 마스터 키 샤드들을, 제2 그룹의 제1-자 HSM들에 제2 세트의 복구된 마스터 키 샤드들을, 그리고 제3 그룹의 제1-자 HSM들에 제3 세트의 복구된 마스터 키 샤드들을 로딩하는 단계, 해당 그룹의 제1-자 HSM들의 해당 개인 키를 사용하여, 3 개 세트들의 복구된 마스터 키 샤드들의 마스터 키 샤드 각각을 해독하는 단계, 및 3 개 세트들의 복구된 마스터 키 샤드들을 사용하여, 제1 자의 권위적 블록체인의 3 개의 마스터 키들을 복구하는 단계를 포함할 수 있다.
개시된 주제의 추가 특징들, 이점들 및 실시예들은 다음의 상세한 설명, 도면 및 청구범위를 고려하여 제시되거나 명백할 수 있다. 게다가, 전술한 요약 및 다음의 상세한 설명 모두는 예시적인 것이며 청구범위를 제한하지 않고 추가 설명을 제공하기 위한 것임을 이해하여야 한다.
개시된 주제의 추가 이해를 제공하기 위해 포함된 첨부 도면들은 본 명세서에 통합되고 본 명세서의 일부를 구성한다. 도면들은 또한 개시된 주제의 실시예들을 예시하고, 상세한 발명과 함께 개시된 주제의 실시예들의 원리를 설명하는 역할을 한다. 개시된 주제 및 실행될 수 있는 다양한 방식들의 근본적인 이해에 필요할 수 있는 것보다 더 상세하게 구조적 세부사항을 보여주려는 시도는 이루어지지 않는다.
도 1은 개시된 주제의 실시예들에 따라 마스터 키들의 에스크로의 일부로서 사용되는 요소들의 블록도를 도시한다.
도 2는 개시된 주제의 실시예들에 따라 마스터 키들의 에스크로에 대한 방법의 흐름도를 도시한다.
도 3은 개시된 주제의 실시예에 따라 마스터 에스크로 복구 디바이스를 초기화하는 방법의 흐름도를 도시한다.
도 4는 개시된 주제의 실시예에 따라 마스터 키 샤드 암호문들을 생성하는 방법의 흐름도를 도시한다.
도 5는 개시된 주제의 실시예들에 따라 에스크로로부터 마스터 키들을 복구하는 방법의 흐름도를 도시한다.
도 6은 개시된 주제의 실시예들에 따라 복구된 마스터 키 샤드들 세트들을 하드웨어 보안 모듈들 그룹들에 로딩하는 방법의 흐름도를 도시한다.
도 7은 개시된 주제의 실시예에 따른 컴퓨팅 디바이스를 도시한다.
본 개시내용의 다양한 양태들 또는 특징들은 도면들을 참조하여 설명되며, 여기에서 동일한 참조 번호는 전체적으로 동일한 요소를 지칭하기 위해 사용된다. 본 명세서에서, 본 개시내용의 완전한 이해를 제공하기 위해 많은 세부사항이 제시된다. 그러나, 개시내용의 소정의 관점들은 이들 특정 세부사항들 없이 또는 다른 방법들, 구성요소들, 재료들 등으로 실시될 수 있음을 이해하여야 한다. 다른 경우들에서, 잘 알려진 구조들 및 디바이스들은 본 개시내용의 설명을 용이하게 하기 위해 블록도로 도시된다.
여기에서 개시된 실시예들은 링크된 블록들의 순서있는 목록(ordered list)에 구현된 블록체인을 사용한다. 비트코인 및 다른 유사한 암호화폐 거래들을 추적하는데 사용되는 블록체인들과 같은 순수한 거래형 블록체인들과는 달리, 여기에서 개시된 바와 같은 블록체인은 거래들 및 정책들 모두들 순서있는 목록에 저장할 수 있으며, 여기서 정책들은 블록체인에서 또는 블록체인과 관련하여 가능한 액션들을 제어한다. 정책 자체들의 수정은 또한 순서있는 목록의 거래들 및 정책들을 통해 제어될 수 있다. 그러한 블록체인은 여기에서"권위적 블록체인"으로 지칭될 수 있다. 여기에서 개시된 바와 같이, 권위적 블록체인은, 블록체인에 저장된 거래들 또는 다른 데이터의 유효성 및 신뢰성을 보장하기 위해, 블록체인 자체 외부에 있는 정책들 및 제약들에 의존하는 무허가 및 공개 블록체인들뿐만 아니라, 종래의 거래형 블록체인들에 비해 이점을 제공할 수 있다.
여기에서 개시된 바와 같이, 권위적 블록체인에서, 블록체인에 저장된 정책들은 특정 거래 또는 거래 타입이 블록체인에 저장될 때 어떤 액션들을 취할지를 결정할 수 있다. 예를 들어, 정책은, 특정 거래 또는 거래 타입이, 거래가 발생하고 블록체인에 포함되기 전에, 거래를 승인하기 위해 최소 수의 승인자들이 필요하다는 것을 지정할 수 있다. 여기에서 개시된 바와 같이, 권위적 블록체인에 대해 다양한 거래 타입들이 고려될 수 있다. 정책들은 블록체인에 거래들을 제출하여 수정될 수 있다.
여기에서 개시된 바와 같이, 권위적 블록체인의 초기 정책들 및 허가들은, 블록체인에 의해 수락된 제1 거래로서 필요하고 차후에는 수락되지 않은, 특수한 "부트스트랩(bootstrap)" 거래를 통해 정의될 수 있다. 일 예의 부트스트랩 거래 및 프로세스는 아래에서 더 상세하게 기술된다. 그러한 부트스트랩 거래의 일부로서, 마스터 시크릿 또는 한 세트의 마스터 시크릿들이 생성될 수 있다. 예를 들어, 3 개의 마스터 시크릿들은 권위적 블록체인의 부트스트랩 거래의 일부로서 생성될 수 있다. 이들 마스터 키들은, 권위적 블록체인에 저장된 디지털 자산들과 연과된 정보를 암호화하거나 보호하기 위해 사용될 수 있다. 예를 들어, 권위적 블록체인의 각 디지털 자산 주소는 해당 공개 개인 키 쌍을 가질 수 있으며, 그리고 이들 마스터 키들은 개인 키 부분 또는 개인 키 부분의 샤드들(shards)을 암호화하는데 사용될 수 있다. 한 예에서, 각각의 개인 키는 3 개의 샤드들로 샤드화될 수 있으며, 그리고 3 개의 마스터 키들 각각은 샤드들을 암호화하는데 사용될 수 있다(예를 들어, 제1 마스터 키는 제1 샤드를 암호화하고, 제2 마스터 키는 제2 샤드를 암호화하며, 그리고 제3 마스터 키는 제3 샤드를 암호화함). 추가적으로, 이들 마스터 키들은 재난 발생 시 권위적 블록체인을 복구하는데 사용될 수 있다. 이와 같이, 여기에서 개시된 바와 같이, 마스터 시크릿들 또는 키들의 에스크로, 및 에스크로로부터의 복구를 허용하는 방법들 및 시스템들에 대한 필요성이 있다.
여기에서 개시된 실시예들에서, Polysign과 같은 제1 엔티티는 마스터 키들을 에스크로화하기 위해 다수의 제2 엔티티들, 그 예로 법률회사들 또는 다른 수탁자들 또는 보안/신뢰된 제3 자들을 위탁할 수 있다. 예를 들어, 3 개의 법률 회사들은 3 개의 마스터 키들을 에스크로화하기 위해 선택될 수 있다. 평문(plaintext) 마스터 키들을 사용하거나 마스터 키를 범용 직렬 버스(USB) 저장 디바이스에 저장하는 대신에, 안전한 미니 하드웨어 보안 모듈(HSM)이 사용될 수 있다. HSM은 HSM 내에서 코드의 설치 및 실행을 허용할 수 있다. 그러한 HSM들은 통상적으로 소프트웨어 및 하드웨어 요소들의 조합을 통해 보호될 수 있는 변경 방지(tamper-proof) 컴퓨팅 및/또는 컴퓨터 판독 가능 저장부를 제공한다. 적합한 HSM 하드웨어의 예들은 캘리포니아주 팔로 알토의 Yubico, 캠브리지의 nCipher Security 및 독일 아헨의 Utimaco로부터의 것들을 포함할 수 있지만, 여기에서 개시된 기능들을 수행할 수 있는, 기술분야에 공지된 임의의 HSM 디바이스가 사용될 수 있다. 달리 명시되지 않는 한, 여기에서 개시된 바와 같이 권위적 블록체인 시스템과 함께 사용된 "HSM"은 HSM의 보안 경계들 내에서 암호로 서명된 코드를 수신 및 실행할 수 있는 HSM를 지칭한다. 그러한 디바이스는 통상적으로 제3 자들에 대한 최소한의 동작 오버헤드로 제1 자가 요구할 수 있는 암호화 보장들을 제공한다.
보다 일반적으로, 마스터 키 에스크로 프로세스는, 3 개의 마스터 키들을 생성하기 위해 제1 자의 권위적 블록체인에 대한 부트스트랩 동작을 수행하는 것, 각각의 마스터 키의 다수의 샤드들을 생성하는 것, 다수의 제3-자 HSM들을 마스터 에스크로 복구 디바이스들로 초기화하는 것, 각각의 샤트의 암호문을 생성하기 위해 마스터 에스크로 복구 디바이스들로부터 내보내진 공개 키들을 사용하여 다양한 샤드들을 암호화하는 것, 및 2 개의 제1-자 HSM들에 다양한 암호문들을 저장하는 것을 수반할 수 있다.
차례로, 마스터 키 에스크로 복구 프로세스는, 2 개의 제1-자 HSM들로부터 다양한 암호문들을 검색하는 것, 마스터 에스크로 복구 디바이스들의 대부분을 적어도 획득하는 것, 해당 마스터 키 샤드들을 복구하기 위해 마스터 에스크로 복구 디바이스들을 사용하여 충분한 수의 다양한 암호문을 해독하는 것,복구된 마스터 키 샤드들을 3 개의 그룹들의 HSM들에 로딩하는 것(loading), 및 복구된 마스터 키 샤드들을 사용하여 3 개의 마스터 키들을 복구하는 것을 수반할 수 있다.
여기에서 개시된 바와 같이, 일 예의 마스터 키 에스크로 절차는 이하에서 제공된다. 여기에서 개시된 본 발명의 권리 범위 및 내용을 벗어남 없이 일부 변형들이 사용될 수 있음을 이해할 것이다. 예를 들어, 서로 다른 수의 신뢰/보안된 제2 엔티티들이 사용될 수 있고, 동등하지만 서로 다른 보안 모듈들 등이 사용될 수 있다.
다양한 실시예들에서, 제1 자는 에스크로 서비스들을 제공하는 제3 자들에 대응하는 다수의 제3-자 HSM들을 구매하거나 획득할 수 있다. 예를 들어, 3 개의 제3 자들이 있는 경우, 제1 자는 총 6 개의 HSM들을 구매하여, 각각의 제3 자가 2 개의 해당 HSM들을 가지도록 할 수 있다(즉, 첫번째 제3 자는 2 개의 HSM들을 가지고, 두번째 제3 자는 2 개의 HSM들을 가지며, 그리고 세번쩨 제3 자는 2 개의 HSM들을 가짐). 다양한 제3-자 HSM들은 일반적으로 여기에서 마스터 에스크로 복구 디바이스들 또는 리던던트 마스터 에스크로 복구 디바이스들로 지칭될 수 있다. 추가적으로, 제1 자는 또한, 여기에서 암호문 HSM들로 지칭되는, 다양한 암호문들을 저장하기 위한 다수의 제1-자 HSM들, 이뿐 아니라 제3-자 HSM들에 연관된 다양한 정보를 저장하기 위한 다수의 제1-자 HSM들(즉, 한 그룹의 제1-자 HSM들은 각각의 제3 자에 대응됨)을 구매하거나 획득할 수 있다. 예를 계속해서 들면, 제1 자는 다양한 암호문들을 저장할 2 개의 HSM들, 및 제3-자 HSM들에 연관된 정보를 저장할 6 개의 HSM들(3 개의 그룹들 2 개)을 구매할 수 있다. 이 예에서, 제1 세트의 제3-자 HSM들 및 제1 그룹의 제1-자 HSM들은 첫번째 제3 자에 연관되고, 제2 세트의 제3-자 HSM들 및 제2 그룹의 제1-자 HSM들은 두번째 제3 자에 연관되며, 그리고 제3 세트의 제3-자 HSM들 및 제3 그룹의 제1-자 HSM들은 세번쩨 제3 자에 연관된다.
다양한 실시예들에서, 제1 자는 다양한 그룹들의 제1-자 HSM들에 루트 인증 기관(root certificate authority)(CA)을 등록할 수 있다. 추가적으로, 공개 키가 루트 CA의 중간 CA에 의해 서명된 인증서는 다양한 세트들의 제3-자 HSM들에 등록될 수 있다. 이러한 방식으로, 제3-자 HSM들 각각에 대한 신뢰 루트가 추적될 수 있다.
다양한 실시예들에서, 제1 자는 제3-자 HSM들 각각의 시리얼 넘버를 해당 그룹의 제1-자 HSM들 세트에 등록할 수 있다. 예를 들어, 제1 세트의 제3-자 HSM들의 시리얼 넘버들은 제1 그룹의 제1-자 HSM들에 등록될 수 있고, 제2 세트의 제3-자 HSM들의 시리얼 넘버들은 제2 그룹의 제1-자 HSM들에 등록될 수 있으며, 그리고 제3 세트의 제3-자 HSM들의 시리얼 넘버들은 제3 그룹의 제1-자 HSM들에 등록될 수 있다. 제1 자는 또한 제3-자 HSM들 각각의 공개 키를 해당 그룹들의 제1-자 HSM들에 등록할 수 있다.
다양한 실시예들에서, 인증서 등록들, 시리얼 넘버 등록들, 및 공개 키 등록들 모두는 제1 자 및 제3 자들 각각에 의해 피어 리뷰될 수 있다(peer reviewed).
다양한 실시예들에서, 제3-자 HSM들 각각의 공개 개인 키 쌍은 해독 능력들로 생성될 수 있다. 각 공개 개인 키 쌍은 증명 인증서를 가질 수 있으며, 그리고 각 증명 인증서는 생성된 개인 키의 내보내기를 방지하기 위해 내보내기 능력이 없이 제1 자에 의해 검증될 수 있다. 제3-자 HSM들의 공개 키들 각각은 제3-자 HSM들로부터 내보내질 수 있다.
다양한 실시예들에서, 부트스트랩 동작은 다수의 마스터 키들을 생성하기 위해 권위적 블록체인에 관해 실행될 수 있다. 예를 들어, 부트스트랩 동작은 3 개의 마스터 키들을 생성할 수 있다. 각각의 마스터 키는 다수의 샤드들에 샤드화될 수 있다. 예를 들어, 각각의 마스터 키는 3 개의 샤드들에 샤드화될 수 있다. 다양한 마스터 키 샤드들은 마스터 키 샤드들 세트들로 구성될 수 있다. 예를 들어, 각각의 마스터 키의 제1 샤드는 제1 세트로 그룹화될 수 있고, 각각의 마스터 키의 제2 샤드는 제2 세트로 그룹화될 수 있으며, 그리고 각각의 마스터 키의 제3 샤드는 제3 세트로 그룹화될 수 있다. 각 세트의 마스터 키 샤드들은 제3 자들 중 서로 다른 제3 자에 연관될 수 있다. 각 세트의 마스터 키 샤드들은 해당 제3 자에 연관된 한 세트의 제3-자 HSM들의 공개 키를 사용하여 암호화될 수 있다(예를 들어, 제1 세트는 첫번째 제3 자에 연관된 제3-자 HSM들을 사용하여 암호화되고, 제2 세트는 두번째 제3 자에 연관된 제3-자 HSM들을 사용하여 암호화되며, 기타 등등이 있을 수 있다.).
3 개의 제3 자들 및 3 개의 마스터 키들의 예에서, 제1 그룹의 제1-자 HSM들, 제1 세트의 제3-자 HSM들(예를 들어, 제1 마스터 에스크로 복구 디바이스 및 제1 리던던트 마스터 에스크로 복구 디바이스), 및 첫번째 제3 자에 연관된 제1 세트의 마스터 키 샤드들(예를 들어, 제1 마스터 키의 제1 샤드, 제2 마스터 키의 제1 샤드, 및 제3 마스터 키의 제1 샤드); 제2 그룹의 제1-자 HSM들, 제2 세트의 제3-자 HSM들(예를 들어, 제2 마스터 에스크로 복구 디바이스 및 제2 리던던트 마스터 에스크로 복구 디바이스), 및 두번째 제3 자에 연관된 제2 세트의 마스터 키 샤드들(예를 들어, 제1 마스터 키의 제2 샤드, 제2 마스터 키의 제2 샤드, 및 제3 마스터 키의 제2 샤드); 및 제3 그룹의 제1-자 HSM들, 제3 세트의 제3-자 HSM들(예를 들어, 제3 마스터 에스크로 복구 디바이스 및 제3 리던던트 마스터 에스크로 복구 디바이스), 및 세번쩨 제3 자에 연관된 제3 세트의 마스터 키 샤드들(예를 들어, 제1 마스터 키의 제3 샤드, 제2 마스터 키의 제3 샤드, 및 제3 마스터 키의 제3 샤드)가 있을 수 있다. 이 예에서, 제1 세트의 제3-자 HSM들의 제1 공개 키는 제1 세트의 마스터 키 샤드들의 각 마스터 키 샤드를 암호화하기 위해 사용될 수 있고, 제2 세트의 제3-자 HSM들의 제2 공개 키는 제2 세트의 마스터 키 샤드들의 각 마스터 키 샤드를 암호화하기 위해 사용될 수 있으며, 그리고 제3 세트의 제3-자 HSM들의 제3 공개 키는 제3 세트의 마스터 키 샤드들의 각 마스터 키 샤드를 암호화하기 위해 사용될 수 있다. 다양한 암호화 단계들은 다양한 세트들의 마스터 키 샤드 암호문들(즉, 제1 세트의 마스터 키 샤드들에 대응하는 제1 세트의 마스터 키 샤드 암호문들, 제2 세트의 마스터 키 샤드들에 대응하는 제2 세트의 마스터 키 샤드 암호문들, 및 제3 세트의 마스터 키 샤드들에 대응하는 제3 세트의 마스터 키 샤드 암호문들)을 초래할 수 있다.
다양한 실시예들에서, 다양한 마스터 키 샤드 암호문들은 제1-자 HSM들의 그룹들과는 다른 2 개의 제1-자 HSM들 상에 저장될 수 있다. 다양한 마스터 키 샤드 암호문들은 또한 제1 자의 2 개의 WORM(Write Once Read Many) 저장 디바이스들에 저장될 수도 있다. 중요한 점은, 암호문들을 생성하는데 사용된 암호화 키들이 제3-자 HSM들(즉, 다양한 마스터 에스크로 복구 디바이스들)에 저장되는 반면, 암호문들은 제1 자의 디바이스들(예를 들어, HSM들, WORMs 등)에 저장된다.
여기에서 개시된 바와 같이 마스터 키 에스크로 복구 절차의 일 예가 아래에 제공된다. 여기에서 개시된 본 발명의 범위 및 내용을 벗어나지 않고 일부 변형이 사용될 수 있음을 이해할 것이다. 예를 들어, 서로 다른 수의 신뢰/보안 제2 엔티티들이 사용될 수 있고, 동등하지만 서로 다른 보안 모듈들이 사용될 수 있으며, 기타 등등이 있을 수 있다.
다양한 실시예들에서, 제1 자는 제1 자를 대신하여 에스크로 서비스들을 제공하고 있는 몇몇 수의 제3 자들과 접촉할 수 있다. 한 예에서, 각 제3 자는 법률 회사 또는 다른 수탁자 또는 보안/신뢰할 수 있는 제3 자일 수 있다. 일부 실시예들에서, 접촉된 제3자들의 수는 에스크로 서비스들을 제공하는 제3 자들의 총 수보다 적을 수 있다. 예를 들어, 총 3개의 제3 자들이 에스크로 서비스들을 제공할 수 있지만, 3개의 제3 자들 중 2개만 접촉될 수 있다. 다양한 실시예들에서, 접촉된 제3 자들은 제1 자의 신원을 검증할 수 있다. 예를 들어, 접촉은 화상 통화 또는 대면을 통해 이루어질 수 있다. 접촉의 일부로서, 제1 자는 각 제3 자가 제3 자에 대응하는 제3-자 HSM(들)을 제공하도록 요청할 수 있다. 예를 들어, 각 제3 자는 그 제3 자가 보유하고 있는 마스터 에스크로 복구 디바이스(및/또는 리던던트 마스터 에스크로 복구 디바이스)를 제공하도록 요청받을 수 있다.
다양한 실시예들에서, 제1 자는 복구 프로세스의 다양한 단계들을 수행하기 위해 물리적으로 격리된 컴퓨팅 디바이스를 구입하거나 획득할 수 있다. 예를 들어, 제1 자는 차후에 파괴될 수 있는 랩탑을 구입할 수 있다. 일부 실시예들에서, 제1 자뿐만 아니라 제3 자들 각각으로부터의 태표자들은 복구 프로세스의 다양한 단계들에 참여 및/또는 관찰할 수 있다. 예를 들어, 보안 담당자 및/또는 제1 자의 관리 팀 구성원(들), 이뿐 아니라 각각의 제3 자의 한명 이상의 대표가 관련될 수 있다.
다양한 실시예들에서, 이전에 생성된 마스터 키 샤드 암호문들은 하나 이상의 저장 디바이스들로부터 획득될 수 있다. 예를 들어, 상술된 에스크로 프로세스의 일부로서 생성된 마스터 키 샤드 암호문들은 상술된 바와 같이, 제1 자의 2 개의 제1-자 HSM들 또는 WORM들로부터 검색될 수 있다.
중요한 점은, 첫번째 제3 자의 제3-자 HSM(즉, 마스터 에스크로 복구 디바이스)이 제1 세트의 마스터 키 샤드 암호문들(즉, 각 마스터 키의 암호화된 제1 샤드들을 포함하는 세트)에 대응될 수 있고, 두번째 제3 자의 제3-자 HSM이 제2 세트의 마스터 키 샤드 암호문들에 대응할 수 있으며, 그리고 세번쩨 제3 자의 제3-자 HSM가 제3 세트의 마스터 키 샤드 암호문들에 대응할 수 있다는 점이다. 그러한 대응은 암호문들 세트를 생성하는데 사용된 공개 키가 제3-자 HSM에 저장된 개인 키에 연관된다는 점일 수 있다. 즉, 제3-자 HSM의 개인 키는 해당 세트의 마스터 키 샤드 암호문들을 암호화하기 위해 이용될 수 있다.
다양한 실시예들에서, 제1 마스터 에스크로 복구 디바이스(예를 들어, 첫번째 제3 자의 제3-자 HSM)는 제1 세트의 마스터 키 샤드 암호문들을 해독하는데 사용될 수 있고, 제2 마스터 에스크로 복구 디바이스(예를 들어, 두번째 제3 자의 제3-자 HSM)는 제2 세트의 마스터 키 샤드 암호문들을 해독하는데 사용될 수 있으며, 그리고 제3 마스터 에스크로 복구 디바이스(예를 들어, 세번쩨 제3 자의 제3-자 HSM)는 제3 세트의 마스터 키 샤드 암호문들을 해독하는데 사용될 수 있다. 그러한 해독은 물리적으로 격리된 컴퓨팅 디바이스를 사용하여 발생될 수 있다. 예를 들어, 제1 마스터 에스크로 복구 디바이스는 컴퓨팅 디바이스에 연결될 수 있으며, 제1 세트의 마스터 키 샤드 암호문들은 컴퓨팅 디바이스에 제공될 수 있다. 컴퓨팅 디바이스의 오퍼레이터는 제1 세트의 암호문들을 제1 마스터 에스크로 복구 디바이스(예를 들어, 첫번째 제3-자 HSM)로 전송하고 상기 세트의 마스터 키 샤드들을 복구하기 위해 HSM이 HSM의 개인 키를 사용하여 마스터 키 샤드 암호문들 각각을 해독하라는 명령을 내릴 수 있다. 그 후, 오퍼레이터는 제2 마스터 에스크로 복구 디바이스 및 제2 세트의 마스터 키 샤드 암호문들, 이뿐 아니라, 제3 마스터 에스크로 복구 디바이스 및 제3 세트의 마스터 키 샤드 암호문들에 대해 이들 단계들을 반복할 수 있다. 그 결과, 컴퓨팅 디바이스는 제1 마스터 키의 제1 샤드, 제2 마스터 키의 제1 샤드, 및 제3 마스터 키의 제3 샤드를 포함하는 제1 세트의 복구된 마스터 키 샤드들, 제1 마스터 키의 제2 샤드, 제2 마스터 키의 제2 샤드, 및 제3 마스터 키의 제3 샤드를 포함하는 제2 세트의 복구된 마스터 키 샤드들, 및 제1 마스터 키의 제3 샤드, 제2 마스터 키의 제3 샤드, 및 제3 마스터 키의 제3 샤드를 포함하는 제3 세트의 복구된 마스터 키 샤드들을 서로 다른 시간에서 보유할 수 있다.
다양한 실시예들에서, 제1 자는 컴퓨팅 디바이스로부터 3 개 세트들의 복구된 마스터 키 샤드들을 전송하는데 사용될 3 개의 그룹들의 HSM들을 구입하거나 획득할 수 있다. 각 그룹의 HSM들은 예를 들어, 2 개의 HSM들을 포함할 수 있고, 한 세트의 복구된 마스터 키 샤드들에 대응할 수 있다. 각 그룹의 HSM들에 대해 공개 개인 키 쌍이 생성될 수 있다.
다양한 실시예들에서, 각 그룹의 HSM들의 공개 키는 다수의 복구된 마스터 키 샤드들을 암호화하는데 이용될 수 있다. 예를 들어, 제1 그룹의 HSM들의 공개 키는 (각 마스터 키의 제1 샤드와는 반대로) 제1 마스터 키의 복구된 마스터 키 샤드들 각각을 암호화하는데 이용될 수 있다. 유사하게, 제2 그룹의 HSM들의 공개 키는 제2 마스터 키의 복구된 마스터 키 샤드들 각각을 암호화하는데 이용될 수 있으며, 그리고 제3 그룹의 HSM들의 공개 키는 제3 마스터 키의 복구된 마스터 키 샤드들 각각을 암호화하는데 이용될 수 있다. 암호화들 각각은 해당 HSM을 사용하여 컴퓨팅 디바이스의 오퍼레이터에 의해 수행될 수 있다.
다양한 실시예들에서, 암호화된 복구된 마스터 키 샤드들은 컴퓨팅 디바이스에서 전송되어 제1 자로 전달될 수 있다. 그 후에, 제1 자는 해당 암호화된 복구된 마스터 키 샤드들을 해독하기 위해 각 그룹의 HSM들의 개인 키를 이용할 수 있다. 예를 들어, 제1 자는 제1 마스터 키의 암호화된 복구된 마스터 키 샤드들을 해독하기 위해 제1 그룹의 HSM들의 개인 키를 이용할 수 있다. 유사하게, 제1 자는 제2 마스터 키의 암호화된 복구된 마스터 키 샤드들을 해독하기 위해 제2 그룹의 HSM들의 개인 키를 이용하며, 그리고 제3 마스터 키의 암호화된 복구된 마스터 키 샤드들을 해독하기 위해 제3 그룹의 HSM들의 개인 키를 이용할 수 있다. 그 후, 복구된 마스터 키 샤드들은 3 개의 마스터 키들을 재생성하는데 이용될 수 있다. 제1 자가 재생성된 마스터 키들을 검증한 이후에, 물리적으로 격리된 컴퓨터 디바이스는 파괴될 수 있다.
여기에 개시된 실시예들은, 예를 들어, 2019년 3월 20일 자에 출원된 미국 특허 출원 제16/359,055호에 개시된 바와 같은 컴퓨팅 시스템에서 구현될 수 있으며, 이의 개시 내용은 그 전체가 참조로 병합된다.
특히, 여기에서 개시된 바와 같이 권위적 블록체인의 실시예들은 보안 컴퓨팅 환경에서, 그리고 그 환경 내에서 동작할 수 있다. 예를 들어, 인간이 시행하는 규칙들 및 절차들을 통해서만 정책들이 시행될 수 있는 종래의 환경과는 달리, 이러한 보안 컴퓨팅 환경은 인간 오퍼레이터들이 상술된 바와 같은 정책 수정들 등의 적당한 컴퓨터-시행 메커니즘을 사용하지 않고는 변화될 수 없는 컴퓨팅 하드웨어에 의해 시행된 규제들을 사용하여, 이전에 개시된 바와 같은 정책들을 구현할 수 있다. 여기에서 개시된 바와 같이, 보안 컴퓨팅 환경에서, 블록체인(유효 및/또는 승인 여부에 관계없이)에 대해 가입을 위한 새로운 거래들을 수락하는 비즈니스 로직은 하나 이상의 HSM과 같은 보안 컴퓨팅 경계 내에서 구현될 수 있다. 통상적으로, HSM에 저장되고 HSM에 의해 실행되는 실행 가능 코드는 다수의 검사자들(auditors)을 포함할 수 있는 쿼럼(quorum)의 사용을 통해 검사되지 않은 도입으로부터 보호된다. 각 HSM은 올바른 디지털 서명 또는 서명들로 적절하게 서명된 경우에만 새롭거나 수정된 실행 가능 코드로 구현된 새로운 비즈니스 로직을 수락할 수 있다. 일부 실시예들에서, 새로운 코드는 성공적인 코드 검사 이후에서만 서명될 수 있다. 예를 들어, 정책은 등록된 코드 검사자가 서명하도록 제안된 수정을 요구할 수 있다. 그러한 제약들은 HSM 하드웨어 자체에 의해 시행되어, 변경(tampering) 가능성을 더욱 줄일 수 있다. 추가적인 보안 및/또는 리던던시를 위해 다수의 HSM들이 사용될 수 있다. 예를 들어, 다수의 HSM들은 권위적 블록체인에 포함되어야 하는 다음의 거래를 결정하기 위해 합의(consensus) 네트워크 또는 유사한 알고리즘을 구현할 수 있다.
여기에 개시된 바와 같이 HSM들은 이전에 개시된 바와 같이 "검증자(validator)" 오퍼레이터들에 의해 획득 및/또는 운영될 수 있으며, 이는 하나 이상의 소유자 또는 블록체인 시스템의 다른 제어 엔티티들에 의해 신뢰할 수 있고 독립적인 상대방들로 점검된 엔티티들일 수 있다. 그러나, 다수의 HSM들의 사용은 여기에서 개시된 바와 같이 하나 이상의 HSM과 관련된 장애, 오류 또는 사기에 대한 보호 및 보안을 제공할 수 있다. 유효성 검사기 엔터티들은 HSM들을 유지 관리하고 권위적 블록체인 시스템에서 사용할 수 있도록 한다. 이전에 개시된 바와 같이, 유효성 검사기들은 HSM들에서 운영되는 소프트웨어를 제어, 액세스 또는 수정할 수 없는데, 이는 이전에 개시된 바와 같이 각 HSM이 권위적 블록체인의 정책들에 따라 적절한 인증이 필요한 안전한 검사 및 암호화 승인을 받은 소프트웨어만을 실행할 것이기 때문이다. 특히, HSM들의 유효성 검사기 오퍼레이터들은 HSM들에 저장된 비밀들에 액세스할 수 없으며, 하나 이상의 오퍼레이터 또는 HSM이 손상되거나 실패한 경우에도, 오퍼레이터들 및 HSM들의 쿼럼이 사용될 수 있는 한, 모든 비밀들은 이전에 개시된 바와 같이 보안성 있게 보존된다.
HSM들을 사용하는 것과 더불어, 여기에 개시된 실시예들은, HSM들에 의해 동작되는 데이터가 HSM들의 오퍼레이터들, 또는 정책들에 의해 허용되는 것 외에 HSM들에 구현된 검사 코드의 개발자들에 의해 검사될 수 없도록, 시스템의 정책들을 구성할 수 있다. 이는, 정책들 자체가 시스템의 임의의 다른 거래와 동일한 제어들을 받는, 이전에 개시된 바와 같이, HSM- 및 정책-제어 시스템 내에서 제어 정책들을 구현한 결과이다.
일부 실시예들에서, 암호화 비밀들은 여기에 개시된 바와 같이 권위적 블록체인 시스템의 보안 경계에서 생성되고, 저장되어, 불려들어올 수 있다. 비밀을 생성하기 위해, 시스템의 HSM 내에서 난수가 생성될 수 있다. 난수 자체가 비밀일 수 있거나, 또는 임의의 적합한 암호화 기술들을 사용하여 비밀을 생성, 암호화 또는 생성하는데 사용될 수 있다. 일부 경우들에서, 비밀은 공동으로 다수의 HSM들에 의해, 예를 들어 MPC(multi-party computation) 기술들을 사용하여 생성될 수 있으며, 그리고 그룹 내의 단일의 HSM이 전체 비밀을 저장하지 않도록 샤드화될 수 있다. 다수의 HSM들이 사용되어 권위적 블록체인을 구현하는 이전 예들을 계속하여, 일부 또는 모두의 블록체인 HSM들은 그러한 비밀을 생성하는데 사용될 수 있다. 그러한 배치들은 비밀에 대한 추가 보안 및/또는 리던던시를 제공할 수 있습니다. 하나 이상의 샤드가 손실된 경우, 충분한 수의 남은 샤드들이 이용될 수 있으면, 비밀이 여전히 다시 생성될 수 있다. 유사하게, 하나 이상의 샤드가 손상된 경우, 비밀을 재구성하기에 충분한 샤드들이 손상되지 않는 한 비밀은 여전하게 보호될 수 있다. 각 HSM은 HSM의 개인 키로 서명될 수 있는 블록체인 거래에 비밀의 연관 부분을 저장할 수 있다. 이는 비밀에 대한 보안 형태의 백업을 제공할 수 있다. 비밀에 대한 액세스는 비밀의 샤드화 및 암호화뿐만 아니라 블록체인 자체에 대한 다른 정책 제약들에 의해 보호될 수 있다.
특히, 비밀이 샤드화되었는지 또는 단일의 비밀인지에 상관없이, 비밀은 HSM(들) 외부의 암호화되지 않은 형태로 임의의 사람, 컴퓨팅 시스템, 또는 다른 엔터티에 알려지지 않거나 사용될 수 없지만, 여전히 블록체인에서 구현된 정책들에 따라 권위적 블록체인 내에서 사용될 수 있다. 예를 들어, 한 세트의 정책들은, 비밀을 사용하기 위해 정책들에 의해 사용 권한이 있는 미리 정의된 엔터티들의 쿼럼 승인을 보여주는 거래를 수신할 때, 디지털 자산 주소를 생성하고/하거나, 상기 주소와 관련된 거래를 서명하는데 비밀이 사용되도록 허용할 수 있다. 이에 대한 응답으로, HSM(들)은 자동으로 비밀(또는 비밀의 샤드)을 해독하고, 이를 사용하여 HSM(들)의 보안 컴퓨팅 환경 외부에 비밀을 공개하지 않고 나타난 거래를 서명할 수 있다. 이전에 나타난 바와 같이, 시스템이 권위적 블록체인 시스템에 구현된 정책들에 의해 제어되기 때문에, 오퍼레이터들, 개발자들, 호스팅 시설 또는 다른 호스트 엔터티들, 관리자들, 또는 다른 개별 엔터티들은 정책들에 의해 규정된 것 이외에, 비밀의 사용 및 보안을 제어할 수 없다. 추가로, 이전에 개시된 바와 같이, 정책들은 블록체인에 제출된 거래들을 통해서만 수정될 수 있고, 이로써, 다른 방식으로 액세스할 수 없는 엔티티의 액세스를 허용하도록 임의로 변경될 수 없다.
도 1a는 개시된 주제 대상의 일부 실시예들에 따른 다양한 요소들의 샘플 관계를 예시하는 블록도를 도시한다. 도시된 바와 같이, HSM 그룹 1(110)은 HSM H_11(182a) 및 HSM H_12(182b)를 포함할 수 있고, HSM 그룹 2(112)는 HSM H_21(184a) 및 HSM H_22(184b)를 포함할 수 있으며, 그리고 HSM 그룹 3(114)은 HSM H_31(186a) 및 HSM H_32(186b)를 포함할 수 있다. 마스터 키 M1(120)의 다양한 샤드들은 HSM 그룹 1(110)에 저장될 수 있고, 마스터 키 M2(122)의 다양한 샤드들은 HSM 그룹 2(112)에 저장될 수 있으며, 그리고 마스터 키 M3(124)의 다양한 샤드들은 HSM 그룹 3(114)에 저장될 수 있다. 또한, 도시된 바와 같이, 제3 자 에스크로 회사 L1(132)는 HSM Y11(142a) 및 HSM Y12(142b)를 보유하거나, 책임을 질 수 있고, 제3 자 에스크로 회사 L2(134)는 HSM Y21(144a) 및 HSM Y22(144b)를 보유하거나 책임을 질 수 있으며, 그리고 제3 자 에스크로 회사 L3(136)는 HSM Y31(146a) 및 HSM Y32(146b)를 보유하거나 책임을 질 수 있다.
다양한 실시예들에서, 도 1에 도시된 바와 같이, HSM들 Y11(142a) 및 Y12(142b) 각각은 마스터 키 M1(120)의 제1 샤드, 마스터 키 M2(122)의 제1 샤드, 및 마스터 키 M3(124)의 제1 샤드를 암호화하는데 이용될 수 있다. 유사하게, HSM들 Y21(144a) 및 Y22(144b) 각각은 마스터 키 M1(120)의 제2 샤드, 마스터 키 M2(122)의 제2 샤드, 및 마스터 키 M3(124)의 제2 샤드를 암호화하는데 이용될 수 있으며, 그리고 HSM들 Y31(146a) 및 Y32(146b) 각각은 마스터 키 M1(120)의 제3 샤드, 마스터 키 M2(122)의 제3 샤드, 및 마스터 키 M3(124)의 제3 샤드를 암호화하는데 이용될 수 있다. 도 1에는 도시되지 않았지만, 다양한 샤드들을 암호화하여 생성된 다양한 암호문들은 2 개의 추가적인 HSM들 및/또는 2 개의 WORM(write once read many) 저장 디바이스들에 저장될 수 있다.
도 2는 개시된 주제의 다양한 구현예들에 따른 마스터 키들의 에스크로를 위한 방법(200)을 도시한다. 다양한 구현예들에서, 방법(200)의 단계들은 하드웨어 보안 모듈(HSM) 또는 다른 컴퓨팅 디바이스와 같은 디바이스의 프로세서에 의해 수행될 수 있다. 이 방법은 특정 순서로 단계들을 보여주지만 이는 단순함을 위한 것일 뿐이다.
단계(210)에서, 루트 인증 기관(CA)은 제1 자의 2 개의 제1-자 하드웨어 보안 모듈들(HSM들)에 등록될 수 있다. 제1 자는 예를 들어, 권위적 블록체인의 오퍼레이터일 수 있다. 루트 CA는 예를 들어, 에스크로 프로세스에 관여되지 않은 또 다른 자에 속할 수 있다. 예를 들어, 루트 CA는 캘리포니아 팔로 알토의 Yubico에 속할 수 있다.
단계(220)에서, 3 개의 제3-자 HSM들은 마스터 에스크로 복구 디바이스들로서 초기화될 수 있다. 이들 HSM들은 제1 자와는 다른 제3 자들에 대응될 수 있기 때문에, 제3-자 HSM들로서 지칭될 수 있다. 다양한 실시예들에서, 각각의 제3-자 HSM은 서로 다른 제3 자에 속하거나 대응할 수 있다. 초기화 프로세스는 도 3과 관련하여 아래에서 더 상세하게 기술될 수 있다.
동작 단계(230)에서, 3 개의 추가적인 제3-자 HSM들은 리던던트 마스터 에스크로 복구 디바이스들로서 초기화될 수 있다. 즉, 각각의 마스터 에스크로 복구 디바이스에 대해, 리던던트 마스터 에스크로 복구 디바이스는 또한 생성될 수 있다. 다양한 실시예들에서, 마스터 에스크로 복구 디바이스 및 리던던트 마스터 에스크로 복구 디바이스의 쌍 각각은 제3 자들 중 상이한 것에 대응한다.
단계(240)에서, 제1 자는 3 개의 마스터 키들을 생성하기 위해 권위적 블록체인에 관해 부트스트랩 동작을 수행할 수 있다. 다양한 실시예들에서, 3 개의 마스터 키들은 권위적 블록체인과 연관될 다양한 디지털 자산들을 암호화하거나 보안하는데 이용될 수 있다.
단계(250)에서, 3 개 세트들의 마스터 키 샤드 암호문들은 3 개의 마스터 에스크로 복구 디바이스들을 사용하여 생성될 수 있다. 예를 들어, 각각의 마스터 키는 3 개의 샤드들로 샤드화될 수 있고, 제1 마스터 에스크로 복구 디바이스는 각각의 마스터 키의 제1 샤드에 기초하여 제1 세트의 마스터 키 샤드 암호문들을 생성하는데 사용될 수 있고, 제2 마스터 에스크로 복구 디바이스는 각각의 마스터 키의 제2 샤드에 기초하여 제2 세트의 마스터 키 샤드 암호문들을 생성하는데 사용될 수 있으며, 그리고 제3 마스터 에스크로 복구 디바이스는 각각의 마스터 키의 제3 샤드에 기초하여 제3 세트의 마스터 키 샤드 암호문들을 생성하는데 사용될 수 있다. 각 세트의 마스터 키 샤드 암호문들의 생성은 도 4와 관련하여 아래에서 더 상세하게 기술될 수 있다.
동작 단계(260)에서, 3 개 세트들의 마스터 키 샤드 암호문들은 2 개의 웜(WORM, write one read many) 저장 디바이스들에 저장될 수 있다. 예를 들어, 다양한 암호문들은 제1 웜 저장 디바이스에 저장될 수 있으며, 그리고 다양한 암호문들은 또한 리던던트 방식으로 제2 웜 저장 디바이스에 저장될 수 있다. 중요한 점은, 제3 자들에 대응하는 마스터 에스크로 복구 디바이스들이 다양한 암호문들을 생성하는데 이용되는 동안, 다양한 암호문들이 제1 자의 저장부에 저장된다는 것이다.
단계(270)에서, 3 개 세트들의 마스터 키 샤드 암호문들은 제1 자의 2 개의 제1-자 HSM들에 저장될 수 있다.
도 3은 개시된 주제의 다양한 구현예들에 따른 마스터 에스크로 복구 디바이스로서 HSM을 초기화하는 방법(300)을 도시한다. 다양한 구현예들에서, 방법(300)의 단계들은 하드웨어 보안 모듈(HSM) 또는 다른 컴퓨팅 디바이스와 같은 디바이스의 프로세서에 의해 수행될 수 있다. 이 방법은 특정 순서로 단계들을 보여주지만 이는 단순함을 위한 것일 뿐이다.
단계(310)에서, 인증서는 다수의 제3-자 HSM들 각각에 로딩될 수 있다. 예를 들어, 인증서는 3 개의 제3-자 HSM들 각각에 로딩될 수 있다. 인증서는 예를 들어, 2 개의 제1-자 HSM들에 로딩된 루트 CA, 그 예로 도 2의 방법(200)의 단계(210)의 2 개의 제1-자 HSM들에 로딩된 루트 CA에 관련된 중간 CA에 의해 서명된 공개 키를 포함할 수 있다. 다양한 실시예들에서, 그러한 중간 인증서는 제3-자 HSM들에 대한 신뢰 루트의 추적을 가능하게 할 수 있다.
단계(320)에서, 중간 인증서는 2 개의 제1-자 HSM들에 등록될 수 있다. 예를 들어, 중간 인증서는 도 2의 방법(200)의 단계(210)의 2 개의 제1-자 HSM들에 등록될 수 있다.
단계(330)에서, 각각의 제3-자 HSM의 시리얼 넘버는 2 개의 제1-자 HSM들, 그 예로 단계(320)의 2 개의 제1-자 HSM들에 등록될 수 있다. 단계들(320 및 330)의 결과, 2 개의 제1-자 HSM들 각각은 모든 제3-자 HSM들의 시리얼 넘버들 및 중간 인증서를 포함할 수 있다.
단계(340)에서, 공개 개인 키 쌍은 각각의 제3-자 HSM에 대해 생성될 수 있다. 예를 들어, 첫번째 제3-자 HSM은 첫번째 제3-자 HSM에 관해 제1 공개 개인 키 쌍을 생성하는데 이용될 수 있고, 두번째 제3-자 HSM은 두번째 제3-자 HSM에 관해 제2 공개 개인 키 쌍을 생성하는데 이용될 수 있으며, 그리고 세번째 제3-자 HSM은 세번째 제3-자 HSM에 관해 제3 공개 개인 키 쌍을 생성하는데 이용될 수 있다.
단계(350)에서, 공개 키는 제3-자 HSM 각각으로부터 내보내질 수 있다. 예를 들어, 제1 공개 개인 키 쌍의 공개 키 부분은 첫번째 제3-자 HSM으로부터 내보내질 수 있고, 제2 공개 개인 키 쌍의 공개 키 부분은 두번째 제3-자 HSM으로부터 내보내질 수 있으며, 그리고 제3 공개 개인 키 쌍의 공개 키 부분은 세번째 제3-자 HSM으로부터 내보내질 수 있다.
단계(360)에서, 내보내진 공개 키들은 2 개의 제1-자 HSM들에 등록될 수 있다. 예를 들어, 3 개의 공개 키들은 상기의 단계들(320 및 330)에서도 이용되었던 2 개의 제1-키 HSM들에 등록될 수 있다. 이러한 방식으로, 2 개의 제1-키 HSM들 각각은 중간 인증서, 이뿐 아니라, 모든 제3-자 HSM들의 공개 키들 및 다양한 시리얼 넘버들을 포함할 수 있다. 이와 같이, 2 개의 제1-자 HSM들은 임의의 차후 복구 프로세스 동안 제3-자 HSM들을 입증 및/또는 검증하는데 이용될 수 있다.
도 4는 개시된 주제의 다양한 구현예들에 따른 마스터 키 샤드 암호문들의 세트들을 생성하는 방법(400)을 도시한다. 다양한 구현예들에서, 방법(400)의 단계들은 하드웨어 보안 모듈(HSM) 또는 다른 컴퓨팅 디바이스와 같은 디바이스의 프로세서에 의해 수행될 수 있다. 이 방법은 특정 순서로 단계들을 보여주지만 이는 단순함을 위한 것일 뿐이다.
단계(410)에서, 제1, 제2, 및 제3 마스터 키 샤드는 각각의 마스터 키에 대해 생성될 수 있다. 예를 들어, 3 개의 마스터 키들의 경우에서, 제1 마스터 키는 3 개의 샤드들을 생성하기 위해 3 번 샤드화될 수 있고, 제2 마스터 키는 3 개의 샤드들을 생성하기 위해 3 번 샤드화될 수 있으며, 그리고 제3 마스터 키는 3 개의 샤드들을 생성하기 위해 3 번 샤드화될 수 있다. 이러한 예에서, 3 개의 제1 샤드들(즉, 제1 마스터 키의 제1 샤드, 제2 마스터 키의 제1 샤드, 및 제3 마스터 키의 제1 샤드), 3 개의 제2 샤드들(즉, 제1 마스터 키의 제2 샤드, 제2 마스터 키의 제2 샤드, 및 제3 마스터 키의 제2 샤드), 및 3개의 제3 샤드들(즉, 제1 마스터 키의 제3 샤드, 제2 마스터 키의 제3 샤드, 및 제3 마스터 키의 제3 샤드)가 있을 수 있다.
단계(420)에서, 각각의 제1 마스터 키 샤드는 제1 세트의 마스터 키 샤드 암호문들을 생성하기 위해 제1 마스터 에스크로 복구 디바이스로부터 내보내진 공개 키를 사용하여 암호화될 수 있다. 예를 들어, 첫번째 제3 자에 연관된 마스터 에스크로 복구 디바이스(즉, 제3-자 HSM)는 3 개의 마스터 키들의 3 개의 제1 샤드들에 대응하는 한 세트의 마스터 키 샤드 암호문들을 생성하는데 이용될 수 있다.
단계(430)에서, 각각의 제2 마스터 키 샤드는 제2 세트의 마스터 키 샤드 암호문들을 생성하기 위해 제2 마스터 에스크로 복구 디바이스로부터 내보내진 공개 키를 사용하여 암호화될 수 있다. 예를 들어, 두번째 제3 자에 연관된 마스터 에스크로 복구 디바이스(즉, 제3-자 HSM)는 3 개의 마스터 키들의 3 개의 제2 샤드들에 대응하는 한 세트의 마스터 키 샤드 암호문들을 생성하는데 이용될 수 있다.
단계(440)에서, 각각의 제3 마스터 키 샤드는 제3 세트의 마스터 키 샤드 암호문들을 생성하기 위해 제3 마스터 에스크로 복구 디바이스로부터 내보내진 공개 키를 사용하여 암호화될 수 있다. 세번쩨 제3 자에 연관된 마스터 에스크로 복구 디바이스(즉, 제3-자 HSM)는 3 개의 마스터 키들의 3 개의 제3 샤드들에 대응하는 한 세트의 마스터 키 샤드 암호문들을 생성하는데 이용될 수 있다.
중요한 점은, 방법(400)의 결과로서, 각각의 제3 자는, 마스터 키가 아니라 오히려 모든 마스터 키들의 한 세트의 샤드들에 대응하는 마스터 에스크로 복구 디바이스를 책임을 질 수 있다는 것이다. 예를 들어, 첫번째 제3 자에 연관된 마스터 에스크로 복구 디바이스는 마스터 키들 각각의 제1 샤드를 포함하는 세트에 대응된다. 유사하게, 두번째 제3 자에 연관된 마스터 에스크로 복구 디바이스는 마스터 키들 각각의 제2 샤드를 포함하는 세트에 대응되며, 그리고 세번쩨 제3 자에 연관된 마스터 에스크로 복구 디바이스는 마스터 키들 각각의 제3 샤드를 포함하는 세트에 대응된다.
도 5는 개시된 주제의 다양한 구현예들에 따른 이전에 에스크로화된 마스터 키들을 복구하는 방법(500)을 도시한다. 다양한 구현예들에서, 방법(500)의 단계들은 하드웨어 보안 모듈(HSM) 또는 다른 컴퓨팅 디바이스와 같은 디바이스의 프로세서에 의해 수행될 수 있다. 이 방법은 특정 순서로 단계들을 보여주지만 이는 단순함을 위한 것일 뿐이다.
단계(510)에서, 제1 세트의 마스터 키 샤드 암호문들은 검색될 수 있다. 다양한 실시예들에서, 제1 세트의 마스터 키 샤드 암호문들은 도 2의 방법(200)과 같이 마스터 키 에스크로 프로세스에 의해 이전에 생성될 수 있다. 제1 세트의 마스터 키 샤드 암호문들은 한 세트의 제1 마스터 키 샤드들에 대응될 수 있다. 예를 들어, 제1 세트의 마스터 키 샤드 암호문들은 제1 마스터 키의 제1 샤드, 제2 마스터 키의 제1 샤드, 및 제3 마스터 키의 제1 샤드를 포함하는 한 세트의 마스터 키 샤드들에 기초하여 생성될 수 있다. 제1 세트의 마스터 키 샤드 암호문들은 예를 들어, 2 개의 제1-자 HSM들 및/또는 제1 자의 2 개의 웜 저장 디바이스들로부터 검색될 수 있다.
단계(520)에서, 제2 세트의 마스터 키 샤드 암호문들은 검색될 수 있다. 다양한 실시예들에서, 제2 세트의 마스터 키 샤드 암호문들은 도 2의 방법(200)과 같이 마스터 키 에스크로 프로세스에 의해 이전에 생성될 수 있다. 제2 세트의 마스터 키 샤드 암호문들은 한 세트의 제2 마스터 키 샤드들에 대응될 수 있다. 예를 들어, 제2 세트의 마스터 키 샤드 암호문들은 제1 마스터 키의 제2 샤드, 제2 마스터 키의 제2 샤드, 및 제3 마스터 키의 제3 샤드를 포함하는 한 세트의 마스터 키 샤드들에 기초하여 생성될 수 있다. 제2 세트의 마스터 키 샤드 암호문들은 예를 들어, 2 개의 제1-자 HSM들 및/또는 제1 자의 2 개의 웜 저장 디바이스들로부터 검색될 수 있다.
단계(530)에서, 제3 세트의 마스터 키 샤드 암호문들은 검색될 수 있다. 다양한 실시예들에서, 제3 세트의 마스터 키 샤드 암호문들은 도 2의 방법(200)과 같이 마스터 키 에스크로 프로세스에 의해 이전에 생성될 수 있다. 제3 세트의 마스터 키 샤드 암호문들은 한 세트의 제3 마스터 키 샤드들에 대응될 수 있다. 예를 들어, 제3 세트의 마스터 키 샤드 암호문들은 제1 마스터 키의 제3 샤드, 제2 마스터 키의 제3 샤드, 및 제3 마스터 키의 제3 샤드를 포함하는 한 세트의 마스터 키 샤드들에 기초하여 생성될 수 있다. 제3 세트의 마스터 키 샤드 암호문들은 예를 들어, 2 개의 제1-자 HSM들 및/또는 제1 자의 2 개의 웜 저장 디바이스들로부터 검색될 수 있다.
단계(540)에서, 한 세트의 마스터 에스크로 복구 디바이스들은 획득될 수 있다. 예를 들어, 마스터 에스크로 복구 디바이스는 다수의 제3 자들 각각으로부터 획득될 수 있다. 다양한 실시예들에서, 마스터 에스크로 복구 디바이스들은 이전에 생성되어, 도 2의 방법(200)과 같이, 마스터 키 에스크로 프로세스의 일부로서 제3 자들 각각에 제공되었다. 한 예에서, 총 3 개의 마스터 에스크로 디바이스들은 생성되어 3 개의 제3 자들 각각에 제공될 수 있다. 그러나, 한 세트의 마스터 에스크로 복구 디바이스들은 이전에 생성되고 제공된 마스터 에스크로 복구 디바이스들 모두를 반드시 포함하지 않을 수 있다. 예를 들어, 획득된 세트는 제3 자들에 연관된 3 개의 마스터 에스크로 복구 디바이스들 중 2 개만을 포함할 수 있다. 제3 자들에 연관된 마스터 에스크로 복구 디바이스들의 총 수와는 상관없이, 획득된 한 세트의 마스터 에스크로 복구 디바이스들은 권위적 블록체인의 마스터 키들을 복구하기 위해 충분한 수의 디바이스들을 포함할 수 있다.
단계(550)에서, 각 세트의 마스터 키 샤드 암호문들의 적어도 2 개의 마스터 키 샤드 암호문들은 3 개 세트들의 복구된 마스터 키 샤드들을 생성하기 위해 해독될 수 있다. 상기에서 논의된 바와 같이, 각 세트의 마스터 키 샤드 암호문들은, 예를 들어, 각 마스터 키의 마스터 키 샤드 암호문을 포함할 수 있다(예를 들어, 제1 세트는 제1 샤드들에 기초한 암호문들을 포함하고, 제2 세트는 제2 샤드들에 기초한 암호문들을 포함하며, 그리고 제3 세트는 제3 샤드들에 기초한 암호문들을 포함함). 그러나, 각 세트의 복구된 마스터 키 샤드들은, 예를 들어, 단일의 마스터 키의 복구된 마스터 키 샤드들을 포함할 수 있다(예를 들어, 제1 세트는 제1 마스터 키의 샤드들을 포함하고, 제2 세트는 제2 마스터 키의 샤드들을 포함하며, 그리고 제3 세트는 제3 마스터 키의 샤드들을 포함함). 이와 같이, 각 세트의 복구된 마스터 키 샤드들은 마스터 키를 복구하기 위해 충분한 수의 샤드들을 포함할 수 있다. 3 개의 샤드들을 각각 갖는 3 개의 마스터 키들의 경우에, 각 마스터 키의 2 개의 샤드들은 각 마스터 키를 복구하는데 충분할 수 있다. 적어도 2 개의 마스터 키 샤드 암호문들을 해독함으로써, 각 세트의 복구된 마스터 키 샤드들은 적어도 2 개의 복구된 마스터 키 샤드들을 포함할 수 있다.
단계(560)에서, 공개 개인 키 쌍은 3 개의 그룹들 각각의 제1-자 HSM들에 대해 생성될 수 있다. 다양한 실시예들에서, 각 그룹은 2 개의 HSM들을 포함할 수 있다. 각 그룹의 제1-자 HSM들은 예를 들어, 한 세트의 복구된 마스터 키 샤드들에 대응될 수 있다.
단계(570)에서, 제1 세트의 복구된 마스터 키 샤드들은 제1 그룹의 제1-자 HSM들에 로딩될 수 있고, 제2 세트의 복구된 마스터 키 샤드들은 제2 그룹의 제1-자 HSM들에 로딩될 수 있으며, 그리고 제3 세트의 복구된 마스터 키 샤드들은 제3 그룹의 제1-자 HSM들에 로딩될 수 있다. 도 6과 관련하여 이하에서 더 상세하게 개시된 바와 같이, 각 세트의 복구된 마스터 키 샤드들은, 복구된 다양한 마스터 키 샤드들이 노출되지 않거나, 제1 자가 아닌 다른 자가 획득할 수 없는 방식으로 한 그룹의 제1-자 HSM들에 로딩될 수 있다.
단계(580)에서, 제1 세트의 복구된 마스터 키 샤드 각각은 제1 그룹의 제1-자 HSM들의 개인 키를 사용하여 해독될 수 있고, 제2 세트의 복구된 마스터 키 샤드 각각은 제2 그룹의 제1-자 HSM들의 개인 키를 사용하여 해독될 수 있으며, 그리고 제3 세트의 복구된 마스터 키 샤드 각각은 제3 그룹의 제1-자 HSM들의 개인 키를 사용하여 해독될 수 있다. 다양한 실시예들에서, 암호화되지 않은 복구된 마스터 키 샤드들은 샤드들을 해독하는데 사용된 제1-자 HSM들 그룹에서만 또는 상기 그룹 내에서만 이용 가능할 수 있다.
단계(590)에서, 권위적 블록체인의 3 개의 마스터 키들은 3 개 세트들의 복구된 마스터 키 샤드들을 사용하여 복구될 수 있다. 예를 들어, 제1 세트의 복구된 마스터 키 샤드들은 제1 마스터 키를 복구하거나 재생성하는데 이용될 수 있다. 유사하게, 제2 세트의 복구된 마스터 키 샤드들은 제2 마스터 키를 복구하거나 재생성하는데 이용될 수 있으며, 그리고 제3 세트의 복구된 마스터 키 샤드들은 제3 마스터 키를 복구하거나 재생성하는데 이용될 수 있다.
도 6은 개시된 주제의 다양한 구현예들에 따른 제1-자 HSM들의 그룹들에 복구된 마스터 키 샤드들의 세트들을 로딩하는 방법(600)을 도시한다. 다양한 구현예들에서, 방법(600)의 단계들은 하드웨어 보안 모듈(HSM) 또는 다른 컴퓨팅 디바이스와 같은 디바이스의 프로세서에 의해 수행될 수 있다. 이 방법은 특정 순서로 단계들을 보여주지만 이는 단순함을 위한 것일 뿐이다.
단계(610)에서, 제1 세트의 복구된 마스터 키 샤드들의 각 복구된 마스터 키 샤드는 제1 그룹의 제1-자 HSM들의 공개 키를 사용하여 암호화될 수 있다. 다양한 실시예들에서, 제1 세트의 복구된 마스터 키 샤드들 각각은 다수의 마스터 에스크로 복구 디바이스들(즉, 제3-자 HSM들)에 저장되거나 유지될 수 있다. 예를 들어, 제1 세트의 제1 복구된 마스터 키 샤드는 제1 마스터 에스크로 복구 디바이스에 상주할 수 있고, 제1 세트의 제2 복구된 마스터 키 샤드는 제2 마스터 에스크로 복구 디바이스에 상주할 수 있으며, 그리고 제1 세트의 제3 복구된 마스터 키 샤드는 제3 마스터 에스크로 복구 디바이스에 상주할 수 있다. 이와 같이, 제1 마스터 에스크로 복구 디바이스는 제1 복구된 마스터 키 샤드를 암호화하는데 이용될 수 있고, 제2 마스터 에스크로 복구 디바이스는 제2 복구된 마스터 키 샤드를 암호화하는데 이용될 수 있으며, 그리고 제3 마스터 에스크로 복구 디바이스는 제3 복구된 마스터 키 샤드를 암호화하는데 이용될 수 있다. 일부 실시예들에서, 랩탑과 같은 물리적으로 격리된 컴퓨팅 디바이스는 이 단계를 용이하게 하기 위해 이용될 수 있다.
단계(620)에서, 제1 세트의 암호화된 복구된 마스터 키 샤드들은 제1 그룹의 제1-자 HSM들에 저장될 수 있다. 예를 들어, 물리적으로 격리된 컴퓨팅 디바이스는 암호화된 샤드들을 제1 그룹의 제1-자 HSM들로 전송하는데 이용될 수 있다.
단계(630)에서, 제2 세트의 복구된 마스터 키 샤드들의 각 복구된 마스터 키 샤드는 제2 그룹의 제1-자 HSM들의 공개 키를 사용하여 암호화될 수 있다. 다양한 실시예들에서, 제2 세트의 복구된 마스터 키 샤드들 각각은 다수의 마스터 에스크로 복구 디바이스들(즉, 제3-자 HSM들)에 저장되거나 유지될 수 있다. 예를 들어, 제2 세트의 제1 복구된 마스터 키 샤드는 제1 마스터 에스크로 복구 디바이스에 상주할 수 있고, 제2 세트의 제2 복구된 마스터 키 샤드는 제2 마스터 에스크로 복구 디바이스에 상주할 수 있으며, 그리고 제2 세트의 제3 복구된 마스터 키 샤드는 제3 마스터 에스크로 복구 디바이스에 상주할 수 있다. 이와 같이, 제1 마스터 에스크로 복구 디바이스는 제1 복구된 마스터 키 샤드를 암호화하는데 이용될 수 있고, 제2 마스터 에스크로 복구 디바이스는 제2 복구된 마스터 키 샤드를 암호화하는데 이용될 수 있으며, 그리고 제3 마스터 에스크로 복구 디바이스는 제3 복구된 마스터 키 샤드를 암호화하는데 이용될 수 있다. 일부 실시예들에서, 랩탑과 같은 물리적으로 격리된 컴퓨팅 디바이스는 이 단계를 용이하게 하기 위해 이용될 수 있다.
단계(640)에서, 제2 세트의 암호화된 복구된 마스터 키 샤드들은 제2 그룹의 제1-자 HSM들에 저장될 수 있다. 예를 들어, 물리적으로 격리된 컴퓨팅 디바이스는 암호화된 샤드들을 제2 그룹의 제1-자 HSM들에 전송하는데 이용될 수 있다.
단계(650)에서, 제3 세트의 복구된 마스터 키 샤드들의 각 복구된 마스터 키 샤드는 제3 그룹의 제1-자 HSM들의 공개 키를 사용하여 암호화될 수 있다. 다양한 실시예들에서, 제3 세트의 복구된 마스터 키 샤드들 각각은 다수의 마스터 에스크로 복구 디바이스들(즉, 제3-자 HSM들)에 저장되거나 유지될 수 있다. 예를 들어, 제3 세트의 제1 복구된 마스터 키 샤드는 제1 마스터 에스크로 복구 디바이스에 상주할 수 있고, 제3 세트의 제2 복구된 마스터 키 샤드는 제2 마스터 에스크로 복구 디바이스에 상주할 수 있으며, 그리고 제3 세트의 제3 복구된 마스터 키 샤드는 제3 마스터 에스크로 복구 디바이스에 상주할 수 있다. 이와 같이, 제1 마스터 에스크로 복구 디바이스는 제1 복구된 마스터 키 샤드를 암호화하는데 이용될 수 있고, 제2 마스터 에스크로 복구 디바이스는 제2 복구된 마스터 키 샤드를 암호화하는데 이용될 수 있으며, 그리고 제3 마스터 에스크로 복구 디바이스는 제3 복구된 마스터 키 샤드를 암호화하는데 이용될 수 있다. 일부 실시예들에서, 랩탑과 같은 물리적으로 격리된 컴퓨팅 디바이스는 이 단계를 용이하게 하기 위해 이용될 수 있다.
단계(660)에서, 제3 세트의 암호화된 복구된 마스터 키 샤드들은 제3 그룹의 제1-자 HSM들에 저장될 수 있다. 예를 들어, 물리적으로 격리된 컴퓨팅 디바이스는 암호화된 샤드들을 제3 그룹의 제1-자 HSM들에 전송하는데 이용될 수 있다.
상술된 바와 같이, 권위적 블록체인의 마스터 키들의 에스크로에 대한 방법들, 컴퓨터 판독 가능 매체들, 및 디바이스들이 개시된다. 추가적으로, 상술된 바와 같이, 이전에 에스크로화된 마스터 키들의 복구에 대한 방법들, 컴퓨터 판독 가능 매체들, 및 디바이스들이 개시된다.
현재 개시된 주제의 실시예들은 다양한 구성요소 및 네트워크 아키텍처들에서 구현되고 사용될 수 있다. 도 7은 현재 개시된 주제의 실시예들을 구현하기에 적합한 예시적인 컴퓨팅 디바이스(700)이다. 디바이스(700)는, 예를 들어, 데스크톱 또는 랩탑 컴퓨터, 모바일 컴퓨팅 디바이스, 그 예로, 전화, 태블릿 등 또는 여기에 개시된 바와 같은 디스플레이일 수 있다. 디바이스(700)는 컴퓨터(700)의 주요 구성요소들, 그 예로 중앙 프로세서(724), 메모리(727) 그 예로 RAM(Random Access Memory), ROM(Read Only Memory), 플래시 RAM 등, 사용자 디스플레이(722) 그 예로, 디스플레이 스크린, 하나 이상의 제어기 및 연관된 사용자 입력 디바이스들, 그 예로 키보드, 마우스, 터치 스크린 등을 포함할 수 있는 사용자 입력 인터페이스(726), 하드 드라이브, 플래시 스토리지 등과 같은 고정 저장부(723), 광 디스크, 플래시 드라이브 등을 제어하고 수신하도록 동작하는 이동식 매체 구성요소(725), 및 적합한 네트워크 연결을 통해 하나 이상의 원격 디바이스와 통신하도록 동 작 가능한 네트워크 인터페이스(729)를 상호 연결하는 버스(721)을 포함할 수 있다.
버스(721)는 이전에 언급된 바와 같이 중앙 프로세서(724)와 RAM, ROM 및 다른 메모리를 포함할 수 있는 하나 이상의 메모리 구성요소 사이의 데이터 통신을 허용한다. 통상적으로 RAM은 운영 체제와 응용 프로그램들이 로딩되는 주 메모리이다. ROM 또는 플래시 메모리 구성요소는 다른 코드 중에서도 주변 구성 요소들과의 상호 작용과 같은 기본 하드웨어 동작을 제어하는 BIOS(Basic Input-Output System)을 포함할 수 있다. 컴퓨터(720)에 상주하는 애플리케이션들은 일반적으로 하드 디스크 드라이브(예를 들어, 고정 저장부(723)), 광학 드라이브, 플로피 디스크 또는 다른 저장 매체와 같은 컴퓨터 판독 가능 매체에 저장되고 이를 통해 액세스된다.
고정 저장부(723)는 디바이스(700)와 통합될 수 있거나 분리되어 다른 인터페이스들을 통해 액세스될 수 있다. 네트워크 인터페이스(729)는 유선 또는 무선 연결을 통해 원격 서버에 직접 연결을 제공할 수 있다. 네트워크 인터페이스(729)는 디지털 셀룰러 전화, WiFi, 블루투스(R), 근거리장 등을 포함하여 통상의 기술자가 쉽게 이해할 수 있는 바와 같은 임의의 적합한 기술 및 프로토콜을 사용하여 그러한 연결을 제공할 수 있다. 예를 들어, 네트워크 인터페이스(729)는 아래에서 더 상세하게 기술된 바와 같이, 컴퓨터가 하나 이상의 로컬, 광역, 또는 다른 통신 네트워크들을 통해 다른 컴퓨터와 통신할 수 있도록 할 수 있다.
많은 다른 디바이스들 또는 구성요소들(도시되지 않음)이 유사한 방식으로 연결될 수 있다(예를 들어, 문서 스캐너들, 디지털 카메라들 등). 이와 달리, 도 7에 도시된 구성요소들 모두는 본 개시내용을 실시하기 위해 존재할 필요는 없다. 구성요소들은 도시된 것과는 상이한 방식들로 상호 연결될 수 있다. 도 7에 도시된 것과 같은 컴퓨터의 동작은 기술분야에서 쉽게 알려져 있어 본 출원에서 상세히 논의되지 않는다. 본 개시내용을 구현하기 위한 코드는 메모리(727), 고정 저장부(723), 이동식 매체(725) 중 하나 이상과 같은 컴퓨터 판독 가능 저장 매체에 또는 원격 저장 위치에 저장될 수 있다.
보다 일반적으로, 현재 개시된 주제의 다양한 실시예들은 이들 프로세스를 실시하기 위한 컴퓨터 구현 프로세스들 및 장치들을 포함하거나 그 형태로 구현될 수 있다. 실시예들은 또한, 플로피 디스켓들, CD-ROM들, 하드 드라이브들, 범용 직렬 버스(USB) 드라이브들, 또는 컴퓨터 프로그램 코드가 컴퓨터에 로딩되어 컴퓨터에 의해 실행될 때 컴퓨터가 개시된 주제의 실시예들을 실시하기 위한 장치가 되도록 하는 임의의 다른 기계 판독 가능 저장 매체와 같은 비-일시적 및/또는 유형의 매체에 구현된 명령어들을 포함하는 컴퓨터 프로그램 코드를 가진 컴퓨터 프로그램 제품 형태로 구현될 있다. 실시예들은 또한 예를 들어, 컴퓨터 프로그램 코드가 컴퓨터에 로딩되어 컴퓨터에 의해 실행될 때, 컴퓨터가 개시된 주제의 실시예들을 실행하기 위한 장치가 되도록, 저장 매체에 저장되거나, 컴퓨터에 로딩 및/또는 컴퓨터에 의해 실행되거나, 또는 광섬유들을 통해, 또는 전자기 복사를 통해, 전기 배선 또는 케이블과 같은 일부 전송 매체를 통해 전송되는 컴퓨터 프로그램 코드의 형태로 구현될 수 있다. 범용 마이크로프로세서에서 구현될 때 컴퓨터 프로그램 코드 세그먼트들은 특정 논리 회로들을 생성하도록 마이크로프로세서를 구성한다.
일부의 구성들에서, 컴퓨터 판독 가능 저장 매체에 저장된 컴퓨터 판독 가능 명령어 세트는 범용 프로세서에 의해 구현될 수 있으며, 범용 프로세서 또는 범용 프로세서를 포함하는 디바이스를, 명령어들을 구현하거나 수행하도록 구성된 특수 목적 디바이스로 변환할 수 있다. 실시예들은 하드웨어 및/또는 펌웨어에서 개시된 주제의 실시예들에 따른 기술들의 전부 또는 일부를 구현하는 ASIC(Application Specific Integrated Circuit) 및/또는 범용 마이크로프로세서와 같은 프로세서를 포함할 수 있는 하드웨어를 사용하여 구현될 수 있다. 프로세서는 RAM, ROM, 플래시 메모리, 하드 디스크 또는 전자 정보를 저장할 수 있는 임의의 다른 디바이스와 같은 메모리에 결합될 수 있다. 메모리는 개시된 주제의 실시예들에 따라 그 기술들을 수행하기 위해 프로세서에 의해 실행되도록 채용된 명령어를 저장할 수 있다.
상기의 설명은 설명의 목적을 위해 특정 실시예들을 참조하여 기술되었다. 그러나, 상기의 예시적인 논의는 개시된 주제의 실시예들을 철저하게 하거나 제한하여 개시된 정확한 형태로 하려는 것은 아니다. 상기의 교시를 고려하여 많은 수정들 및 변형들이 가능하다. 실시예들은 개시된 주제의 실시예들의 원리들 및 그들의 실제 응용들을 설명하기 위해 선택되고 기술되며, 이에 의해 통상의 기술자가, 고려된 특정 사용에 적합할 수 있는 바와 같이, 이들 실시예들뿐만 아니라 다양한 수정들을 갖는 다양한 실시예들을 이용하게 할 수 있다.

Claims (17)

  1. 마스터 키들의 에스크로에 대한 컴퓨터-구현 방법에 있어서:
    3 개의 제3-자 하드웨어 보안 모듈들(hardware security modules, HSM들) 각각을 마스터 에스크로 복구 디바이스들로서 초기화하는 단계, 여기서:
    각각의 제3-자 HSM는 서로 다른 제3 자에 대응하고;
    서로 다른 제3 자들은 단일의 제1 자와는 다르며; 그리고
    서로 다른 제3 자들 및 단일의 제1 자 모두는 마스터 에스크로 복구 디바이스 초기화를 피어 리뷰함(peer review);
    3 개의 마스터 키들을 생성하기 위해 권위적 블록체인(authoritative blockchain)에 관해 부트스트랩 동작을 수행하는 단계;
    3 개의 마스터 에스크로 복구 디바이스들 중 제1 마스터 에스크로 복구 디바이스를 사용하여 제1 세트의 마스터 키 샤드 암호문들을, 상기 3 개의 마스터 에스크로 복구 디바이스들 중 제2 마스터 에스크로 복구 디바이스를 사용하여 제2 세트의 마스터 키 샤드 암호문들을, 그리고 상기 3 개의 마스터 에스크로 복구 디바이스들 중 제3 마스터 에스크로 복구 디바이스를 사용하여 제3 세트의 마스터 키 샤드 암호문들을 생성하는 단계; 및
    상기 제1 세트의 마스터 키 샤드 암호문들, 상기 제2 세트의 마스터 키 샤드 암호문들, 및 상기 제3 세트의 마스터 키 샤드 암호문들을, 불투명 개체들(opaque objects)로서, 2 개의 제1-자 HSM들 각각에 저장하는 단계, 여기서 상기 2 개의 제1-자 HSM들은 단일의 제1 자에 대응됨;를 포함하는, 마스터 키들의 에스크로에 대한 컴퓨터-구현 방법.
  2. 청구항 1에 있어서,
    상기 3 개의 제3-자 HSM들 각각을 마스터 에스크로 복구 디바이스들로서 초기화하는 단계는:
    각각의 제3-자 HSM에 인증서를 로딩하는 단계, 여기서 상기 인증서는 루트 CA(root certificate authority)에 대응하는 중간 CA에 의해 서명된 공개 키를 포함함;
    상기 2 개의 제1-자 HSM들 각각에 상기 인증서를 등록하는 단계; 및
    상기 3 개의 제3-자 HSM들 각각에 대해:
    해당하는 제3-자 HSM의 시리얼 넘버를 상기 2 개의 제1-자 HSM들 각각에 등록하는 단계;
    상기 해당하는 제3-자 HSM의 공개 개인 키 쌍을 생성하는 단계, 여기서 상기 공개 개인 키 쌍의 증명 인증서는 내보내기 능력(export capability)이 없이 제1 자에 의해 검증됨;
    상기 해당하는 제3-자 HSM로부터 공개 키 부분을 내보내는 단계; 및
    상기 내보내진 공개 키 부분을 상기 2 개의 제1-자 HSM들 각각에 등록하는 단계;를 포함하는, 마스터 키들의 에스크로에 대한 컴퓨터-구현 방법.
  3. 청구항 1에 있어서,
    상기 제1 마스터 에스크로 복구 디바이스를 사용하여 제1 세트의 마스터 키 샤드 암호문들을, 상기 제2 마스터 에스크로 복구 디바이스를 사용하여 제2 세트의 마스터 키 샤드 암호문들을, 그리고 상기 제3 마스터 에스크로 복구 디바이스를 사용하여 제3 세트의 마스터 키 샤드 암호문들을 생성하는 단계는:
    상기 3 개의 마스터 키들 각각에 대해, 제1 마스터 키 샤드(master key shard), 제2 마스터 키 샤드, 및 제3 마스터 키 샤드를 생성하는 단계;
    상기 제1 세트의 마스터 키 샤드 암호문들을 생성하기 위해, 상기 제1 마스터 에스크로 복구 디바이스로부터 내보내진 제1 공개 키를 사용하여, 제1 마스터 키 샤드들 각각을 암호화하는 단계;
    상기 제2 세트의 마스터 키 샤드 암호문들을 생성하기 위해, 상기 제2 마스터 에스크로 복구 디바이스로부터 내보내진 제2 공개 키를 사용하여, 제2 마스터 키 샤드들 각각을 암호화하는 단계; 및
    상기 제3 세트의 마스터 키 샤드 암호문들을 생성하기 위해, 상기 제3 마스터 에스크로 복구 디바이스로부터 내보내진 제3 공개 키를 사용하여, 제3 마스터 키 샤드들 각각을 암호화하는 단계;를 포함하며,
    여기서, 상기 제1, 제2, 및 제3 공개 키들은 상기 2 개의 제1-자 HSM들 각각에 등록되는, 마스터 키들의 에스크로에 대한 컴퓨터-구현 방법.
  4. 청구항 1에 있어서,
    3 개의 추가적인 제3-자 HSM들 각각을, 리던던트(redundant) 마스터 에스크로 복구 디바이스들로서 초기화하는 단계를 더욱 포함하며,
    각각의 리던던트 마스터 에스크로 복구 디바이스는 하나의 마스터 에스크로 복구 디바이스에 대응하는, 마스터 키들의 에스크로에 대한 컴퓨터-구현 방법.
  5. 청구항 1에 있어서,
    적어도 하나의 추가적인 제3-자 HSM들을, 추가적인 마스터 에스크로 복구 디바이스로서 초기화하는 단계, 여기서 각각의 추가적인 제3-자 HSM은 서로 다른 제3 자에 대응됨;
    적어도 하나의 추가적인 마스터 에스크로 복구 디바이스를 사용하여 적어도 하나의 추가적인 세트의 마스터 키 샤드 암호문들을 생성하는 단계;
    상기 적어도 하나의 추가적인 세트의 마스터 키 샤드 암호문들을 적어도 2 개의 서로 다른 WORM(write once read many) 저장부에 저장하는 단계; 및
    상기 적어도 하나의 추가적인 세트의 마스터 키 샤드 암호문들을, 불투명 개체들로서, 상기 2 개의 제1-자 HSM들 각각에 저장하는 단계;를 더욱 포함하는, 마스터 키들의 에스크로에 대한 컴퓨터-구현 방법.
  6. 청구항 1에 있어서,
    상기 서로 다른 제3 자들 및 상기 단일의 제1 자 모두는 마스터 에스크로 복구 디바이스 초기화를 피어 리뷰하는, 마스터 키들의 에스크로에 대한 컴퓨터-구현 방법.
  7. 청구항 1에 있어서,
    상기 제1 세트의 마스터 키 샤드 암호문들, 상기 제2 세트의 마스터 키 샤드 암호문들, 및 상기 제3 세트의 마스터 키 샤드 암호문들을 적어도 2 개의 서로 다른 WORM(write once read many) 저장 디바이스들에 저장하는 단계를 더욱 포함하는, 마스터 키들의 에스크로에 대한 컴퓨터-구현 방법.
  8. 에스크로로부터 마스터 키들의 복구에 대한 컴퓨터-구현 방법에 있어서,
    3 개의 서로 다른 제3 자들 중 첫번째 제3 자에 연관된 제1 마스터 에스크로 복구 디바이스를 사용하여 생성된 이전의 에스크로로부터 제1 세트의 마스터 키 샤드 암호문들을 검색하는 단계, 여기서 상기 제1 세트의 마스터 키 샤드 암호문들은 제1 자의 권위적 블록체인의 제1 마스터 키의 제1 마스터 키 샤드 암호문, 상기 권위적 블록체인의 제2 마스터 키의 제1 마스터 키 샤드, 및 상기 권위적 블록체인의 제3 마스터 키의 제1 마스터 키 샤드를 포함함;
    상기 3 개의 서로 다른 제3 자들 중 두번째 제3 자에 연관된 제2 마스터 에스크로 복구 디바이스를 사용하여 생성된 이전의 에스크로로부터 제2 세트의 마스터 키 샤드 암호문들을 검색하는 단계, 여기서 상기 제2 세트의 마스터 키 샤드 암호문들은 상기 제1 마스터 키의 제2 마스터 키 샤드 암호문, 상기 제2 마스터 키의 제2 마스터 키 샤드, 및 상기 제3 마스터 키의 제2 마스터 키 샤드를 포함함;
    상기 3 개의 서로 다른 제3 자들 중 세번째 제3 자에 연관된 제3 마스터 에스크로 복구 디바이스를 사용하여 생성된 이전의 에스크로로부터 제3 세트의 마스터 키 샤드 암호문들을 검색하는 단계, 여기서 상기 제3 세트의 마스터 키 샤드 암호문들은 상기 제1 마스터 키의 제3 마스터 키 샤드 암호문, 상기 제2 마스터 키의 제3 마스터 키 샤드, 및 상기 제3 마스터 키의 제3 마스터 키 샤드를 포함함;
    여기서 상기 제1 자는 상기 3 개의 서로 다른 제3 자들 각각과는 다름;
    한 세트의 마스터 에스크로 복구 디바이스들을 획득하는 단계, 여기서:
    각각의 마스터 에스크로 복구 디바이스는 제3-자 하드웨어 보안 모듈(HSM)을 포함하고;
    각각의 제3-자 HSM은, 각각의 제3-자 HSM에 대응하는 정보를 상기 제1 자의 제1-자 HSM에 등록하여, 마스터 에스크로 복구 디바이스로서 이전에 초기화되었고; 그리고
    상기 세트의 마스터 에스크로 복구 디바이스들은 제1, 제2, 및 제3 마스터 에스크로 복구 디바이스들 중 적어도 2 개를 포함함;
    3 개 세트들의 복구된 마스터 키 샤드들을 생성하기 위해, 각 세트의 마스터 키 샤드 암호문들의 적어도 2 개의 마스터 키 샤드 암호문들을, 상기 세트의 마스터 에스크로 복구 디바이스들을 사용하여 해독하는 단계;
    3 개의 그룹들 각각의 제1-자 HSM들에 대해, 공개 개인 키 쌍을 생성하는 단계;
    제1 그룹의 제1-자 HSM들에 제1 세트의 복구된 마스터 키 샤드들을, 제2 그룹의 제1-자 HSM들에 제2 세트의 복구된 마스터 키 샤드들을, 그리고 제3 그룹의 제1-자 HSM들에 제3 세트의 복구된 마스터 키 샤드들을 로딩하는 단계;
    해당 그룹의 제1-자 HSM들의 해당 개인 키를 사용하여, 3 개 세트들의 복구된 마스터 키 샤드들의 복구된 마스터 키 샤드 각각을 해독하는 단계; 및
    상기 3 개 세트들의 복구된 마스터 키 샤드들을 사용하여, 상기 제1 자의 권위적 블록체인의 3 개의 마스터 키들을 복구하는 단계;를 포함하는, 에스크로로부터 마스터 키들의 복구에 대한 컴퓨터-구현 방법.
  9. 청구항 8에 있어서,
    상기 제1 세트의 마스터 키 샤드 암호문들은:
    상기 제1 마스터 에스크로 복구 디바이스로부터 내보내진 제1 공개 키를 사용하여 상기 제1 마스터 키의 제1 마스터 키 샤드를 암호화하고;
    상기 제2 마스터 에스크로 복구 디바이스로부터 내보내진 제2 공개 키를 사용하여 상기 제2 마스터 키의 제1 마스터 키 샤드를 암호화하며; 그리고
    상기 제3 마스터 에스크로 복구 디바이스로부터 내보내진 제3 공개 키를 사용하여 상기 제3 마스터 키의 제1 마스터 키 샤드를 암호화하여; 이전에 생성되었고,
    상기 제2 세트의 마스터 키 샤드 암호문들은:
    상기 제1 마스터 에스크로 복구 디바이스로부터 내보내진 제1 공개 키를 사용하여 상기 제1 마스터 키의 제2 마스터 키 샤드를 암호화하고;
    상기 제2 마스터 에스크로 복구 디바이스로부터 내보내진 제2 공개 키를 사용하여 상기 제2 마스터 키의 제2 마스터 키 샤드를 암호화하며; 그리고
    상기 제3 마스터 에스크로 복구 디바이스로부터 내보내진 제3 공개 키를 사용하여 상기 제3 마스터 키의 제2 마스터 키 샤드를 암호화하여; 이전에 생성되었고, 그리고
    상기 제3 세트의 마스터 키 샤드 암호문들은:
    상기 제1 마스터 에스크로 복구 디바이스로부터 내보내진 제1 공개 키를 사용하여 상기 제1 마스터 키의 제3 마스터 키 샤드를 암호화하고;
    상기 제2 마스터 에스크로 복구 디바이스로부터 내보내진 제2 공개 키를 사용하여 상기 제2 마스터 키의 제3 마스터 키 샤드를 암호화하며; 그리고
    상기 제3 마스터 에스크로 복구 디바이스로부터 내보내진 제3 공개 키를 사용하여 상기 제3 마스터 키의 제3 마스터 키 샤드를 암호화하여; 이전에 생성되었던, 에스크로로부터 마스터 키들의 복구에 대한 컴퓨터-구현 방법.
  10. 청구항 8에 있어서,
    상기 제1 세트의 복구된 마스터 키 샤드들은 상기 제1 마스터 키에 대응하고;
    상기 제2 세트의 복구된 마스터 키 샤드들은 상기 제2 마스터 키에 대응하며; 그리고
    상기 제3 세트의 복구된 마스터 키 샤드들은 상기 제3 마스터 키에 대응하는, 에스크로로부터 마스터 키들의 복구에 대한 컴퓨터-구현 방법.
  11. 청구항 8에 있어서,
    각 그룹의 제1-자 HSM들은 2 개의 제1-자 HSM들을 포함하며; 그리고
    상기 제1-자 HSM들은 상기 제1 자에 대응하는, 에스크로로부터 마스터 키들의 복구에 대한 컴퓨터-구현 방법.
  12. 청구항 8에 있어서,
    상기 제1 그룹의 제1-자 HSM들에 제1 세트의 복구된 마스터 키 샤드들을, 제2 그룹의 제1-자 HSM들에 제2 세트의 복구된 마스터 키 샤드들을, 그리고 제3 그룹의 제1-자 HSM들에 제3 세트의 복구된 마스터 키 샤드들을 로딩하는 단계는:
    상기 제1 세트의 복구된 마스터 키 샤드들에 대해:
    상기 제1 그룹의 제1-자 HSM들을 사용하여, 상기 제1 그룹의 제1-자 HSM들의 공개 개인 키 쌍의 공개 키를 사용하여 상기 제1 세트의 복구된 마스터 키 샤드들의 각 복구된 마스터 키 샤드를 암호화하는 단계; 및
    상기 제1 세트의 복구된 마스터 키 샤드들의 암호화된 복구된 마스터 키 샤드들을 상기 제1 그룹의 제1-자 HSM들에 저장하는 단계;
    상기 제2 세트의 복구된 마스터 키 샤드들에 대해:
    상기 제2 그룹의 제1-자 HSM들을 사용하여, 상기 제2 그룹의 제1-자 HSM들의 공개 개인 키 쌍의 공개 키를 사용하여 상기 제2 세트의 복구된 마스터 키 샤드들의 각 복구된 마스터 키 샤드를 암호화하는 단계; 및
    상기 제2 세트의 마스터 키 샤드들의 암호화된 복구된 마스터 키 샤드들을 상기 제2 그룹의 제1-자 HSM들에 저장하는 단계; 및
    상기 제3 세트의 복구된 마스터 키 샤드들에 대해:
    상기 제3 그룹의 제1-자 HSM들을 사용하여, 상기 제3 그룹의 제1-자 HSM들의 공개 개인 키 쌍의 공개 키를 사용하여 상기 제3 세트의 복구된 마스터 키 샤드들의 각 복구된 마스터 키 샤드를 암호화하는 단계; 및
    상기 제3 세트의 마스터 키 샤드들의 암호화된 복구된 마스터 키 샤드들을 상기 제3 그룹의 제1-자 HSM들에 저장하는 단계;를 포함하는, 에스크로로부터 마스터 키들의 복구에 대한 컴퓨터-구현 방법.
  13. 청구항 8에 있어서,
    적어도 하나의 추가적인 세트의 마스터 키 샤드 암호문들을 검색하는 단계를 더욱 포함하며,
    각 추가적인 세트의 마스터 키 샤드 암호문들은 상기 제1 마스터 키의 추가적인 마스터 키 샤드 암호문, 상기 제2 마스터 키의 추가적인 마스터 키 샤드, 및 상기 제3 마스터 키의 추가적인 마스터 키 샤드을 포함하며, 그리고
    각 추가적인 세트의 마스터 키 샤드 암호문들은 추가적인 마스터 에스크로 복구 디바이스를 사용하여 이전에 에스크로화되고,
    상기 세트의 마스터 에스크로 복구 디바이스들은 제1, 제2, 제3, 및 적어도 하나의 추가적인 마스터 에스크로 복구 디바이스들 중 적어도 3 개를 포함하는, 에스크로로부터 마스터 키들의 복구에 대한 컴퓨터-구현 방법.
  14. 청구항 8에 있어서,
    상기 3 개 세트들의 마스터 키 샤드들을 생성하기 위해, 각 세트의 마스터 키 샤드 암호문들의 적어도 2 개의 마스터 키 샤드 암호문들을 해독하는 단계는 물리적으로 격리된 컴퓨팅 디바이스를 사용하는 단계를 포함하는, 에스크로로부터 마스터 키들의 복구에 대한 컴퓨터-구현 방법.
  15. 컴퓨터-구현 방법에 있어서,
    3 개의 서로 다른 제3 자들과 함께 제1 자의 권위적 블록체인의 3 개의 마스터 키들을 에스크로화하는 단계, 여기서 상기 에스크로화하는 단계는 상기 제1 자 및 상기 3 개의 서로 다른 제3 자들에 의해 피어 리뷰됨; 및
    상기 3 개의 마스터 키들을 에스크로로부터 복구하는 단계, 여기서 상기 복구하는 단계는 상기 제1 자, 및 상기 3 개의 서로 다른 제3 자들 중 적어도 2 개를 수반하며, 그리고 상기 복구하는 단계는 상기 제1 자 및 상기 3 개의 서로 다른 제3 자들 중 적어도 2 개에 의해 피어 리뷰됨;를 포함하는, 컴퓨터-구현 방법.
  16. 청구항 15에 있어서,
    3 개의 서로 다른 제3 자들과 함께 제1 자의 권위적 블록체인의 3 개의 마스터 키들을 에스크로화하는 단계는:
    3 개의 제3-자 하드웨어 보안 모듈들(HSM들) 각각을 마스터 에스크로 복구 디바이스들로서 초기화하는 단계, 여기서:
    각각의 제3-자 HSM는 상기 3 개의 서로 다른 제3 자들 중 서로 다른 것에 대응되고;
    상기 서로 다른 제3 자들은 상기 단일의 제1 자와는 다르며; 그리고
    상기 서로 다른 제3 자들 및 상기 단일의 제1 자 모두는 마스터 에스크로 복구 디바이스 초기화를 피어 리뷰함;
    3 개의 마스터 키들을 생성하기 위해 권위적 블록체인에 관해 부트스트랩 동작을 수행하는 단계;
    3 개의 마스터 에스크로 복구 디바이스들 중 제1 마스터 에스크로 복구 디바이스를 사용하여 제1 세트의 마스터 키 샤드 암호문들을, 상기 3 개의 마스터 에스크로 복구 디바이스들 중 제2 마스터 에스크로 복구 디바이스를 사용하여 제2 세트의 마스터 키 샤드 암호문들을, 그리고 상기 3 개의 마스터 에스크로 복구 디바이스들 중 제3 마스터 에스크로 복구 디바이스를 사용하여 제3 세트의 마스터 키 샤드 암호문들을 생성하는 단계; 및
    상기 제1 세트의 마스터 키 샤드 암호문들, 상기 제2 세트의 마스터 키 샤드 암호문들, 및 상기 제3 세트의 마스터 키 샤드 암호문들을 불투명 개체들로서, 2 개의 제1-자 HSM들 각각에 저장하는 단계, 여기서 상기 2 개의 제1-자 HSM들은 상기 제1 자에 대응됨;를 포함하는, 컴퓨터-구현 방법.
  17. 청구항 15에 있어서,
    상기 3 개의 마스터 키들을 에스크로로부터 복구하는 단계는:
    상기 제1 자의 권위적 블록체인의 3 개의 마스터 키들에 대응하는 3 개 세트들의 마스터 키 샤드 암호문들을 검색하는 단계, 여기서:
    상기 제1 세트의 마스터 키 샤드 암호문들은 제1 마스터 키의 제1 마스터 키 샤드 암호문, 제2 마스터 키의 제1 마스터 키 샤드, 및 제3 마스터 키의 제1 마스터 키 샤드를 포함하고, 상기 제1 세트의 마스터 키 샤드 암호문들은 제1 마스터 에스크로 복구 디바이스를 사용하여 이전에 에스크로화됨;
    상기 제2 세트의 마스터 키 샤드 암호문들은 상기 제1 마스터 키의 제2 마스터 키 샤드 암호문, 상기 제2 마스터 키의 제2 마스터 키 샤드, 및 상기 제3 마스터 키의 제2 마스터 키 샤드를 포함하고, 상기 제2 세트의 마스터 키 샤드 암호문들은 제2 마스터 에스크로 복구 디바이스를 사용하여 이전에 에스크로화됨;
    상기 제3 세트의 마스터 키 샤드 암호문들은 상기 제1 마스터 키의 제3 마스터 키 샤드 암호문, 상기 제2 마스터 키의 제3 마스터 키 샤드, 및 상기 제3 마스터 키의 제3 마스터 키 샤드를 포함하고, 상기 제3 세트의 마스터 키 샤드 암호문들은 제3 마스터 에스크로 복구 디바이스를 사용하여 이전에 에스크로화됨;
    각각의 마스터 에스크로 복구 디바이스는 상기 3 개의 제3 자들 중 서로 다른 것에 대응하며; 그리고
    상기 제1 자는 상기 3 개의 제3 자들 각각과는 다름;
    한 세트의 마스터 에스크로 복구 디바이스들을 획득하는 단계, 여기서:
    각각의 마스터 에스크로 복구 디바이스는 제3-자 하드웨어 보안 모듈(HSM)을 포함하고;
    각각의 제3-자 HSM은, 각각의 제3-자 HSM에 대응하는 정보를 상기 제1 자의 제1-자 HSM에 등록하여, 마스터 에스크로 복구 디바이스로서 이전에 초기화되었으며; 그리고
    상기 세트의 마스터 에스크로 복구 디바이스들은 제1, 제2 및 제 3 마스터 에스크로 복구 디바이스들 중 적어도 2 개를 포함함;
    상기 3 개 세트들의 마스터 키 샤드들을 생성하기 위해, 각 세트의 마스터 키 샤드 암호문들의 적어도 2 개의 마스터 키 샤드 암호문들을, 상기 세트의 마스터 에스크로 복구 디바이스들을 사용하여 해독하는 단계;
    제1-자 HSM들의 3 개의 그룹들 각각에 대해, 공개 개인 키 쌍을 생성하는 단계;
    제1 그룹의 제1-자 HSM들에 제1 세트의 복구된 마스터 키 샤드들을, 제2 그룹의 제1-자 HSM들에 제2 세트의 복구된 마스터 키 샤드들을, 그리고 제3 그룹의 제1-자 HSM들에 제3 세트의 복구된 마스터 키 샤드들을 로딩하는 단계;
    해당 그룹의 제1-자 HSM들의 해당 개인 키를 사용하여, 3 개 세트들의 복구된 마스터 키 샤드들의 마스터 키 샤드 각각을 해독하는 단계; 및
    상기 3 개 세트들의 복구된 마스터 키 샤드들을 사용하여, 상기 제1 자의 권위적 블록체인의 3 개의 마스터 키들을 복구하는 단계;를 포함하는, 컴퓨터-구현 방법.
KR1020237006366A 2020-07-23 2021-07-23 마스터 키 에스크로 프로세스 KR20230042346A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202063055760P 2020-07-23 2020-07-23
US63/055,760 2020-07-23
US17/219,473 2021-03-31
US17/219,473 US11711213B2 (en) 2020-07-23 2021-03-31 Master key escrow process
PCT/US2021/042910 WO2022020686A1 (en) 2020-07-23 2021-07-23 Master key escrow process

Publications (1)

Publication Number Publication Date
KR20230042346A true KR20230042346A (ko) 2023-03-28

Family

ID=79689529

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020237006366A KR20230042346A (ko) 2020-07-23 2021-07-23 마스터 키 에스크로 프로세스

Country Status (5)

Country Link
US (2) US11711213B2 (ko)
EP (1) EP4186202A1 (ko)
JP (1) JP2023535040A (ko)
KR (1) KR20230042346A (ko)
WO (1) WO2022020686A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024117428A1 (ko) 2022-12-02 2024-06-06 주식회사 엘지에너지솔루션 배터리 모듈

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11449491B2 (en) * 2019-01-14 2022-09-20 PolySign, Inc. Preventing a transmission of an incorrect copy of a record of data to a distributed ledger system
US20230081068A1 (en) * 2021-09-10 2023-03-16 International Business Machines Corporation Securely distributing a root key for a hardware security module
US12034836B1 (en) * 2022-06-30 2024-07-09 Wells Fargo Bank, N.A. Systems and methods for hardware security module communication management
CN115632778B (zh) * 2022-12-20 2023-04-18 四川省数字证书认证管理中心有限公司 一种多端加解密互通方法
CN117254908B (zh) * 2023-11-10 2024-02-02 成方金融科技有限公司 一种云端数据存储方法、装置、设备及介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8139770B2 (en) * 2003-12-23 2012-03-20 Wells Fargo Bank, N.A. Cryptographic key backup and escrow system
US8892868B1 (en) 2008-09-30 2014-11-18 Amazon Technologies, Inc. Hardening tokenization security and key rotation
US8788842B2 (en) 2010-04-07 2014-07-22 Apple Inc. System and method for content protection based on a combination of a user PIN and a device specific identifier
US20160127903A1 (en) 2014-11-05 2016-05-05 Qualcomm Incorporated Methods and systems for authentication interoperability
JP6896940B2 (ja) * 2017-06-14 2021-06-30 タレス ディアイエス フランス エスアー 第1のアプリケーションと第2のアプリケーションとの間の対称型相互認証方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024117428A1 (ko) 2022-12-02 2024-06-06 주식회사 엘지에너지솔루션 배터리 모듈

Also Published As

Publication number Publication date
US20230370263A1 (en) 2023-11-16
EP4186202A1 (en) 2023-05-31
JP2023535040A (ja) 2023-08-15
WO2022020686A1 (en) 2022-01-27
US11711213B2 (en) 2023-07-25
US20220029801A1 (en) 2022-01-27

Similar Documents

Publication Publication Date Title
US10673626B2 (en) Threshold secret share authentication proof and secure blockchain voting with hardware security modules
JP7015904B2 (ja) セキュア実行プラットフォームのクラスタ
KR20230042346A (ko) 마스터 키 에스크로 프로세스
CN110417750B (zh) 基于区块链技术的文件读取和存储的方法、终端设备和存储介质
CN108768633B (zh) 实现区块链中信息共享的方法及装置
CN109075976A (zh) 取决于密钥认证的证书发布
KR20210040078A (ko) 안전한 보관 서비스를 위한 시스템 및 방법
US20080040613A1 (en) Apparatus, system, and method for secure password reset
JP2016531508A (ja) データセキュアストレージ
US20220141014A1 (en) Storing secret data on a blockchain
US11252161B2 (en) Peer identity verification
US20180359230A1 (en) Combined hidden dynamic random-access devices utilizing selectable keys and key locators for communicating randomized data together with sub-channels and coded encryption keys
CN111131336A (zh) 多方授权场景下的资源访问方法、装置、设备及存储介质
WO2022115559A1 (en) Cryptographic key storage system and method
CN110914826B (zh) 用于分布式数据映射的系统和方法
KR20220014315A (ko) 데이터 프로세싱 시스템 및 방법
US10623384B2 (en) Combined hidden dynamic random-access devices utilizing selectable keys and key locators for communicating randomized data together with sub-channels and coded encryption keys
WO2023020150A1 (en) Authorized secure data movement
CN116049802A (zh) 应用单点登陆方法、系统、计算机设备和存储介质
US11811742B2 (en) Methods, systems, and media for recovering identity information in verifiable claims-based systems
US20220092175A1 (en) Systems and methods for managing state
Wilusz et al. Secure protocols for smart contract based insurance services
CN114244565A (zh) 密钥分发方法、装置、设备、存储介质和计算机程序产品
Kocher Public Key Cryptography in Computer and Network Security
US20230327859A1 (en) System and method for distributed custody access token management