KR20230037419A - 디지털 자산의 잔고 증명 방법 및 시스템 - Google Patents

디지털 자산의 잔고 증명 방법 및 시스템 Download PDF

Info

Publication number
KR20230037419A
KR20230037419A KR1020210159873A KR20210159873A KR20230037419A KR 20230037419 A KR20230037419 A KR 20230037419A KR 1020210159873 A KR1020210159873 A KR 1020210159873A KR 20210159873 A KR20210159873 A KR 20210159873A KR 20230037419 A KR20230037419 A KR 20230037419A
Authority
KR
South Korea
Prior art keywords
user
key
balance
issuing server
digital
Prior art date
Application number
KR1020210159873A
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 KR20230037419A publication Critical patent/KR20230037419A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3823Payment protocols; Details thereof insuring higher security of transaction combining multiple encryption tools for a transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • G06Q20/3678Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes e-cash details, e.g. blinded, divisible or detecting double spending
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4014Identity check for transactions
    • 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/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/3226Cryptographic 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 a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Abstract

블록체인 네트워크에서 유통되는 디지털 자산을 소유한 사용자가 보유한 잔고를 증명하기 위한 잔고 증명 방법 및 시스템이 제공된다. 디지털 자산의 잔고 증명 방법은, 디지털 자산의 거래를 위한 암호화키를 발급하는 암호화키 발급 서버에서, 상기 암호화키 발급 서버에 가입한 사용자의 요청에 응답하여, 개인키의 분실시 분실된 개인키를 복원하는데 사용되는 시드키를 생성하는 단계; 시드키를 바탕으로 사용자에게 고유한 개인키 및 공개키를 생성하는 단계; 시드키에 암호화 알고리즘을 적용하여 비밀키를 생성하여 사용자에게 제공하고, 생성된 비밀키에 단방향 암호화 알고리즘을 적용하여 은닉 비밀키를 생성하여 저장하는 단계; 및 디지털 자산의 출금이 요청되면, 사용자를 인증하고, 상기 시드키를 유추하여 사용자의 개인키를 복원하며, 공개키 및 복원된 개인키를 사용하여 상기 블록체인 네트워크에서 디지털 자산의 출금을 수행하는 단계를 포함한다. 특히, 이러한 방법은 사용자가 입력한 비밀키를 인증하고, 공개키 및 복원된 개인키를 사용하여 상기 블록체인 네트워크에서 사용자의 디지털 자산의 잔고를 확인하여 사용자에게 제공하는 잔고 증명 단계를 더 포함한다. 본 발명에 의하여, 개인키의 유출로 인한 피해를 근본적으로 방지할 수 있고, 디지털 자산이 담보로서 제공될 수 있게 할 수 있다.

Description

디지털 자산의 잔고 증명 방법 및 시스템{Method and system for certifying balance of digital asset}
본 발명은 블록체인 기술에 관한 것으로서, 특히 블록체인 네트워크에서 유통되는 디지털 자산의 잔고를 증명하고, 증명된 디지털 자산을 담보로 제공할 수 있게 하는 디지털 자산의 잔고 증명 방법 및 시스템에 관한 것이다.
블록체인(blockchain)은 관리 대상 데이터를 '블록'이라고 하는 소규모 데이터들이 P2P 방식을 기반으로 생성된 체인 형태의 연결고리 기반 분산 데이터 저장환경에 저장되어, 누구라도 임의로 수정할 수 없는 분산 컴퓨팅 기술 기반의 데이터 위변조 방지 기술이다. 이는 근본적으로 분산 데이터 저장기술의 한 형태로, 지속적으로 변경되는 데이터를 모든 참여 노드에 기록한 변경 리스트로서 분산 노드의 운영자에 의한 임의 조작이 불가능하도록 고안되었다.
블록체인 기술은 비트코인을 비롯한 대부분의 암호화폐 거래에 사용되고 있으며, 암호화폐의 거래 과정은 탈중앙화된 전자장부에 쓰이기 때문에 블록체인 소프트웨어를 실행하는 많은 사용자들의 각 컴퓨터에서 서버가 운영되어 중앙 은행이 없이 개인 간의 자유로운 거래가 가능할 수 있다. 블록체인 기술을 이용하여 암호화폐를 기초로 상대방에게 송금할 수 있는 기술을 통해 블록체인 네트워크로의 참여를 유도할 수 있다.
블록 체인 기술은 다음과 같은 장점을 가진다.
우선, 블록체인은 암호화를 통해서 혹시라도 조금의 사기성이 보이거나 알맞지 않은 정보로 돈을 받으려는 사람들을 막아 줄 수 있다는 장점이 있다. 또한, 블록체인 기술을 활용하면 정부의 관여가 없이 탈중앙화된 거래 생태계가 조성될 수 있다. 즉, 블록체인 기술을 사용하면 세금 추징이나 계좌 추적의 위험이 없이 정당한 금융 거래를 수행할 수 있어서 사용자들의 비밀이 보장될 수 있다.
대한민국 등록특허 제10-1673073(2016.10.31)호는 블록체인 구조를 사용하는 암호화화폐 거래방법에 관한 것으로, 비트코인 거래소 서버에 거래소 일반 지갑 외에 거래소 웹 지갑을 서버에 추가로 구축시키고 회원이 거래소 서버에 내장된 거래소 일반 지갑 주소에서 거래소 웹 지갑 주소로 비트코인을 저장 사용하여 보안성을 향상시키는 기술을 개시한다.
특히, 블록체인 기술의 다양한 활용예 중 하나인 암호 화폐는 2018년 4월 기준으로 이미 367조원의 시가총액과 900백만 명의 암호 화폐 거래자 수를 탄생시킬 만큼 시장으로서 자리매김되었고, 암호 화폐의 종류(발행사)역시 2018년 4월 기준으로 1,594개에 달했으며, 그 이후에도 그 규모가 지속적으로 증가하고 있다. 현재 암호화폐 거래소는 전 세계에 만 개가 넘는 것으로 파악되고 있으며 상위 10개의 대형 거래소에서 전체 거래총액의 40%가량이 거래되고 있는 것으로 파악된다.
그러나, 이와 같은 막대한 거래 총액과 거래량에 비해 거래소의 보안 수준은 미약하다. 이와 같이 거래소의 미약한 보안 수준은 여러 문제를 야기한다. 즉, 블록체인 기술 자체는 해킹이 불가능하여 안전하지만, 블록체인에서 유통되는 암호 화폐의 거래는 거래소를 통해서 이루어지는데, 이러한 거래소의 보안 수준이 문제가 되는 것이다. 예를 들어, 마운트곡스(2014년 2월 4,585억원), 코인체크(2018년 1월 5,800억원), 유빗(2017년 12월 170억원)등 충격적인 액수의 암호 화폐가 이용자의 계정(월렛)또는 거래소에서 편취된 사례가 있다. 이러한 피해에 대한 대책은 미흡한 편이며 이로 인해 해킹에 대한 피해는 계속될 것으로 예측되는 상황이다. 정부는 이 사태에 우려를 표명하고 거래소에 70%이상을 인터넷(또는 내부망)이 연결되지 않는 OFF-LINE 서버 또는 월렛(콜드 스토리지, 콜드월렛)에 저장하라는 권고를 한바 있으며 향후 이는 의무화될 것으로 예측된다. 그러나, 현재 상용화된 암호화폐 오프라인 저장소는 기기 자체의 승인으로만 P2P거래를 가능하도록 인증하며, 추가적인 인증 수단이 없어 기기 분실 시 기기를 수취한 타인이 거래를 진행할 수 있는 치명적인 단점이 존재한다.
또한, 암호 화폐를 거래하기 위해서 사용자는 개인키를 알고 있어야 하는데, 개인키를 분실하거나 잊어버릴 경우 디지털 자산에 접근할 수 없는 문제가 발생하기도 한다. 전일 1조 원어치 비트코인을 보유한 비트코인 억만장자가 코스타리카 해변에서 익사한 사건이 알려지면서 비트코인이 공중에 뜰 가능성이 커지자 비트코인 소유자가 돌연사할 경우, 비트코인의 행방이 어떻게 되느냐에 대한 관심이 고조되고 있다.
예를 들어, 2019년 캐나다의 최대 암호 화폐 거래소를 설립한 제럴드 코튼의 돌연사 이후 개인키를 알 수 없어 약 1억3900만달러의 비트코인의 유통이 불가능하게 되었으며, 2013년 영국의 제임스 하웰스가 분실한 노트북 하드 드라이브에는 약 2억9900달러의 가치를 지닌 7900개의 비트코인이 들어 있었던 것으로 알려지고 있다. 최근에는, 2012년에 미국에서 'MP엑스'라는 암호화폐 거래소를 설립한 미르시아 포페스쿠(41)가 최근에 익사하면서, 그가 보유한 약 10억 달러의 비트코인이 거래 불가능 상태가 되기도 했다. 이렇게 거래될 수 없이 망실된 비트코인의 가치는 현재 34조원에 달하는 것으로 추정된다. 물론, 개인키가 다른 사람에게 노출된 경우의 피해도 많이 발생된다.
그러므로, 개인키가 다른 사람에게 노출되거나 해킹을 통해 절취되는 것을 근본적으로 방지하기 위한 기술이 절실히 요구된다.
또한, 블록체인에 보관된 디지털 자산의 잔고를 증명함으로서, 디지털 자산이 담보로서 제공될 수 있도록 하고, 담보로 제공된 디지털 자산이 담보 기간 내에 출금되는 것을 방지함으로써 해당 담보 기능을 보장할 수 있는 기술이 절실히 요구된다.
대한민국 등록특허 제10-1673073(2016.10.31)호
본 발명의 목적은 디지털 자산의 거래에 필요한 공개키와 개인키를 사용자에게 발급할 때, 개인키를 저장하지 않음으로써 개인키의 유출로 인한 피해를 근본적으로 방지할 수 있는 기술을 제공하는 것이다.
또한, 블록체인에 보관된 디지털 자산의 잔고를 제 3 자에게 증명함으로서, 디지털 자산이 담보로서 제공될 수 있도록 하고, 담보로 제공된 디지털 자산이 담보 기간 내에 출금되는 것을 방지함으로써 디지털 자산의 담보 기능을 보장할 수 있는 디지털 자산의 잔고 증명 방법을 제공하는 것이다.
상기와 같은 목적들을 달성하기 위한 본 발명의 일면은 블록체인 네트워크에서 유통되는 디지털 자산을 소유한 사용자가 보유한 잔고를 증명하기 위한 잔고 증명 서비스를 제공하는 방법에 관한 것이다. 본 발명에 의한 디지털 자산의 잔고 증명 방법은, 디지털 자산의 거래를 위한 암호화키를 발급하는 암호화키 발급 서버에서, 상기 암호화키 발급 서버에 가입한 사용자의 요청에 응답하여, 개인키(private key)의 분실시 분실된 개인키를 복원하는데 사용되는 시드키(seed key)를 생성하는 단계; 상기 암호화키 발급 서버에서, 상기 시드키를 바탕으로 사용자에게 고유한 개인키 및 상기 블록체인 네트워크에서 상기 디지털 자산을 저장하기 위한 사용자의 계좌를 나타내는 공개키(public key)를 생성하는 단계; 상기 암호화키 발급 서버에서, 상기 시드키에 암호화 알고리즘을 적용하여 비밀키(secret key)를 생성하여 상기 공개키와 함께 사용자에게 제공하고, 생성된 비밀키에 단방향 암호화 알고리즘을 적용하여 은닉 비밀키(concealed secret key)를 생성하여 저장하는 단계; 및 디지털 자산의 출금이 요청되면, 상기 암호화키 발급 서버에서, 사용자가 입력한 비밀키를 암호화하여 상기 은닉 비밀키와 비교하여 인증하며, 입력된 비밀키가 인증되면 상기 시드키를 유추하여 사용자의 개인키를 복원하며, 공개키 및 복원된 개인키를 사용하여 상기 블록체인 네트워크에서 디지털 자산의 출금을 수행하는 단계를 포함한다. 특히, 방법은 사용자가 상기 디지털 자산의 잔고 증명을 요청할 경우, 상기 암호화키 발급 서버에서, 사용자가 입력한 비밀키를 인증하고, 인증된 사용자의 공개키를 사용하여 상기 블록체인 네트워크에서 사용자의 디지털 자산의 잔고를 확인하여 사용자에게 제공하는 잔고 증명 단계를 더 포함한다. 또한, 방법은, 인증 기관에서 발급한 신원 증명서를 통해 상기 암호화키 발급 서버가 소유자의 신원 정보를 인증하는 KYC(know your customer) 인증 단계를 포함할 수 있고, 상기 잔고 증명 단계는 상기 사용자의 요청에 응답하여, 상기 암호화키 발급 서버가 신원 정보가 인증된 사용자의 디지털 자산의 잔고와 사용자의 신원 정보를 포함하는 디지털 잔고 증명서를 생성하여 사용자에게 제공하는 것을 포함한다. 특히, 상기 디지털 잔고 증명서는 제 3 자에게 사용자의 디지털 자산을 증명하는 담보로서 제공될 수 있고, 상기 방법은 상기 디지털 잔고 증명서가 제 3 자에게 담보로서 제공될 경우, 상기 암호화키 발급 서버가 담보로서 제공된 디지털 자산의 담보 가치 및 담보 조건에 기반하여 상기 디지털 자산이 상기 사용자의 계좌로부터 다른 계좌로 송금되는 것을 금지하여, 상기 담보 조건에 따라서 디지털 자산의 담보 가치를 보장하는 단계를 더 포함한다. 바람직하게는, 상기 시드키는 사용자의 IP 주소, 사용자가 상기 암호화키 발급 서버에 접속하는데 사용한 디바이스의 MAC 주소, 브라우저 버전, 접속 시간, 이메일 주소 중 적어도 하나를 사용하여 생성되고, 상기 신원 증명서는 사용자의 주민 번호, 사진, 생체 정보, 휴대 전화 정보 중 적어도 하나를 사용하여 발급된다. 더 나아가, 상기 KYC 인증 단계는 상기 디지털 자산의 거래 시에 원타임 패스워드(one time password; OTP)를 사용하여 보안 수준을 높이도록 구성되고, 상기 디지털 자산의 출금을 수행하는 단계는, 상기 사용자가 디지털 자산의 출금을 요청하면서 입력한 비밀키를 단방향 암호화하여 암호화된 비밀키를 생성하는 것, 생성된 암호화된 비밀키를 저장된 은닉 비밀키와 비교하고, 암호화된 비밀키가 은닉 비밀키와 일치하면 시드키를 유추하여 사용자의 개인키를 복원하는 것, 디지털 자산의 출금 목적지의 공개키를 포함하는 출금 스크립트를 생성하고, 생성된 출금 스크립트를 사용자의 복원된 개인키로 서명하며, 서명된 출금 스크립트를 암호화하여 블록체인 네트워크로 전송하는 것, 및 상기 블록체인 네트워크로부터 출금 결과를 수신하여 사용자에게 제공하는 것을 포함한다.
상기와 같은 목적들을 달성하기 위한 본 발명의 다른 면은 블록체인 네트워크에서 유통되는 디지털 자산을 소유한 사용자가 보유한 잔고를 증명하기 위한 잔고 증명 시스템에 관한 것이다. 본 발명에 의한 디지털 자산의 잔고 증명 시스템은 디지털 자산의 거래를 위한 암호화키를 발급하는 암호화키 발급 서버를 포함하고, 상기 암호화키 발급 서버는, 상기 암호화키 발급 서버에 가입한 사용자의 요청에 응답하여, 개인키(private key)의 분실시 분실된 개인키를 복원하는데 사용되는 시드키(seed key)를 생성하는 동작; 상기 시드키를 바탕으로 사용자에게 고유한 개인키 및 상기 블록체인 네트워크에서 상기 디지털 자산을 저장하기 위한 사용자의 계좌를 나타내는 공개키(public key)를 생성하는 동작; 상기 시드키에 암호화 알고리즘을 적용하여 비밀키(secret key)를 생성하여 상기 공개키와 함께 사용자에게 제공하고, 생성된 비밀키에 단방향 암호화 알고리즘을 적용하여 은닉 비밀키(concealed secret key)를 생성하여 저장하는 동작; 및 디지털 자산의 출금이 요청되면, 사용자가 입력한 비밀키를 암호화하여 상기 은닉 비밀키와 비교하여 인증하며, 입력된 비밀키가 인증되면 상기 시드키를 유추하여 사용자의 개인키를 복원하며, 공개키 및 복원된 개인키를 사용하여 상기 블록체인 네트워크에서 디지털 자산의 출금을 수행하는 동작을 수행하도록 구성된다. 특히, 상기 암호화키 발급 서버는 사용자가 상기 디지털 자산의 잔고 증명을 요청할 경우, 사용자가 입력한 비밀키를 인증하고, 인증된 사용자의 공개키를 사용하여 상기 블록체인 네트워크에서 사용자의 디지털 자산의 잔고를 확인하여 사용자에게 제공하는 잔고 증명 동작을 더 수행하도록 구성된다. 또한, 상기 암호화키 발급 서버는, 인증 기관에서 발급한 신원 증명서를 통해 상기 암호화키 발급 서버가 소유자의 신원 정보를 인증하는 KYC(know your customer) 인증 동작을 더 수행하도록 구성되고, 상기 잔고 증명 동작은 상기 사용자의 요청에 응답하여, 상기 암호화키 발급 서버가 신원 정보가 인증된 사용자의 디지털 자산의 잔고와 사용자의 신원 정보를 포함하는 디지털 잔고 증명서를 생성하여 사용자에게 제공한다. 더 나아가, 상기 디지털 잔고 증명서는 제 3 자에게 사용자의 디지털 자산을 증명하는 담보로서 제공될 수 있고, 상기 암호화키 발급 서버는, 상기 디지털 잔고 증명서가 제 3 자에게 담보로서 제공될 경우, 담보로서 제공된 디지털 자산의 담보 가치 및 담보 조건에 기반하여 상기 디지털 자산이 상기 사용자의 계좌로부터 다른 계좌로 송금되는 것을 금지하여, 상기 담보 조건에 따라서 디지털 자산의 담보 가치를 보장하는 동작을 더 수행한다. 또한, 상기 시드키는 사용자의 IP 주소, 사용자가 상기 암호화키 발급 서버에 접속하는데 사용한 디바이스의 MAC 주소, 브라우저 버전, 접속 시간, 이메일 주소 중 적어도 하나를 사용하여 생성되고, 상기 신원 증명서는 사용자의 주민 번호, 사진, 생체 정보, 휴대 전화 정보 중 적어도 하나를 사용하여 발급될 수 있다. 뿐만 아니라, 상기 암호화키 발급 서버는, 상기 KYC 인증 동작을 수행할 때 상기 디지털 자산의 거래 시에 원타임 패스워드(one time password; OTP)를 사용하여 보안 수준을 높이도록 구성된다. 특히, 상기 디지털 자산의 출금을 수행하는 동작은, 상기 사용자가 디지털 자산의 출금을 요청하면서 입력한 비밀키를 단방향 암호화하여 암호화된 비밀키를 생성하는 것, 생성된 암호화된 비밀키를 저장된 은닉 비밀키와 비교하고, 암호화된 비밀키가 은닉 비밀키와 일치하면 시드키를 유추하여 사용자의 개인키를 복원하는 것, 디지털 자산의 출금 목적지의 공개키를 포함하는 출금 스크립트를 생성하고, 생성된 출금 스크립트를 사용자의 복원된 개인키로 서명하며, 서명된 출금 스크립트를 암호화하여 블록체인 네트워크로 전송하는 것, 및 상기 블록체인 네트워크로부터 출금 결과를 수신하여 사용자에게 제공하는 것을 포함한다.
본 발명에 의하여, 디지털 자산의 거래에 필요한 공개키와 개인키를 사용자에게 발급할 때, 개인키를 저장하지 않음으로써 개인키의 유출로 인한 피해를 근본적으로 방지할 수 있다.
또한, 블록체인에 보관된 디지털 자산의 잔고를 제 3 자에게 증명하고, 담보가 설정된 경우 담보 기간 동안에 디지털 자산의 처분을 금지함으로써 디지털 자산이 담보로서 제공될 수 있게 할 수 있다.
도 1은 본 발명의 일면에 의한 암호화키 발급 서버를 활용한 디지털 자산의 잔고 증명 방법을 개략적으로 나타내는 흐름도이다.
도 2a는 종래 기술에 의해서 개인이 디지털 자산을 보관하는 과정을 설명하는 개략도이고, 도 2b는 본 발명에 의한 암호화키 발급 서버를 활용한 디지털 자산의 잔고 증명 방법이 수행되는 시나리오를 개략적으로 나타내는 도면이다.
도 3은 본 발명에서 활용되는 암호화키 발급 서버에 사용자가 가입할 때 암호화키 발급 서버에서 이루어지는 동작들을 설명하는 동작 타이밍도이다.
도 4는 본 발명에서 활용되는 암호화키 발급 서버에 사용자가 가입하여 생성된 계좌에 디지털 자산이 입금되는 과정을 설명하는 동작 타이밍도이다.
도 5는 본 발명에서 활용되는 암호화키 발급 서버에 가입한 사용자의 계좌로부터 디지털 자산을 출금하는 과정을 설명하는 동작 타이밍도이다.
도 6은 본 발명에 따른 디지털 자산의 잔고 증명 방법에서 잔고를 증명하는 과정을 설명하는 동작 타이밍도이다.
도 7은 도 6에 의해 잔고가 증명된 자산이 담보로 제공될 경우의 담보 가치를 보장하기 거래 중지 과정을 설명하는 동작 타이밍도이다.
도 8은 본 발명에 의한 암호화키 발급 서버를 활용한 디지털 자산의 잔고 증명 방법에서 암호화키 발급 서버에 계좌를 생성하고 인출하는 과정을 상세히 나타내는 흐름도이다.
도 9는 본 발명의 다른 면에 의한 암호화키 발급 서버를 활용한 디지털 자산의 잔고 증명 시스템을 개략적으로 나타내는 블록도이다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로서, 본 발명을 상세히 설명한다. 그러나, 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며, 설명하는 실시예에 한정되는 것이 아니다. 그리고, 본 발명을 명확하게 설명하기 위하여 설명과 관계없는 부분은 생략되며, 도면의 동일한 참조부호는 동일한 부재임을 나타낸다.
도 1은 본 발명의 일면에 의한 암호화키 발급 서버를 활용한 디지털 자산의 잔고 증명 방법을 개략적으로 나타내는 흐름도이다.
도 1을 참조하면, 암호화키 발급 서버에서 제공하는 잔고 증명 서비스에 가입하려는 사용자의 요청에 응답하여, 사용자의 개인키(private key)의 분실시 분실된 개인키를 복원하는데 사용되는 시드키(seed key)를 생성한다(S110). 본 명세서에서 시드키란 연상 코드(Mnemonic code) 단어를 사용하여 생성될 수 있다. 연상 코드 단어란 순서대로 나열된 영어 단어에서 시드(Seed)를 만드는 방법으로서, 연상 코드를 사용하면 가상화폐 지갑을 쉽게 복원할 수 있다. 연상 코드로부터 시드 값과 패스 구문이 생성된다.
그러면, 시드키를 바탕으로 사용자의 개인키와 공개키가 생성된다(S130). 공개키는 블록체인 네트워크에서 사용자의 계좌를 가리키는 고유한 주소로서 사용될 수 있고, 레거시 은행에서 활용되는 계좌번호와 유사한 개념이다. 반면에, 개인키는 사용자가 자신의 공개키에 저장된 디지털 자산을 인출하기 위하여 필요한 암호화키로서, 외부에 절대로 누출되어서는 안되는 고유한 정보이다.
그러면, 시드키에 암호화 알고리즘을 적용하여 비밀키(secret key)를 생성하여 상기 공개키와 함께 사용자에게 제공한다(S150). 본 발명에서 암호화키 발급 서버가 개인키가 아니라 비밀키를 사용자에게 제공하는 이유는 개인키가 어떠한 경우에도 외부에 누출되지 않게 하기 위한 것이다. 더 나아가, 본 발명에 의한 암호화키 발급 서버에서는 사용자에게 제공된 개인키도, 개인키를 암호화한 비밀키도 저장하지 않는다. 오히려, 암호화키 발급 서버에서는 암호화된 비밀키에 단방향 암호화 알고리즘을 다시 한 번 적용하여 생성된 은닉 비밀키(concealed secret key)를 저장한다(S150).
암호화키 발급 서버에서 사용자의 개인키도, 비밀키도 저장하지 않기 때문에 암호화키 발급 서버가 해킹되는 경우에도 사용자의 개인키는 유출되지 않고 안전하게 보호될 수 있다. 즉, 암호화키 발급 서버의 해킹에 성공한 해커가 얻을 수 있는 것은 개인키도 비밀키도 아닌 은닉 비밀키인데, 은닉 비밀키는 단방향 암호화 알고리즘에 의해 암호화된 것이므로 은닉 비밀키로부터 비밀키를 유추해내는 것은 불가능하다. 심지어, 암호화키 발급 서버의 운영자 자신도 저장된 은닉 비밀키로부터 사용자의 비밀키 또는 개인키를 유추해낼 수 없다. 그러므로, 사용자의 개인키를 보호하기 위한 최상의 보안 수준이 구현될 수 있다.
가입된 사용자가 자신의 계좌에서 출금을 요청할 경우, 사용자는 자신의 비밀키를 입력하면서 출금을 요청하게 된다. 그러면, 암호화키 발급 서버는 사용자가 입력한 비밀키에 단방향 암호화 알고리즘을 적용하여 암호화된 비밀키를 생성한다. 그리고, 생성된 암호화된 비밀키를 저장되었던 은닉 비밀키와 비교하여 사용자가 유효한 비밀키를 입력하였는지를 확인하게 된다. 이렇게 비밀키가 인증되면 암호화키 발급 서버는 출금 스크립트를 생성하여 블록체인 네트워크로 전송함으로써 출금 동작을 수행한다(S170). 즉, 암호화키 발급 서버는 가입 과정에서 사용자에게 공개키와 개인키를 생성하여 제공하는 동작과 함께, 출금 과정에서 개인의 요청에 따라 출금 스크립트를 작성하여 블록체인 네트워크로 전송하는 동작을 수행한다.
사용자가 디지털 자산의 잔고 증명을 요청할 경우, 암호화키 발급 서버는 사용자가 입력한 비밀키를 암호화한 후 그 결과를 저장된 은닉 비밀키와 비교하여 인증한다. 그리고, 사용자가 입력한 비밀키를 바탕으로 사용자의 개인키를 복원하여, 복원된 개인키와 사용자가 입력한 공개키를 사용하여 블록체인 네트워크에서 해당 공개키에 남아 있는 디지털 자산 잔고를 확인한다. 블록체인 네트워크로부터 자산이 확인되면, 암호화키 발급 서버는 디지털 잔고 증명서를 생성하여 사용자에게 제공한다(S190).
본 발명에서 암호화키가 생성되는 과정을 간략히 정리하면, 시드키를 바탕으로 개인키와 공개키가 생성된다. 또한, 시드키에 암호화 알고리즘을 적용하여 비밀키도 생성할 수 있으며, 이렇게 생성된 비밀키는 사용자에게 제공된다.
전술된 바와 같이, 암호화키 발급 서버에는 사용자의 개인키와 비밀키가 저장되지 않고, 비밀키에 단방향 암호화 알고리즘을 적용한 결과인 은닉 비밀키만이 저장된다. 은닉 비밀키로부터 비밀키를 유추하는 것은 불가능하기 때문에, 은닉 비밀키는 사용자가 입력한 비밀키가 유효한지 여부를 판단하기 위한 비교 동작에서만 활용될 수 있다. 즉, 사용자가 입력한 비밀키에 단방향 암호화 알고리즘을 적용하여 생성된 암호화된 비밀키가 저장된 은닉 비밀키와 동일한 경우에만 사용자가 인증된 것으로 판단할 수 있다.
사용자가 입력한 비밀키가 유효할 경우(즉, 사용자가 입력한 비밀키에 단방향 암호화 알고리즘을 적용한 결과가 저장된 은닉 비밀키와 동일한 경우)에 해당 비밀키로부터 시드키를 얻어낼 수 있다. 그리고, 이렇게 얻어진 시드키로부터 사용자의 개인키가 복원될 수 있다.
이와 같이, 본 발명에 의한 암호화키 발급 서버는 개인키와 비밀키가 아닌 은닉 비밀키를 저장하기 때문에 사용자의 개인키를 안전하게 보호할 수 있다.
본 발명에서 암호화키를 생성하기 위해 사용되는 암호화/복호화 기술은 종래에 당업계에 공지된 모든 암호화/복호화 기술을 포함한다. 예를 들어, 블록체인 네트워크는 UTXO(Unspent Transaction Output) 기반 블록체인과 어카운트 기반 블록체인(Account-based Blockchain)으로 크게 나눌 수 있다. 전자의 경우 UTXO들과 사용 자격 검증 방법을 기록하며, 이러한 네트워크에 활용되는 일반적인 자격 검증 방법은 UTXO의 정보와 일치하는 공개키로 검증가능한 전자 서명을 제출하는 것이다. 비트코인이 대표적인 UTXO 기반 블록체인의 하나이다. 또한, 어카운트 기반 블록체인의 경우, 어카운트가 블록체인을 구성하는 주체(entity)를 표현하며 상태를 기록하고 있으며, 사용자는 어카운트를 사용할 때마다 어카운트 공개키로 검증가능한 전자서명을 생성한다. 이러한 기술은 상태를 기록할 수 있기 때문에 스마트 컨트랙트를 구현하기에 용이하며, 이더리움이 대표적인 어카운트 기반 블록체인이라고 할 수 있다. UTXO 기반 블록체인의 경우 항상 공개키가 포함시켜서 트랜젝션을 기록하고, 따라서 256비트의 전자서명과 256비트의 공개키가 필요하다. 반면에, 어카운트 기반 블록체인의 경우에는 전자 서명 안에 공개키를 넣어서 함께 보내기 때문에, 256비트가 절약되는 효과가 있다.
도 2a는 종래 기술에 의해서 개인이 디지털 자산을 보관하는 과정을 설명하는 개략도이다.
도 2a를 참조하면, 종래에는 개인이 거래소에 현금을 지급하면, 거래소는 수신된 현금의 가치에 대응하는 디지털 자산을 개인에게 제공하며, 이 과정에서 개인에게 디지털 자산 보관증서를 발행한다. 거래소에서 디지털 자산을 사용자의 계좌에 제공한 기록은 블록체인 네트워크에 기록되게 된다.
하지만, 디지털 자산 보관 증서는 사실 관계와 무관하게 거래소가 악의적으로 임의로 발행한 것일 수도 있다. 따라서, 디지털 자산 보관 증서는 객관적으로 사용자의 잔고를 증명하는 증명서로서의 역할을 할 수 없다.
또한, 전술된 바와 같이 거래소 자체의 보안 수준이 낮음으로 인해 개인의 소중한 디지털 자산이 해킹을 통해 도난당하는 일이 발생하며, 여러 거래소를 활용하여 여러 디지털 자산을 거래할 경우, 개인이 각 거래소와 디지털 자산별로 모든 계좌 정보를 파악하고 유지하고 있어야 한다.
도 2b는 본 발명에 의한 암호화키 발급 서버를 활용한 디지털 자산의 잔고 증명 방법이 수행되는 시나리오를 개략적으로 나타내는 도면이다.
도 2b에 도시된 바와 같이, 디지털 자산을 소유하고자 하는 개인은 암호화키 발급 서버에 자신의 개인키와 공개키의 발급을 요청하고, 발급받은 공개키에 디지털 자산을 보관한다. 이 경우 전술된 바와 같이 암호화키 발급 서버에서는 사용자에게 개인키가 아니라 개인키를 암호화한 비밀키를 제공한다. 거래소에서 사용자의 공개키로 송금된 기록은 블록체인 네트워크에 기록된다.
사용자가 암호화키 발급 서버에 잔고 증명을 요청할 경우, 암호화키 발급 서버는 후술되는 바와 같이 암호화키 발급 서버는 사용자가 입력한 비밀키를 사용하여 사용자를 인증한다. 사용자의 인증이 성공적이면, 암호화키 발급 서버는 사용자가 입력한 공개키를 사용하여 블록체인 네트워크에서 사용자의 잔고를 확인한다.
블록체인 네트워크로부터 공개키에 저장된 잔고에 대한 기록을 조회하면, 암호화키 발급 서버는 디지털 잔고 증명서를 생성하여 사용자에게 제공한다. 이 때, 후술되는 바와 같이 사용자의 신원을 나타내는 증명과 함께 디지털 잔고 증명서를 발급하게 되며, 사용자는 제 3 자에게 해당 증명서를 제시함으로써 자신의 잔고를 증명할 수 있다.
즉, 암호화키 발급 서버는 암호화키 발급 서버에 가입된 사용자의 디지털 자산을 언제든지 인증할 수 있고, 사용자는 이러한 인증을 통하여 자신이 디지털 자산을 얼마나 보유하고 있는지를 제 3 자에게 객관적으로 증명할 수 있다.
도 3은 본 발명에서 활용되는 암호화키 발급 서버에 사용자가 가입할 때 암호화키 발급 서버에서 이루어지는 동작들을 설명하는 동작 타이밍도이다.
도 3에서 점선으로 표시된 부분은 개인이 종래의 방법에 따라 거래서에 현금을 지불하고 디지털 자산을 구입하는 과정을 나타낸다.
개인이 암호화키 발급 서버에 가입할 경우, 자신의 신원을 나타내는 정보를 제공할 수 있다. 하지만, 본 발명에 의한 암호화키 발급 서버에는 반드시 신원 정보를 입력해야만 가입할 수 있는 것은 아니다. 신원 정보는 개인이 디지털 잔고 증명서를 제 3 자에게 제공할 때 자신의 잔고임을 나타내기 위해서 사용될 뿐이다.
공개키 발급이 요청되면, 암호화키 발급 서버는 개인키의 분실시 분실된 개인키를 복원하는데 사용되는 시드키를 생성하고, 이러한 시드키를 바탕으로 사용자에게 고유한 개인키 및 상기 블록체인 네트워크에서 상기 디지털 자산을 저장하기 위한 사용자의 계좌를 나타내는 공개키를 생성한다. 그런데, 본 발명에 의한 암호화키 발급 서버는 보안 수준을 향상시키기 위하여 개인키를 사용자에게 제공하지 않는다. 개인키가 사용자에게 전달될 경우 사용자가 분실하거나 유출될 수 있기 때문이다. 따라서, 암호화키 발급 서버는 개인키가 아니라, 시드키에 암호화 알고리즘을 적용하여 생성한 비밀키를 제공한다. 또한, 이러한 비밀키 역시 유출될 위험을 방지하기 위하여 암호화키 발급 서버는 비밀키에 다시 단방향 암호화 알고리즘을 적용하여 생성한 은닉 비밀키를 저장한다. 그리고, 은닉 비밀키만을 저장하고 개인키와 비밀키를 암호화키 발급 서버에서 삭제함으로써 유출을 차단한다.
이와 같이, 사용자의 개인키는 애초에 사용자에게 제공되지 않았고, 비밀키 역시 암호화키 발급 서버에 저장되지 않으며, 암호화키 발급 서버에 저장된 은닉 비밀키로는 사용자의 비밀키를 유추할 수 없기 때문에, 사용자의 개인키가 안전하게 보호될 수 있다.
도 4는 본 발명에서 활용되는 암호화키 발급 서버에 사용자가 가입하여 생성된 계좌에 디지털 자산이 입금되는 과정을 설명하는 동작 타이밍도이다.
도 4를 참조하면, 사용자는 암호화키 발급 서버에서 발급받은 공개키로 디지털 자산을 입금할 것을 거래소에 요청한다. 그러면, 거래소는 사용자로부터 받은 공개키와 자신의 비밀키를 사용하여 디지털 자산을 입금하라는 입금 스크립트를 작성하여 블록체인 네트워크로 전송한다.
입금 스크립트를 수신하면, 블록체인 네트워크는 입금 스크립트에 따라서 개인의 공개키에 디지털 자산이 이체되었음을 기록한다. 그리고, 입금이 성공되었는지 여부를 개인에게 송부한다.
본 명세서에서 스크립트란 블록체인 네트워크에서 이루어지는 다양한 동작을 요청하는, 서로 합의된 프로토콜에 따른 일종의 명령문을 가리키는 것이다. A 계좌에서 B 계좌로 디지털 자산을 이체하라는 스크립트에는 A 계좌로부터의 출금과 B 계좌로의 입금의 두 가지 프로세스가 포함될 수 있다. 따라서, 본 명세서에서는 이체 스크립트, 출금 스크립트, 및 입금 스크립트라는 용어가 혼용되어 사용될 수 있다.
도 5는 본 발명에서 활용되는 암호화키 발급 서버에 가입한 사용자의 계좌로부터 디지털 자산을 출금하는 과정을 설명하는 동작 타이밍도이다.
우선, 사용자의 계좌(공개키)로부터 디지털 자산을 출금하려면 도 4에서 설명된 바와 같이 사용자의 계좌에 출금할 디지털 자산이 입금되어 있어야 한다.
출금을 원하는 사용자는 자신의 비밀키를 암호화키 발급 서버로 전송하면서 출금을 요청한다.
그러면, 암호화키 발급 서버는 수신된 비밀키에 단방향 암호화 알고리즘을 적용하여 암호화된 비밀키를 생성하고, 생성된 비밀키를 저장된 은닉 비밀키와 비교하여 사용자를 인증한다. 두 비밀키가 일치하면 인증된 사용자로부터의 출금 요청임을 알 수 있다.
사용자가 인증되면, 수신된 비밀키로부터 시드키를 유추하고, 이렇게 얻어진 시드키를 바탕으로 사용자의 개인키를 복원한다. 그리고, 사용자가 이비력한 공개키 및 복원된 개인키를 사용하여 출금 스크립트를 생성하여 블록체인 네트워크로 전송한다.
블록체인 네트워크는 수신된 출금 스크립트에 따라서 사용자의 계좌로부터 요청된 디지털 자산을 출금한다. 출금된 디지털 자산은 출금 스크립트에 기록된 목적지 계좌로 이체될 수도 있다.
출금이 이루어지면, 블록체인 네트워크는 출금이 성공되었음을 암호화키 발급 서버로 통보하고, 암호화키 발급 서버는 이러한 결과를 바탕으로 출금 성공을 사용자에게 통보한다.
전술된 바와 같이 사용자의 계좌로부터 출금을 하기 위해서 필요한 정보는 사용자의 개인키가 아니라 비밀키이기 때문에, 출금을 요청하는 과정에서 개인키가 노출될 위험이 없어진다.
도 6은 본 발명에 따른 디지털 자산의 잔고 증명 방법에서 잔고를 증명하는 과정을 설명하는 동작 타이밍도이다.
전술된 바와 같이, 제 3 자에게 누구의 계좌에 얼마의 잔고가 있는지를 증명하기 위해서는 암호화키 발급 서버에 가입된 사용자의 신원 정보가 필요할 수 있다. 따라서, 개인은 인증 기관에 의해 인증된 신원 정보를 암호화키 발급 서버에 입력하여 자신임을 증명하게 된다. 이러한 과정은 KYC(know your customer) 인증이라고 불릴 수 있다.
사용자의 KYC 인증이 완료되면, 사용자는 자신의 비밀키를 입력하면서 잔고 증명을 요청한다. 잔고 증명을 위해 필요한 정보 역시 사용자의 개인키가 아니라 비밀키이기 때문에 개인키의 보안이 향상된다.
비밀키가 입력되면, 암호화키 발급 서버는 입력된 비밀키에 단방향 암호화 알고리즘을 적용한 결과를 저장된 은닉 비밀키와 비교한다.
두 가지 비밀키가 매칭되면, 암호화키 발급 서버는 전술된 바와 같이 사용자가 입력한 공개키를 사용하여 블록체인 네트워크에서 잔고를 조회한다.
암호화키 발급 서버가 사용자가 입력한 공개키에 저장된 디지털 자산의 잔고를 확인하면, 인증된 신원 정보를 포함하여 디지털 잔고 증명서를 발급한다. 해당 디지털 잔고 증명서는 어느 누가 얼마의 디지털 자산을 보유하고 있다는 객관적인 증명서로서의 역할을 할 수 있다.
그러면, 개인은 수신한 디지털 잔고 증명서를 제 3 자에게 제공함으로써 자신의 잔고를 증명할 수 있다.
이 과정에서, 암호화키 발급 서버와 블록체인 네트워크 사이의 통신이 SHA-256과 같은 암호화 알고리즘에 의해 암호화되어 진행될 수 있음은 물론이다.
도 7은 도 6에 의해 잔고가 증명된 자산이 담보로 제공될 경우의 담보 가치를 보장하기 위한 거래 중지 과정을 설명하는 동작 타이밍도이다.
디지털 잔고 증명서에 의해 잔고가 증명되면, 해당 자료는 타인에게 담보로서 제공될 수 있다. 담보를 설정할 경우, 담보로 제공되는 디지털 자산의 가치, 담보 기간, 그리고 그 외의 부관과 같은 담보 조건들이 공시될 필요가 있다. 담보 조건을 통하여 특정 사건을 정지 조건으로 하는 담보권의 설정이 가능하다. 예를 들어, 담보권을 설정한 담보권 설정일을 기준으로 디지털 자산의 가치가 변동하는 것을 반영하여 담보권으로 제공된 디지털 자산의 가치를 변경하는 등의 담보 조건을 설정할 수 있다. 즉, 담보 가치가 0.5배가 된다면, 담보권으로 제공된 디지털 자산의 가치를 두 배로 함으로써 담보권의 실질적인 가치를 보장할 수 있다. 이러한 담보 조건은 종래의 담보권에서는 부가할 수 없는 것이었으며, 모든 조건이 투명하게 기록되고 위조나 변조되지 않는 블록체인 네트워크이기 때문에 가능한 것이다.
디지털 자산이 담보로 제공되면, 해당 자산의 출금이 금지되어야 담보권자를 보호할 수 있다. 그러므로, 암호화키 발급 서버는 우선 거래 중지 기간과 담보 조건을 저장하고, 거래 중지 기간에 대응하는 거래 요청은 거절한다. 또한, 암호화키 발급 서버는 거래 중지 확인서를 발급한다.
그러면, 사용자는 거래 중지 확인서를 제 3 자에게 제공함으로써 자신이 담보 기간 내에 임의로 자신의 계좌에서 디지털 자산을 출금할 수 없음을 증명하게 된다. 거래 중지 확인서는 암호화키 발급 서버에만 저장될 수도 있고, 블록체인 네트워크에 저장될 수도 있다. 거래 중지가 블록체인 네트워크에 기록될 경우 저당권의 효력이 더욱 보장될 수 있지만, 블록체인 네트워크의 프로토콜에서 저당권 설정과 거래 중지를 지원해야 한다.
필요할 경우, 제 3 자는 거래 중지 확인서의 검증을 암호화키 발급 서버에 요청한다. 이러한 요청에 응답하여, 암호화키 발급 서버는 거래 중지 확인서의 진위를 확인하여 제 3 자에게 통보할 수 있다. 거래 중지 확인서의 진위가 확인되면, 제 3 자는 개인에게 담보 가치를 인정할 수 있다.
도 8은 본 발명의 일면에 의한 암호화키 발급 서버를 활용한 디지털 자산의 잔고 증명 방법에서 암호화키 발급 서버 계좌를 생성하고 인출하는 과정을 상세히 나타내는 흐름도이다. 도 8의 (a)는 암호화키를 발급하는 과정을 나타내고, 도 9의 (b)는 생성된 공개키로부터 디지털 자산을 인출하는 과정을 나타낸다.
우선, BIP-39에 따라서 연상 코드가 입력될 수 있다. BIP39 (Bitcoin Improvement Proposal 39)는 연상 코드(Mnomonic code) 단어에 대해 기술하는 산업 표준을 가리킨다. 연상 코드 단어란 순서대로 나열된 영어 단어에서 시드(Seed)를 만드는 방법으로서, 연상 코드를 사용하면 가상화폐 지갑을 쉽게 복원 할 수 있다.
연상 코드로부터 시드 값과 패스 구문이 생성된다. 이러한 단계가 통과되면, 디지털 자산의 가치와 인덱스를 인코딩하여 저장하게 된다. 저장되는 주소는 일반 대중에게 공통적으로 인식될 수 있는 주소이며, 체크섬을 통해서 정보의 오류를 판단한다.
가치와 인덱스가 인코딩되면, 단방향 암호화 알고리즘을 다시 한 번 적용하여 은닉 비밀키를 생성한다. 이와 같이, 본 발명에서는 개인키가 아니라 시드키를 암호화하여 생성된 비밀키에 단방향 암호화 알고리즘을 다시 한번 적용하여 은닉 비밀키를 생성하고 저장하기 때문에, 외부 공격으로부터 개인키를 안전하게 보호할 수 있고, 해킹이 불가능해진다.
인코딩이 완료되면 생성된 비밀키와 개인의 신원 정보를 매핑하여 관리하며, 이 과정에서 OTP(one time password)가 활용될 수 있다.
또한, 개인에게 제공된 공개키로부터 디지털 자산을 인출하는 과정이 도 9의 (b)에 예시된다.
인출이 요청되면, 공개키가 어느 소유자에게 속하는 것인지를 파악해야 한다. 이 과정에서 이메일과 문자 메시지를 사용한 KYC 인증이 수행된다. 가입자의 신원을 확인할 때 OTP가 활용되어 보안 수준을 높일 수 있는 것은 전술된 바와 같다.
사용자가 인증되면, 해당 거래를 위해 필요한 개인키를 복원해야 한다. 이를 위하여 사용자로부터 수신된 비밀키로부터 시드키를 유추하고, 유추된 시드키로부터 사용자의 개인키를 복원한다. 비밀키로부터 시드키를 유추하는 복호화 과정에서 사용되는 복호화 기술은 시드키로부터 비밀키를 생성하는 암호화 과정에서 사용된 기술에 대응하는 것이다.
이러한 과정을 거쳐서 개인키가 얻어지면, 개인키를 활용하여 공개키로 표시되는 계좌로부터 디지털 자산을 인출한다. 전술된 바와 같이, 이렇게 인출된 디지털 자산은 다른 계좌로 송금될 수 있다.
도 9는 본 발명의 다른 면에 의한 암호화키 발급 서버를 활용한 디지털 자산의 잔고 증명 시스템을 개략적으로 나타내는 블록도이다.
도 9를 참조하면, 암호화키 발급 서버를 활용한 디지털 자산의 잔고 증명 시스템(900)은, 거래 정보를 분산 저장하기 위한 블록들의 체인으로 이루어지는 블록체인 네트워크(990), 블록체인 네트워크에서 운용되며, 소유자의 적어도 하나의 거래소 계좌를 포함하고, 디지털 자산의 거래 및 유통을 관리하는 거래소(910), 및 거래소(910) 및 블록체인 네트워크(990)에 액세스하는 사용자(920, 930), 및 디지털 자산의 거래를 위한 암호화키를 사용자에게 발급하는 암호화키 발급 서버(950)를 포함한다.
암호화키 발급 서버(950)는 상기 암호화키 발급 서버에 가입한 사용자의 요청에 응답하여, 개인키의 분실시 분실된 개인키를 복원하는데 사용되는 시드키를 생성하는 동작, 시드키를 바탕으로 사용자에게 고유한 개인키 및 블록체인 네트워크(990)에서 디지털 자산을 저장하기 위한 사용자(920, 930)의 계좌를 나타내는 공개키를 생성하는 동작, 시드키에 암호화 알고리즘을 적용하여 비밀키를 생성하여 사용자(920, 930)에게 제공하고, 생성된 비밀키에 단방향 암호화 알고리즘을 적용하여 은닉 비밀키를 생성하여 저장하는 동작, 및 디지털 자산의 출금이 요청되면, 사용자(920, 930)가 입력한 비밀키를 암호화하여 은닉 비밀키와 비교하여 인증하며, 입력된 비밀키가 인증되면 시드키를 유추하여 사용자의 개인키를 복원하며, 공개키 및 복원된 개인키를 사용하여 블록체인 네트워크(990)에서 디지털 자산의 출금을 수행하는 동작을 수행하도록 구성된다.
특히, 암호화키 발급 서버(950)는, 사용자가 디지털 자산의 잔고 증명을 요청할 경우, 사용자가 입력한 비밀키를 인증하고, 인증된 사용자(920, 930)의 공개키를 사용하여 블록체인 네트워크(990)에서 사용자의 디지털 자산의 잔고를 확인하여 제공하는 잔고 증명 동작도 수행할 수 있다.
본 발명에서 인증 기관에서 발급한 증명서를 통해 소유자의 신원 정보를 인증하는 과정은 KYC(know your customer) 인증 단계라고 불릴 수 있으며, 이러한 고객 확인 절차는 고객의 신원을 식별하고 확인하는(verify) 업무 절차를 뜻한다. 이는 특히 은행, 보험, 수출 금융 등 금융 업무 절차나 자금 세탁 방지(AML; Anti-Money Laundering) 규제에서 자주 거론된다.
고객 확인 절차의 목적은 주로 은행이 자금 세탁 행위 등의 범죄 요소로 악용되는 것을 예방하는 것이다. 또한, 고객 확인 절차를 통하여 블록체인 네트워크의 익명성을 악용하여 디지털 자산이 범죄에 활용되는 것을 방지할 수 있고, 종래에 제도권 밖에서 운용되어 온 디지털 자산을 제도권 내로 편입시켜서 안전하게 보호할 수 있는 장점이 생긴다.
고객 확인 절차를 위하여 다양한 신원 정보가 활용될 수 있다. 예를 들어, 이메일/휴대폰의 본인 인증, 계좌 인증, 증빙서류, 거주지 주소 및 연락처 등의 다양한 정보가 활용될 수 있으며, 여권 정보 등은 공인된 인증 기관의 인증을 거쳐서 활용될 수 있다. 이와 같이, KYC 인증 단계를 통하여 블록체인 기술의 장점과 거래의 실명화 양자 모두를 구현할 수 있다.
고객의 신원 정보가 인증되면, 암호화키 발급 서버(950)는 신원 정보가 인증된 소유자에게 공개키 및 개인키를 발급한다. 이 과정에서 시드키가 활용될 수 있으며, 시드키는 비밀키를 생성하는 데에 사용될 수도 있음은 전술된 바와 같다.
또한, 본 발명에 의한 암호화키 발급 서버(950)는 개인키도 비밀키도 저장하지 않으며, 비밀키를 다시 한번 암호화한 은닉 비밀키만 저장함으로써 보안 수준을 향상시키는 것도 전술된 바와 같다. 전술된 바와 같이, 암호화키 발급 서버(950)는 사용자가 입력한 비밀키로부터 시드키를 복호화하고, 복호화된 시드키로부터 사용자의 개인키를 복원할 수 있다.
사용자가 디지털 자산의 인출 또는 잔고 증명을 요청하면, 암호화키 발급 서버(950)는 사용자가 입력한 공개키 및 복원된 개인키를 사용하여 인출 스크립트를 작성하고, 작성된 스크립트를 블록체인 네트워크(990)로 전송한다.
본 발명에서 암호화키 발급 서버는 종래의 디지털 자산의 거래소와는 다음의 측면에서 다르다.
첫째, 암호화키 발급 서버는 KYC 인증을 거친 소유자의 계좌를 관리하기 때문에, 소유자의 실명을 통한 거래를 수행할 수 있다. 따라서, 디지털 자산의 거래가 투명해지는 장점이 생긴다.
둘째, 암호화키 발급 서버에 저장된 계좌는 소유자의 신원 정보를 통해서도 접근가능하다. 종래에는 디지털 자산의 거래를 위해서 거래소별로 계좌 정보와 개인키를 알고 있어야 하고, 둘 중 하나라도 분실되거나 잊어버리게 되면 해당 디지털 자산에는 영원히 접근할 수 없게 되어 소중한 디지털 자산이 망실되는 경우가 있었다. 하지만, 본 발명에 의한 암호화키 발급 서버를 활용하면, 소유자는 자신의 암호화키 발급 서버에 대한 계좌 정보만 기억하고 있으면 되고, 해당 계좌에는 복잡한 암호 뿐만 아니라 자신의 신원 정보를 활용해서도 접근할 수 있다. 이 경우 OTP와 같은 기술이 활용되어 보안을 강화할 수도 있다.
셋째, 보안 센서는 비밀키를 암호화하여 은닉 비밀키를 생성하고 저장하기 때문에, 비밀키의 유출을 원천적으로 방지할 수 있다. 이것은 개인키를 이중 비밀키를 사용하여 대체하는 것으로 이해될 수도 있다.
넷째, 본 발명에 의한 암호화키 발급 서버에서는 독자적인 보안 솔루션을 통해서 저장된 모든 정보를 관리하기 때문에 해킹이 불가능하고, 개인키의 분실, 탈취, 복사, 해킹이 불가능하다.
마지막으로, 본 발명에 의한 암호화키 발급 서버에서는 개인의 신원 정보와 함께 보유하고 있는 디지털 자산의 잔고를 증명할 수 있기 때문에 디지털 자산이 담보로 제공될 수 있게 할 수 있으며, 담보 조건에 따른 디지털 자산의 인출을 방지할 수 있으므로 담보물의 가치를 유지시킬 수 있다.
본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다.
또한, 본 발명에 따르는 방법은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함할 수 있다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 분산 컴퓨터 시스템에 의하여 분산 방식으로 실행될 수 있는 컴퓨터가 읽을 수 있는 코드를 저장할 수 있다.
본 명세서에서 사용되는 용어에서 단수의 표현은 문맥상 명백하게 다르게 해석되지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함한다" 등의 용어는 설시된 특징, 수, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 의미하는 것이지, 하나 또는 그 이상의 다른 특징들이나 개수, 단계 동작 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 배제하지 않는 것으로 이해되어야 한다. 그리고, 명세서에 기재된 "...부", "...기", "모듈", "블록" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
따라서, 본 실시예 및 본 명세서에 첨부된 도면은 본 발명에 포함되는 기술적 사상의 일부를 명확하게 나타내고 있는 것에 불과하며, 본 발명의 명세서 및 도면에 포함된 기술적 사상의 범위 내에서 당업자가 용이하게 유추할 수 있는 변형 예와 구체적인 실시예는 모두 본 발명의 권리범위에 포함되는 것이 자명하다고 할 것이다.
본 발명은 블록체인 기술에 적용될 수 있고, 특히 거래소의 보안 수준에도 불구하고 디지털 자산을 안전하게 보관하고 디지털 자산을 활용한 재산 증명을 가능하게 하는 디지털 자산 거래 분야에 적용될 수 있다.
910 : 거래소 920, 930 : 사용자
950 : 암호화키 발급 서버 990 : 블록체인 네트워크

Claims (14)

  1. 블록체인 네트워크에서 유통되는 디지털 자산을 소유한 사용자가 보유한 잔고를 증명하기 위한 잔고 증명 서비스를 제공하는 방법으로서,
    디지털 자산의 거래를 위한 암호화키를 발급하는 암호화키 발급 서버에서, 상기 암호화키 발급 서버에 가입한 사용자의 요청에 응답하여, 개인키(private key)의 분실시 분실된 개인키를 복원하는데 사용되는 시드키(seed key)를 생성하는 단계;
    상기 암호화키 발급 서버에서, 상기 시드키를 바탕으로 사용자에게 고유한 개인키 및 상기 블록체인 네트워크에서 상기 디지털 자산을 저장하기 위한 사용자의 계좌를 나타내는 공개키(public key)를 생성하는 단계;
    상기 암호화키 발급 서버에서, 상기 시드키에 암호화 알고리즘을 적용하여 비밀키(secret key)를 생성하여 상기 공개키와 함께 사용자에게 제공하고, 생성된 비밀키에 단방향 암호화 알고리즘을 적용하여 은닉 비밀키(concealed secret key)를 생성하여 저장하는 단계; 및
    디지털 자산의 출금이 요청되면, 상기 암호화키 발급 서버에서, 사용자가 입력한 비밀키를 암호화하여 상기 은닉 비밀키와 비교하여 인증하며, 입력된 비밀키가 인증되면 상기 시드키를 유추하여 사용자의 개인키를 복원하며, 공개키 및 복원된 개인키를 사용하여 상기 블록체인 네트워크에서 디지털 자산의 출금을 수행하는 단계를 포함하는 것을 특징으로 하는, 디지털 자산의 잔고 증명 방법.
  2. 제1항에 있어서,
    상기 방법은,
    사용자가 상기 디지털 자산의 잔고 증명을 요청할 경우, 상기 암호화키 발급 서버에서, 사용자가 입력한 비밀키를 인증하고, 인증된 사용자의 공개키를 사용하여 상기 블록체인 네트워크에서 사용자의 디지털 자산의 잔고를 확인하여 사용자에게 제공하는 잔고 증명 단계를 더 포함하는 것을 특징으로 하는, 디지털 자산의 잔고 증명 방법.
  3. 제2항에 있어서,
    상기 방법은,
    인증 기관에서 발급한 신원 증명서를 통해 상기 암호화키 발급 서버가 소유자의 신원 정보를 인증하는 KYC(know your customer) 인증 단계를 포함하고,
    상기 잔고 증명 단계는,
    상기 사용자의 요청에 응답하여, 상기 암호화키 발급 서버가 신원 정보가 인증된 사용자의 디지털 자산의 잔고와 사용자의 신원 정보를 포함하는 디지털 잔고 증명서를 생성하여 사용자에게 제공하는 것을 포함하는 것을 특징으로 하는, 디지털 자산의 잔고 증명 방법.
  4. 제3항에 있어서,
    상기 디지털 잔고 증명서는 제 3 자에게 사용자의 디지털 자산을 증명하는 담보로서 제공될 수 있고,
    상기 방법은,
    상기 디지털 잔고 증명서가 제 3 자에게 담보로서 제공될 경우, 상기 암호화키 발급 서버가 담보로서 제공된 디지털 자산의 담보 가치 및 담보 조건에 기반하여 상기 디지털 자산이 상기 사용자의 계좌로부터 다른 계좌로 송금되는 것을 금지하여, 상기 담보 조건에 따라서 디지털 자산의 담보 가치를 보장하는 단계를 더 포함하는 것을 특징으로 하는, 디지털 자산의 잔고 증명 방법.
  5. 제3항에 있어서,
    상기 시드키는 사용자의 IP 주소, 사용자가 상기 암호화키 발급 서버에 접속하는데 사용한 디바이스의 MAC 주소, 브라우저 버전, 접속 시간, 이메일 주소 중 적어도 하나를 사용하여 생성되고,
    상기 신원 증명서는 사용자의 주민 번호, 사진, 생체 정보, 휴대 전화 정보 중 적어도 하나를 사용하여 발급되는 것을 특징으로 하는, 디지털 자산의 잔고 증명 방법.
  6. 제3항에 있어서,
    상기 KYC 인증 단계는,
    상기 디지털 자산의 거래 시에 원타임 패스워드(one time password; OTP)를 사용하여 보안 수준을 높이도록 구성되는 것을 특징으로 하는, 디지털 자산의 잔고 증명 방법.
  7. 제1항에 있어서,
    상기 디지털 자산의 출금을 수행하는 단계는,
    상기 사용자가 디지털 자산의 출금을 요청하면서 입력한 비밀키를 단방향 암호화하여 암호화된 비밀키를 생성하는 것,
    생성된 암호화된 비밀키를 저장된 은닉 비밀키와 비교하고, 암호화된 비밀키가 은닉 비밀키와 일치하면 시드키를 유추하여 사용자의 개인키를 복원하는 것,
    디지털 자산의 출금 목적지의 공개키를 포함하는 출금 스크립트를 생성하고, 생성된 출금 스크립트를 사용자의 복원된 개인키로 서명하며, 서명된 출금 스크립트를 암호화하여 블록체인 네트워크로 전송하는 것, 및
    상기 블록체인 네트워크로부터 출금 결과를 수신하여 사용자에게 제공하는 것을 포함하는 것을 특징으로 하는, 디지털 자산의 잔고 증명 방법.
  8. 블록체인 네트워크에서 유통되는 디지털 자산을 소유한 사용자가 보유한 잔고를 증명하기 위한 잔고 증명 시스템으로서,
    디지털 자산의 거래를 위한 암호화키를 발급하는 암호화키 발급 서버를 포함하고,
    상기 암호화키 발급 서버는,
    상기 암호화키 발급 서버에 가입한 사용자의 요청에 응답하여, 개인키(private key)의 분실시 분실된 개인키를 복원하는데 사용되는 시드키(seed key)를 생성하는 동작;
    상기 시드키를 바탕으로 사용자에게 고유한 개인키 및 상기 블록체인 네트워크에서 상기 디지털 자산을 저장하기 위한 사용자의 계좌를 나타내는 공개키(public key)를 생성하는 동작;
    상기 시드키에 암호화 알고리즘을 적용하여 비밀키(secret key)를 생성하여 상기 공개키와 함께 사용자에게 제공하고, 생성된 비밀키에 단방향 암호화 알고리즘을 적용하여 은닉 비밀키(concealed secret key)를 생성하여 저장하는 동작; 및
    디지털 자산의 출금이 요청되면, 사용자가 입력한 비밀키를 암호화하여 상기 은닉 비밀키와 비교하여 인증하며, 입력된 비밀키가 인증되면 상기 시드키를 유추하여 사용자의 개인키를 복원하며, 공개키 및 복원된 개인키를 사용하여 상기 블록체인 네트워크에서 디지털 자산의 출금을 수행하는 동작을 수행하도록 구성되는 것을 특징으로 하는, 디지털 자산의 잔고 증명 시스템.
  9. 제8항에 있어서,
    상기 암호화키 발급 서버는,
    사용자가 상기 디지털 자산의 잔고 증명을 요청할 경우, 사용자가 입력한 비밀키를 인증하고, 인증된 사용자의 공개키를 사용하여 상기 블록체인 네트워크에서 사용자의 디지털 자산의 잔고를 확인하여 사용자에게 제공하는 잔고 증명 동작을 더 수행하도록 구성되는 특징으로 하는, 디지털 자산의 잔고 증명 시스템.
  10. 제9항에 있어서,
    상기 암호화키 발급 서버는,
    인증 기관에서 발급한 신원 증명서를 통해 상기 암호화키 발급 서버가 소유자의 신원 정보를 인증하는 KYC(know your customer) 인증 동작을 더 수행하도록 구성되고,
    상기 잔고 증명 동작은,
    상기 사용자의 요청에 응답하여, 상기 암호화키 발급 서버가 신원 정보가 인증된 사용자의 디지털 자산의 잔고와 사용자의 신원 정보를 포함하는 디지털 잔고 증명서를 생성하여 사용자에게 제공하는 것을 포함하는 것을 특징으로 하는, 디지털 자산의 잔고 증명 시스템.
  11. 제10항에 있어서,
    상기 디지털 잔고 증명서는 제 3 자에게 사용자의 디지털 자산을 증명하는 담보로서 제공될 수 있고,
    상기 암호화키 발급 서버는,
    상기 디지털 잔고 증명서가 제 3 자에게 담보로서 제공될 경우, 담보로서 제공된 디지털 자산의 담보 가치 및 담보 조건에 기반하여 상기 디지털 자산이 상기 사용자의 계좌로부터 다른 계좌로 송금되는 것을 금지하여, 상기 담보 조건에 따라서 디지털 자산의 담보 가치를 보장하는 동작을 더 수행하도록 구성되는 것을 특징으로 하는, 디지털 자산의 잔고 증명 시스템.
  12. 제10항에 있어서,
    상기 시드키는 사용자의 IP 주소, 사용자가 상기 암호화키 발급 서버에 접속하는데 사용한 디바이스의 MAC 주소, 브라우저 버전, 접속 시간, 이메일 주소 중 적어도 하나를 사용하여 생성되고,
    상기 신원 증명서는 사용자의 주민 번호, 사진, 생체 정보, 휴대 전화 정보 중 적어도 하나를 사용하여 발급되는 것을 특징으로 하는, 디지털 자산의 잔고 증명 시스템.
  13. 제10항에 있어서,
    상기 암호화키 발급 서버는,
    상기 KYC 인증 동작을 수행할 때 상기 디지털 자산의 거래 시에 원타임 패스워드(one time password; OTP)를 사용하여 보안 수준을 높이도록 구성되는 것을 특징으로 하는, 디지털 자산의 잔고 증명 시스템.
  14. 제8항에 있어서,
    상기 디지털 자산의 출금을 수행하는 동작은,
    상기 사용자가 디지털 자산의 출금을 요청하면서 입력한 비밀키를 단방향 암호화하여 암호화된 비밀키를 생성하는 것,
    생성된 암호화된 비밀키를 저장된 은닉 비밀키와 비교하고, 암호화된 비밀키가 은닉 비밀키와 일치하면 시드키를 유추하여 사용자의 개인키를 복원하는 것,
    디지털 자산의 출금 목적지의 공개키를 포함하는 출금 스크립트를 생성하고, 생성된 출금 스크립트를 사용자의 복원된 개인키로 서명하며, 서명된 출금 스크립트를 암호화하여 블록체인 네트워크로 전송하는 것, 및
    상기 블록체인 네트워크로부터 출금 결과를 수신하여 사용자에게 제공하는 것을 포함하는 것을 특징으로 하는, 디지털 자산의 잔고 증명 시스템.
KR1020210159873A 2021-09-09 2021-11-19 디지털 자산의 잔고 증명 방법 및 시스템 KR20230037419A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210120452 2021-09-09
KR20210120452 2021-09-09

Publications (1)

Publication Number Publication Date
KR20230037419A true KR20230037419A (ko) 2023-03-16

Family

ID=85985211

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210159873A KR20230037419A (ko) 2021-09-09 2021-11-19 디지털 자산의 잔고 증명 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR20230037419A (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101673073B1 (ko) 2015-02-25 2016-11-04 이진희 블록체인 구조를 사용하는 암호화화폐 거래방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101673073B1 (ko) 2015-02-25 2016-11-04 이진희 블록체인 구조를 사용하는 암호화화폐 거래방법

Similar Documents

Publication Publication Date Title
US20220277307A1 (en) Systems and methods for personal identification and verification
US20210385219A1 (en) Method and system for data security within independent computer systems and digital networks
US20160283938A1 (en) Validating card not present financial transactions made over the Internet with e-Commerce websites using specified distinctive identifiers of local/mobile computing devices involved in the transactions
US20060123465A1 (en) Method and system of authentication on an open network
US20130219481A1 (en) Cyberspace Trusted Identity (CTI) Module
JP3228339U (ja) 個人認証及び確認システム及び方法
US20070110282A1 (en) Protecting social security numbers from identity theft
JP2009048627A (ja) 委任されたトランザクションを実行するための方法及び装置
US20130024377A1 (en) Methods And Systems For Securing Transactions And Authenticating The Granting Of Permission To Perform Various Functions Over A Network
Ahmed et al. A self-sovereign identity architecture based on blockchain and the utilization of customer’s banking cards: The case of bank scam calls prevention
US20220188836A1 (en) Anti-Money Laundering Blockchain Technology
Reno Multifactor authentication: Its time has come
KR20230037419A (ko) 디지털 자산의 잔고 증명 방법 및 시스템
KR102279342B1 (ko) 암호화폐를 활용한 금융서비스 제공시스템 및 방법
MIRIYEVA SECURITY IN ELECTRONIC COMMERCE AND ONLINE PAYMENTS
Lohstroh Why the equifax breach should not have mattered
US20210272116A1 (en) Secure e-commerce protocol
Chauhan et al. Online Money Transaction Security
Rusli et al. Review on the Advantages and Disadvantages of Cryptocurrency Attacks
Mitawa et al. Safeguarding Financial Transaction with Cryptocurrency Check for updates
Shiraishi Customized Database Management based on Digital Signature
Tressa et al. Blockchain Based UPI Technology for Secured Peer-to-Peer Cryptocurrency Transactions
Srivastava et al. Blockchain Risk and Uncertainty in Automated Applications
US20190370803A1 (en) Methods and systems for a zero-knowledge cyber-notary
KR20140119450A (ko) 보안전자결제 시스템 및 방법

Legal Events

Date Code Title Description
E902 Notification of reason for refusal