KR20220056574A - 블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리 방법 및 이를 처리하는 단말 장치 - Google Patents

블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리 방법 및 이를 처리하는 단말 장치 Download PDF

Info

Publication number
KR20220056574A
KR20220056574A KR1020200141273A KR20200141273A KR20220056574A KR 20220056574 A KR20220056574 A KR 20220056574A KR 1020200141273 A KR1020200141273 A KR 1020200141273A KR 20200141273 A KR20200141273 A KR 20200141273A KR 20220056574 A KR20220056574 A KR 20220056574A
Authority
KR
South Korea
Prior art keywords
key
information
user
secret
user terminal
Prior art date
Application number
KR1020200141273A
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 보노테크놀로지스 주식회사
Priority to KR1020200141273A priority Critical patent/KR20220056574A/ko
Publication of KR20220056574A publication Critical patent/KR20220056574A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/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/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or 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/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/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)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

본 발명의 실시 예에 따른 블록 체인 네트워크를 통한 거래 관리 서비스를 제공하는 사용자 단말의 동작 방법은, 사용자 식별 정보에 기초하여, 상기 거래 관리 서비스에 이용되는 사용자 지갑 계정의 마스터 키를 등록하는 단계; 상기 마스터 키에 대응하는 분산 쉐어링 시크릿 키 처리에 따라, 임계치 이상의 개수의 시크릿 키들을 이용하여 상기 마스터 키를 복원 가능한 복수의 시크릿 키들을 생성하는 단계; 상기 복수의 시크릿 키 중 제1 시크릿 키를 상기 사용자 식별 정보에 대응하여 사전 설정된 사용자 개인화 정보를 이용하여 암호화하는 단계; 및 상기 복수의 시크릿 키 중 제2 그룹의 시크릿 키들을 상기 제1 시크릿 키에 연결된 체인 암호화를 처리하여 관리하는 단계를 포함한다.

Description

블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리 방법 및 이를 처리하는 단말 장치{A METHOD AND AN APPARATUS FOR MASTER KEY MANAGEMENT BASED ON SHARING ALGORITHMS FOR BLOCK CHAIN TRANSACTIONS}
본 발명은 키 관리 방법 및 이를 처리하는 단말 장치에 관한 것이다. 보다 구체적으로, 본 발명은 블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리 방법 및 이를 처리하는 단말 장치에 관한 것이다.
일반적으로, 블록체인(blockchain)은 분산 데이터베이스의 하나로 P2P(Peer to Peer) 네트워크를 활용한다. 분산 데이터베이스는 데이터를 물리적으로 분산시켜 다수의 이용자가 대규모의 데이터베이스를 공유하게 만드는 기술이다. 블록체인은 인터넷으로 연결된 가상화폐 사용자들의 P2P 네트워크를 만든다.
이를 통해 가상화폐의 거래 내역(블록, block)이 사용자의 컴퓨터에 저장된다. 그중 사용자 과반수의 데이터와 일치하는 거래 내역은 정상 장부(ledger)로 확인되어 블록으로 묶여 보관한다. 만일 특정 사용자의 장부에서 누락 등의 오류가 발견된다면, 정상 장부를 복제해 대체하는 방식으로 수정한다.
새로운 거래 내역을 담은 블록이 만들어지면 앞의 블록뒤에 덧붙이는 과정이 반복된다. 블록체인이란 이름도 거래 내역(블록, block)을 연결(chain)했다는 뜻이다. 거래할 때는 각 사용자가 가진 거래 내역을 대조한다. 이를 통해 거래 내역의 진위를 파악할 수 있어 데이터 위조가 방지된다. 블록체인의 보안 안정성은 데이터를 공유하는 이용자가 많을수록 커진다. 블록체인은 비트코인 이외에도 클라우드 컴퓨팅 서비스 등 다양한 온라인 서비스에 활용되고 있다.
이와 같은 블록 체인 기술에 의해 형성된 암호화폐와 같은 자산 정보 그 자체는 사용자 과반수의 데이터에 의해 비가역적으로 보관되므로 자산의 투명성과 신뢰성이 보장된다.
그러나, 블록 체인 자산 거래를 위한 암호화 키는 각 지갑 계정에 대응하여 하나만 할당되며, 그 암호화 키는 각각의 거래를 위해 사용되는 키이므로, 이를 분실하는 경우 더이상 자산에 대한 거래를 할 수 없게 되는 문제점이 있다.
또한, 자산 정보의 거래를 중개하는 서비스 서버 등이 존재하는 경우, 서비스 서버의 입출력 과정에서의 해킹이나, 서비스 중단 또는 자연재해 등에 의해 의도하지 않은 암호화 키 데이터의 손상이 발생될 수 있으며, 이를 복원하지 못하면 그 지갑 계정의 암호화폐 자산 전체를 그대로 손실로서 처리할 수밖에 없는 문제점이 있다.
이를 해결하기 위해 별도의 방식으로 암호화 키 데이터를 로컬로 백업하거나, 외부 클라우드를 통해 백업하는 방식들이 제안되고는 있으나, 복원시 필요한 사용자의 개인 정보 및 백업 데이터 자체의 유출 가능성도 증가하기 때문에, 실질적인 보안 유지 및 암호화 키의 복원 안정성을 크게 높이지는 못하고 있는 실정이다.
본 발명은 상기한 바와 같은 문제점을 해결하고자 안출된 것으로, 블록 체인 기반 암호 화폐 거래에 이용되는 암호화 키 데이터를 분산 쉐어링 알고리즘을 기반으로 복수의 장치에서 분산 관리하고, 암호화 키의 분실 또는 데이터 손상시 별도의 개인 정보 유출 없이도, 분산 관리된 암호화 키 데이터를 이용하여 신속하고 용이하게 암호화 키를 안전하게 복원할 수 있도록 하는 블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리 방법 및 이를 처리하는 단말 장치를 제공하는 데 그 목적이 있다.
상기한 바와 같은 과제를 해결하기 위한 본 발명의 실시 예에 따른 블록 체인 네트워크를 통한 거래 관리 서비스를 제공하는 사용자 단말의 동작 방법은, 사용자 식별 정보에 기초하여, 상기 거래 관리 서비스에 이용되는 사용자 지갑 계정의 마스터 키를 등록하는 단계; 상기 마스터 키에 대응하는 분산 쉐어링 시크릿 키 처리에 따라, 임계치 이상의 개수의 시크릿 키들을 이용하여 상기 마스터 키를 복원 가능한 복수의 시크릿 키들을 생성하는 단계; 상기 복수의 시크릿 키 중 제1 시크릿 키를 상기 사용자 식별 정보에 대응하여 사전 설정된 사용자 개인화 정보를 이용하여 암호화하는 단계; 및 상기 복수의 시크릿 키 중 제2 그룹의 시크릿 키들을 상기 제1 시크릿 키에 연결된 체인 암호화를 처리하여 관리하는 단계를 포함한다.
상기한 바와 같은 과제를 해결하기 위한 본 발명의 실시 예에 따른 블록 체인 네트워크를 통한 거래 관리 서비스를 제공하는 사용자 단말 장치는, 사용자 식별 정보에 기초하여, 상기 거래 관리 서비스에 이용되는 사용자 지갑 계정의 마스터 키를 등록하는 마스터 키 정보 관리부; 및 상기 마스터 키에 대응하는 분산 쉐어링 시크릿 키 처리에 따라, 임계치 이상의 개수의 시크릿 키들을 이용하여 상기 마스터 키를 복원 가능한 복수의 시크릿 키들을 생성하고, 상기 복수의 시크릿 키 중 제1 시크릿 키를 상기 사용자 식별 정보에 대응하여 사전 설정된 사용자 개인화 정보를 이용하여 암호화하며, 상기 복수의 시크릿 키 중 제2 그룹의 시크릿 키들을 상기 제1 시크릿 키에 연결된 체인 암호화를 처리하여 관리하는 시크릿 키 데이터 관리부를 포함한다.
또한, 상기한 바와 같은 과제를 해결하기 위한 본 발명의 실시 예에 따른 방법은, 상기 방법을 컴퓨터에서 실행시키기 위해 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.
본 발명의 실시 예에 따르면, 블록 체인 기반 암호 화폐 거래에 이용되는 암호화 키 데이터를 분산 쉐어링 알고리즘을 기반으로 복수의 장치에서 분산 관리하고, 암호화 키의 분실 또는 데이터 손상시 별도의 개인 정보 유출 없이도, 분산 관리된 암호화 키 데이터를 이용하여 신속하고 용이하게 암호화 키를 안전하게 복원할 수 있도록 하는 블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리 방법 및 이를 처리하는 단말 장치를 제공할 수 있다.
도 1은 본 발명의 전체 시스템을 개략적으로 도시한 개념도이다.
도 2는 본 발명의 실시 예에 따른 서비스 제공 장치 및 단말 장치를 보다 구체적으로 설명한 블록도이다.
도 3은 본 발명의 실시 예에 따른 분산 쉐어링 기반 암호키 처리부를 보다 구체적으로 도시한 블록도이다.
도 4는 본 발명의 실시 예에 따른 분산 쉐어링 알고리즘 기반 암호화 키 관리 방법을 설명하기 위한 흐름도이다.
도 5는 본 발명의 실시 예에 따라 분산된 암호화 키 데이터를 설명하기 위한 도면이다.
도 6은 본 발명의 실시 예에 따른 마스터 키 복원 프로세스를 설명하기 위한 흐름도이다.
이하의 내용은 단지 본 발명의 원리를 예시한다. 그러므로 당업자는 비록 본 명세서에 명확히 설명되거나 도시되지 않았지만 본 발명의 원리를 구현하고 본 발명의 개념과 범위에 포함된 다양한 장치를 발명할 수 있는 것이다. 또한, 본 명세서에 열거된 모든 조건부 용어 및 실시예들은 원칙적으로, 본 발명의 개념이 이해되도록 하기 위한 목적으로만 명백히 의도되고, 이와 같이 특별히 열거된 실시예들 및 상태들에 제한적이지 않는 것으로 이해되어야 한다.
또한, 본 발명의 원리, 관점 및 실시예들 뿐만 아니라 특정 실시예를 열거하는 모든 상세한 설명은 이러한 사항의 구조적 및 기능적 균등물을 포함하도록 의도되는 것으로 이해되어야 한다. 또한 이러한 균등물들은 현재 공지된 균등물뿐만 아니라 장래에 개발될 균등물 즉 구조와 무관하게 동일한 기능을 수행하도록 발명된 모든 소자를 포함하는 것으로 이해되어야 한다.
따라서, 예를 들어, 본 명세서의 블록도는 본 발명의 원리를 구체화하는 예시적인 회로의 개념적인 관점을 나타내는 것으로 이해되어야 한다. 이와 유사하게, 모든 흐름도, 상태 변환도, 의사 코드 등은 컴퓨터가 판독 가능한 매체에 실질적으로 나타낼 수 있고 컴퓨터 또는 프로세서가 명백히 도시되었는지 여부를 불문하고 컴퓨터 또는 프로세서에 의해 수행되는 다양한 프로세스를 나타내는 것으로 이해되어야 한다.
또한 프로세서, 제어 또는 이와 유사한 개념으로 제시되는 용어의 명확한 사용은 소프트웨어를 실행할 능력을 가진 하드웨어를 배타적으로 인용하여 해석되어서는 아니되고, 제한 없이 디지털 신호 프로세서(DSP) 하드웨어, 소프트웨어를 저장하기 위한 롬(ROM), 램(RAM) 및 비 휘발성 메모리를 암시적으로 포함하는 것으로 이해되어야 한다. 주지관용의 다른 하드웨어도 포함될 수 있다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명하기로 한다.
도 1은 본 발명의 실시 예에 따른 전체 시스템을 개략적으로 도시한 도면이다.
먼저, 도 1에 도시된 바와 같이, 본 발명의 실시 예에 따른 블록 체인 네트워크 시스템(1000)은, 네트워크를 통해 유선 또는 무선으로 연결된 하나 이상의 노드 단말들에 의해 형성된 블록체인 메쉬 네트워크로 구성될 수 있다. 그리고, 상기 노드 단말 들 중에는 본 발명의 실시 예에 따른 블록 체인 네트워크 기반의 거래 서비스 및 분산 쉐어링 알고리즘 기반 암호화 키 관리 서비스를 제공하는 서비스 제공 장치(100)와, 서비스 등록에 따라 서비스를 제공받는 하나 이상의 사용자 단말(200)을 포함할 수 있다.
그리고, 서비스 제공 장치(100) 및 하나 이상의 사용자 단말(200)을 포함하는 각 노드 단말들은 입출력 장치를 통하여 블록 체인 네트워크에 연결되고, 데이터를 교환할 수 있다. 이를 위해, 각 노드 단말들은 이동 전화, 스마트 폰, PDA, 태블릿 컴퓨터, 랩톱 컴퓨터 등 모바일 장치, 퍼스널 컴퓨터, 태블릿 컴퓨터, 넷북 등 컴퓨팅 장치, 혹은 텔레비전, 스마트 텔레비전, 게이트 제어를 위한 보안 장치 등 전자 제품 등 다양한 전자 시스템을 포함할 수 있다.
그리고, 서비스 제공 장치(100) 및 하나 이상의 사용자 단말(200)을 포함하는 각 노드 단말들은 블록 체인 네트워크에 접속하기 위한 통신 모듈을 구비할 수 있다. 블록 체인 네트워크는 예를 들어, 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network;WAN) 또는 부가가치 통신망(Value Added Network; VAN) 등과 같은 유선 네트워크로 구현될 수 있다. 또한, 블록 체인 네트워크는 이동 통신망(mobile radio communication network), 위성 통신망, 블루투스(Bluetooth), Wibro(Wireless Broadband Internet), HSDPA(High Speed Downlink Packet Access), 와이파이(Wi-Fi), LTE(Long Term Evolution) 등과 같은 모든 종류의 무선 네트워크로 구현될 수 있다. 필요에 따라서, 블록 체인 네트워크는 유선 및 무선이 혼용된 네트워크일 수 있다.
그리고, 서비스 제공 장치(100) 및 하나 이상의 사용자 단말(200)을 포함하는 각 노드 단말은 자신의 노드 접속에 따른 계정 정보를 네트워크를 통해 클라우드 방식으로 공유되는 거래 장부 데이터에 등록할 수 있다. 그리고, 블록 체인을 생성하기 위한 암호화 정보의 거래가 필요한 경우, 각 거래자 단말은 상기 거래 장부 데이터에 기록될 거래 정보를 각 거래자 단말에게 전파할 수 있다.
그리고, 이에 대응하는 상호 검증 처리에 따라, 예를 들어 일정 비율 이상의 노드 단말로부터의 승인이 처리된 경우 상기 거래 장부 데이터가 업데이트되고, 그 정보가 공유됨으로써, 블록 체인을 생성하기 위한 암호화 정보의 거래가 처리될 수 있다.
여기서, 상기 거래 장부 데이터는 일정 시간 또는 단위에 대응하는 블록별로 현재의 블록이 이전에 생성된 블록에 대한 해시값을 포함하도록 하여 복수의 블록이 생성 순서에 따라 순차적으로 연결된 구조를 갖는 블록 체인(block chain) 데이터와 연동될 수 있다.
이에 따라, 거래 장부 데이터의 위변조 여부 검증은 상기 블록 체인의 해시값 검증에 따라 용이하게 처리될 수 있다. 이를 위해, 각 거래자 단말에서는 다음 블록의 해시값을 산출하기 위한 연산 및 검증 처리를 수행하는 컴퓨팅 파워를 제공하고, 이에 대응하는 보상을 획득할 수도 있다.
이러한 블록 체인의 보안 안정성은 데이터를 공유하는 공유자들의 시스템 참여에 의해 형성될 수 있다. 따라서, 블록체인 네트워크에 접속된 각 공유자 단말 사이의 공유에 대한 내역 및 블록 체인을 생성하기 위한 암호화 정보 발급/거래 내역 등을 포함하는 거래 정보 블록이 순차적으로 저장될 수 있으며, 그 위변조 방지를 위한 해시값을 순차적으로 블록 체인화하기 위한 거래 검증(작업증명) 처리가 각 거래자 단말에서 분산 수행될 수 있다.
이러한 거래 검증 처리는 다양한 분산합의 알고리즘이 사용될 수 있으며, 대표적으로서, PoW(Proof-of-Work), PoS(Proof-of-Stake) 등이 사용될 수 있다. 작업증명(PoW, Proof-of-Work)은 작업을 위해 리소스(ex. 컴퓨팅 파워 등)를 투입했다는 것을 증명하여 부정을 억제하는 방법으로 예시되고, PoS(Proof-of-Stake)는 노드의 보유 지분에 비례하여 증명이 가능하도록, PoS는 블록을 생성할 수 있는 확률을 각 노드가 갖고 있는 토큰의 지분에 비례하도록 제어하는 프로세스를 제공하고 있다.
그리고, 본 발명의 실시 예에 따르면, 서비스 제공 장치(100)는 암호화폐의 자산 거래를 위한 블록 체인 네트워크에 참여하는 노드 단말이거나, 블록 체인 네트워크에 연결된 하나 이상의 노드 단말들로부터 데이터를 제공받아 처리된 서비스데이터를 사용자 단말(200)에 제공하는 장치일 수 있다.
이러한 서비스 제공 장치(100)는 사전 등록된 사용자 단말(200)의 사용자 식별 정보 및 암호화 키 정보에 기초하여, 상기 사용자 단말(200)에 대응하는 블록 체인 지갑 계정을 이용한 거래 프로세스를 처리하고, 처리 결과 정보를 사용자 단말(200)로 제공할 수 있다.
또한, 사용자 단말(200)은, 거래 정보 처리를 통해 블록 체인을 통해 수행되는 암호 화폐 거래 정보를 처리하여, 사용자 단말(200)의 지갑 계정에 대한 암호 화폐의 지급 또는 확인 서비스를 제공할 수 있다.
그리고, 사용자 단말(200)은 서비스 제공 장치(100)와 연동하여 암화 화폐 거래에 대응하는 거래 블록 정보를 모니터링할 수 있고, 모니터링된 정보에 기초하여 비정상 거래 정보를 식별할 수 있으며, 이에 대응하는 적절한 자산 탈취 방지 프로세스를 처리하는 서비스 프로세스를 실행하고, 실행 결과 정보를 사용자 단말(200)로 제공할 수도 있다.
따라서, 본 발명의 실시 예에 따른 서비스 제공 장치(100) 및 이와 연동되는 사용자 단말(200)은, 기본적으로 암호화 키의 분산 관리 서비스를 통해, 암호화 키의 분실에 따른 안전한 복원 프로세스를 제공할 수 있으며, 나아가 공격자의 해킹 시도에 의한 비정상 블록체인 거래 발생을 사전 감지할 뿐만 아니라, 합의에 의한 블록 승인이 완료되기 이전에 안전 자산 지갑 계정으로의 이전을 통해 신속한 탈취 방지를 처리하여 사용자에게 반환처리되도록 함으로써, 공격자의 탈취에 따른 거래블록이 발생되더라도 사후 조치를 통해 반환받을 수 있는 안전한 블록체인 기반의 자산 거래 서비스를 제공할 수 있다.
특히, 서비스 제공 장치(100)는, 사용자 단말(200)로부터 수신되는 암호화 키 분산 데이터에 기초한 분산 쉐어링 기반 암호키 관리 서비스를 수행하며, 관리 서비스에 따른 블록 체인 지갑 계정의 암호화 키 데이터의 분산 관리와, 사용자 단말(200)의 요청에 따른 복구 처리를 별도의 개인 정보 열람 없이도 수행할 수 있다.
이를 위해, 본 발명의 실시 예에 따른 사용자 단말(200)은, 서비스 제공 장치(100)로부터 관리되는 암호화 키 데이터의 분산 데이터를 획득하되, 획득된 분산 데이터에 대응하여, 사용자 단말(200)에 사전 입력된 사용자 개인화 정보의 해시 데이터를 이용한 마스터 암호화 키 복원 프로세스를 수행함으로써, 상기 암호화 키를 복원 처리할 수 있는 바 이에 대하여는 보다 구체적으로 후술하도록 한다.
여기서, 본 발명의 실시 예에 따른 서비스 제공 장치(100) 및 사용자 단말(200)의 서비스 기능들은 하나의 서비스 장치에서 구현될 수도 있으나, 서비스 에이전트와 같은 각각의 구성요소들 중 하나 이상의 기능 집합이 모듈화되어 소프트웨어 개발 키트(SDK)로도 구현될 수 있으며, 상기 SDK는 상기 SDK가 설치 가능한 다양한 소프트웨어 플랫폼상에 설치되어 각 블록체인 노드 단말의 기능에 의해 각 모듈화된 서비스 기능들이 구현될 수도 있다.
그리고, 본 발명의 실시 예에 따른 사용자 단말(200) 및 서비스 제공 장치(100)의 구성 및 동작들에 대하여는 이하의 도면들을 참조하여 보다 구체적으로 설명하도록 한다.
도 2는 본 발명의 실시 예에 따른 사용자 단말 및 서비스 제공 장치를 보다 구체적으로 설명한 블록도이다.
도 2를 참조하면, 본 발명의 실시 예에 따른 사용자 단말(200)은, 사용자 정보 등록부(210), 거래 정보 처리부(220), 모니터링 인터페이스부(230), 분산 쉐어링 기반 암호키 처리부(270)를 포함하며, 서비스 제공 장치(100)는, 분산 쉐어링 기반 암호키 처리부(270)와 연동된 암호화 키 관리 서비스 제공을 위한 암호화 키 분산 데이터 관리부(139)를 포함하며, 모니터링 정보의 식별, 저장 및 모니터링 인터페이스부(230)로의 정보 전송을 위한 식별부(131), 저장부(132), 전송부(133)를 포함할 수 있으며, 각 블록 체인 네트워크의 특성에 따라 필요한 정보를 수집하기 위한 하나 이상의 모니터링 정보 수집부(134, 135, 136, 137, 138)들을 선택적으로 포함할 수 있다.
사용자 정보 등록부(210)는, 본 발명의 실시 예에 따른 거래 서비스 및 암호화 키 관리 서비스 제공을 위한 사용자 단말(200)의 사용자 정보를 획득 및 저장 관리한다.
여기서, 사용자 정보는 사용자 단말(200)의 사용자 식별 정보, 노드 정보, 장치 고유 정보, 사용 블록 체인 네트워크 정보, 본인 인증 정보, 거래 인증 정보 및 암호화 키에 대응하는 사용자 개인화 정보 중 적어도 하나를 포함할 수 있다.
여기서, 사용자 식별 정보는 서비스 이용을 위해 서비스 제공 장치(100)에 사전 등록되는 식별 정보를 포함할 수 있으며, 사용자 식별 정보에 대응하여, 상기 장치 고유 정보, 사용 블록 체인 네트워크 정보, 본인 인증 정보, 거래 인증 정보및 암호화 키에 대응하는 사용자 개인화 정보 중 적어도 하나가 매칭되어 저장 및 관리될 수 있다.
장치 고유 정보는 사용자 단말(200)을 고유하게 식별할 수 있는 고유 값일 수 있으며, 예를 들어 단말 제조시 할당되는 UDID 값 등이 예시될 수 있다. 노드 정보는 블록 체인 네트워크상에서 사용자 노드를 식별하기 위한 노드 식별 정보를 포함할 수 있으며, 네트워크 주소 정보가 예시될 수 있다.
또한, 사용 블록 체인 네트워크 정보는 블록 체인의 유형 및 특성에 따른 적절한 거래 서비스 제공, 계정 및 블록 탈취 방지 및 알림 처리를 결정하는데 이용될 수 있다.
그리고, 본인 인증 정보 및 거래 인증 정보는, 분산 쉐어링 기반 암호키 처리 프로세스를 수행하기 위한 사용자 인증 정보(KYC, Know Your Customer)를 포함할 수 있으며, 우선 거래 블록의 생성 또는 반환 거래 블록의 생성에 이용될 수 있고, 사용자가 안전 자산 지갑 계정으로부터의 반환 키를 분실한 경우의 인증 수단으로도 이용될 수 있다.
그리고, 암호화 키에 대응하는 사용자 개인화 정보는, 사용자 단말(200)에서 해시(hash)화 처리되어 저장 및 관리될 수 있으며, 본 발명의 실시 예에 따른 분산 쉐어링 기반 암호키 처리부(270)의 암호화 키 분산 데이터 생성 및 복원 프로세스에 이용될 수 있다.
거래 정보 처리부(220)는, 사용자 정보 등록에 따라 등록된 암호 화폐 자산 거래를 처리할 수 있다. 여기서, 거래 정보 처리부는 우선 거래 정보를 설정할 수도 있으며, 우선 거래는 사용자 정보 등록에 따라 등록된 암호화폐 자산 거래를 처리하는 블록 체인 네트워크가, 중복 거래에 대응한 우선 거래 조건이 사전 설정되어 있는 경우에 동작할 수 있다.
예를 들어, 이더리움이나 ERC-20 등을 사용하는 토큰 트랜잭션을 지원하는 블록 체인 네트워크는 작업증명 합의 알고리즘이 완료되는 시점 이전에, 동일 지갑에 대응한 다른 트랜잭션을 우선 거래로서 승인 요청할 수 있다.
여기서, 우선 거래가 기존의 비정상 거래 블록에 대응하여 선처리되기 위한 조건으로는 블록 체인 네트워크별로 상이할 수 있으나, 통상적으로 더 높은 거래 수수료를 할당하는 방식이 예시될 수 있다. 이 경우, 우선 거래 정보에 따른 우선 거래 블록의 거래 수수료는 기존의 비정상 거래 블록의 수수료 대비 사전 설정된 일정 비율 이상 높은 것이 바람직하다.
이에 따라, 거래 정보 처리부(220)는, 사용자 정보 등록된 사용자 단말(200)의 지갑 계정으로부터, 탈취 방지를 위한 전부 또는 일부의 자산을 서비스 제공 장치(100)에서 생성한 안전 관리 자산 지갑 계정으로 이전하는, 우선 거래 블록을 생성할 수 있으며, 생성된 블록은 우선 거래 정보 설정부(120) 자체적으로 암호화되어 저장 및 관리되거나, 사용자 단말(200)로 제공되어 이후의 탈취 방지 프로세스 수행시 이용되도록 처리될 수 있다.
모니터링 인터페이스부(230)는, 블록 체인 네트워크상에 형성되는 승인 또는 합의 완료 대기 중인 블록 들의 거래 정보를 모니터링하며, 사전 설정된 사용자 정보에 따라 정상 사용자 정보(네트워크 주소, 단말 고유 식별 정보 등)와 일치되지 않는 단말 노드로부터의 비정상 거래 블록이 생성되는지 여부를 판단하고, 비정상 거래 블록이 생성되는 경우, 거래 정보 처리부(220)로 비정상 거래 블록 정보를 전달한다.
여기서, 거래 정보를 모니터링하는 블록 체인 네트워크상의 공유 데이터는 합의 프로세스를 수행하기 위한 블록 생성 대기 영역 상태의 블록들을 포함할 수 있으며, 블록 체인 네트워크마다 표현은 상이하나 승인 대기 영역 상태의 블록들을 나타내는 거래 풀(POOL), 멤풀(MEMPOOL), 펜딩 풀(PENDING)과 같은 명칭의 상태 정보로서 지시될 수 있다.
이러한 모니터링 인터페이스부(230)는 자체적으로 각 블록 체인 거래 네트워크의 승인 대기 영역 상태의 거래 블록 정보를 직접 모니터링하거나, 도 2에 도시된 바와 같이, 본 발명의 실시 예에 따른 서비스 제공 장치(100)에서 구동되는 모니터링 에이전트들을 통해 분산 모니터링을 수행할 수도 있다.
예를 들어, 블록 체인 네트워크는 암호화폐 거래가 가능한 비트 코인 네트워크, 이더리움 네트워크와 같이, 제1 블록 체인 네트워크, 제2 블록 체인 네트워크, ... 및 제N 블록 체인 네트워크와 같은 N개의 블록 체인 네트워크들로 구성될 수 있다. 또한, 각 모니터링 에이전트들은 하나 이상의 블록 체인별로 구비되거나, 하나의 모니터링 에이전트가 복수의 블록 체인 네트워크에 접속하여 블록 체인 네트워크별로 모니터링 정보를 수집하여 모니터링 인터페이스부(230)로 전달할 수 있다
보다 구체적으로, 모니터링 에이전트는, 모니터링 정보의 식별, 저장 및 모니터링 인터페이스부(230)로의 정보 전송을 위한 식별부(131), 저장부(132), 전송부(133)를 포함할 수 있으며, 각 블록 체인 네트워크의 특성에 따라 필요한 정보를 수집하기 위한 하나 이상의 모니터링 정보 수집부(134, 135, 136, 137, 138)들을 선택적으로 포함할 수 있다.
여기서, 하나 이상의 정보 수집부는 블록 체인 네트워크상의 승인 대기 영역 상태로 형성된 거래 블록 정보를 수집하는 블록 정보 수집부(134), 하나 이상의 노드로부터 발생된 거래 요청 정보를 수집하는 거래 정보 수집부(135), 거래를 요청한 각 노드의 식별 정보 및 관련 주소 정보를 수집하는 노드 정보 수집부(136), 네트워크 주소 정보를 수집하는 네트워크 정보 수집부(137), 블록 체인에 의해 저장되며 하나 이상의 자동화된 거래 관련 프로세스 수행을 제공하는 컨트랙트 정보를 수집하는 컨트랙트 정보 수집부(138) 중 적어도 하나를 포함할 수 있다.
식별부(131)는 모니터링 인터페이스부(130)로부터 수신되는 사용자 등록 정보에 기초하여, 상기 모니터링 정보 수집부(134, 135, 136, 137, 138)로부터 사용자 등록 정보에 대응하는 거래 블록 정보를 식별하고, 저장부(132)에 저장 처리하거나 전송부(133)를 통해 모니터링 인터페이스부(230)로 전송할 수 있다.
이에 따라 모니터링 인터페이스부(230)는, 모니터링 에이전트를 통해 식별된 거래 정보에 대응하여, 사전 설정된 비정상 거래 발생 여부를 모니터링할 수 있다.
한편, 암호화 키 분산 데이터 관리부(139)는, 블록 체인 네트워크별 지갑 계정의 암호화 키 분산 데이터를 사용자 단말(200)로부터 수신하여 저장 및 관리할 수 있으며, 지갑 계정의 암호화 키의 분실 또는 탈취 방지 처리된 안전 자산 지갑 계정에 대한 암호화 키 분산 데이터 요청을 수신하여, 사용자 단말(200)로 전달할 수 있다.
이에 따라, 분산 쉐어링 기반 암호키 처리부(270)는, 서비스 제공 장치(100)의 암호화 키 분산 데이터 관리부(139)에 대응하는 암호화 키 분산 데이터를 사전 등록할 수 있으며, 등록된 암호화 키 분산 데이터는 암호화 키 분산 데이터 관리부(139)에서 사용자 등록 정보와 매핑 처리되어, 물리적 또는 논리적으로 상호 격리된 복수의 클라우드 서버 기반으로 분할 저장 및 관리될 수 있다.
또한, 분산 쉐어링 기반 암호키 처리부(270)는, 서비스 제공 장치(100) 뿐만 아니라 별도의 키 관리 서비스를 제공하는 키 관리 서버(300)와 연동하여 보다 넓게 분산된 암호화 키 데이터를 이용한 암호화 키 분산 관리 및 복원 프로세스를 처리할 수 있는 바, 이에 대하여는 도 3을 참조하여 보다 구체적으로 후술하도록 한다.
도 3은 본 발명의 실시 예에 따른 분산 쉐어링 기반 암호키 처리부를 보다 구체적으로 도시한 블록도이다.
도 3을 참조하면, 본 발명의 실시 예에 따른 사용자 단말(200)은, 서비스 제공 장치(100) 및 별도의 키 관리 서버(300)를 이용한 분산 쉐어링 방식에 따른 암호화 키 데이터의 관리 및 복원 프로세스를 처리할 수 있다.
보다 구체적으로, 먼저 도 3을 참조하면 사용자 단말(200)은, 사용자의 암호 화폐지갑 계정이 생성되면, 그 지갑 계정의 이용을 위한 암호화 키 데이터를 분산 쉐어링할 수 있는 암호화 키 분산 쉐어링 데이터를 구성하고, 구성된 암호화 키의 분산 쉐어링 데이터를 각각 서비스 제공 장치(100) 및 키 관리 서버(300)에 공유 요청할 수 있다.
여기서, 상기 분산 쉐어링 방식은 알려진 샤미르(SHAMIR) 분산 비밀 공유 알고리즘이 예시될 수 있다. 예를 들어, 임계 값 이상의 참여자가 비밀 키를 결합한 경우, 복원용 암호 키 인증 수행이 가능한 암호 키가 형성될 수 있으며, 이는 사용자 단말(200)에서 비밀 키의 손상이나 분실이 있더라도, 사용자 인증 정보 및 사용자 개인화 정보에 따라 서비스 제공 장치(100) 또는 키 관리 서버(300)의 분산 암호화 키 데이터와의 결합에 따른 복원용 암호 키 생성을 가능하게 한다.
보다 구체적으로, 사용자 지갑 계정의 원본 암호화 키를 마스터 키라고 할 수 있으며, 마스터 키는 샤미르 알고리즘과 같은 분산 쉐어링 알고리즘에 따라, 복수의 시크릿 키 해시 정보로 분산 처리될 수 있다. 분산 쉐어링 기반 암호키 처리부(270)는, 상기 복수의 시크릿 키 해시 정보 중 일정 임계치 이상의 개수의 시크릿 키 해시 정보가 결합 가능하게 수집되는 경우 상기 분산 쉐어링 알고리즘에 기초하여 상기 마스터 키를 다시 복원할 수 있다.
이러한 방식으로 생성된 시크릿 키의 적어도 일부는 사용자 단말(200)에 내부적으로 저장 및 관리될 수 있고, 적어도 일부는 서비스 제공 장치(100)로 전달되어 암호화 키 분산 데이터 관리부(139)에서 저장 및 관리될 수 있으며, 적어도 일부는 키 관리 서버(300)로 전달되어 저장 및 관리될 수 있다.
이러한 암호화 키의 분산 처리를 위한 세부 시스템 구성을 위해, 도 3을 참조하면 본 발명의 실시 예에 따른 분산 쉐어링 기반 암호키 처리부(270)는, 사용자 정보 처리부(2710), 마스터 키 정보 관리부(2720), 내부 시크릿 키 데이터 관리부(2730), 관리 서버 시크릿 키 데이터 관리부(2740) 및 복원 로직 처리부(2750)를 포함한다.
사용자 정보 처리부(2710)는, 본 발명의 실시 예에 따른 마스터 키 관리 및 복원을 위한 사용자 정보를 저장 및 관리한다. 여기서, 사용자 정보는 KYC 정보와 같은 사용자 본인 인증 정보와, 마스터 키의 복원을 위한 사용자 개인화 정보를 포함할 수 있다.
마스터 키 정보 관리부(2720)는, 마스터 키를 저장 및 관리하며, 마스터 키의 분실 또는 손상 등을 대비하여, 상기 사용자 개인화 정보의 해시 처리된 데이터에 기초하여 2차 해시 처리된 마스터 키 해시 정보를 저장 및 관리할 수 있다.
또한, 상기 마스터 키 해시 정보는, 사용자 본인 인증 결과 정보와 매핑되어 서비스 제공 장치(100)로 전달될 수 있으며, 서비스 제공 장치(100)는, 사용자 인증 기반 마스터 키 해시 정보 관리 모듈(1391)을 통해, 상기 마스터 키 해시 정보를 저장 및 관리할 수 있고, 상기 매핑된 마스터 키 해시 정보를 다시 서비스 제공 장치 키로 암호화 처리하여 마스터 키 정보 관리부(2720)로 전달할 수 있다.
이에 따라, 마스터 키 정보 관리부(2720)는, 상기 사용자 개인화 정보에 기초하여 해시 처리된 마스터 키 해시 정보를, 상기 서비스 제공 장치(100)의 서비스 제공 장치 키로 암호화 처리된 상태로 저장 및 관리할 수 있다.
따라서, 마스터 키 정보 관리부(2720)는, 마스터 키 해시 정보가 필요한 경우 서비스 제공 장치(100)로 사용자 본인 인증 결과 정보를 전송하고, 이에 대응하는 서비스 제공 장치 키를 수신하여 상기 마스터 키 해시 정보를 획득할 수 있다.
여기서, 상기 마스터 키 해시 정보만으로는 마스터 키를 복원할 수 없으나, 마스터 키 해시 정보는 이를 이용한 키 관리 서버(300)로의 시크릿 키 해시 정보 요청 등에 이용될 수 있으며, 이는 사용자 개인화 정보의 해시 데이터에 의해 2차 처리된 해시 데이터이므로 정확한 사용자의 확인 용도로서 유용하게 이용될 수 있다.
한편, 내부 시크릿 키 데이터 관리부(2730)는, 마스터 키로부터 생성되는 복수의 분산 쉐어링 시크릿 키 해시 데이터 중 적어도 일부를 복수의 내부 시크릿 키로서 그룹핑하고, 복수의 내부 시크릿 키를 분산 저장 및 관리한다.
또한, 내부 시크릿 키 데이터 관리부(2730)는, 복수의 내부 시크릿 키 중 제1 시크릿 키를 사용자 단말(200) 내부에 저장 및 관리할 수 있다.
여기서, 내부 시크릿 키 데이터 관리부(2730)는, 상기 제1 시크릿 키를 사용자 개인화 정보의 해시 데이터에 기초하여 암호화 처리하여 저장 및 관리할 수 있다. 따라서, 상기 제1 시크릿 키의 복원을 위하여는 사용자 개인화 정보가 요구될 수 있다.
또한, 내부 시크릿 키 데이터 관리부(2730)는, 상기 제1 시크릿 키를 서비스 제공 장치(100)로 전달할 수 있으며, 서비스 제공 장치(100)는 서비스 제공 장치 키로서 상기 제1 시크릿 키를 암호화 처리하여 저장 및 관리할 수도 있다. 이 경우, 서비스 제공 장치(100)는 사용자 단말(200)로부터 수신되는 사용자 인증 결과 정보가 확인되는 경우 상기 서비스 제공 장치 키로 암호화된 제1 시크릿 키를 이메일 등의 사전 설정된 경로를 통해 사용자 단말(200)로 전송할 수 있다. 여기서, 개인 정보 및 보안 강화를 위해, 사전 설정도니 경로로 전송 처리된 제1 시크릿 키는 서비스 제공 장치(100)에서 삭제 처리될 수 있다.
한편, 내부 시크릿 키 데이터 관리부(2730)는, 하나 이상의 제2 시크릿 키들을 상기 제1 시크릿 키 및 서비스 제공 장치(100)의 서비스 제공 장치 키에 의해 순차적으로 이중 암호화된 데이터로서 저장 및 관리할 수 있다.
그리고, 상기 제2 시크릿 키는 서비스 제공 장치(100)로 전달되어 서비스 제공 장치(100)의 내부 시크릿 키 해시 정보 클라우드 분산 관리 모듈(1392)의해, 물리적 또는 논리적으로 상호 경리된 분산 클라우드 서버들에 분산 관리될 수 있다.
상기 순차적으로 이중 암호화됨에 따라, 예를 들어, 제3 시크릿 키는 상기 제2 시크릿 키 및 서비스 제공 장치(100)의 서비스 제공 장치 키에 의해 이중 암호화된 데이터로서 내부 시크릿 키 데이터 관리부(2730)에 저장 및 관리될 수 있으며, 상기 제3 시크릿 키는 서비스 제공 장치(100)로 전달되어 서비스 제공 장치(100)의 내부 시크릿 키 해시 정보 클라우드 분산 관리 모듈(1392)의해 물리적 또는 논리적으로 상호 경리된 분산 클라우드 서버들에 분산 관리될 수 있다.
이러한 분산 관리를 위해, 서비스 제공 장치(100)에서는 매핑 인덱스 모듈(1393)을 더 포함할 수 있다. 매핑 인덱스 모듈(1393)은, 마스터 키 해시 정보와, 사용자 개인화 정보의 해시 데이터와, 서버 정보 및 인덱스 정보에 매핑되는 하나 이상의 시크릿 키를 저장 및 관리할 수 있으며, 사용자의 인증 정보 확인에 따라 상기 하나 이상의 시크릿 키를 사용자 단말(200)로 제공할 수 있다.
여기서 상기 시크릿 키는 전술한 바와 같이, 제1 시크릿 키로부터 순차적으로 이중 암호화 처리된 일련의 제2 시크릿 키 및 상기 제3 시크릿 키들을 포함할 수 있으므로, 사용자 단말(200)에서는 서비스 제공 장치(100)의 서비스 제공 장치 키와, 제1 시크릿 키 및 사용자 개인화 정보의 해시 데이터가 있어야 상기 제2 시크릿 키 및 제3 시크릿 키들을 정상적으로 획득할 수 있다.
한편, 관리 서버 시크릿 키 데이터 관리부(2740)는, 한편, 내부 시크릿 키 데이터 관리부(2730)는, 마스터 키로부터 생성되는 복수의 분산 쉐어링 시크릿 키 해시 데이터 중 적어도 일부를 복수의 관리 서버 시크릿 키로서 그룹핑하고, 복수의 관리 서버 시크릿 키를 분산 저장 및 관리한다.
여기서, 관리 서버 시크릿 키는 마스터 키 해시 데이터와 매핑되어 키 관리 서버(300)로 전달될 수 있으며, 키 관리 서버(300)는 마스터 키 해시 정보 관리부(301) 및 서버 시크릿 키 정보 관리부(303)를 통해 관리 서버 시크릿 키들을 등록, 저장 및 관리할 수 있다.
그리고, 키 관리 서버(300)는 관리 서버 시크릿 키 등록에 따른 관리 서버 키를 사용자 단말(200)로 발급할 수 있으며, 관리 서버 시크릿 키 데이터 관리부(2740)는, 관리 서버 시크릿 키들을 상기 관리 서버 키를 이용하여 암호화 처리함으로써, 보안성을 향상시킬 수 있다.
예를 들어, 관리 서버 시크릿 키 데이터 관리부(2740)는, 상기 제1 내지 제3 시크릿 키와는 상이한 제4 내지 제6 시크릿 키들을 관리 서버 시크릿 키로서 저장 및 관리할 수 있는 바, 제4 내지 제6 시크릿 키들은 키 관리 서버(300)로 전달될 수 있고, 이에 대응하여 발급된 키 관리 서버 키를 이용하여 암호화 처리될 수 있다.
이에 따라, 복원 로직 처리부(2750)는, 마스터 키의 복원이 필요하다고 판단되는 경우, 사용자 정보 처리부(2710) 및 마스터 키 정보 관리부(2720)를 통해 획득되는 사용자 인증 정보, 사용자 개인화 해시 데이터 및 마스터 키 해시 데이터 중 적어도 하나를 이용하여, 서비스 제공 장치(100) 또는 키 관리 서버(300)로부터 하나 이상의 시크릿 키를 획득할 수 있으며, 상기 하나 이상의 시크릿 키가 임계치 이상 결합 가능한 상태로 획득된 경우, 분산 쉐어링 알고리즘에 따른 복원 프로세스를 수행하여, 상기 마스터 키를 복원할 수 있다.
이와 같은 처리에 따라, 사용자 단말(200), 서비스 제공 장치(100) 및 키 관리 서버(300)로 분산 쉐어링된 시크릿 키 데이터는 별도의 개인 정보 유출의 우려 없이도, 해시된 데이터 및 인증 결과 정보와, 각 장치 키들에 기초하여 안전하고 용이하게 복원될 수 있게 된다.
도 4는 본 발명의 실시 예에 따른 분산 쉐어링 알고리즘 기반 암호화 키 관리 방법을 설명하기 위한 흐름도이며, 도 5는 본 발명의 실시 예에 따라 분산된 암호화 키 데이터를 설명하기 위한 도면이다.
도 4 및 도 5를 참조하면, 먼저 본 발명의 실시 예에 따른 사용자 단말(200)은, 거래 정보 및 단말 정보를 설정된 블록 체인 네트워크를 통해 등록하고(S101), 상기 블록 체인 네트워크를 통해 암호 화폐 자산 거래를 처리하기 위한 지갑 계정을 등록한다(S103).
그리고, 사용자 단말(200)은, 지갑 계정에 대응하는 사용자 인증 정보를 생성하며(S107), 생성된 사용자 인증 정보에 대응하는 마스터 키 해시 정보를 서비스 제공 장치(100)로 등록한다(S107).
여기서, 도 5를 참조하면, 마스터 키 해시 정보는 사용자 개인화 정보 해시 데이터에 의해 제1 암호화 처리되어 서비스 제공 장치(100)에 등록될 수 있으며, 서비스 제공 장치(100)에서는 마스터 키 해시 정보 등록에 대응하는 키를 발급할 수 있다. 이에 따라, 사용자 단말(200)에서는 마스터 키 해시 정보를 서비스 제공 장치 키로 암호화하여 저장 및 관리할 수 있다.
예를 들어, 사용자 개인화 정보 해시 데이터는 사용자 단말(200)에서 사전 설정된 이메일 주소, 생일 정보, 이름 정보 중 적어도 하나를 포함하는 개인화 정보의 해시 데이터일 수 있다. 따라서, 마스터 키 해시 정보를 복원하기 위하여는 사용자 개인화 정보와 서비스 제공 장치 키가 요구될 수 있다.
그리고, 사용자 단말(200)은, 마스터 키의 분산 쉐어링 시크릿 키 처리에 따른 복수의 시크릿 키를 생성한다(S109).
여기서, 복수의 시크릿 키들은 마스터 키로부터 샤미르(SHAMIR) 방정식과 같은 분산 쉐어링 알고리즘에 의해 분산된 해시 데이터로 구성될 수 있다. 복수의 시크릿 키 각각은 마스터 키를 복원할 수 없으나, 사전 설정된 임계치 이상의 시크릿 키들이 결합된 경우 샤미르(SHAMIR) 알고리즘을 역으로 수행하는 것과 같은 분산 쉐어링 복원 프로세스에 의해 마스터 키가 복원될 수 있다.
그리고, 사용자 단말(200)은, 사용자 개인화 정보의 해시 데이터를 이용하여 제1 시크릿 키를 암호화 처리한다(S113).
여기서, 다시 도 5를 참조하면, 사용자 개인화 정보 해시 값으로 암호화 처리된 제1 시크릿 키는 분실되거나 손상될 경우를 대비하여 서비스 제공 장치(100)로 전달될 수 있다.
만약 분실 또는 손상에 의해 사용자 단말(200)에서 서비스 제공 장치(100)로 제1 시크릿 키가 요청된 경우, 서비스 제공 장치(100)는 사용자 인증에 따라 제1 시크릿 키를 서비스 제공 장치 키로 암호화하여, 이메일과 같은 경로를 통해 송부할 수 있으며, 송부된 제1 시크릿 키는 서비스 제공 장치(100)에서 삭제 처리될 수 있다.
이후, 사용자 단말(200)은 하나 이상의 다른 제2 그룹 시크릿 키들을 제1 시크릿 키 및 서비스 제공 장치 키에 기초한 체인 암호화 처리를 수행하고, 내부 시크릿 키로 저장 및 관리한다(S115).
도 5에 도시된 바와 같이, 제2 그룹 시크릿 키들은 제2 시크릿 키 해시, 제3 시크릿 키 해시 등으로 구성될 수 있으며, 각각 서비스 제공 장치 키와 결합하여 제1 시크릿 키로부터 순차적으로 체인 암호화 처리될 수 있다. 따라서 전술한 제1 시크릿 키 없이는 나머지 키들을 복구할 수 없으므로 그 보안성이 향상될 수 있다.
그리고, 서비스 제공 장치(100)에서는 사용자 인증 정보, 마스터 키 해시 정보 및 사용자 개인화 정보의 해시 정보 및 인덱스 정보를 상기 제2 그룹 시크릿 키들에 매핑 등록할 수 있으며, 등록된 제2 그룹 시크릿 키들은 클라우드 서버 기반으로 분산 저장 및 관리될 수 있다. 예를 들어, 도 5에 도시된 바와 같이, 제1 클라우드에는 제2 시크릿 키 해시가 제1 분산 클라우드 정보, 제2 분산 클라우드 정보 등으로 분산 저장될 수 있으며, 제2 클라우드 서버에는 제3 시크릿 키 해시가 제1 분산 클라우드 정보, 제2 분산 클라우드 정보 등으로 분산 저장될 수 있다.
그리고, 사용자 단말(200)은 하나 이상의 다른 제3 그룹 시크릿 키들을 키 관리 서버 키에 기초한 암호화 처리를 수행할 수 있으며, 암호화 처리된 제3 그룹 시크릿 키들은 키 관리 서버(300)에 저장 및 관리될 수 있고(S117), 사용자 단말(200)의 요청에 따라 사용자 단말(200)로 전달될 수 있다.
여기서, 도 5를 참조하면, 제3 그룹 시크릿 키들은 제4 시크릿 키 해시, 제5 시크릿 키 해시와 같은 데이터로 구성될 수 있으며, 키 관리 서버(300)는 사용자 인증 정보 및 마스터 키 해시 정보에 매핑하여 제3 그룹 시크릿 키들을 저장 및 관리할 수 있다.
도 6은 본 발명의 실시 예에 따른 마스터 키 복원 프로세스를 설명하기 위한 흐름도이다.
도 6을 참조하면, 본 발명의 실시 예에 따른 사용자 단말(200)은 마스터 키 복원 요청 입력에 대응하는 사용자 신원 인증 결과 정보를 획득한다(S201).
여기서, 신원 인증 결과 정보는 사전 설정된 KYC 기관으로부터 획득된 신원 조회 결과 정보를 포함할 수 있다.
그리고, 사용자 단말(200)은, 사용자 입력에 따른 사용자 개인화 정보 해시 데이터를 획득한다(S203).
이후, 사용자 단말(200)은, 신원 인증 결과 정보 또는 사용자 개인화 정보 해시 데이터 중 적어도 하나에 기초한 서비스 제공 장치 키를 획득한다(S205).
그리고, 사용자 단말(200)은, 획득된 서비스 제공 장치 키를 이용하여, 마스터 키 해시 정보를 복원한다(S207).
이후, 사용자 단말(200)은, 마스터 키 해시 정보 또는 상기 사용자 개인화 해시 데이터에 기초하여, 제1 시크릿 키를 획득한다(S209).
여기서, 제1 시크릿 키는 마스터 키 해시 정보 또는 상기 사용자 개인화 해시 데이터 인증에 기초하여, 서비스 제공 장치(100)로부터 이메일 등의 경로로 전달되거나, 내부 저장 관리된 제1 시크릿 키에 대응하는 사용자 개인화 해시 데이터를 이용한 복호화 처리를 수행하여 획득될 수 있다.
그리고, 사용자 단말(200)은, 상기 제1 시크릿 키를 이용하여, 내부 저장되거나, 서비스 제공 장치(100)로부터 전달된 제2 그룹 시크릿 키들을 순차적으로 복원 처리한다(S211).
또한, 사용자 단말(200)은 마스터 키 해시 정보 및 신원 인증 결과 정보에 기초하여, 키 관리 서버(300)로부터 제3 그룹 시크릿 키들을 획득한다(S213).
그리고, 사용자 단말(200)은 상기 1 시크릿 키, 상기 제2 그룹 시크릿 키 및 상기 제3 그룹 시크릿 중 적어도 하나를 이용한 분산 쉐어링 알고리즘을 처리하여 마스터 키를 복원한다(S215).
상술한 본 발명의 일실시예에 따른 방법들은 컴퓨터에서 실행되기 위한 프로그램으로 제작될 수 있다. 또한, 상기 프로그램은 컴퓨터가 읽을 수 있는 기록 매체에 저장될 수 있으며, 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있을 수 있다.
컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 상기 방법을 구현하기 위한 기능적인(function) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형 실시가 가능한 것은 물론이고, 이러한 변형 실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안 될 것이다.

Claims (17)

  1. 블록 체인 네트워크를 통한 거래 관리 서비스를 제공하는 사용자 단말의 동작 방법에 있어서,
    사용자 식별 정보에 기초하여, 상기 거래 관리 서비스에 이용되는 사용자 지갑 계정의 마스터 키를 등록하는 단계;
    상기 마스터 키에 대응하는 분산 쉐어링 시크릿 키 처리에 따라, 임계치 이상의 개수의 시크릿 키들을 이용하여 상기 마스터 키를 복원 가능한 복수의 시크릿 키들을 생성하는 단계;
    상기 복수의 시크릿 키 중 제1 시크릿 키를 상기 사용자 식별 정보에 대응하여 사전 설정된 사용자 개인화 정보를 이용하여 암호화하는 단계; 및
    상기 복수의 시크릿 키 중 제2 그룹의 시크릿 키들을 상기 제1 시크릿 키에 연결된 체인 암호화를 처리하여 관리하는 단계를 포함하는
    블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리를 처리하는 사용자 단말의 동작 방법.
  2. 제1항에 있어서,
    상기 마스터 키를 등록하는 단계는,
    상기 사용자 식별 정보에 대응하는 사용자 신원 인증 정보와 상기 마스터 키의 해시 데이터를 서비스 제공 장치에 등록하는 단계를 포함하는
    블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리를 처리하는 사용자 단말의 동작 방법.
  3. 제2항에 있어서,
    상기 제2 그룹의 시크릿 키들은 상기 서비스 제공 장치에서 발급된 서비스 제공 장치 키로 암호화 된 것을 특징으로 하는
    블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리를 처리하는 사용자 단말의 동작 방법.
  4. 제3항에 있어서,
    상기 제1 시크릿 키는 상기 서비스 제공 장치로 전달되며, 상기 사용자 신원 인증 정보 또는 상기 사용자 개인화 정보 중 적어도 하나에 기초하여, 사전 결정된 경로를 통해 상기 서비스 제공 장치로부터 상기 사용자 단말로 제공되는
    블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리를 처리하는 사용자 단말의 동작 방법.
  5. 제1항에 있어서,
    상기 사용자 개인화 정보는 사용자 입력에 따라 획득된 이메일 정보, 생일 정보 또는 이름 정보 중 적어도 하나를 해시 처리하여 획득되는 사용자 개인화 해시 데이터를 포함하는
    블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리를 처리하는 사용자 단말의 동작 방법.
  6. 제1항에 있어서,
    상기 복수의 시크릿 키 중 제3 그룹의 시크릿 키들을 상기 서비스 제공 장치와는 상이한 키 관리 서버 키를 이용하여 암호화 처리하는 단계를 더 포함하는
    블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리를 처리하는 사용자 단말의 동작 방법.
  7. 제6항에 있어서,
    마스터 키 복원 요청 입력 및 사용자 입력 정보에 따라, 상기 제1 시크릿 키, 상기 제2 그룹의 시크릿 키들 및 상기 제3 그룹의 시크릿 키들 중 적어도 하나를 복원하고, 상기 제1 시크릿 키, 상기 제2 그룹의 시크릿 키들 및 상기 제3 그룹의 시크릿 키들 중 적어도 하나를 이용한 분산 쉐어링 알고리즘 기반의 복원 처리를 수행하여 상기 마스터 키를 복원하는 단계를 더 포함하는
    블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리를 처리하는 사용자 단말의 동작 방법.
  8. 제1항에 있어서,
    상기 분산 쉐어링 알고리즘은 샤미르(SHAMIR) 시크릿 키 알고리즘인 것을 특징으로 하는
    블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리를 처리하는 사용자 단말의 동작 방법.
  9. 블록 체인 네트워크를 통한 거래 관리 서비스를 제공하는 사용자 단말 장치에 있어서,
    사용자 식별 정보에 기초하여, 상기 거래 관리 서비스에 이용되는 사용자 지갑 계정의 마스터 키를 등록하는 마스터 키 정보 관리부; 및
    상기 마스터 키에 대응하는 분산 쉐어링 시크릿 키 처리에 따라, 임계치 이상의 개수의 시크릿 키들을 이용하여 상기 마스터 키를 복원 가능한 복수의 시크릿 키들을 생성하고, 상기 복수의 시크릿 키 중 제1 시크릿 키를 상기 사용자 식별 정보에 대응하여 사전 설정된 사용자 개인화 정보를 이용하여 암호화하며, 상기 복수의 시크릿 키 중 제2 그룹의 시크릿 키들을 상기 제1 시크릿 키에 연결된 체인 암호화를 처리하여 관리하는 시크릿 키 데이터 관리부를 포함하는
    블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리를 처리하는 사용자 단말 장치.
  10. 제9항에 있어서,
    상기 마스터 키 정보 관리부는,
    상기 사용자 식별 정보에 대응하는 사용자 신원 인증 정보와 상기 마스터 키의 해시 데이터를 서비스 제공 장치에 등록하는
    블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리를 처리하는 사용자 단말 장치.
  11. 제10항에 있어서,
    상기 제2 그룹의 시크릿 키들은 상기 서비스 제공 장치에서 발급된 서비스 제공 장치 키로 암호화 된 것을 특징으로 하는
    블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리를 처리하는 사용자 단말 장치.
  12. 제11항에 있어서,
    상기 제1 시크릿 키는 상기 서비스 제공 장치로 전달되며, 상기 사용자 신원 인증 정보 또는 상기 사용자 개인화 정보 중 적어도 하나에 기초하여, 사전 결정된 경로를 통해 상기 서비스 제공 장치로부터 상기 사용자 단말로 제공되는
    블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리를 처리하는 사용자 단말 장치.
  13. 제9항에 있어서,
    상기 사용자 개인화 정보는 사용자 입력에 따라 획득된 이메일 정보, 생일 정보 또는 이름 정보 중 적어도 하나를 해시 처리하여 획득되는 사용자 개인화 해시 데이터를 포함하는
    블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리를 처리하는 사용자 단말 장치.
  14. 제9항에 있어서,
    상기 복수의 시크릿 키 중 제3 그룹의 시크릿 키들을 상기 서비스 제공 장치와는 상이한 키 관리 서버 키를 이용하여 암호화 처리하는 관리 서버 시크릿 키 데이터 관리부를 더 포함하는
    블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리를 처리하는 사용자 단말 장치.
  15. 제14항에 있어서,
    마스터 키 복원 요청 입력 및 사용자 입력 정보에 따라, 상기 제1 시크릿 키, 상기 제2 그룹의 시크릿 키들 및 상기 제3 그룹의 시크릿 키들 중 적어도 하나를 복원하고, 상기 제1 시크릿 키, 상기 제2 그룹의 시크릿 키들 및 상기 제3 그룹의 시크릿 키들 중 적어도 하나를 이용한 분산 쉐어링 알고리즘 기반의 복원 처리를 수행하여 상기 마스터 키를 복원하는 단계를 더 포함하는
    블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리를 처리하는 사용자 단말 장치.
  16. 제15항에 있어서,
    상기 분산 쉐어링 알고리즘은 샤미르(SHAMIR) 시크릿 키 알고리즘인 것을 특징으로 하는
    블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리를 처리하는 사용자 단말 장치.
  17. 제1항 내지 제8항 중 어느 한 항에 기재된 방법을 컴퓨터에서 실행시키기 위한 프로그램이 기록된 컴퓨터 판독 가능한 매체에 저장되는 컴퓨터 프로그램.
KR1020200141273A 2020-10-28 2020-10-28 블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리 방법 및 이를 처리하는 단말 장치 KR20220056574A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200141273A KR20220056574A (ko) 2020-10-28 2020-10-28 블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리 방법 및 이를 처리하는 단말 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200141273A KR20220056574A (ko) 2020-10-28 2020-10-28 블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리 방법 및 이를 처리하는 단말 장치

Publications (1)

Publication Number Publication Date
KR20220056574A true KR20220056574A (ko) 2022-05-06

Family

ID=81584597

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200141273A KR20220056574A (ko) 2020-10-28 2020-10-28 블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리 방법 및 이를 처리하는 단말 장치

Country Status (1)

Country Link
KR (1) KR20220056574A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115051853A (zh) * 2022-06-10 2022-09-13 广东技术师范大学 数字藏品平台系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115051853A (zh) * 2022-06-10 2022-09-13 广东技术师范大学 数字藏品平台系统

Similar Documents

Publication Publication Date Title
US11030681B2 (en) Intermediate blockchain system for managing transactions
US20210152363A1 (en) Blockchain recording methods and apparatuses, and computer devices
CN110417775B (zh) 基于区块链的虚拟物品交易方法、装置及服务器
US20220092586A1 (en) Off network identity tracking in anonymous cryptocurrency exchange networks
US11425108B2 (en) Blockchain-based service data encryption methods and apparatuses
WO2021179661A1 (zh) 跨区块链的数据互存方法、装置、设备及存储介质
JP6524347B2 (ja) 情報共有システム
EP4344130A2 (en) Systems and methods for addressing security-related vulnerabilities arising in relation to off-blockchain channels in the event of failures in a network
US20190122186A1 (en) Hierarchical Network System, And Node And Program Used In Same
EP3455999B1 (en) Computer-implemented system and method
TW202016818A (zh) 區塊鏈的交易方法和裝置
JP6756041B2 (ja) 情報保護用のシステム及び方法
CN110462621A (zh) 在区块链网络中管理敏感数据元素
US10693646B2 (en) Event execution using a blockchain approach
US20200134592A1 (en) Systems and methods for vehicle sharing on peer-to-peer networks
CN111476572A (zh) 基于区块链的数据处理方法、装置、存储介质及设备
US11233638B1 (en) Secured electronic token register system
CN111260488A (zh) 一种数据处理方法、装置及可读存储介质
CN111316597A (zh) 基于智能合约和区块链的互助网络
KR102406388B1 (ko) 블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리 방법 및 이를 처리하는 단말 장치
KR20210109767A (ko) 블록 체인 모니터링 기반 자산 탈취 방지 서비스 제공 방법 및 그 장치
KR20220056574A (ko) 블록 체인 거래를 위한 분산 쉐어링 알고리즘 기반 암호화 키 관리 방법 및 이를 처리하는 단말 장치
CN108780501B (zh) 通过分散验证网络单独管理与消息链相关的消息验证的方法
KR20220148397A (ko) 비-랜덤 합의체 증명 기반 블록 체인 네트워크를 이용하여 구축되는 뉴럴 합의체 증명 기반 블록 체인 네트워크 플랫폼 시스템
CN111294210B (zh) 一种医疗信息的管理方法及相关设备