KR102390396B1 - 암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 시스템 및 그 거래 방법 - Google Patents

암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 시스템 및 그 거래 방법 Download PDF

Info

Publication number
KR102390396B1
KR102390396B1 KR1020200038486A KR20200038486A KR102390396B1 KR 102390396 B1 KR102390396 B1 KR 102390396B1 KR 1020200038486 A KR1020200038486 A KR 1020200038486A KR 20200038486 A KR20200038486 A KR 20200038486A KR 102390396 B1 KR102390396 B1 KR 102390396B1
Authority
KR
South Korea
Prior art keywords
transaction
block chain
confirmation
blockchain
pending
Prior art date
Application number
KR1020200038486A
Other languages
English (en)
Other versions
KR20200038899A (ko
Inventor
장영철
염기호
최중석
Original Assignee
주식회사 에이트리랩
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020180036782A external-priority patent/KR20190114292A/ko
Application filed by 주식회사 에이트리랩 filed Critical 주식회사 에이트리랩
Priority to KR1020200038486A priority Critical patent/KR102390396B1/ko
Publication of KR20200038899A publication Critical patent/KR20200038899A/ko
Application granted granted Critical
Publication of KR102390396B1 publication Critical patent/KR102390396B1/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/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/3676Balancing accounts
    • 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/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
    • 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Economics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Development Economics (AREA)
  • Marketing (AREA)
  • Technology Law (AREA)
  • Computer Security & Cryptography (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

본 발명의 실시 형태는 암호화폐 거래소 서버에 등록된 회원이 사용하는 단말기로서, 암호화폐 거래 정보를 표시하며 암호화폐 거래소 서버에 암호화폐 거래를 요청하는 회원 단말기; 블록체인 거래가 이루어질 수 있는 실거래 전자지갑을 생성하여 각 회원별로 제공하며, 상기 회원 단말기로부터 암호화폐의 매도 또는 매수를 포함한 매매 요청이 있는 경우, 암호화폐의 매도 또는 매수를 요청한 매매예정수량이 포함된 매매 요청 정보를 블록체인 네트워크 처리서버에 전송하여 블록체인 제1매매 컨펌을 요청하며, 상기 블록체인 제1매매 컨펌이 완료될 시의 매매 요청 회원의 제1매매완료수량과, 블록체인 제1매매 컨펌 요청된 제1매매예정수량을 각각 산출하며, 상기 블록체인 매매 컨펌에 대한 블록체인 거래가 완료되기 전에 또 다른 블록체인 제1매매 컨펌 요청이 있는 경우, 산출된 제1매매완료수량을 기반으로 블록체인 제2매매 컨펌을 블록체인 네트워크 처리서버에 요청하고, 상기 블록체인 네트워크 처리서버로부터 블록체인 제1매매 컨펌 또는 블록체인 제2매매 컨펌에 대한 블록체인 거래가 완료된 경우, 블록체인 제1매매 컨펌 또는 블록체인 제2매매 컨펌의 거래 완료 내역을 매매 요청 회원의 매매예정수량에 업데이트하는 암호화폐 거래소 서버; 및 상기 암호화폐 거래소 서버로부터 블록체인 매매 컨펌이 요청되는 경우, 매매 요청 정보에 기반한 블록체인 트랜잭션을 인접 노드에 전파하여 블록체인 매매 컨펌을 완료하고, 블록체인 매매 컨펌의 완료를 상기 암호화폐 거래소 서버에 통보하는 블록체인 네트워크 처리서버;를 포함할 수 있다.

Description

암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 시스템 및 그 거래 방법{Ready Pending trading system based electronic wallet and method for trading the same}
본 발명은 암호화폐를 거래하는 거래소에서 수행되는 암호화폐 거래 시스템 및 거래 방법으로서, 암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 시스템 및 그 거래 방법에 관한 것이다.
비트코인으로 대표되는 암호화폐(Crypto-Currency)들은 블록체인(Blockchain)이라는 공통된 형태의 거래 장부를 가진다.
그 개요로서, 일반 사용자는 암호화폐의 지갑프로그램을 자신의 컴퓨터에 다운로드받는다 그리고 그것을 자신의 컴퓨터에 설치한다 그러면 그 프로그램은 실행되면서 자신과 네트워크상에 기록되어있는 블록체인과 동기화(일치)시키는 작업을 우선 시작한다 그 데이터가 수십 기가바이트에 이르기 때문에 보통 3~7일 정도 시간이 걸린다. 그 동기화가 끝나면 자신의 지갑에서 자신의 주소(은행에서 계좌의 개념)를 생성하고 그 주소를 통하여 비트코인을 전송받거나 전송할 수 있다(비트코인의 경우 주소는 1로 시작하는 34자리의 영어(대소문자)와 숫자로 이루어진 조합이다. 이러한 방식의 어려움으로 전체 노드를 가지고 있는 서버가 웹지갑 서비스로 노드 전체를 내리지 않는 서비스도 많이 이루어지고 있다(블록체인인포, 마이이더웰렛, 메타마스크 등).
여기서, 비트코인을 포함하여 블록체인 시스템에서 구동되는 모든 암호화폐(Crypto-Currency)들은 사용자간의‘개인키-공개키(주소)’의 형식으로 한 쌍의 키로 되어 있다 공개키는 은행의 계좌번호에 개인키는 비밀번호에 해당하는데, 이는 서로간에만 들어맞는 한 쌍이다. 예를 들어, 비트코인 QT 프로그램(사용자 개인지갑프로그램)의 경우에는 사용자암호를 이용해 개인키를 암호화해서 회원 컴퓨터에 저장한다. 비트코인 거래소 웹지갑의 경우에는 사용자 암호 또는 서버의 소트(SALT)를 이용해 개인키를 암호화해서 서버에 저장한다
이와 같이 기존의 방식은 개인키를 암호화폐 거래소 서버에 저장 또는 회원 컴퓨터에 저장하는 방식이다.
그런데 암호화폐 거래소 서버를 이용하는 경우, 각 회원들의 거래소내의 전자지갑은 블록체인 상의 실제 전자지갑이 아니라 데이터베이스(DB) 기반으로 운영되는 지갑에 불과하다. 즉, 회원이 암호화폐 거래소 서버를 이용하여 자신의 계정을 조회하면 서버 데이터베이스(DB)에 등록 저장된 잔고가 보이게 되지만, 주소에 존재하는 실제잔고는 회원에게 의미가 없다. 또한 암호화폐 거래소 보안 관련 내부관계자는 서버에 저장된 해당 암호화된 개인키를 복호화하여 몰래 사용할 가능성이 존재한다.
이에, 암호화폐 거래소 서버에서 생성되는 각 회원의 전자지갑을 데이터베이스 형태의 전자지갑이 아니라 실제로 블록체인 상에서 거래할 수 있는 실거래 전자지갑으로 생성하여 제공할 필요가 있다.
그런데 통상의 암호화폐의 실제 전송에는 다수의 컨펌 과정을 거쳐야 하기 때문에, 암호화폐 거래소 서버 내에 각 회원의 실거래 전자지갑을 생성하여 블록체인 거래 행위가 실시간으로 이루어지기 어려운 문제가 있다.
이에, 암호화폐 거래소 서버내에 각 회원의 실거래 전자지갑을 실제로 생성하여 제공하면서, 이러한 실거래 전자지갑 환경 내에서 짧은 시간 안에 자주 샀다가 팔았다가 하는 블록체인 거래행위를 실시간으로 할 수 있는 새로운 거래 중개 방식의 필요성이 절실히 요청된다.
한국등록특허 10-1673073호
본 발명의 기술적 과제는 암호화폐 거래소 서버내에서 생성된 실제 전자지갑을 이용하여 빠르고 안정적인 블록체인 거래행위가 이루어질 수 있는 수단을 제공하는데 있다. 따라서 본 발명의 기술적 과제는 주문/체결의 실시간 처리로 빠른 응답이 이루어질 수 있는 수단을 제공하는데 있다.
본 발명의 실시 형태는 암호화폐 거래소 서버에 등록된 회원이 사용하는 단말기로서, 암호화폐 거래 정보를 표시하며 암호화폐 거래소 서버에 암호화폐 거래를 요청하는 회원 단말기; 블록체인 거래가 이루어질 수 있는 실거래 전자지갑을 생성하여 각 회원별로 제공하며, 상기 회원 단말기로부터 암호화폐의 매도 또는 매수를 포함한 매매 요청이 있는 경우, 암호화폐의 매도 또는 매수를 요청한 매매예정수량이 포함된 매매 요청 정보를 블록체인 네트워크 처리서버에 전송하여 블록체인 제1매매 컨펌을 요청하며, 상기 블록체인 제1매매 컨펌이 완료될 시의 매매 요청 회원의 제1매매완료수량과, 블록체인 제1매매 컨펌 요청된 제1매매예정수량을 각각 산출하며, 상기 블록체인 매매 컨펌에 대한 블록체인 거래가 완료되기 전에 또 다른 블록체인 제1매매 컨펌 요청이 있는 경우, 산출된 제1매매완료수량을 기반으로 블록체인 제2매매 컨펌을 블록체인 네트워크 처리서버에 요청하고, 상기 블록체인 네트워크 처리서버로부터 블록체인 제1매매 컨펌 또는 블록체인 제2매매 컨펌에 대한 블록체인 거래가 완료된 경우, 블록체인 제1매매 컨펌 또는 블록체인 제2매매 컨펌의 거래 완료 내역을 매매 요청 회원의 매매예정수량에 업데이트하는 암호화폐 거래소 서버; 및 상기 암호화폐 거래소 서버로부터 블록체인 매매 컨펌이 요청되는 경우, 매매 요청 정보에 기반한 블록체인 트랜잭션을 인접 노드에 전파하여 블록체인 매매 컨펌을 완료하고, 블록체인 매매 컨펌의 완료를 상기 암호화폐 거래소 서버에 통보하는 블록체인 네트워크 처리서버;를 포함할 수 있다.
상기 암호화폐 거래소 서버는, 각 회원별로 생성되어 할당되어 있으며, 블록체인 상에서 실제로 암호화폐를 거래할 수 있도록 블록체인 기반 회원의 암호화폐 금액정보를 가지는 회원별 실거래 전자지갑; 블록체인 제1매매 컨펌이 완료될 시의 매매완료수량과, 블록체인 매매 컨펌 요청되어 출금되기로 예정된 매매예정수량이 실시간으로 기록되는 블록체인 펜딩 데이터베이스; 및 회원으로부터 블록체인 제1매매 요청이 있는 경우 블록체인 네트워크 처리서버에 전송하여 블록체인 제1매매 컨펌을 요청하며, 블록체인 제1매매 컨펌에 대한 블록체인 거래가 완료되기 전인 경우, 상기 블록체인 제1매매 컨펌이 완료될 시의 매매 요청 회원의 제1매매완료수량과, 블록체인 제1매매 컨펌 요청된 제1매매예정수량을 각각 산출하여 매매 요청 회원에게 할당된 블록체인 펜딩 데이터베이스에 저장하는 제1레디 펜딩 처리를 수행하며, 산출된 제1매매완료수량을 기반으로 또 다른 블록체인 매매 컨펌인 블록체인 제2매매 컨펌이 요청되는 경우, 블록체인 제2매매 컨펌 요청에 따른 블록체인 펜딩 데이터베이스를 업데이트하는 제2레디 펜딩 처리를 수행하며, 상기 블록체인 네트워크 처리서버로부터 블록체인 제1매매 컨펌 또는 블록체인 제2매매 컨펌에 대한 블록체인 거래가 완료된 경우, 블록체인 제1매매 컨펌 또는 블록체인 제2매매 컨펌의 거래 완료 내역을 매매 요청 회원에게 할당된 블록체인 펜딩 데이터베이스내의 매매예정수량에 적용하여 업데이트하는 매매완료처리를 수행하는 블록체인 거래 처리부;를 포함할 수 있다.
상기 제2레디 펜딩 처리를 수행하는 것은, 상기 블록체인 제2매매 컨펌에 대한 블록체인 거래가 완료되기 전까지는, 상기 암호화폐 거래소 서버가, 상기 블록체인 제2매매 컨펌이 완료될 시의 매매 요청 회원의 제2매매완료수량과, 블록체인 제2매매 컨펌 요청된 제2매매예정수량을 각각 산출하여, 상기 제1매매완료수량에 상기 제2매매완료수량을 적용하는 업데이트와, 상기 제1매매예정수량에 상기 제2매매예정수량을 적용하는 업데이트를 수행할 수 있다.
상기 블록체인 펜딩 데이터베이스는, 상기 블록체인 매매 컨펌이 완료될 시의 매매 요청 회원의 매매완료수량이 기록되는 레디 컨펌 필드(Ready Confirm Field); 및 블록체인 매매 컨펌 요청되어 출금되기로 예정된 매매예정수량이 기록되는 레디 펜딩 필드(Ready Pending Field);를 포함할 수 있다.
상기 블록체인 거래 처리부는, 매매 요청 회원에게 할당된 블록체인 펜딩 데이터베이스의 레디 컨펌 필드에 기록된 매매완료수량을 A라고 하며, 레디 펜딩 필드에 기록된 매매예정수량을 B라고 할 때, 매매 컨펌의 거래 완료되기 전까지는, 매매완료수량(A) 이내에서 블록체인 매매 거래가 이루어지도록 할 수 있다.
블록체인 컨펌 요청시에 사용되는 매매 요청 회원의 개인키가 제1분할 개인키와 제2분할 개인키로 암호화 분할되어, 상기 제1분할 개인키가 암호화폐 거래소 서버에 저장되며, 제2분할 개인키가 매매 요청 회원 단말기에 저장되어 있으며, 상기 블록체인 제1매매 컨펌 및 블록체인 제2매매 컨펌 요청시에, 매매 요청 회원 단말기로부터 제2분할 개인키를 수신하여, 수신한 제2분할 개인키와 암호화폐 거래소 서버내에 저장된 제1분할 개인키를 이용하여 복호화한 매매 요청 회원의 개인키를 매매 요청 정보와 함께 블록체인 네트워크 처리서버로 전송하여 매매 컨펌을 요청할 수 있다.
또한 본 발명의 실시 형태는, 암호화폐 거래소 서버가, 블록체인 거래가 이루어질 수 있는 실거래 전자지갑을 생성하여 각 회원별로 제공하는 실거래 전자 지갑 제공 과정; 회원 단말기로부터 암호화폐의 매도 또는 매수를 포함한 매매 요청이 있는 경우, 상기 암호화폐 거래소 서버가, 매매 요청 회원의 매매예정수량이 포함된 매매 요청 정보를 블록체인 네트워크 처리서버에 전송하여 블록체인 제1매매 컨펌을 요청하는 블록체인 제1매매 컨펌 요청 과정; 상기 블록체인 제1매매 컨펌에 대한 블록체인 거래가 완료되기 전까지는, 상기 암호화폐 거래소 서버가, 상기 블록체인 제1매매 컨펌이 완료될 시의 매매 요청 회원의 제1매매완료수량과, 블록체인 제1매매 컨펌 요청된 제1매매예정수량을 각각 산출하여 매매 요청 회원에게 할당된 블록체인 펜딩 데이터베이스에 업데이트하는 제1레디 펜딩 처리 과정; 상기 블록체인 제1매매 컨펌에 대한 블록체인 거래가 완료되기 전에 또 다른 블록체인 제2매매 컨펌 요청이 있는 경우, 상기 암호화폐 거래소 서버가, 산출된 제1매매완료수량을 기반으로 블록체인 제2매매 컨펌을 블록체인 네트워크 처리서버에 요청하는 블록체인 제2매매 컨펌 요청 과정; 상기 암호화폐 거래소 서버가, 요청된 블록체인 제2매매 컨펌 요청에 따른 블록체인 펜딩 데이터베이스를 업데이트하는 제2레디 펜딩 처리 과정; 및 상기 블록체인 네트워크 처리서버로부터 블록체인 제1매매 컨펌 또는 블록체인 제2매매 컨펌에 대한 블록체인 거래가 완료된 경우, 상기 암호화폐 거래소 서버가, 블록체인 제1매매 컨펌 또는 블록체인 제2매매 컨펌의 거래 완료 내역을 매매 요청 회원에게 할당된 블록체인 펜딩 데이터베이스내의 매매예정수량에 적용하여 업데이트하는 매매완료처리 과정;을 포함할 수 있다.
상기 제2레디 펜딩 처리 과정은, 상기 블록체인 제2매매 컨펌에 대한 블록체인 거래가 완료되기 전까지는, 상기 블록체인 제2매매 컨펌이 완료될 시의 매매 요청 회원의 제2매매완료수량과, 블록체인 제2매매 컨펌 요청된 제2매매예정수량을 각각 산출하여, 상기 제1매매완료수량에 상기 제2매매완료수량을 적용하는 업데이트와 상기 제1매매예정수량에 상기 제2매매예정수량을 적용하는 업데이트를 수행할 수 있다.
상기 제1레디 펜딩 처리 과정, 제2레디 펜딩 처리 과정, 및 매매완료처리 과정은, 블록체인 매매 컨펌이 요청된 순서대로 상기 블록체인 펜딩 데이터베이스에 업데이트하는 선입선출(FIFO) 방식으로 이루어지도록 할 수 있다.
본 발명의 실시 형태에 따르면 실거래 전자지갑 환경의 암호화폐 거래소 내에서 주문/체결의 실시간 처리로 빠른 응답을 제공함으로써, 짧은 시간 안에 자주 샀다가 팔았다가 하는 블록체인 거래행위를 실시간으로 할 수 있다.
도 1은 본 발명의 실시예에 따른 암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 시스템의 구성도.
도 2는 본 발명의 실시예에 따른 암호화폐 거래소 서버의 구성 블록도.
도 3은 본 발명의 실시예에 따른 레디 펜딩 과정을 도시한 그림.
도 4는 본 발명의 실시예에 따라 제1레디 펜딩이 있은 후 다른 블록체인 거래로 인해 제2레디 펜딩이 발생한 경우를 도시한 그림.
도 5는 본 발명의 실시예에 따라 분할 개인키를 이용한 블록체인 컨펌 요청이 이루어지는 모습을 도시한 구성도.
도 6은 본 발명의 실시예에 따른 암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 과정들을 도시한 플로차트.
이하, 본 발명의 장점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은, 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것으로, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 또한, 본 발명을 설명함에 있어 관련된 공지 기술 등이 본 발명의 요지를 흐리게 할 수 있다고 판단되는 경우 그에 관한 자세한 설명은 생략하기로 한다.
도 1은 본 발명의 실시예에 따른 암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 시스템의 구성도이며, 도 2는 본 발명의 실시예에 따른 암호화폐 거래소 서버의 구성 블록도이며, 도 3은 본 발명의 실시예에 따른 레디 펜딩 과정을 도시한 그림이며, 도 4는 본 발명의 실시예에 따라 제1레디 펜딩이 있은 후 다른 블록체인 거래로 인해 제2레디 펜딩이 발생한 경우를 도시한 그림이며, 도 5는 본 발명의 실시예에 따라 분할 개인키를 이용한 블록체인 컨펌 요청이 이루어지는 모습을 도시한 구성도이다.
통상의 암호화폐의 실제 전송에는 다수의 컨펌 과정을 거쳐야 하기 때문에 이 방식으로는 짧은 시간 안에 자주 샀다가 팔았다가 하는 거래행위가 불가능하다. 이러한 문제를 해결하기 위하여 본 발명의 레디 펜딩 거래 시스템은, 거래소 서버에 블록체인 거래가 실제로 가능한 전자지갑(이하, '실거래 전자지갑'이라 함)을 생성하고, 이러한 실거래 전자기갑을 이용하여 빠르고 안정적인 블록체인 거래행위가 이루어지도록 하여 주문/체결의 실시간 처리로 빠른 응답이 가능하도록 한다.
이를 위하여 본 발명의 암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 시스템은, 도 1에 도시한 바와 같이 유무선 통신망(미도시), 회원 단말기(300), 암호화폐 거래소 서버(200), 및 블록체인 네트워크 처리서버(100)를 포함할 수 있다.
이하에서 암호화폐라 함은, 거래소에서 거래되는 비트코인, 비트코인 캐쉬, 이더리움, 라이트코인, 네임코인, 도기코인, 리플 등의 다양한 디지털 암호화폐들을 모두 포함하는 개념이다.
유무선 통신망(미도시)은, 회원 단말기(300) 및 암호화폐 거래소 서버(200)간에, 암호화폐 거래소 서버(200) 및 블록체인 네트워크 처리서버(100)간에 유선 통신 또는 무선 통신을 제공한다. 이러한 유무선 통신망(미도시)이 무선 통신망으로 구현되는 경우, 기지국(BTS;Base Transceiver Station), 이동교환국(MSC;Mobile Switching Center), 및 홈 위치 등록기(HLR;Home Location Register)로 이루어진 무선 이동통신망을 이용하여 데이터 통신을 할 수 있다. 또한 유무선 통신망(미도시)이 유선 통신망으로 구현되는 경우, 네트워크 통신망으로 구현될 수 있는데 TCP/IP(Transmission Control Protocol/Internet Protocol) 등의 인터넷 프로토콜에 따라서 데이터 통신이 이루어질 수 있다.
회원 단말기(300)는, 암호화폐 거래소 서버(200)에 등록된 회원이 사용하는 단말기로서, 도면에서는 스마트폰(smart phone)을 예로 들어 설명하나, 스마트폰뿐만 아니라 데스크탑 PC(desktop PC), 태블릿 PC(tablet PC), 슬레이트 PC(slate PC), 노트북 컴퓨터(notebook computer) 등이 해당될 수 있다. 물론, 본 발명이 적용 가능한 단말기는 상술한 종류에 한정되지 않고, 외부 장치와 통신이 가능한 단말기를 모두 포함할 수 있음은 당연하다.
회원 단말기(300)는, 암호화폐 거래 앱(APP;application)이 설치되어 있어, 암호화폐 거래소에 접속하여 암호화폐 거래 정보를 표시하며, 또한 암호화폐 거래소 서버(200)에 암호화폐 거래(암호화폐의 매도 또는 매수)를 요청할 수 있다.
예를 들어, 회원 단말기(300)는, 매도하고자 하는 암호화폐의 금액정보 및 거래자의 신상정보를 포함하는 매매 요청신호인 블록체인 컨펌을 요청하고 이를 암호화폐 거래소 서버(200)로 전송하는 블록체인 기반 암호화폐 거래 앱이 탑재된 단말기이다. 여기서, 블록체인 기반 암호화폐 거래 앱은 응용프로그램으로서, 회원 단말기(300)를 통해 앱스토어 접속하여 다운로드받거나 블록체인 기반 디지털 암호화폐 거래소 서버(200)에 직접 접속하여 다운로드 받아 설치하여 사용할 수 있다.
또한, 회원 단말기(300)에는, 블록체인을 갖는 디지털 암호화폐의 금액 입력 및 인스턴트 메신저의 선택 등을 수행하기 위한 블록체인 기반 디지털 암호화폐 거래 화면이 표시된다. 암호화폐 거래 화면은 블록체인을 갖는 암호화폐의 금액이 표시되는 금액 표시 필드등을 포함할 수 있다.
또한 회원 단말기(300)는 매도자 단말기(300a)와 매수자 단말기(300b)가 있을 수 있는데, 이하에서는 암호화폐를 매도하는 단말기를 매도자 단말기(300a)라 하고, 암호화폐를 매수하는 단말기를 매수자 단말기(300b)라 한다.
블록체인 네트워크 처리서버(100)는, 암호화폐 거래소 서버(200)로부터 블록체인 매매 컨펌이 요청되는 경우, 매매 요청 정보에 기반한 블록체인 트랜잭션을 인접 노드에 전파하여 블록체인 매매 컨펌(매미 인증 및 기록)을 완료하고, 블록체인 매매 컨펌의 완료를 암호화폐 거래소 서버(200)에 통보한다. 실제로 비트코인 블록체인 네트워크 처리서버(100)는, 1개의 블록체인 거래당 인접 노드와 6번의 컨펌(confirm)을 주고 받아 거래를 완료한다.
이를 위해, 블록체인 네트워크 처리서버(100)는, 블록체인을 갖는 암호화폐 거래용 트랜잭션정보가 전송 시 그 전송된 블록체인을 갖는 암호화폐 거래용 트랜잭션정보를 검증을 통해 블록체인 기반 암호화폐 거래를 인증하고, 그 인증에 따라 블록체인을 갖는 암호화폐 거래용 트랜잭션정보가 기록되는 블록체인이 탑재된다. 따라서 블록체인을 갖는 암호화폐 거래 시 그 블록체인을 갖는 암호화폐 거래에 대한 컨펌(인증 및 기록)을 통해 블록체인을 갖는 암호화폐 거래를 수행하는 동등 계층간 통신망(P2P : peer-topeer network) 기반 분산 블록체인 네트워크를 이루는 장치들이다. 특히 본 발명에서는, 이러한 블록체인 네트워크 처리서버(100)를 이루는 구성에는, 암호화폐 거래소가 운영하는 각 개인 회원별 전자지갑이 하나의 블록체인 네트워크 처리서버(100)의 구성원으로서 해당된다.
암호화폐 거래소 서버(200)는, 블록체인 거래가 이루어질 수 있는 실거래 전자지갑을 생성하여 각 회원별로 제공한다. 기존에는 실제로 블록체인 거래가 이루어질 수 있는 전자지갑을 각 회원에게 생성하지 않고 데이터베이스로 관리하였으나, 본 발명의 암호화폐 거래소 서버(200)는, 각 회원별로 실제로 블록체인 거래가 이루어질 수 있는 전자지갑을 생성하여 제공한다.
따라서 암호화폐 거래소 서버(200)는, 매도자의 실거래 전자지갑에 보유하고 있는 블록체인 기반 암호화폐 금액정보에서 매도하는 금액만큼 차감하고, 그 차감된 금액만큼 매수자의 실거래 전자지갑의 블록체인 기반 암호화폐 금액정보에 누적시키는 거래내역으로 이루어지는 디지털 암호화폐 거래용 트랜잭션 정보를 생성하여 이를, 블록체인 네트워크 처리서버(100)들에게 전파되도록 한다.
특히 본 발명의 암호화폐 거래소 서버(200)는, 제공되는 실거래 전자기갑을 이용하여 빠르고 안정적인 블록체인 거래행위가 이루어지도록 하기 위하여 레디 펜딩(Ready Pending) 기법을 적용하여 거래를 진행한다.
이를 위해 암호화폐 거래소 서버(200)는, 블록체인 거래가 이루어질 수 있는 실거래 전자지갑을 생성하여 각 회원별로 제공하며, 회원 단말기(300)로부터 암호화폐의 매도 또는 매수를 포함한 매매 요청이 있는 경우, 암호화폐의 매도 또는 매수를 요청한 매매예정수량이 포함된 매매 요청 정보를 블록체인 네트워크 처리서버(100)에 전송하여 블록체인 제1매매 컨펌을 요청하며, 블록체인 제1매매 컨펌이 완료될 시의 매매 요청 회원의 제1매매완료수량과, 블록체인 제1매매 컨펌 요청된 제1매매예정수량을 각각 산출하며, 블록체인 매매 컨펌에 대한 블록체인 거래가 완료되기 전에 또 다른 블록체인 제1매매 컨펌 요청이 있는 경우, 산출된 제1매매완료수량을 기반으로 블록체인 제2매매 컨펌을 블록체인 네트워크 처리서버(100)에 요청하고, 블록체인 네트워크 처리서버(100)로부터 블록체인 제1매매 컨펌 또는 블록체인 제2매매 컨펌에 대한 블록체인 거래가 완료된 경우, 블록체인 제1매매 컨펌 또는 블록체인 제2매매 컨펌의 거래 완료 내역을 매매 요청 회원의 매매예정수량에 업데이트한다.
이하 도 2와 함께 암호화폐 거래소 서버(200)를 상술하면, 암호화폐 거래소 서버(200)는, 회원별 실거래 전자지갑(210), 블록체인 펜딩 데이터베이스(220), 및 블록체인 거래 처리부(230)를 포함할 수 있다. 회원의 분할된 개인키(Private key)가 저장된 분할 개인키 저장부(240)를 더 포함할 수 있다. 이밖에 도시하지는 않았지만, 블록체인 기반 암호화폐 거래소 서버(200)에는 블록체인 기반 암호화폐의 거래를 위해 이용자가 회원 가입 시 등록한 정보로, 회원의 ID, 패스워드, 이통신단말기를 포함하는 전화번호, 주소지를 포함하는 회원신상정보가 회원별로 구분되어 저장되는 회원목록정보 DB(미도시)를 포함한다.
회원별 실거래 전자지갑(210)은, 블록체인 상에서 실제로 암호화폐를 거래할 수 있도록 블록체인 기반 암호화폐 금액정보를 가지는 전자지갑으로서, 각 회원별로 생성되어 할당되어 있다. 따라서 블록체인 거래 트랜잭션이 발생될 시에 각 회원의 실거래 전자지갑에 블록체인 거래 내역이 업데이트 저장된다.
블록체인 펜딩 데이터베이스(220)는, 블록체인 매매 컨펌이 완료될 시의 매매완료수량과, 블록체인 매매 컨펌 요청되어 출금되기로 예정된 매매예정수량이 실시간으로 기록되는 데이터베이스이다. 블록체인 펜딩 데이터베이스(220)는, 하드디스크 드라이브(Hard Disk Drive), SSD 드라이브(Solid State Drive), 플래시메모리(Flash Memory), CF카드(Compact Flash Card), SD카드(Secure Digital Card), SM카드(Smart Media Card), MMC 카드(Multi-Media Card) 또는 메모리 스틱(Memory Stick) 등 정보의 입출력이 가능한 모듈로서 장치의 내부에 암호화 구비되어 있을 수도 있고, 별도의 장치에 암호화 구비되어 있을 수도 있다.
블록체인 펜딩 데이터베이스(220)는, 블록체인 매매 컨펌이 완료될 시의 매매 요청 회원의 매매완료수량이 기록되는 레디 컨펌 필드(Ready Confirm Field)와, 블록체인 매매 컨펌 요청되어 출금되기로 예정된 매매예정수량이 기록되는 레디 펜딩 필드(Ready Pending Field)를 포함한다.
매매 요청 회원에게 할당된 블록체인 펜딩 데이터베이스(220)의 레디 컨펌 필드에 기록된 매매완료수량을 A라고 하며, 레디 펜딩 필드에 기록된 매매예정수량을 B라고 할 때, 'A(B)' 형태로서 기록될 수 있다.
블록체인 거래 처리부(230)는, 회원으로부터 블록체인 제1매매 요청이 있는 경우, 블록체인 네트워크 처리서버(100)에 전송하여 블록체인 제1매매 컨펌을 요청한다.
*아울러 블록체인 거래 처리부(230)는, 블록체인 제1매매 컨펌에 대한 블록체인 거래가 완료되기 전인 경우, 블록체인 제1매매 컨펌이 완료될 시의 매매 요청 회원의 제1매매완료수량과, 블록체인 제1매매 컨펌 요청된 제1매매예정수량을 각각 산출하여 매매 요청 회원에게 할당된 블록체인 펜딩 데이터베이스(220)에 저장하는 제1레디 펜딩 처리를 수행한다. 여기서 매매예정수량의 경우 매도예정수량은 '-'로 표시하며, 매수예정수량은 '+'로 표시한다.
예를 들어, 도 3에 도시한 바와 같이 실거래 전자지갑에 '20'개의 암호화폐를 보유하고 있는 매도자가 암호화폐 '1'개를 매도하고 매수자가 이러한 '1'개를 매수하는 암호화폐 거래가 요청되는 경우, 실제로 블록체인 네트워크상에서 컨펌(인증 및 기록)이 완료되기 전까지는, 도 3(a)에 도시한 바와 같이 매도자가 보유한 20개에서 매도 예정인 1개를 차감한 19개를 매매완료수량으로 산출하고, 또한 매도 예정인 1개를 매매예정수량으로 산출하여 블록체인 펜딩 데이터베이스(220)에 기록한다. 따라서 매도자에 대한 제1레디 펜딩 처리를 수행할 경우, 도 3(a)에 도시한 바와 같이 매도자의 블록체인 펜딩 데이터베이스(220)의 '매매완료수량(매매예정수량)'은, 제1레디 펜딩 처리 이전의 '20(0)'에서 제1레디 펜딩 처리 이후의 '19(-1)로서 기록되게 된다. 참고로, 이러한 레디 펜딩 처리 상태에서는 블록체인 컨펌(인증 및 기록)이 진행되고 있는 상태이므로 매도자의 전자지갑에는 여전히 '20'개의 암호화폐가 존재하는 상태이다.
반면에 매수자 입장에서는, 도 3(b)에 도시한 바와 같이 실제로 블록체인 네트워크상에서 컨펌(인증 및 기록)이 완료되기 전까지는, 매수자가 보유한 5개에서 매수 예정인 1개를 합산한 6개를 매매완료수량으로 산출하고, 또한 매수 예정인 1개를 매매예정수량으로 산출하여 블록체인 펜딩 데이터베이스(220)에 기록한다. 따라서 제1레디 펜딩 처리를 수행할 경우, 도 3(b)에 도시한 바와 같이 매수자의 블록체인 펜딩 데이터베이스(220)의 '매매완료수량(매매예정수량)'은, 제1레디 펜딩 처리 이전의 '5(0)'에서 제1레디 펜딩 처리 이후의 '6(1)'로 변환된다. 참고로, 이러한 레디 펜딩 처리 상태에서는 블록체인 컨펌(블록체인 인증 및 기록)이 진행되고 있는 상태이므로, 레디 펜딩 처리 상채에서는 매수자의 전자지갑에는 여전히 '5'개의 암호화폐가 존재하는 상태이다.
또한 블록체인 거래 처리부(230)는 블록체인 네트워크 처리서버(100)로부터 블록체인 제1매매 컨펌에 대한 블록체인 거래가 완료된 경우, 블록체인 제1매매 컨펌 또는 블록체인 제2매매 컨펌의 거래 완료 내역을 매매 요청 회원에게 할당된 블록체인 펜딩 데이터베이스(220)내의 매매예정수량에 적용하여 업데이트하는 매매완료처리를 한다.
예를 들어, 레디 펜딩 상태에서 블록체인 네트워크 처리서버(100)에서의 컨펌이 완료되는 경우, 도 3(b)에 도시한 바와 같이매도자의 블록체인 펜딩 데이터베이스(220)에는 제1레디 펜딩 처리된 '19(-1)'에서 블록체인 매매완료 처리된 '19(0)'으로서 매매예정수량이 업데이트된다. 마찬가지로 도 3(b)에 도시한 바와 같이 매수자의 블록체인 펜딩 데이터베이스(220)에는 제1레디 펜딩 처리된 '6(1)'에서 블록체인 매매완료 '6(0)'으로서 매매예정수량이 업데이트된다. 참고로, 매매완료처리되면 블록체인 네트워크 처리서버(100)간에 컨펌(블록체인 인증 및 기록)이 완료된 상태로서, 매도자의 전자지갑에는 '19'개의 암호화폐가 존재하며, 매수자의 전자지갑에는 '6'개의 암호화폐가 존재하게 된다.
한편, 블록체인 거래 처리부(230)는, 블록체인 제1매매 컨펌에 대한 블록체인 거래가 완료되지 않은 상태에서, 매매 요청 회원으로부터 또 다른 암호화폐 매매 요청이 있는 경우, 블록체인 펜딩 데이터베이스(220)에 저장된 매매 요청 회원의 제1매매완료수량을 기반으로 또 다른 블록체인 제2매매 컨펌을 블록체인 네트워크 처리서버(100)에 요청한다.
그리고 블록체인 제2매매 컨펌 요청에 따른 블록체인 펜딩 데이터베이스(220)를 업데이트하는 제2레디 펜딩 처리를 수행한다. 이러한 제2레디 펜딩 처리 과정(S650)은, 블록체인 제2매매 컨펌에 대한 블록체인 거래가 완료되기 전까지는, 블록체인 제2매매 컨펌이 완료될 시의 매매 요청 회원의 제2매매완료수량과, 블록체인 제2매매 컨펌 요청된 제2매매예정수량을 각각 산출하여, 제1매매완료수량에 제2매매완료수량을 적용하는 업데이트와, 제1매매예정수량에 제2매매예정수량을 적용하는 업데이트를 수행한다.
예를 들어, 도 4에 도시한 바와 같이 매도자가 제1매수자와 블록체인 거래하여 블록체인 컨펌이 완료되지 않은 제1레디 펜딩 상태에서 매도자와 제2매수자간의 '1'개의 암호화 화폐에 대한 블록체인 거래가 발생되는 경우, 도 4(a)에 도시한 바와 같이 매도자의 블록체인 펜딩 데이터베이스(220)에는 제1레디 펜딩 처리된 '19(-1)'에서 매매예정수량이 '1'개 더 추가되어 '18(-2)'로 업데이트된다. 또한 제2매수자의 블록체인 펜딩 데이터베이스(220)에는 도 4(c)에 도시한 바와 같이 기존의 '14(0)'에서 매수하는 매매예정수량 '1'이 반영되어 '15(1)'로 기록된다.
따라서 제1매매거래로 인한 거래 컨펌(인증 및 기록)이 실제로 전자지갑에 업데이트되기 전이라도, 레디 펜딩된 데이터를 근거로 제2매매거래가 이루어지도록 함으로써, 블록체인의 주문/체결의 실시간 처리로 빠른 응답이 이루어질 수 있다.
다만, 실제로 주문되었지만 실거래 전자지갑에 실제로 컨펌 내역이 반영되어 있지 않은 상태에서 주문/체결이 이루어짐에 따른 사고를 방지할 필요가 있다. 예를 들어, 매도자 '홍길동'이 12개의 암호화폐를 보유한 상태에서 2개를 매도 주문체결된 경우, 블록체인 네트워크 처리서버(100)에서 컨펌이 완료되기 전까지는 레디 펜딩이 '10(-2)'로서 기록되며, 실제로 '홍길동'의 실거래 전자지갑에는 12개의 암호화폐가 여전히 존재하게 된다. 실거래 전자지갑에는 12개의 암호화폐가 존재하지만, 이 2개는 이미 매도 주문 체결되어 있어 실제로 10개의 암호화폐만 매도 주문할 수 있는 수량이다. 이에 '홍길동'이 2개의 1차 매도 주문하여 레디 펜딩 상태에서 10개 이내가 아닌 10개를 초과하는 12개의 2차 매도 주문을 내는 것을 방지할 필요가 있다.
이를 위하여 본 발명의 블록체인 거래 처리부(230)는, 매매 요청 회원에게 할당된 블록체인 펜딩 데이터베이스(220)의 레디 컨펌 필드에 기록된 매매완료수량을 A라고 하며, 레디 펜딩 필드에 기록된 매매예정수량을 B라고 할 때, 매매 컨펌의 거래 완료되기 전의 상태(레디 펜딩 상태)까지는, 매매완료수량(A) 이내에서 블록체인 매매 거래가 이루어지도록 제한한다.
한편, 본 발명의 암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 시스템을 구현함에 있어서, 보안성을 향상시키고 탈중앙식 거래가 이루어지도록 할 필요가 있다. 이를 위하여 도 5에 도시한 바와 같이 블록체인 컨펌 요청시에 사용되는 매매 요청 회원의 개인키가 제1분할 개인키와 제2분할 개인키로 암호화 분할되어, 상기 제1분할 개인키가 암호화폐 거래소 서버(200)의 분할 개인키 저장부(240)에 저장되며, 제2분할 개인키가 매매 요청 회원 단말기(300)에 저장되어 있도록 한다. 그리고 블록체인 제1매매 컨펌 및 블록체인 제2매매 컨펌 요청시에, 매매 요청 회원 단말기(300)로부터 제2분할 개인키를 수신하여, 수신한 제2분할 개인키와 암호화폐 거래소 서버(200)내에 저장된 제1분할 개인키를 이용하여 복호화한 매매 요청 회원의 개인키를 매매 요청 정보와 함께 블록체인 네트워크 처리서버(100)로 전송하여 매매 컨펌을 요청한다.
참고로, 도 5를 참조하면, 제1분할 개인키와 제2분할 개인키로 암호화 분할은 별도의 암호화 보안 서버(400)가 담당한다. 그리고 별도의 보안 서비스 서버(500)를 구비하여 분할 암호화키 분실한 회원에게 회원 정보 인증후에 분할 암호화키를 재발급해줄 수 있다.
도 6은 본 발명의 실시예에 따른 암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 과정들을 도시한 플로차트이다.
본 발명의 암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 방법은, 도 6에 도시한 바와 같이 실거래 전자 지갑 제공 과정(S610), 제1매매 컨펌 요청 과정(S620), 제1레디 펜딩 처리 과정(S630), 제2매매 컨펌 요청 과정(S640), 제2레디 펜딩 처리 과정(S650), 및 매매완료처리 과정(S660)을 포함할 수 있다.
실거래 전자 지갑 제공 과정(S610)은, 암호화폐 거래소 서버(200)가, 블록체인 거래가 이루어질 수 있는 실거래 전자지갑을 생성하여 각 회원별로 제공하는 과정이다. 이러한 회원별 실거래 전자지갑(210)은, 블록체인 네트워크에 참여하여 블록체인 컨펌(인증 및 기록)할 수 있는 블록체인 구성 요소가 된다.
블록체인 제1매매 컨펌 요청 과정(S620)은, 회원 단말기(300)로부터 암호화폐의 매도 또는 매수를 포함한 매매 요청이 있는 경우, 암호화폐 거래소 서버(200)가, 매매 요청 회원의 매매예정수량이 포함된 매매 요청 정보를 블록체인 네트워크 처리서버(100)에 전송하여 블록체인 제1매매 컨펌을 요청하는 과정이다.
제1레디 펜딩 처리 과정(S630)은, 블록체인 제1매매 컨펌에 대한 블록체인 거래가 완료되기 전까지는, 암호화폐 거래소 서버(200)가, 블록체인 제1매매 컨펌이 완료될 시의 매매 요청 회원의 제1매매완료수량과, 블록체인 제1매매 컨펌 요청된 제1매매예정수량을 각각 산출하여 매매 요청 회원에게 할당된 블록체인 펜딩 데이터베이스(220)에 업데이트하는 과정이다.
예를 들어, 도 3(a)에 도시한 바와 같이 실거래 전자지갑에 '20'개의 암호화폐를 보유하고 있는 매도자가 암호화폐 '1'개를 매도하고 매수자가 이러한 '1'개를 매수하는 암호화폐 거래가 요청되는 경우, 실제로 블록체인 네트워크상에서 컨펌(인증 및 기록)이 완료되기 전까지는, 매도자가 보유한 20개에서 매도 예정인 1개를 차감한 19개를 매매완료수량으로 산출하고, 또한 매도 예정인 1개를 매매예정수량으로 산출하여 블록체인 펜딩 데이터베이스(220)에 기록한다. 따라서 제1레디 펜딩 처리를 수행할 경우, 매도자의 블록체인 펜딩 데이터베이스(220)의 '매매완료수량(매매예정수량)'은, 제1레디 펜딩 처리 이전의 '20(0)'에서 제1레디 펜딩 처리 이후의 '19(-1)로서 기록되게 된다. 참고로, 이러한 레디 펜딩 처리 상태에서는 블록체인 컨펌(인증 및 기록)이 진행되고 있는 상태이므로 매도자의 전자지갑에는 여전히 '20'개의 암호화폐가 존재하는 상태이다.
반면에 매수자 입장에서는, 도 3(b)에 도시한 바와 같이 실제로 블록체인 네트워크상에서 컨펌(인증 및 기록)이 완료되기 전까지는, 매수자가 보유한 5개에서 매수 예정인 1개를 합산한 6개를 매매완료수량으로 산출하고, 또한 매수 예정인 1개를 매매예정수량으로 산출하여 블록체인 펜딩 데이터베이스(220)에 기록한다. 따라서 제1레디 펜딩 처리를 수행할 경우, .매수자의 블록체인 펜딩 데이터베이스(220)의 '매매완료수량(매매예정수량)'은, 제1레디 펜딩 처리 이전의 '5(0)'에서 제1레디 펜딩 처리 이후의 '6(1)'로 변환된다. 참고로, 이러한 레디 펜딩 처리 상태에서는 블록체인 컨펌(블록체인 인증 및 기록)이 진행되고 있는 상태이므로 매수자의 전자지갑에는 '6개'가 아니라 여전히 '5개'의 암호화폐가 존재하는 상태이다.
제2매매 컨펌 요청 과정(S640)은, 블록체인 제1매매 컨펌에 대한 블록체인 거래가 완료되기 전에 또 다른 블록체인 제2매매 컨펌 요청이 있는 경우, 암호화폐 거래소 서버(200)가, 산출된 제1매매완료수량을 기반으로 블록체인 제2매매 컨펌을 블록체인 네트워크 처리서버(100)에 요청하는 과정이다.
예를 들어, 도 4에 도시한 바와 같이 매도자가 제1매수자와 블록체인 거래하여 블록체인 컨펌이 완료되지 않은 제1레디 펜딩 상태에서 매도자와 제2매수자간의 '1'개의 암호화 화폐에 대한 블록체인 거래가 발생되는 경우, 매도자와 제2매수자간의 '1'개의 암호화 화폐에 대한 매매 컨펌을 블록체인 네트워크 처리서버(100)에 요청한다.
제2레디 펜딩 처리 과정(S650)은, 암호화폐 거래소 서버(200)가, 요청된 블록체인 제2매매 컨펌 요청에 따른 블록체인 펜딩 데이터베이스(220)를 업데이트하는 과정이다. 즉, 제2레디 펜딩 처리 과정(S650)은, 블록체인 제2매매 컨펌에 대한 블록체인 거래가 완료되기 전까지는, 블록체인 제2매매 컨펌이 완료될 시의 매매 요청 회원의 제2매매완료수량과, 블록체인 제2매매 컨펌 요청된 제2매매예정수량을 각각 산출하여, 제1매매완료수량에 제2매매완료수량을 적용하는 업데이트와 상기 제1매매예정수량에 제2매매예정수량을 블록체인 펜딩 데이터베이스(220)에 업데이트하는 과정이다.
예를 들어, 도 4에 도시한 바와 같이 매도자가 제1매수자와 블록체인 거래하여 블록체인 컨펌이 완료되지 않은 제1레디 펜딩 상태에서 매도자와 제2매수자간의 '1'개의 암호화 화폐에 대한 블록체인 거래가 발생되는 경우, 도 4(a)에 도시한 바와 같이 매도자의 블록체인 펜딩 데이터베이스(220)에는 제1레디 펜딩 처리된 '19(-1)'에서 매매예정수량이 '1'개 더 추가되어 '18(-2)'로 업데이트된다. 또한 제2매수자의 블록체인 펜딩 데이터베이스(220)에는, 도 4(c)에 도시한 바와 같이 기존의 '14(0)'에서 매수하는 매매예정수량 '1'가 반영되어 '15(1)'로 기록된다. 따라서 제1매매거래로 인한 거래 컨펌(인증 및 기록)이 실제로 전자지갑에 업데이트되기 전이라도, 레디 펜딩된 데이터를 근거로 제2매매거래가 이루어지도록 함으로써, 블록체인의 주문/체결의 실시간 처리로 빠른 응답이 이루어질 수 있다.
매매완료처리 과정(S660)은, 블록체인 네트워크 처리서버(100)로부터 블록체인 제1매매 컨펌 또는 블록체인 제2매매 컨펌에 대한 블록체인 거래가 완료된 경우, 암호화폐 거래소 서버(200)가, 블록체인 제1매매 컨펌 또는 블록체인 제2매매 컨펌의 거래 완료 내역을 매매 요청 회원에게 할당된 블록체인 펜딩 데이터베이스(220)내의 매매예정수량에 적용하여 업데이트하는 과정이다.
예를 들어, 레디 펜딩 상태에서 블록체인 네트워크 처리서버(100)에서의 컨펌이 완료되는 경우, 도 3(a)에 도시한 바와 같이 매도자의 블록체인 펜딩 데이터베이스(220)에는 제1레디 펜딩 처리된 '19(-1)'에서 블록체인 매매완료 처리된 '19(0)'으로서 매매예정수량이 업데이트된다. 마찬가지로 도 3(b)에 도시한 바와 같이 매수자의 블록체인 펜딩 데이터베이스(220)에는 제1레디 펜딩 처리된 '6(1)'에서 블록체인 매매완료 '6(0)'으로서 매매예정수량이 업데이트된다. 참고로, 매매완료처리되면 블록체인 네트워크 처리서버(100)간에 컨펌(블록체인 인증 및 기록)이 완료된 상태로서, 매도자의 전자지갑에는 '19'개의 암호화폐가 존재하며, 매수자의 전자지갑에는 '6'개의 암호화폐가 존재하게 된다.
한편, 상기에서 설명한 제1레디 펜딩 처리 과정(S630), 제2레디 펜딩 처리 과정(S650), 및 매매완료처리 과정(S660)은, 블록체인 매매 컨펌이 요청된 순서대로 블록체인 펜딩 데이터베이스(220)에 업데이트하는 선입선출(FIFO) 방식으로 이루어지도록 한다. 먼저 요청된 순서대로 처리되는 선입선출 방식으로 업데이트가 이루어지도록 함으로써, 다수개의 블록체인 매매 컨펌 발생시에 업데이트 에러가 발생되지 않도록 할 수 있다.
상술한 본 발명의 설명에서의 실시예는 여러가지 실시가능한 예중에서 당업자의 이해를 돕기 위하여 가장 바람직한 예를 선정하여 제시한 것으로, 이 발명의 기술적 사상이 반드시 이 실시예만 의해서 한정되거나 제한되는 것은 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위내에서 다양한 변화와 변경 및 균등한 타의 실시예가 가능한 것이다.
100:블록체인 네트워크 처리서버
200:암호화폐 거래소 서버
210:회원별 실거래 전자지갑
220:블록체인 펜딩 데이터베이스
230:블록체인 거래 처리부
300:회원 단말기

Claims (7)

  1. 암호화폐 거래소 서버에 등록된 회원이 사용하는 단말기로서, 암호화폐 거래 정보를 표시하며 암호화폐 거래소 서버에 암호화폐 거래를 요청하는 회원 단말기;
    각 회원별로 블록체인 기반 암호화폐 금액정보를 가지는 실거래 전자지갑을 생성하여 할당하고, 상기 실거래 전자지갑을 기반으로 블록체인 매매에 대한 거래를 처리하되, 컨펌 절차와 펜딩 절차로 구분하여 처리하는 레디 펜딩(Ready Pending)을 기초로 블록체인 매매 주문 및 체결에 대한 데이터베이스를 구축하여 실시간 적으로 블록체인 매매를 처리하는 암호화폐 거래소 서버;
    상기 암호화폐 거래소 서버로부터 블록체인 매매 컨펌이 요청되는 경우, 매매 요청 정보에 기반한 블록체인 트랜잭션을 인접 노드에 전파하여 블록체인 매매 컨펌을 완료하고, 블록체인 매매 컨펌의 완료를 상기 암호화폐 거래소 서버에 통보하는 블록체인 네트워크 처리서버;를 포함하되,
    상기 암호화폐 거래소 서버는,
    상기 회원 단말기로부터 암호화폐의 매도 또는 매수를 포함한 매매 요청이 있는 경우, 암호화폐의 매도 또는 매수를 요청한 매매예정수량이 포함된 매매 요청 정보를 블록체인 네트워크 처리서버에 전송하여 블록체인 제1매매 컨펌을 요청하며,
    상기 블록체인 제1매매 컨펌에 대한 블록체인 거래가 완료되기 전인 경우, 상기 블록체인 제1매매 컨펌이 완료될 시의 매매 요청 회원의 제1매매완료수량과, 블록체인 제1매매 컨펌 요청된 제1매매예정수량을 각각 산출하여 매매 요청 회원에게 할당된 블록체인 펜딩 데이터베이스에 저장하는 제1레디 펜딩 처리를 수행하며,
    산출된 제1매매완료수량을 기반으로 또 다른 블록체인 매매 컨펌인 블록체인 제2매매 컨펌이 요청되는 경우, 블록체인 제2매매 컨펌 요청에 따른 블록체인 펜딩 데이터베이스를 업데이트하는 제2레디 펜딩 처리를 수행하며,
    상기 블록체인 네트워크 처리서버로부터 블록체인 제1매매 컨펌 또는 블록체인 제2매매 컨펌에 대한 블록체인 거래가 완료된 경우, 블록체인 제1매매 컨펌 또는 블록체인 제2매매 컨펌의 거래 완료 내역을 매매 요청 회원의 매매예정수량에 업데이트하되,
    상기 제2레디 펜딩 처리를 수행하기 위해,
    상기 블록체인 제2매매 컨펌에 대한 블록체인 거래가 완료되기 전까지는, 상기 암호화폐 거래소 서버가, 상기 블록체인 제2매매 컨펌이 완료될 시의 매매 요청 회원의 제2매매완료수량과, 블록체인 제2매매 컨펌 요청된 제2매매예정수량을 각각 산출하여, 상기 제1매매완료수량에 상기 제2매매완료수량을 적용하는 업데이트와, 상기 제1매매예정수량에 상기 제2매매예정수량을 적용하는 업데이트를 수행하고,
    상기 암호화폐 거래소 서버는,
    각 회원별로 생성되어 할당되어 있으며, 블록체인 상에서 실제로 암호화폐를 거래할 수 있도록 블록체인 기반 회원의 암호화폐 금액정보를 가지는 회원별 실거래 전자지갑;
    블록체인 제1매매 컨펌이 완료될 시의 매매완료수량과, 블록체인 매매 컨펌 요청되어 출금되기로 예정된 매매예정수량이 실시간으로 기록되는 블록체인 펜딩 데이터베이스; 및
    회원으로부터 블록체인 제1매매 요청이 있는 경우 블록체인 네트워크 처리서버에 전송하여 블록체인 제1매매 컨펌을 요청하며, 상기 제1레디 펜딩 처리 및 제2레디 펜딩 처리를 수행하며, 상기 블록체인 네트워크 처리서버로부터 블록체인 제1매매 컨펌 또는 블록체인 제2매매 컨펌에 대한 블록체인 거래가 완료된 경우, 블록체인 제1매매 컨펌 또는 블록체인 제2매매 컨펌의 거래 완료 내역을 매매 요청 회원에게 할당된 블록체인 펜딩 데이터베이스내의 매매예정수량에 적용하여 업데이트하는 매매완료처리를 수행하는 블록체인 거래 처리부; 를 포함하고,
    상기 블록체인 펜딩 데이터베이스는,
    상기 블록체인 매매 컨펌이 완료될 시의 매매 요청 회원의 매매완료수량이 기록되는 레디 컨펌 필드(Ready Confirm Field); 및
    블록체인 매매 컨펌 요청되어 출금되기로 예정된 매매예정수량이 기록되는 레디 펜딩 필드(Ready Pending Field); 를 포함하는,
    암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 시스템.
  2. 삭제
  3. 삭제
  4. 청구항 1에 있어서, 상기 블록체인 거래 처리부는,
    매매 요청 회원에게 할당된 블록체인 펜딩 데이터베이스의 레디 컨펌 필드에 기록된 매매완료수량을 A라고 하며, 레디 펜딩 필드에 기록된 매매예정수량을 B라고 할 때, 매매 컨펌의 거래 완료되기 전까지는, 매매완료수량(A) 이내에서 블록체인 매매 거래가 이루어지도록 함을 특징으로 하는 암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 시스템.
  5. 청구항 1에 있어서,
    블록체인 컨펌 요청시에 사용되는 매매 요청 회원의 개인키가 제1분할 개인키와 제2분할 개인키로 암호화 분할되어, 상기 제1분할 개인키가 암호화폐 거래소 서버에 저장되며, 제2분할 개인키가 매매 요청 회원 단말기에 저장되어 있으며,
    상기 블록체인 제1매매 컨펌 및 블록체인 제2매매 컨펌 요청시에, 매매 요청 회원 단말기로부터 제2분할 개인키를 수신하여, 수신한 제2분할 개인키와 암호화폐 거래소 서버내에 저장된 제1분할 개인키를 이용하여 복호화한 매매 요청 회원의 개인키를 매매 요청 정보와 함께 블록체인 네트워크 처리서버로 전송하여 매매 컨펌을 요청하는 암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 시스템.
  6. 삭제
  7. 삭제
KR1020200038486A 2018-03-29 2020-03-30 암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 시스템 및 그 거래 방법 KR102390396B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200038486A KR102390396B1 (ko) 2018-03-29 2020-03-30 암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 시스템 및 그 거래 방법

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020180036782A KR20190114292A (ko) 2018-03-29 2018-03-29 암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 시스템 및 그 거래 방법
KR1020200038486A KR102390396B1 (ko) 2018-03-29 2020-03-30 암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 시스템 및 그 거래 방법

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020180036782A Division KR20190114292A (ko) 2018-03-29 2018-03-29 암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 시스템 및 그 거래 방법

Publications (2)

Publication Number Publication Date
KR20200038899A KR20200038899A (ko) 2020-04-14
KR102390396B1 true KR102390396B1 (ko) 2022-05-13

Family

ID=81583714

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200038486A KR102390396B1 (ko) 2018-03-29 2020-03-30 암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 시스템 및 그 거래 방법

Country Status (1)

Country Link
KR (1) KR102390396B1 (ko)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101673073B1 (ko) * 2015-02-25 2016-11-04 이진희 블록체인 구조를 사용하는 암호화화폐 거래방법
KR101724401B1 (ko) * 2015-05-29 2017-04-07 한국정보인증주식회사 생체 정보 인식과 키 분할 방식을 이용한 공인인증 시스템 및 그 방법, 그 방법을 수행하는 프로그램이 기록된 기록매체
KR101815270B1 (ko) * 2015-12-18 2018-01-08 주식회사 센트비 가상화폐를 이용한 환전 및 송금서비스 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
‘[암호화화폐] 거래소에서의 코인 거래 원리 (장기 미접속 청산주의)’, Steemit(2017.11.16. 게재)*

Also Published As

Publication number Publication date
KR20200038899A (ko) 2020-04-14

Similar Documents

Publication Publication Date Title
KR101852935B1 (ko) 전자 화폐 거래 시스템 및 방법
US11694207B2 (en) Securing an exchange item associated with fraud
US20230015356A1 (en) No point-of-sale terminal exchange item redemption
US11978084B2 (en) Decentralized computer systems and methods for using a debit network as an intermediary between distributed ledgers
US9165321B1 (en) Optimistic receipt flow
KR102120539B1 (ko) 블록체인 기반 상품권 토큰 유통 시스템
KR102110605B1 (ko) 암호화폐 거래소내 실거래 전자지갑 기반의 블록체인 거래 처리 방법
CN109804401A (zh) 用于经由区块链认证优惠券的方法和系统
CN108701307A (zh) 用于验证令牌请求者的方法和系统
KR102295236B1 (ko) 블록체인 네트워크에 기반하여 소장품 소유권을 분양하는 방법 및 이를 이용한 온라인 거래 서버
KR101996802B1 (ko) 암호화폐를 이용한 결제 및 보상 방법
KR102182072B1 (ko) 실물 자산에 기반한 디지털 자산의 관리 방법 및 이를 이용한 실물자산 거래 시스템
US20190385136A1 (en) System and Method for Generating Permanent Data Records and Assets for Digital Items in a Networked Video Game System
KR102095044B1 (ko) 가상화폐 기반의 상품 구매가 가능한 자동판매기
CN107852333A (zh) 用于可公开验证的授权的系统和方法
KR20190095664A (ko) 블록체인에 기반한 디지털 가상화폐의 국가간 거래 중개 서비스 시스템
KR20190114292A (ko) 암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 시스템 및 그 거래 방법
KR20200041236A (ko) 블록체인 기반 가상쿠폰을 이용한 전자상 거래 시스템 및 그 방법
KR20140106012A (ko) 모바일 쇼핑에서의 대리 결제 시스템 및 방법
KR102091190B1 (ko) 가상 화폐를 이용한 결제 시스템 및 그 방법
CN107209894A (zh) 交易方法
KR102390396B1 (ko) 암호화폐 거래소내 실거래 전자지갑 기반의 레디 펜딩 거래 시스템 및 그 거래 방법
KR102059175B1 (ko) 암호 화폐 지갑 기반의 암호 화폐 거래 시스템 및 방법
WO2022092162A1 (ja) 情報処理装置、プログラム、方法、端末
WO2019123676A1 (ja) 仮想通貨管理システム、プログラム

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right