KR101936759B1 - Apparatus and Method for KYC using KYC blockchain - Google Patents

Apparatus and Method for KYC using KYC blockchain Download PDF

Info

Publication number
KR101936759B1
KR101936759B1 KR1020180088210A KR20180088210A KR101936759B1 KR 101936759 B1 KR101936759 B1 KR 101936759B1 KR 1020180088210 A KR1020180088210 A KR 1020180088210A KR 20180088210 A KR20180088210 A KR 20180088210A KR 101936759 B1 KR101936759 B1 KR 101936759B1
Authority
KR
South Korea
Prior art keywords
kyc
information
account
block chain
deposit
Prior art date
Application number
KR1020180088210A
Other languages
Korean (ko)
Inventor
임지순
이일영
김승연
Original Assignee
주식회사 미탭스플러스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 미탭스플러스 filed Critical 주식회사 미탭스플러스
Priority to KR1020180088210A priority Critical patent/KR101936759B1/en
Application granted granted Critical
Publication of KR101936759B1 publication Critical patent/KR101936759B1/en

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/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/4016Transaction verification involving fraud or risk level assessment in transaction processing
    • 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
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0609Buyer or seller confidence or verification

Landscapes

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

Abstract

The present invention relates to an apparatus for performing KYC using a blockchain and a method thereof. To this end, according to the present invention, the method comprises a step in which a KYC node receives a request for deposit/withdrawal permission or denial information on account information and identification information from a service server; a first indexing step in which the KYC node indexes the account information or the identification information from a KYC blockchain stored in a memory module of the KYC node; a secondary indexing step in which if the deposit/ withdrawal permission or denial information is not previously stored in the first indexing step, the KYC node indexes an associated account which is an account that has been directly or indirectly traded with the account information from a public blockchain including an account of the account information, and generates the associated account; a step in which the KYC node transmits the associated account to the service server; a step in which the KYC node receives the deposit/withdrawal permission or denial information on account information and identification information; and a blockchain recording step in which the KYC node generates and distributes a KYC transaction, which is a transaction for the account information, identification information and deposit/withdrawal permission or denial information to the KYC blockchain.

Description

KYC 블록체인을 이용한 KYC 수행 장치 및 방법{Apparatus and Method for KYC using KYC blockchain}[0001] The present invention relates to an apparatus and a method for performing a KYC block using a KYC block chain,

본 발명은 블록체인을 이용한 KYC 수행 장치 및 방법에 관한 것이다.The present invention relates to an apparatus and a method for performing a KYC using a block chain.

블록체인은 다양한 기술분야에 적용될 수 있지만, ICO(Initial Coin Offering)에 의해 Fundraising이 용이해지면서 암호화 화폐(혹은, 가상 화폐)를 구현하기 위한 기술로써 발전했다. 예를 들어, 비트코인도 블록체인 기술을 이용함으로써 일반 통화와는 달리 중앙은행과 같은 제3자가 가치를 담보하지 않아도 통화와 같은 가치를 갖는 것을 달성해가고 있다. 블록체인 발명 이전에는 화폐를 대체할 전자 화폐를 만들기 위해서 그 가치를 보장하거나 화폐의 거래 기록을 관리하는 '미들맨'이 반드시 필요했다. 하지만, 블록체인을 이용하면 다음과 같은 구조로 제3자 기관이 없이도 특정 암호화 화폐가 실제 화폐로서 기능할 수 있게 된다.The block chain can be applied to various technical fields, but it has developed as a technology for implementing encrypted currency (or virtual currency) as facilitating fundraising by ICO (Initial Coin Offering). For example, by using block-chaining technology, bit-coin is achieving the same value as a currency, even if a third party such as a central bank does not secure value, unlike a general currency. Before the invention of the block chain, 'middle man' was needed to guarantee the value of electronic money to replace the money or to manage the transaction record of the money. However, by using the block chain, a specific encrypted currency can function as real money without a third party organization by the following structure.

(1) 블록이 시간별로 정렬되어 있고, 블록에 거래기록과 앞의 블록에 대한 연결 정보가 포함되어 위조 및 변조가 어려움. (1) Blocks are sorted by time, and blocks contain transaction records and connection information for the previous blocks, making it difficult to forge or tamper with.

(2) 분산형 원장 구조를 취함으로써 거래의 투명성이 높고 이중 지급이 어려움.(2) Transparency is high and double payment is difficult by adopting a decentralized ledger structure.

위와 같은 이유로 암호화 화폐는 화폐로서의 기능을 담보할 수 있게 되었다. 이와 같은 속성을 가진 암호화 화폐는 Bitcoin, Litecoin, Ripple, Etherium, Dash, Monero 등 여러가지가 퍼블릭하게 발행되어 있다. 특히, ICO(Initial Coin Offering)을 통해 특정 토큰에 대해 큰 규모의 Fundraising이 이루어지고 있는 실정이다. 이처럼 다양한 암호화 화폐가 발행되어 있지만, 네트워크 효과로 인해 주로 사용되는 것과 그렇지 않은 것으로 나뉘어 있는 상태이다. For the above reasons, the encrypted currency can be secured as a currency. Encrypted currencies with such properties are published publicly, such as Bitcoin, Litecoin, Ripple, Etherium, Dash, and Monero. In particular, large-scale fundraising is being conducted for specific tokens through ICO (Initial Coin Offering). Although these various types of encrypted money are issued, they are divided into those which are mainly used and those which are not used due to the network effect.

또한, 블록체인을 이용한 다양한 어플리케이션(Dapp)들이 시도되고 있다. 예를 들어, Sentbe, Align Commerce, Moin 등의 국제 송금 서비스, Bank of America와 HSBC 홀딩스 등에서 검증한 신용장 거래 서비스, 각종 자금 조달, 전력 판매 서비스, Steemit, Streamium과 같은 콘텐츠 서비스, Nem과 같은 공증 서비스, Blockai 등과 같은 저작권 관리 서비스, Everledger와 같은 물품 거래 추적 서비스, Visa와 Docusign의 계약 관리 및 실행 서비스 등이 널리 시도되고 있다.In addition, various applications using block chains (Dapp) have been attempted. For example, international remittance services such as Sentbe, Align Commerce, and Moin, credit services, such as Bank of America and HSBC Holdings, various financing, electricity sales services, content services such as Steemit and Streamium, , Blockai, etc., transaction tracking services such as Everledger, and contract management and execution services of Visa and Docusign.

Bitrex, Bithumb, Bitfinex 등의 거래소에서의 암호화 화폐 거래가 일반 대중들에게까지 확장되고, ICO를 이용하여 Fundraising 하는 사례가 늘어나게 되면서 기존의 금융 거래와 마찬가지로 거래자, 투자자, 구매자, 사용자의 신원을 알기 위하여 KYC(Know Your Customer) 절차가 이용되기 시작하였다. Encrypted money transactions on exchanges such as Bitrex, Bithumb, and Bitfinex have expanded to the general public and fundraising has been increasing with ICO. In order to know the identity of traders, investors, buyers and users as well as existing financial transactions, KYC (Know Your Customer) procedures have begun to be used.

사용자들(거래자, 투자자, 구매자 등 포함)이 각종 ICO, 거래소, Dapp 등을 이용하기 위해서는 항상 KYC(Know Your Customer) 절차의 수행이 선행되어야 하는 실정이다. ICO의 KYC 절차는 일반적으로 다음과 같이 진행된다. In order for users (including traders, investors, buyers) to use various ICOs, exchanges, and Dapps, KYC (Know Your Customer) procedures should be preceded. The ICO's KYC procedure generally proceeds as follows.

(1) 토큰 구매자가 구매자 정보(사용언어, 성명, 이메일 등 연락처, 암호화 화폐 지갑 주소, 토큰 구매를 원하는 수량, 신분증을 들고 얼굴 인식이 가능하도록 찍은 본인 사진)를 입력하고, 약관에 동의(1) The token buyer enters the buyer's information (user's language, name, e-mail address, encrypted wallet address, quantity to buy token,

(2) 토큰 판매자가 구매자 정보를 기초로 White List에 등록할지 여부를 결정하고, White List에 등록된 토큰 구매자의 구매자 정보 중 암호화 화폐 지갑 주소(예를 들면, ETH 지갑 주소)와 토큰 구매를 원하는 수량(예를 들면, 100ETH 만큼의 토큰 구매)을 ICO의 스마트 계약에 기록(2) the token seller decides whether to register in the White List based on the buyer information, and determines whether to buy the encrypted money wallet address (for example, ETH wallet address) of the buyer information of the token buyer registered in the White List Record quantity (for example, purchase of 100 ETH token) in ICO's Smart Agreement

위의 2번 단계에서 토큰 판매자는 다음과 같은 토큰 구매자를 ICO 스마트 계약의 White List에 등록하지 않게 된다. In step 2 above, the token seller will not register the following token buyer in the White List of the ICO Smart Agreement.

(1) ICO 금지 국가의 국민(예를 들어, 미국, 중국, 싱가포르 등)(1) Citizens of prohibited ICO countries (eg, the United States, China, Singapore, etc.)

(2) KYC 절차에 요구되는 정보와 서류를 제출하지 않은 경우(2) You have not submitted the information and documents required for the KYC procedure.

(3) 부적절한 계정(예를 들어, 불법 자금 세탁, 테러 관련 자금 등)(3) Inadequate accounts (eg, illegal money laundering, terrorist financing, etc.)

ICO 스마트 계약의 White List에 등록되지 않은 지갑 주소에서 송금되는 토큰은 곧바로 반환되거나 ICO 토큰의 교환이 이루어지지 않게 된다. Tokens sent from wallet addresses not listed in the White List of the ICO Smart Contract will be returned immediately or ICO Tokens will not be exchanged.

위와 같은 복잡한 KYC 절차는 매번 모든 ICO, 거래소 가입, Dapp 이용 시에 매번 중복적으로 발생되고 있다. 이는 사용자(토큰 구매자, 투자자, Dapp 사용자 등)에게 블록체인 서비스를 이용하게 하는 진입장벽이 되고 있고, 서비스 제공자(토큰 판매자, 거래소 운영자, Dapp 운영자 등)에게도 블록체인 제품이나 서비스 자체에 리소스를 집중하기 어렵게 만드는 문제가 발생되고 있다. These complex KYC procedures are duplicated every time every ICO, exchange subscription, and Dapp use. This has become an entry barriers for users (Token buyers, investors, Dapp users, etc.) to use block chaining services, and it is also important for service providers (token sellers, exchange operators, Dapp operators, etc.) There is a problem that makes it difficult to do so.

대한민국 등록특허, 10-1751025, 블록체인 기반의 스마트 증권업무 처리 시스템(Smart system for trading stock based blockchain), 주식회사 온더Korean Patent No. 10-1751025, a smart system for trading stock based blockchain based on block chain, 대한민국 등록특허, 10-1758870, 마이닝 관리 시스템 및 이를 이용한 마이닝 관리 방법(Mining Rig Monitoring System And Mining Rig Monitoring Method In Using Same), 주식회사 온더Korean Patent Registration No. 10-1758870, Mining Management System and Mining Management Method Thereof (Mining Rig Monitoring System and Mining Rig Monitoring Method In Using Same) 미국 공개특허, US 2016/0342989 A1, Method and system for processing blockchain-based transactions on existing payment networks, Mastercard International IncorporatedU.S. Published Patent Application No. US 2016/0342989 A1, Method and system for processing blockage-based transactions on existing payment networks, Mastercard International Incorporated 미국 공개특허, US 2016/0292672 A1, Systems and methods of blockchain transaction recordation, Nasdaq, Inc.U.S. Published Patent, US 2016/0292672 A1, Systems and methods of blockchain transaction recordation, Nasdaq, Inc. 미국 공개특허, US 20170132615 A1, Block chain alias for person-to-person payments, Bank Of America CorporationU.S. Published Patent, US 20170132615 A1, Block chain alias for person-to-person payments, Bank Of America Corporation 대한민국 등록특허, 10-1857223, 블록체인 토큰 기반의 사용자 식별 방법 및 시스템, 주식회사 온더Korean Patent Registration No. 10-1857223, a block chain token-based user identification method and system,

따라서, 본 발명의 목적은 위와 같은 문제를 해결하기 위해, 복수의 서비스 주체에 의해 KYC 절차가 수행될 수 있도록 하는 블록체인을 이용한 KYC 수행 장치 및 방법을 제공하는 데에 있다. SUMMARY OF THE INVENTION Accordingly, it is an object of the present invention to provide an apparatus and method for performing a KYC using a block chain in which a KYC procedure can be performed by a plurality of service subjects in order to solve the above problems.

이하 본 발명의 목적을 달성하기 위한 구체적 수단에 대하여 설명한다.Hereinafter, specific means for achieving the object of the present invention will be described.

본 발명의 목적은, KYC 노드가 서비스 서버에서 계정 정보 및 식별 정보에 대한 입출금 허용여부 정보의 요청을 수신하는 입출금 허용여부 요청 단계; 상기 KYC 노드가 상기 KYC 노드의 메모리 모듈에 저장된 KYC 블록체인에서 상기 계정 정보 또는 상기 식별 정보를 인덱싱하는 제1차 인덱싱 단계; 상기 제1차 인덱싱 단계에서 상기 입출금 허용여부 정보가 기저장되어 있지 않은 경우에는 상기 KYC 노드가 상기 계정 정보의 계정을 포함하는 퍼블릭 블록체인에서 상기 계정 정보와 직간접적으로 거래가 수행된 계정인 관계 계정을 인덱싱하고 관계 계정 정보를 생성하는 제2차 인덱싱 단계; 상기 KYC 노드가 상기 관계 계정 정보를 상기 서비스 서버로 송신하는 관계 계정 정보 송신 단계; 상기 KYC 노드가 상기 서비스 서버에서 상기 계정 정보 및 상기 식별 정보에 대한 상기 입출금 허용여부 정보를 수신하는 입출금 허용여부 정보 수신 단계; 및 상기 KYC 노드가 상기 KYC 블록체인에 상기 계정 정보, 상기 식별 정보 및 상기 입출금 허용여부 정보에 대한 트랜잭션인 KYC 트랜잭션을 생성하고 배포하는 블록체인 기록 단계;를 포함하며, 상기 제1차 인덱싱 단계에서 상기 입출금 허용여부 정보가 기저장되어 있는 경우에는 상기 KYC 노드가 상기 서비스 서버로 기저장된 상기 입출금 허용여부 정보를 송신하고, 상기 관계 계정 정보는, 상기 관계 계정의 주소, 상기 관계 계정과 상기 계정 사이의 거래관계 거리 정보 및 상기 관계 계정의 입출금 허용여부 정보를 포함하는 것을 특징으로 하는, 블록체인을 이용한 KYC 수행 방법을 제공하여 달성될 수 있다. An object of the present invention is to provide a KYC node, which is a request for deposit / withdrawal permission / denial of receipt of a request for deposit / withdrawal permission information on account information and identification information in a service server; A primary indexing step in which the KYC node indexes the account information or the identification information in a KYC block chain stored in a memory module of the KYC node; When the deposit / withdrawal allowance information is not stored in the first indexing step, the KYC node transmits the account information in the public block chain including the account information of the account information, A second indexing step of indexing the related account information and generating relationship account information; A relationship account information transmission step in which the KYC node transmits the relationship account information to the service server; Receiving information on deposit / withdrawal allowance / non-receipt of the account information and the deposit / withdrawal allowance information on the identification information from the service server; And a block chain recording step of causing the KYC node to generate and distribute a KYC transaction, which is a transaction for the account information, the identification information, and the deposit / withdrawal allowance information, to the KYC block chain, When the deposit / withdrawal allowance information is stored in advance, the KYC node transmits the deposit / withdrawal allowance information previously stored in the service server, and the relational account information includes an address of the relational account, The transaction relationship distance information of the relationship account, and the deposit / withdrawal allowance information of the relationship account.

또한, KYC 노드가 서비스 서버에서 계정 정보 및 식별 정보에 대한 입출금 허용여부 정보의 요청을 수신하는 입출금 허용여부 요청 단계; 상기 KYC 노드가 상기 KYC 노드의 메모리 모듈에 저장된 KYC 블록체인에서 상기 계정 정보 또는 상기 식별 정보를 인덱싱하는 제1차 인덱싱 단계; 상기 제1차 인덱싱 단계에서 상기 입출금 허용여부 정보가 기저장되어 있지 않은 경우에는 상기 KYC 노드가 상기 KYC 블록체인에 새로운 블록을 생성하고, 상기 KYC 블록체인의 전체 블록체인 네트워크에 상기 계정 정보를 배포하는 계정 정보 배포 단계; 상기 KYC 노드가 상기 계정 정보의 계정을 포함하는 퍼블릭 블록체인에서 상기 계정 정보와 직간접적으로 거래가 수행된 계정인 관계 계정을 인덱싱하고 관계 계정 정보를 생성하는 제2차 인덱싱 단계; 상기 KYC 노드가 인덱싱한 상기 관계 계정에 대한 특정 조건을 만족하여 상기 블록을 증명하는 증명 단계; 상기 KYC 노드가 상기 관계 계정 정보를 상기 서비스 서버로 송신하는 관계 계정 정보 송신 단계; 상기 KYC 노드가 상기 서비스 서버에서 상기 계정 정보 및 상기 식별 정보에 대한 상기 입출금 허용여부 정보를 수신하는 입출금 허용여부 정보 수신 단계; 및 상기 KYC 노드가 상기 KYC 블록체인에 상기 계정 정보, 상기 식별 정보 및 상기 입출금 허용여부 정보에 대한 트랜잭션인 KYC 트랜잭션을 생성하고 배포하는 블록체인 기록 단계;를 포함하며, 상기 제1차 인덱싱 단계에서 상기 입출금 허용여부 정보가 기저장되어 있는 경우에는 상기 KYC 노드가 상기 서비스 서버로 기저장된 상기 입출금 허용여부 정보를 송신하고, 상기 관계 계정 정보는, 상기 관계 계정의 주소, 상기 관계 계정과 상기 계정 사이의 거래관계 거리 정보 및 상기 관계 계정의 입출금 허용여부 정보를 포함하는 것을 특징으로 하는, 블록체인을 이용한 KYC 수행 방법을 제공하여 달성될 수 있다. Also, the KYC node may request a deposit / withdrawal permission / denial from the service server to receive a request for deposit / withdrawal permission information on account information and identification information; A primary indexing step in which the KYC node indexes the account information or the identification information in a KYC block chain stored in a memory module of the KYC node; When the deposit / withdrawal allowance information is not stored in the first indexing step, the KYC node creates a new block in the KYC block chain and distributes the account information to the entire block chain network of the KYC block chain An account information distribution step; A second indexing step in which the KYC node indexes a relationship account, which is an account in which a transaction has been performed directly or indirectly with the account information, in a public block chain including an account of the account information, and generates relationship account information; A proof step of verifying the block satisfying a specific condition for the relation account indexed by the KYC node; A relationship account information transmission step in which the KYC node transmits the relationship account information to the service server; Receiving information on deposit / withdrawal allowance / non-receipt of the account information and the deposit / withdrawal allowance information on the identification information from the service server; And a block chain recording step of causing the KYC node to generate and distribute a KYC transaction, which is a transaction for the account information, the identification information, and the deposit / withdrawal allowance information, to the KYC block chain, When the deposit / withdrawal allowance information is stored in advance, the KYC node transmits the deposit / withdrawal allowance information previously stored in the service server, and the relational account information includes an address of the relational account, The transaction relationship distance information of the relationship account, and the deposit / withdrawal allowance information of the relationship account.

본 발명의 다른 목적은, KYC 프로그램 코드 및 KYC 블록체인을 저장하는 메모리 모듈; 및 상기 KYC 프로그램 코드를 처리하는 처리 모듈;을 포함하고, 상기 KYC 프로그램 코드는, 서비스 서버에서 계정 정보 및 식별 정보에 대한 입출금 허용여부 정보의 요청을 수신하는 입출금 허용여부 요청 단계; 상기 메모리 모듈에 저장된 상기 KYC 블록체인에서 상기 계정 정보 또는 상기 식별 정보를 인덱싱하는 제1차 인덱싱 단계; 상기 제1차 인덱싱 단계에서 상기 입출금 허용여부 정보가 기저장되어 있지 않은 경우, 상기 계정 정보의 계정을 포함하는 퍼블릭 블록체인에서 상기 계정 정보와 직간접적으로 거래가 수행된 계정인 관계 계정을 인덱싱하고 관계 계정 정보를 생성하는 제2차 인덱싱 단계; 상기 관계 계정 정보를 상기 서비스 서버로 송신하는 관계 계정 정보 송신 단계; 상기 서비스 서버에서 상기 계정 정보 및 상기 식별 정보에 대한 상기 입출금 허용여부 정보를 수신하는 입출금 허용여부 정보 수신 단계; 및 상기 KYC 블록체인에 상기 계정 정보, 상기 식별 정보 및 상기 입출금 허용여부 정보에 대한 트랜잭션인 KYC 트랜잭션을 생성하고 배포하는 블록체인 기록 단계;를 컴퓨터 상에서 수행시키는 프로그램 코드를 포함하며, 상기 제1차 인덱싱 단계에서 상기 입출금 허용여부 정보가 기저장되어 있는 경우에는 상기 서비스 서버로 기저장된 상기 입출금 허용여부 정보를 송신하고, 상기 관계 계정 정보는, 상기 관계 계정의 주소, 상기 관계 계정과 상기 계정 사이의 거래관계 거리 정보 및 상기 관계 계정의 입출금 허용여부 정보를 포함하는 것을 특징으로 하는, 블록체인을 이용한 KYC 수행 장치를 제공하여 달성될 수 있다. Another object of the present invention is to provide a memory module for storing a KYC program code and a KYC block chain; And a processing module for processing the KYC program code, wherein the KYC program code comprises: a deposit and withdrawal allowance request step of receiving a request for withdrawal allowance information on account information and identification information from a service server; A first indexing step of indexing the account information or the identification information in the KYC block chain stored in the memory module; When the deposit / withdrawal allowance information has not been stored in the first indexing step, a relationship account, which is an account that is directly or indirectly traded with the account information, is indexed in a public block chain including an account of the account information, A second indexing step of generating account information; Transmitting the relationship account information to the service server; A deposit / withdrawal allowance information receiving step of receiving the account information and the deposit / withdrawal allowance information on the identification information from the service server; And a block chain recording step of creating and distributing a KYC transaction, which is a transaction for the account information, the identification information, and the deposit / withdrawal allowance information, to the KYC block chain, on the computer, When the deposit / withdrawal allowance information is stored in the indexing step, the deposit / withdrawal allowance information previously stored in the service server is transmitted, and the relational account information includes an address of the relational account, Transaction relationship distance information, and paying-out permission / non-payment information of the relationship account.

본 발명의 다른 목적은, KYC 프로그램 코드 및 KYC 블록체인을 저장하는 메모리 모듈; 및 상기 KYC 프로그램 코드를 처리하는 처리 모듈;을 포함하고, 상기 KYC 프로그램 코드는, 서비스 서버에서 계정 정보 및 식별 정보에 대한 입출금 허용여부 정보의 요청을 수신하는 입출금 허용여부 요청 단계; 상기 메모리 모듈에 저장된 상기 KYC 블록체인에서 상기 계정 정보 또는 상기 식별 정보를 인덱싱하는 제1차 인덱싱 단계; 상기 제1차 인덱싱 단계에서 상기 입출금 허용여부 정보가 기저장되어 있지 않은 경우, 상기 KYC 블록체인에 새로운 블록을 생성하고, 상기 KYC 블록체인의 전체 블록체인 네트워크에 상기 계정 정보를 배포하는 계정 정보 배포 단계; 상기 계정 정보의 계정을 포함하는 퍼블릭 블록체인에서 상기 계정 정보와 직간접적으로 거래가 수행된 계정인 관계 계정을 인덱싱하고 관계 계정 정보를 생성하는 제2차 인덱싱 단계; 인덱싱한 상기 관계 계정에 대한 특정 조건을 만족하여 상기 블록을 증명하는 증명 단계; 상기 관계 계정 정보를 상기 서비스 서버로 송신하는 관계 계정 정보 송신 단계; 상기 서비스 서버에서 상기 계정 정보 및 상기 식별 정보에 대한 상기 입출금 허용여부 정보를 수신하는 입출금 허용여부 정보 수신 단계; 및 상기 KYC 블록체인에 상기 계정 정보, 상기 식별 정보 및 상기 입출금 허용여부 정보에 대한 트랜잭션인 KYC 트랜잭션을 생성하고 배포하는 블록체인 기록 단계;를 컴퓨터 상에서 수행시키는 프로그램 코드를 포함하며, 상기 제1차 인덱싱 단계에서 상기 입출금 허용여부 정보가 기저장되어 있는 경우에는 상기 서비스 서버로 기저장된 상기 입출금 허용여부 정보를 송신하고, 상기 관계 계정 정보는, 상기 관계 계정의 주소, 상기 관계 계정과 상기 계정 사이의 거래관계 거리 정보 및 상기 관계 계정의 입출금 허용여부 정보를 포함하는 것을 특징으로 하는, 블록체인을 이용한 KYC 수행 장치를 제공하여 달성될 수 있다. Another object of the present invention is to provide a memory module for storing a KYC program code and a KYC block chain; And a processing module for processing the KYC program code, wherein the KYC program code comprises: a deposit and withdrawal allowance request step of receiving a request for withdrawal allowance information on account information and identification information from a service server; A first indexing step of indexing the account information or the identification information in the KYC block chain stored in the memory module; When the deposit / withdrawal allowance information is not stored in the first indexing step, a new block is created in the KYC block chain, and account information distribution is performed to distribute the account information to the entire block chain network of the KYC block chain step; A second indexing step of indexing a relationship account in a public block chain including an account of the account information, the account being a transaction performed directly or indirectly with the account information, and generating relationship account information; A proof step of verifying the block satisfying a specific condition for the indexed relationship account; Transmitting the relationship account information to the service server; A deposit / withdrawal allowance information receiving step of receiving the account information and the deposit / withdrawal allowance information on the identification information from the service server; And a block chain recording step of creating and distributing a KYC transaction, which is a transaction for the account information, the identification information, and the deposit / withdrawal allowance information, to the KYC block chain, on the computer, When the deposit / withdrawal allowance information is stored in the indexing step, the deposit / withdrawal allowance information previously stored in the service server is transmitted, and the relational account information includes an address of the relational account, Transaction relationship distance information, and paying-out permission / non-payment information of the relationship account.

상기한 바와 같이, 본 발명에 의하면 이하와 같은 효과가 있다.As described above, the present invention has the following effects.

첫째, 본 발명의 일실시예에 따르면, KYC 절차에 이용되던 리소스의 중복이 저감되는 효과가 발생된다. First, according to the embodiment of the present invention, the redundancy of resources used in the KYC procedure is reduced.

둘째, 본 발명의 일실시예에 따르면, 개인정보 보호법 상 위법이 발생되지 않으면서도 복수의 주체에 의해 KYC 절차가 수행될 수 있게 되는 효과가 발생된다. Second, according to the embodiment of the present invention, the KYC procedure can be performed by a plurality of subjects without incurring a violation of the Personal Information Protection Act.

셋째, 본 발명의 일실시예에 따르면, White List의 등록에 실패한 사용자의 차명계좌 검증 등, AML(Anti-Money Laundering)의 검증이 용이해지는 효과가 발생된다. Thirdly, according to an embodiment of the present invention, an effect of facilitating AML (Anti-Money Laundering) verification, such as verification of a nickname account of a user who fails to register a White List, occurs.

본 명세서에 첨부되는 다음의 도면들은 본 발명의 바람직한 실시예를 예시하는 것이며, 발명의 상세한 설명과 함께 본 발명의 기술사상을 더욱 이해시키는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되어서는 아니 된다.
도 1은 본 발명의 일실시예에 따른 블록체인을 이용한 KYC 수행 시스템을 도시한 모식도,
도 2는 본 발명의 일실시예에 따른 블록체인을 이용한 KYC 수행 방법을 도시한 흐름도,
도 3은 본 발명의 일실시예에 따른 KYC 블록체인의 구조를 도시한 모식도,
도 4는 본 발명의 일실시예에 따른 관계 계정 정보의 데이터 구조를 도시한 모식도,
도 5는 본 발명의 일실시예에 따른 변형된 POW 합의 방식을 포함한 블록체인을 이용한 KYC 수행 방법을 도시한 흐름도이다.
BRIEF DESCRIPTION OF THE DRAWINGS The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate preferred embodiments of the invention and together with the description, serve to explain the principles of the invention. .
1 is a schematic diagram showing a KYC performance system using a block chain according to an embodiment of the present invention;
2 is a flowchart illustrating a method of performing a KYC using a block chain according to an embodiment of the present invention.
3 is a schematic diagram showing a structure of a KYC block chain according to an embodiment of the present invention.
FIG. 4 is a schematic diagram illustrating a data structure of relationship account information according to an exemplary embodiment of the present invention; FIG.
FIG. 5 is a flowchart illustrating a method of performing a KYC using a block chain including a modified POW aggregation method according to an embodiment of the present invention.

이하 첨부된 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명을 쉽게 실시할 수 있는 실시예를 상세히 설명한다. 다만, 본 발명의 바람직한 실시예에 대한 동작원리를 상세하게 설명함에 있어서 관련된 공지기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following detailed description of the operation principle of the preferred embodiment of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may unnecessarily obscure the subject matter of the present invention.

또한, 도면 전체에 걸쳐 유사한 기능 및 작용을 하는 부분에 대해서는 동일한 도면 부호를 사용한다. 명세서 전체에서, 특정 부분이 다른 부분과 연결되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우뿐만 아니라, 그 중간에 다른 소자를 사이에 두고, 간접적으로 연결되어 있는 경우도 포함한다. 또한, 특정 구성요소를 포함한다는 것은 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라, 다른 구성요소를 더 포함할 수 있는 것을 의미한다.The same reference numerals are used for portions having similar functions and functions throughout the drawings. In the specification, when a specific portion is connected to another portion, it includes not only a direct connection but also a case where the other portion is indirectly connected with another element in between. In addition, the inclusion of a specific constituent element does not exclude other constituent elements unless specifically stated otherwise, but may include other constituent elements.

블록체인을 이용한 KYC 수행 장치KYC implementer using block chain

도 1은 본 발명의 일실시예에 따른 블록체인을 이용한 KYC 수행 시스템을 도시한 모식도이다. 도 1에 도시된 바와 같이, 서비스 서버(200), KYC 노드(KYC 수행 장치, 400), 퍼블릭 블록체인(500), KYC 블록체인(30)을 포함할 수 있다. 이하에서는 기재의 편의를 위하여 KYC 노드와 KYC 수행 장치를 혼용하였다. 1 is a schematic diagram showing a KYC performance system using a block chain according to an embodiment of the present invention. 1, a service server 200, a KYC node (a KYC performing device 400), a public block chain 500, and a KYC block chain 30 may be included. Hereinafter, for convenience of description, a KYC node and a KYC performing apparatus are used in combination.

서비스 서버(200)는 ICO, 암호화 화폐 거래소, 각종 Dapp(Decentralized Application)을 서비스하는 웹서버 등의 구성이다. 예를 들어, 특정 ICO 프로젝트에 특정 사용자가 토큰 구매를 하려는 경우, 서비스 서버(200)를 통해 사용자의 클라이언트에 출력되는 웹 페이지에 사용자가 식별 정보(사용언어, 성명, 이메일 등 연락처, 암호화 화폐 지갑 주소(계정 정보), 토큰 구매를 원하는 수량, 신분증을 들고 얼굴 인식이 가능하도록 찍은 본인 사진)를 입력하고 KYC 등록(White List 등록)을 요청하게 된다. 또한, 서비스 서버(200)는 KYC 노드(400)와 연결되어 KYC 블록체인(30)에 특정 사용자 정보의 상태 변경에 대한 트랜잭션을 요청하거나 트랜잭션의 검색에 대한 쿼리를 요청하도록 구성될 수 있다. 또한, 서비스 서버(200)는 특정 사용자의 계정 정보 및 식별 정보에 대해 입출금 허용여부 정보를 KYC 블록체인(30)에 기록하도록 KYC 노드(400)에 요청하도록 구성될 수 있다. The service server 200 has a configuration such as an ICO, an encrypted money exchange, and a web server that services various Dapp (Decentralized Application) services. For example, when a specific user intends to purchase a token in a specific ICO project, a web page output to the client of the user through the service server 200 may include identification information (such as a language used, a name, Address (account information), the quantity of the tokens desired to be purchased, and a picture of the person who took the identification card so as to recognize the face), and requests the KYC registration (registration of the white list). In addition, the service server 200 may be connected to the KYC node 400 to request the KYC block chain 30 for a transaction for status change of specific user information, or to request a query for a search of a transaction. In addition, the service server 200 may be configured to request the KYC node 400 to record deposit / withdrawal allowance information on account information and identification information of a specific user in the KYC block chain 30.

KYC 노드(400)는 KYC 블록체인(30)의 네트워크를 구성하는 복수개의 노드 중 서비스 서버(200)와 연결된 하나의 노드를 의미하고, 서비스 서버(200)에서 KYC 블록체인(30)에 특정 사용자 정보의 상태 변경을 요청하는 하는 경우, KYC 블록체인(30)에 메시지 트랜잭션을 송신하여 트랜잭션을 생성하고 기록하여 배포하는 구성이다. 또한, KYC 노드(400)는 KYC 블록체인(30)의 노드 역할 뿐만 아니라 퍼블릭 블록체인(500)의 네트워크를 구성하는 복수개의 노드 중 하나의 노드 역할을 수행할 수 있고, 퍼블릭 블록체인(500)에서 특정 계정 정보와 직간접적으로 거래가 수행된 계정인 관계 계정을 인덱싱하고 관계 계정 정보를 생성할 수 있다. The KYC node 400 refers to one node connected to the service server 200 among a plurality of nodes constituting the network of the KYC block chain 30. The KYC node 400 refers to a node in the KYC block chain 30, In the case of requesting the state change of information, a message transaction is sent to the KYC block chain 30 to generate a transaction, to record and distribute the transaction. The KYC node 400 may serve as a node of the KYC block chain 30 as well as a node of a plurality of nodes constituting the network of the public block chain 500, , It is possible to index the relationship account and generate the relationship account information, which is an account in which transactions have been performed directly or indirectly with specific account information.

KYC 노드(400)는 분산 원장 장치로서 KYC 블록체인 분산 네트워크의 노드 중 하나 및 퍼블릭 블록체인 분산 네트워크의 노드 중 하나를 의미할 수 있고, 통신 모듈(10), 처리 모듈(11), 메모리 모듈(12)을 포함할 수 있다. 특히, KYC 노드(400)는 KYC 블록체인에 대해서는 트랜잭션의 기록이 가능하도록 구성되지만, 퍼블릭 블록체인에 대해서는 트랜잭션의 인덱싱만 가능하도록 구성될 수 있다. The KYC node 400 may be one of nodes of a distributed network that is a KYC block and a node of a distributed network that is a public block, and may be a communication module 10, a processing module 11, a memory module 12). In particular, the KYC node 400 is configured to enable transaction recording for the KYC block chain, but can only be configured to allow transaction indexing for the public block chain.

블록체인 분산 네트워크는 블록체인의 분산 원장을 저장하고 있는 복수대의 노드로 구성된 P2P 분산 네트워크를 의미하고, 이는 KYC 블록체인(30)과 퍼블릭 블록체인(500)이 동일하다. 블록체인 분산 네트워크는 적어도 일부의 노드가 동일한 처리를 할 수 있도록 구성되기 때문에 일부의 노드가 Shut down 되거나 변조되더라도 시스템 전체에는 영향을 주지 않는 특징을 가진다. 노드는 블록체인 분산 네트워크에 연결된 모든 컴퓨팅 장치를 의미할 수 있다. 이러한 노드는 디지털 지갑, 블록체인 복사본, 검증 엔진, 채굴 엔진, P2P 네트워크 배포 기능(브로드캐스트) 등을 포함할 수 있으며, 조금 더 Light한 기능들로만 구성된 클라이언트들도 포함될 수 있다. 본 발명의 일실시예에 따른 블록체인 분산 네트워크는 Pure P2P와 슈퍼 노드(Super Node)를 포함하는 Hybrid P2P를 포함할 수 있다.The block chain distributed network means a P2P distributed network composed of a plurality of nodes storing a distributed branch of a block chain. The KYC block chain 30 and the public block chain 500 are the same. The block chain distributed network is characterized in that at least some nodes are configured to perform the same processing, so that even if some nodes are shut down or modulated, they do not affect the entire system. A node may refer to any computing device connected to a block-chain distributed network. These nodes may include digital wallets, block-chain copies, verification engines, mining engines, P2P network distribution functions (broadcasts), and may include clients that are made up of slightly more lightweight features. The block-chain distribution network according to an exemplary embodiment of the present invention may include a hybrid P2P including a pure P2P and a super node.

노드의 종류와 관련하여, 레퍼런스 클라이언트(Reference client)는 사용자들의 디지털 지갑 관리 모듈, 합의 알고리즘이 작업 증명(POW, Proof of Work)인 경우 블록 채굴(Block Mining)을 위한 마이닝 모듈(Mining Module), 전체 블록체인 중 전부 또는 적어도 일부의 블록을 저장하는 블록체인 데이터베이스(Blockchain Database), 트랜잭션(Transaction)을 블록체인 분산 네트워크에 브로드캐스트(Broadcast)하는 네트워크 라우팅 모듈(Network Routing Module)을 포함하는 노드를 의미할 수 있고, 예를 들어 Bitcoin Core의 Client 등을 의미할 수 있다. 풀노드(Full Node)는 블록체인 데이터베이스, 네트워크 라우팅 모듈을 포함하는 노드를 의미할 수 있다. 솔로 마이너 노드(Solo Miner Node)는, 마이닝 모듈, 블록체인 데이터베이스, 네트워크 라우팅 모듈을 포함하는 노드를 의미할 수 있다. 마이닝 노드(Mining Node)는, 마이닝 풀(Mining Pool)의 노드를 의미하는 풀 마이닝 노드(Pool Mining Node)에 연결되는 게이트웨이 라우터(Gateway Router)와 마이닝 모듈을 포함하는 가벼운 노드를 의미할 수 있다. 라이트웨이트 월렛 노드(Lightweight Wallet Node)는 일반적으로 블록체인의 헤더정보만 저장하고, 디지털 지갑 관리 모듈을 보유하여 사용자의 디지털 지갑을 저장하며, 네트워크 라우팅 모듈을 포함하긴 하지만 블록체인 데이터베이스를 포함하지 않아 트랜잭션 생성이나 블록체인 분산 네트워크에 접근하기 위해서는 제3자가 소유한 서버에 의존하는 가벼운 노드를 의미할 수 있다. KYC 블록체인(30)에 대해, 본 발명의 일실시예에 따른 KYC 노드(400)는 위의 노드들 중 적어도 블록체인 데이터베이스와 네트워크 라우팅 모듈을 포함하는 노드들을 의미할 수 있다. 퍼블릭 블록체인에 대해서 본 발명의 일실시예에 따른 KYC 노드(400)는 적어도 게이트웨이 라우터 모듈을 포함하는 노드들을 의미할 수 있다. 즉, 본 발명의 일실시예에 따른 KYC 노드(400)에는 KYC 블록체인(30) 및 퍼블릭 블록체인(500)이 메모리 모듈이 저장되거나, 적어도 KYC 블록체인(30) 및 퍼블릭 블록체인(500)이 메모리 모듈에 저장된 다른 노드와 연결되도록 구성될 수 있다. With reference to the types of nodes, the reference client is a digital wallet management module for users, the mining module for block mining when the agreement algorithm is a proof of work (POW) A block chain database that stores all or at least a portion of the entire block chain, a node that includes a network routing module that broadcasts a transaction to a block chain distributed network, It can mean, for example, the Bitcoin Core Client. A Full Node may refer to a node including a block chain database, a network routing module. The Solo Miner Node may refer to a node including a mining module, a block chain database, and a network routing module. A mining node may be a light node including a gateway router connected to a pool mining node, which means a node of a mining pool, and a mining module. A lightweight wallet node typically stores only the header information of a block chain, holds a digital wallet management module to store the user's digital wallet, and includes a network routing module, but does not include a block chain database To create a transaction or access a block-chain distributed network, it may refer to a light node that depends on a server owned by a third party. For the KYC block chain 30, a KYC node 400 according to an embodiment of the present invention may refer to nodes comprising at least a block chain database and a network routing module among the above nodes. For a public block chain, the KYC node 400 according to an embodiment of the present invention may mean nodes including at least a gateway router module. That is, in the KYC node 400 according to the embodiment of the present invention, the KYC block chain 30 and the public block chain 500 store the memory modules or at least the KYC block chain 30 and the public block chain 500, May be configured to be coupled to other nodes stored in the memory module.

KYC 노드(400)의 통신 모듈은 트랜잭션(Transaction)을 블록체인 분산 네트워크에 브로드캐스트(Broadcast)하는 네트워크 라우팅 모듈(Network Routing Module)이나 풀 마이닝 노드(Pool Mining Node)에 연결되는 게이트웨이 라우터(Gateway Router) 등을 의미할 수 있다. The communication module of the KYC node 400 includes a network routing module that broadcasts a transaction to a block chain distributed network or a gateway router that is connected to a pool mining node ) And the like.

KYC 노드(400)의 처리 모듈은 메모리 모듈에 저장된 분산 원장인 블록체인의 블록에 저장되어 있는 트랜잭션의 내용을 처리하는 모듈이다. 본 발명의 일실시예에 따른 처리 모듈은 Ethereum Virtual Machine과 같은 가상 머신(VM)으로 구성되어 KYC 블록체인(30)이나 퍼블릭 블록체인(500)의 스마트 컨트랙트(Smart Contract)를 처리하도록 구성될 수 있다. 이러한 가상 머신은 예를 들어, Mutan, LLL, Serpent, Solidity 등과 같은 상위 레벨 언어로 만들어진 코드(스마트 계약, Smart Contract)가 컴파일되어 생성되는 Byte Code를 실행하기 위한 Runtime이고, OPCODE 및 Stack 외에 Memory 및 Storage를 사용하는 주체이기도 하다. The processing module of the KYC node 400 is a module for processing contents of a transaction stored in a block of a block chain which is a distributed ledger stored in a memory module. The processing module according to an embodiment of the present invention may be configured as a virtual machine (VM) such as an Ethereum Virtual Machine and configured to process a Smart Contract of the KYC block chain 30 or the public block chain 500 have. This virtual machine is a runtime for executing Byte Code that is generated by compiling code (Smart Contract, Smart Contract) created in a high level language such as Mutan, LLL, Serpent, Solidity and the like. In addition to OPCODE and Stack, It is also the subject of using Storage.

KYC 노드(400)의 메모리 모듈은 분산 원장인 KYC 블록체인(30)이나 퍼블릭 블록체인(500)을 저장하는 모듈로서, 전체 블록체인 중 전부 또는 일부의 블록을 저장하는 블록체인 데이터베이스(Blockchain Database)를 의미할 수 있다. 메모리 모듈은 전부 또는 일부의 블록체인을 저장할 수 있고, 각 블록 헤더에는 앞 블록 헤더의 해시 값(hash), 해답 값(nonce), 트랜잭션 그룹의 해시 값과 그 밖에 생성된 시간에 대한 정보인 Timestamp, 채굴 난이도를 의미하는 Difficulty, 블록의 넘버를 의미하는 Block Number 등이 포함될 수 있다. 각 블록 바디(Contents)에는 적어도 하나 이상의 트랜잭션 정보(특히, 본 발명의 일실시예에 따른 KYC 트랜잭션)가 포함될 수 있다. The memory module of the KYC node 400 is a module for storing the KYC block chain 30 or the public block chain 500 as a distributed ledger and includes a block chain database storing all or a part of the entire block chains, . ≪ / RTI > The memory module may store all or some of the block chains, and each block header includes a hash value (hash) of the previous block header, a nonce value, a hash value of the transaction group, Difficulty indicating difficulty in mining, Block Number indicating the number of blocks, and the like. Each block body may include at least one transactional information (in particular, a KYC transaction according to an embodiment of the present invention).

KYC 트랜잭션 정보에는, 서비스 계정 주소 정보, 계정 정보, 식별 정보 해시값, 관계 계정 정보, 입출금 허용여부 정보 등을 포함할 수 있다. KYC 트랜잭션 정보를 블록에 저장하고 실행하게 되면, 이러한 서비스 계정 주소 정보, 계정 정보, 식별 정보 해시값, 관계 계정 정보, 입출금 허용여부 정보 등을 서비스 계정의 스토리지(Storage)나 메모리(memory) 내에 포함하는 등의 방법으로 블록에 저장할 수 있다. The KYC transaction information may include service account address information, account information, hash value of the identification information, relationship account information, information on whether or not to allow deposit and withdrawal, and the like. When the KYC transaction information is stored in the block and executed, the service account address information, the account information, the hash value of the identification information, the relationship account information, the information on the deposit / withdrawal permission are stored in the storage or memory of the service account Or the like in a block.

퍼블릭 블록체인(500)은 이더리움, 이오스, 스팀 등의 퍼블릭한 블록체인을 의미하고, 사용자의 암호화 화폐 지갑 주소인 계정 정보의 계정을 포함하는 퍼블릭 블록체인을 의미한다. KYC 노드(400)는 퍼블릭 블록체인(500)에의 쿼리(Query)를 통해 서비스 서버(200)에서 요청되는 특정 사용자의 계정 주소와 직간접적으로 거래가 수행된 계정인 관계 계정을 인덱싱하게 된다. 본 발명의 일실시예에 따른 관계 계정에 대한 정보인 관계 계정 정보는, 관계 계정의 주소, 관계 계정과 특정 사용자의 계정 사이의 거래관계 거리 정보(예를 들어, 특정 사용자의 계정이 A, 직접 거래한 계정이 B, B와 직접 거래한 계정이 C라면, B의 거래관계 거리 정보는 1, C의 거래관계 거리 정보는 2가 될 수 있다), 관계 계정의 입출금 허용여부 정보(예를 들어, B라는 관계 계정이 서비스 서버 a에 의해 White List로 지정되어 거래가 허용되는 경우 a1, 서비스 서버 b에 의해 Black List로 지정되어 거래가 불허되는 경우 b2, 아직 확인되지 않은 경우 0으로 설정될 수 있다)를 포함할 수 있다. The public block chain 500 means a public block chain such as etherium, ios, and steam, and means a public block chain including an account of account information, which is an address of a user's encrypted currency wallet. The KYC node 400 indexes a relationship account, which is an account that is directly or indirectly traded with the account address of a specific user requested by the service server 200 through a query to the public block chain 500. The relationship account information, which is information on the relationship account, according to an embodiment of the present invention may include at least one of an address of the relationship account, a transaction relationship distance information between the relationship account and the account of the specific user (for example, If the account that the transaction is directly accounted for with B and B is C, the transaction-relationship distance information of B can be 1, and the transaction-relationship distance information of B can be 2.) , A relationship account B is designated as a white list by the service server a and a transaction is permitted, a2 is set as a black list by the service server b, b2 when the transaction is not permitted, and 0 when the transaction is not confirmed) . ≪ / RTI >

KYC 블록체인(30)은 KYC 노드(400)에 의해 특정 계정 정보 및 특정 식별 정보에 대한 입출금 허용여부 정보에 대한 트랜잭션인 KYC 트랜잭션이 기록되는 블록체인을 의미한다. KYC 블록체인(30)에 저장되는 스마트 계약(Smart Contract)는 KYC 트랜잭션의 검증, 기록, 배포 등을 수행할 수 있다. 이러한 스마트 계약의 Code는 예를 들어, Ethereum 의 경우, Solidity, Serpent, LLL, Mutan의 언어로 쓰여질 수 있는데, 현재는 Solidity가 주로 사용되고 있으며 문법은 JavaScript와 유사하다. Smart Contract 는 "변수", "구조체" 및 "함수"를 포함하여 처리 모듈(11)에 의해 처리되는 프로그램 코드이다. 이러한 Smart Contract Code 는 Compile 과정을 거쳐 Byte Code로 변환된다. Byte code는 Solidity Realtime Compiler를 통해 컴파일된다. Solidity의 Byte code는 모두 16진수로 된 코드이며, Solidity에서 이 Byte code를 수신 주소 없이 Payload (data: ) 로 할당하여 Blockchain에 Transaction을 배포하면, Miner에 의해 Block이 생성되고, 이러한 Transaction은 Contract Creation Transaction으로 간주되어, Transaction Receipt의 contractAddress: 필드에 생성(배포)된 Contract의 주소를 넣어서 리턴해주게 된다.The KYC block chain 30 is a block chain in which a KYC transaction is recorded by the KYC node 400 for specific account information and information on deposit / withdrawal permission / non-payment information for specific identification information. The smart contract stored in the KYC block chain 30 can perform verification, recording, and distribution of the KYC transaction. For example, in the case of Ethereum, the code for this smart contract can be written in the languages Solidity, Serpent, LLL, and Mutan. Currently, Solidity is mainly used and the syntax is similar to JavaScript. Smart Contract is program code that is processed by processing module 11, including "variable "," structure ", and "function ". The Smart Contract Code is converted into Byte Code through Compile process. The Byte code is compiled through the Solidity Realtime Compiler. The Byte code of Solidity is all hexadecimal code. In Solidity, if this Byte code is assigned to Payload (data:) without paying the receiving address and a transaction is distributed to Blockchain, Block is created by Miner. Transaction, and returns the contract address of the Contract created (distributed) in the contractAddress: field of the Transaction Receipt.

Smart Contract 개발환경은 개발도구와 Compiler 까지를 포함한 범위를 포함할 수 있다. 예를 들어, Solidity의 경우, Code를 작성하고 컴파일하면 모든 컴파일러는 [Byte Code] 와 [Function Signature], [ABI]를 출력하게 된다. The Smart Contract development environment can include a range of development tools and compilers. For example, in the case of Solidity, when you create and compile a code, all compilers output [Byte Code], [Function Signature], and [ABI].

Byte Code는 이미 위에서 설명한 것과 같이, Smart Contract Code를 컴파일 한 결과이며, Blockchain에 Contract Creation Transaction을 발생시켜 배포하는 경우, Contract로의 Message Tx(Transaction의 줄임말)이 발생되는 경우, Contract로의 Call/Query가 발생되는 경우를 통해 KYC 노드(400, 이더리움의 경우 EVM) 위에서 실행된다.The Byte Code is the result of compiling Smart Contract Code as described above. In case of generating the Contract Creation Transaction in Blockchain and distributing Message Tx (Transaction abbreviation) to Contract, call / query to contract And is executed on the KYC node 400 (EVM in the case of Ethernet), when it occurs.

Function Signature는 Contract 내의 함수 이름의 SHA3 한 Hash 값의 4바이트 값으로, Contract의 함수를 실행시킬 때 Transaction의 to: 주소에는 Contract Address를, data: 부분에는 이 method signature 4바이트와 함께 파라미터 값이 payload 로 들어간다. Function Signature is the 4-byte value of the SHA3 hash value of the function name in the contract. When the Contract function is executed, the contract address is included in the to: address of the transaction. ≪ / RTI >

ABI(Application Binary Interface)는 특정 언어나 플랫폼에 종속되지 않은 방식으로 기술된 Application Interface를 의미한다. ABI 정의를 컴파일러 혹은 ABI Generator가 출력해내는데, ABI 에는 Smart Contract의 함수와 Parameter에 대한 Meta data가 정의되어있다. ABI 를 갖고 JavaScript 언어 기반의 어플리케이션을 만들 때 객체를 만들게 할 수 있고, 쉽게 그 객체의 Method를 호출하는것 만으로 Contract의 함수가 호출되도록 할 수 있는 것이다. 현재 Ethereum 은 web3.js와 함께 JavaScript 응용에서 쉽게 ABI 로 객체를 만들어 사용하도록 지원하며, 1.4.0 이후의 go-ethereum 에서는 Go Native 언어 기반의 응용에서 Smart Contract 를 쉽게 Binding 가능하도록, ABI 기반으로 Go Code를 생성해주는 ABIGen을 제공하고 있다.ABI (Application Binary Interface) means Application Interface described in a way that is not dependent on a specific language or platform. The ABI definition is output by the compiler or the ABI Generator. The ABI defines the meta data for Smart Contract functions and parameters. With ABI, you can create an object when you create an application based on a JavaScript language, and you can easily call a Contract's function by calling the method of the object. Ethereum now supports creating and using ABI objects in JavaScript applications with web3.js. In go-ethereum since 1.4.0, it is possible to make Smart Contract easily bindable in Go native language based applications. ABIGen to generate the code.

이러한 Smart Contract 개발 환경은 Blockchain Engine과 연결되어 Contract Creation/Deployment, Message Tx, Call/Query를 전달할 수 있는데, 이러한 Blockchain Engine은 본 발명의 일실시예에 따른 KYC 노드(400)를 의미하고, 이더리움의 예에서는 geth나 parity, eth와 같은 Ethereum Node를 의미한다. 결국 모든 Smart Contract 와 관련한 Transaction 처리와 Contract 실행을 위한 EVM과 같은 가상 머신은 KYC 노드(400)와 같은 Node 위에 구성되어 있다.Such a Smart Contract development environment can be connected with the Blockchain Engine to deliver Contract Creation / Deployment, Message Tx, and Call / Query, which means the KYC node 400 according to an embodiment of the present invention, In this example, ethereum nodes such as geth, parity, and eth mean. As a result, a virtual machine such as an EVM for transaction processing and contract execution related to all Smart Contracts is configured on the same node as the KYC node 400.

이러한 Smart Contract 개발 환경에서 ABI는 Applications와 연결될 수 있다. Smart Contract는 Logic만을 갖고 있고, 사용자나 외부 시스템과의 상호작용을 위해서는 Application이 필요하다. HTML+CSS+JavaScript, Application Server, Wallet 등의 Application은 예를 들어, Ethereum과의 Interface를 통해 Smart Contract와 상호작용하는 구성이다. Smart Contract Code는 크게 [Creation/Deployment] [Invoke by Message] [Call]로 구분될 수 있다. 본 발명의 일실시예에 따라 KYC 블록체인(30)에서 특정 계정 주소가 인덱싱 되는 경우 Call이 이용될 수 있고, 특정 계정 주소에 대한 입출금 허용여부 정보가 상태 변경되는 경우 Message Tx이 이용될 수 있다. In this Smart Contract development environment, ABI can be connected with Applications. Smart Contract has only Logic, and application is needed to interact with user or external system. Applications such as HTML + CSS + JavaScript, Application Server, and Wallet are configured to interact with Smart Contracts, for example, through an interface with Ethereum. The Smart Contract Code can be classified into [Creation / Deployment] [Invoke by Message] [Call]. According to an exemplary embodiment of the present invention, a Call may be used when a specific account address is indexed in the KYC block chain 30, and a Message Tx may be used when a deposit / .

블록체인을 이용한 KYC 수행 방법How to Perform KYC using Block Chain

도 2는 본 발명의 일실시예에 따른 블록체인을 이용한 KYC 수행 방법을 도시한 흐름도이다. 도 2에 도시된 바와 같이, 본 발명의 일실시예에 따른 블록체인을 이용한 KYC 수행 방법은, 입출금 허용여부 요청 단계(S10), 제1차 인덱싱 단계(S11), 제2차 인덱싱 단계(S12b), 관계 계정 정보 송신 단계(S13), 입출금 허용여부 정보 수신 단계(S14), 블록체인 기록 단계(S15)를 포함할 수 있다. 2 is a flowchart illustrating a method of performing a KYC using a block chain according to an embodiment of the present invention. As shown in FIG. 2, the method of performing KYC using a block chain according to an embodiment of the present invention includes a step of requesting deposit / withdrawal permission (S10), a first indexing step (S11), a second indexing step ), Relation account information transmission step S13, receipt / unsubscribe information reception step S14, and block chain recording step S15.

입출금 허용여부 요청 단계(S10)는 KYC 노드(400)가 서비스 서버(200)에서 특정 사용자에 대한 계정 정보 및 식별 정보에 대한 입출금 허용여부 정보의 요청을 수신하는 단계이다. The deposit / withdrawal allowance request step S10 is a step in which the KYC node 400 receives a request for deposit / withdrawal allowance information on account information and identification information for a specific user from the service server 200.

제1차 인덱싱 단계(S11)는 KYC 노드(400)가 KYC 블록체인(30)에서 상기 계정 정보 또는 상기 식별 정보를 인덱싱하는 단계이다. S11 단계에 의해 기존에 블록체인에 입출금 허용여부 정보가 기록된 계정 정보나 식별 정보는 적은 리소스로 효율적으로 검색되는 효과가 발생된다. S11 단계에서 입출금 허용여부 정보가 기저장되어 있는 경우에는, KYC 노드(400)가 서비스 서버(200)로 기저장된 입출금 허용여부 정보를 송신하게 된다(S12a). The first indexing step S11 is a step in which the KYC node 400 indexes the account information or the identification information in the KYC block chain 30. [ In step S11, the account information or identification information in which the deposit / withdrawal permission / non-permission information is recorded in the block chain is efficiently retrieved with a small amount of resources. If the deposit / withdrawal allowance information has been stored in step S11, the KYC node 400 transmits the deposit / withdrawal allowance information previously stored in the service server 200 (S12a).

제2차 인덱싱 단계(S12b)는 S11 단계에서 상기 계정 정보 또는 상기 식별 정보에 대응되는 입출금 허용여부 정보가 기저장되어 있지 않은 경우, KYC 노드(400)가 상기 계정 정보의 계정을 포함하는 퍼블릭 블록체인(500)에서 상기 계정 정보와 직간접적으로 거래가 수행된 계정인 관계 계정을 인덱싱하고 관계 계정 정보를 생성하는 단계이다. In the second indexing step S12b, if the account information or the deposit / withdrawal allowance information corresponding to the identification information is not stored in step S11, the KYC node 400 transmits a public block including an account of the account information In the chain 500, a relationship account, which is an account that has been directly or indirectly traded with the account information, is indexed and relationship account information is generated.

관계 계정 정보 송신 단계(S13)는 KYC 노드(400)가 상기 관계 계정 정보를 서비스 서버(200)로 송신하는 단계이다. The relational account information transmission step S13 is a step in which the KYC node 400 transmits the relation account information to the service server 200. [

입출금 허용여부 정보 수신 단계(S14)는 KYC 노드(400)가 상기 서비스 서버(200)로부터 상기 계정 정보 및 상기 식별 정보에 대한 입출금 허용여부 정보를 수신하는 단계이다. The deposit / withdrawal permission / denial information reception step S14 is a step in which the KYC node 400 receives the deposit / withdrawal allowance information on the account information and the identification information from the service server 200. [

블록체인 기록 단계(S15)는 KYC 노드(400)가 KYC 블록체인(30)에 상기 계정 정보, 상기 식별 정보 및 상기 입출금 허용여부 정보에 대한 트랜잭션인 KYC 트랜잭션을 생성하고 배포하는 단계이다.The block chain recording step S15 is a step in which the KYC node 400 generates and distributes a KYC transaction, which is a transaction for the account information, the identification information, and the deposit / disapproval permission information to the KYC block chain 30.

도 3은 본 발명의 일실시예에 따른 KYC 블록체인의 구조를 도시한 모식도이다. 도 3에 도시된 바와 같이, 본 발명의 일실시예에 따른 KYC 노드(400)의 메모리 모듈(12)은 전부 또는 일부의 KYC 블록체인(30)을 저장할 수 있고, 각 블록 헤더에는 앞 블록 헤더의 해시 값(hash), 해답 값(nonce), 트랜잭션 그룹의 해시 값과 그 밖에 생성된 시간에 대한 정보인 Timestamp(미도시), 채굴 난이도를 의미하는 Difficulty(미도시), 블록의 넘버를 의미하는 Block Number(미도시) 등이 포함될 수 있다. 각 블록 바디(Contents)에는 적어도 하나 이상의 트랜잭션 정보(특히, 본 발명의 일실시예에 따른 KYC 트랜잭션 정보)가 포함될 수 있다. 도 3에 도시된 바와 같이, 본 발명의 일실시예에 따른 KYC 트랜잭션은, 서비스 서버가 보유한 계정 주소인 서비스 계정 주소 정보(예를 들어, 특정 ICO 주체의 KYC 토큰 지갑 주소), 입출금 허용여부 기록의 대상이 되는 특정 사용자의 계정 정보(예를 들어, 특정 사용자의 이더리움 지갑 주소), 식별 정보의 해시 값(예를 들어, 특정 사용자의 주민번호의 해시 값), 계정 정보에 포함된 주소와 직간접적으로 거래가 수행된 계정인 관계 계정에 대한 정보인 관계 계정 정보(예를 들어, 관계 계정의 주소, 트랜잭션 정보, 토큰 볼륨, 직접 관계인지 간접 관계인지 여부, 몇 차 간접 관계인지 여부 등), 특정 사용자의 입출금 허용여부에 대하여 서비스 서버에서 입력되는 입출금 허용여부 정보 등을 포함할 수 있다. 3 is a schematic diagram showing a structure of a KYC block chain according to an embodiment of the present invention. 3, the memory module 12 of the KYC node 400 according to an exemplary embodiment of the present invention may store all or part of the KYC block chain 30, A hash value of a transaction group, a hash value of a transaction group, a hash value of a transaction group, a timestamp (not shown), which is information on a generated time of the transaction group, a Difficulty (not shown) And a block number (not shown) to be used. Each block body may include at least one transaction information (in particular, KYC transaction information according to an embodiment of the present invention). 3, the KYC transaction according to an embodiment of the present invention includes service account address information (for example, a KYC token wallet address of a specific ICO subject) that is an account address held by the service server, The hash value of the identification information (for example, the hash value of the resident registration number of the specific user), the address included in the account information, and the account information of the specific user (for example, (Eg, relationship account address, transaction information, token volume, whether it is a direct or indirect relationship, whether it is indirect or indirect), which is information about a relationship account that is an indirect or indirect transaction, Withdrawal allowance information input by the service server with respect to whether or not the specific user can deposit money into or out of the bank account.

도 4는 본 발명의 일실시예에 따른 관계 계정 정보의 데이터 구조를 도시한 모식도이다. 도 4에 도시된 바와 같이, 본 발명의 일실시예에 따른 관계 계정 정보는, 관계 계정 주소, 트랜잭션 정보, 관계 정보, 입출금 허용여부 정보를 포함할 수 있다. 본 발명의 일실시예에 따른 관계 계정이란, KYC 대상이 되는 계정 정보의 계정 주소와 직간접적으로 거래 관계에 있는 계정을 의미할 수 있다. 관계 계정 주소는 예를 들어, 관계 계정의 이더리움 지갑 주소를 의미할 수 있다. 트랜잭션 정보는 예를 들어, 관계 계정의 트랜잭션 중 계정 정보와 직간접적으로 거래 관계에 있는 트랜잭션의 정보를 의미할 수 있다. 4 is a schematic diagram illustrating a data structure of relationship account information according to an embodiment of the present invention. As shown in FIG. 4, the related account information according to an embodiment of the present invention may include a relationship account address, transaction information, relationship information, and withdrawal allowance information. The relationship account according to an embodiment of the present invention may mean an account that is directly or indirectly in a transaction relationship with an account address of account information subject to KYC. The relationship account address may, for example, refer to the identity wallet address of the relationship account. The transaction information may, for example, mean information of a transaction that is directly or indirectly in a transaction relationship with the account information during the transaction of the related account.

관계 정보는 계정 정보와 거래 관계의 거리를 의미하는 정보이고, 직접 거래 관계, 제1...n간접 거래 관계로 분류될 수 있다. 직접 거래 관계는, 해당 트랜잭션 정보가 계정 정보와 관계 계정 정보에 대해 직접적으로 거래가 이루어진 트랜잭션 정보인 경우를 의미하고, 예를 들면 도 4와 같이 '0'이라는 dummy value로 표현될 수 있다. 제1간접 거래 관계는, 해당 트랜잭션 정보가 계정 정보와 직접 거래 관계에 있는 관계 계정 정보와 다른 관계 계정 정보에 대해 직접적으로 거래가 이루어진 트랜잭션 정보인 경우, 다른 관계 계정 정보가 계정 정보와 제1간접 거래 관계에 있다고 정의하고 예를 들면 도 4와 같이 '1'이라는 dummy value로 표현될 수 있다. 제n간접 거래 관계는, 해당 트랜잭션 정보가 계정 정보와 제n-1간접 거래 관계에 있는 관계 계정 정보와 다른 관계 계정 정보에 대해 직접적으로 거래가 이루어진 트랜잭션 정보인 경우, 다른 관계 계정 정보가 계정 정보와 제n간접 거래 관계에 있다고 정의하고 예를 들면 'n'이라는 dummy value로 표현될 수 있다. The relationship information is information indicating the distance of the account information and the transaction relationship, and can be classified into the direct transaction relationship and the first ... n indirect transaction relationship. The direct transaction relationship is a case where the corresponding transaction information is transaction information in which transaction information is directly traded for the account information and the related account information. For example, it may be expressed as a dummy value of '0' as shown in FIG. The first indirect transaction relationship may be such that if the corresponding transaction information is transaction information that is directly traded for relationship account information that is in direct transaction relationship with account information and other transaction account information, Quot; 1 " as shown in FIG. 4, for example. The n-th indirect transaction relationship is such that if the corresponding transaction information is transaction information directly related to account information in the n-1 indirect transaction relationship with the account information and other transaction account information, N is defined as an indirect trade relationship and can be expressed, for example, as a dummy value of 'n'.

입출금 허용여부 정보는 기존에 해당 관계 계정 주소에 대해 기저장된 입출금 허용 여부를 의미하는 정보이고, 입출금 허용, 입출금 불허, 내역 없음으로 분류될 수 있다. 예를 들면, 도 4와 같이, 입출금 허용의 경우 '0'이라는 dummy value로 표현될 수 있고, 입출금 불허의 경우 '1'이라는 dummy value, 입출금 허용 여부에 대한 정보가 없는 경우에는 '2'라는 dummy value로 기저장 또는 기설정 될 수 있다. 또한, 본 발명의 일실시예에 따르면, 입출금 허용여부 정보는 이를 등록 요청한 서비스 계정 정보 및 해당 서비스 계정의 등록 당시 KYC 토큰 보유량(Balance) 정보를 포함할 수 있다. 이에 따르면, 하나의 계정 정보 또는 하나의 식별 정보에 대해 복수의 서비스 계정이 서로 다른 입출금 허용여부 정보를 입력하게 되는 경우, 상기 입출금 허용여부 정보가 각 서비스 계정의 KYC 토큰 보유량을 기준으로 확률적인 값 또는 불연속적인 값을 갖는 정보로 KYC 블록체인에 기록되는 효과가 발생된다. The information on whether deposit and withdrawal is allowed is information that indicates whether or not deposit and withdrawal is allowed for the related account address, and can be classified as deposit and withdrawal permission, no deposit and withdrawal, and no description. For example, as shown in FIG. 4, in the case of deposit and withdrawal allowance, it can be expressed as a dummy value of '0'. In the case of denial of deposits and withdrawals, a dummy value of '1' It can be stored or set as a dummy value. Also, according to one embodiment of the present invention, the deposit / withdrawal allowance information may include the service account information requested to be registered and the KYC token holding amount (Balance) information at the time of registration of the service account. According to this, when a plurality of service accounts input different deposit / withdrawal allowance information for one account information or one identification information, the deposit / withdrawal allowance information is a stochastic value based on the KYC token storage amount of each service account Or information having a discontinuous value is written to the KYC block chain.

본 발명의 일실시예에 따라 퍼블릭 블록체인과 별도로 KYC 블록체인이 구성되면 KYC 블록체인을 이용하여 KYC를 진행하더라도 퍼블릭 블록체인의 리소스를 사용하지 않게 되고, 퍼블릭 블록체인의 트랜잭션 비용, 거래속도, 하드포크 이슈 등의 네트워크 안전성 등의 제한을 받지 않게 되는 효과가 발생된다. 예를 들어, KYC 블록체인을 별도로 이용하지 않고, 퍼블릭 블록체인 중 하나인 이더리움 블록체인 만으로 본 발명의 기술 사상을 수행하게 되는 경우, 입출금 허용여부 정보의 상태 변경과 관련된 모든 트랜잭션에 대해 막대한 GAS가 소모되게 되는 문제가 발생된다. According to an embodiment of the present invention, if a KYC block chain is constructed separately from a public block chain, even if KYC block is used, the resource of the public block chain is not used, and transaction cost, transaction speed, There is an effect that the network safety such as hard fork issues and the like are not limited. For example, when the KYC block chain is not used separately and the technical idea of the present invention is performed using only the Ethernet block chain, which is one of the public block chains, a huge GAS There is a problem that the power consumption is consumed.

또한, KYC 블록체인에서 먼저 계정 정보 또는 식별 정보를 인덱싱하기 때문에 특정 계정 또는 특정 식별 정보의 KYC를 위해 퍼블릭 블록체인의 전체 트랜잭션을 항상 인덱싱하지 않아도 되는 효과가 발생된다. In addition, since the account information or the identification information is firstly indexed in the KYC block chain, the entire transaction in the public block chain is not always indexed for the KYC of the specific account or the specific identification information.

또한, KYC 노드가 퍼블릭 블록체인에서 해당 계정 주소와 직간접적 거래관계가 존재하는 계정인 관계 계정을 인덱싱하기 때문에 입출금이 불허된 자가 다른 계정으로 입출금을 시도하는 등의 불법 자금 세탁의 가능성이 감소하게 되는 효과가 발생된다.In addition, since KYC indexes the relationship account, which is an account in which there is direct or indirect transaction relationship with the corresponding account address in the public block chain, the possibility of illegal money laundering such as attempting to deposit or withdraw to another account .

또한, 특정 계정 주소에 대해 입출금 허용여부 정보가 KYC 블록체인 내의 트랜잭션으로 무결성이 유지된 상태에서 탈중앙화되어 기록되기 때문에 어떤 서비스 서버의 요청으로 입출금이 불허되었는지, 어떤 이유로 입출금이 불허되었는지, 언제 입출금이 불허되었는지 등이 다양한 서비스 플레이어들에게 접근 가능해지는 효과가 발생된다.Also, since the deposit / withdrawal allowance information for a specific account address is decentralized and recorded in a state of integrity maintained in a transaction in the KYC block chain, it is possible to determine which deposit / withdrawal is not permitted at the request of the service server, Is not allowed to be accessible to various service players.

[KYC 블록체인의 합의 방식][Consensus method of KYC block chain]

KYC 블록체인의 합의 방식은 기존의 블록체인과 동일한 POW(Proof of work) 방식, POS(Proof of stake) 방식, BFT(Byzantine Fault Tolerance) 방식 등이 활용될 수 있다. 하지만, 본 발명의 일실시예에 따른 KYC 블록체인에서는 변형된 POW 및 변형된 POS 중 적어도 하나를 적용함으로써 기존의 합의 방식의 문제점을 해소하고, KYC의 탈중앙화에 긍정적인 영향을 주는 효과가 발생된다. The KYC block chain can be agreed upon using the same Proof of Work (POS), Proof of Stake (POS) and Byzantine Fault Tolerance (BFT) methods. However, in the KYC block chain according to an embodiment of the present invention, at least one of the modified POW and the modified POS is applied, thereby solving the problem of the existing consensus method and positively affecting the decentralization of KYC do.

변형된 POW 방식과 관련하여, 도 5는 본 발명의 일실시예에 따른 변형된 POW 합의 방식을 포함한 블록체인을 이용한 KYC 수행 방법을 도시한 흐름도이다. 도 5에 도시된 바와 같이, 본 발명의 일실시예에 따른 POW 합의 방식을 포함한 블록체인을 이용한 KYC 수행 방법은 S11 이후에 KYC 블록체인에 계정 정보 또는 식별 정보에 대해 입출금 허용여부가 기저장되어 있지 않은 경우, 계정 정보 배포 단계(S20), 퍼블릭 블록체인 인덱싱 단계(S21), 블록 증명 단계(S22)를 더 포함할 수 있다. 5 is a flowchart illustrating a KYC performing method using a block chain including a modified POW summing method according to an embodiment of the present invention. As shown in FIG. 5, in the method of performing KYC using a block chain including the POW settlement method according to an embodiment of the present invention, whether to deposit or withdraw money is stored in account information or identification information in the KYC block chain after S11 , It may further include an account information distribution step S20, a public block chain indexing step S21, and a block verification step S22.

계정 정보 배포 단계(S20)는 KYC 노드가 KYC 블록체인에 새로운 블록을 생성하고, 각각의 KYC 노드가 퍼블릭 블록체인에서 해당 계정 정보를 경쟁적으로 인덱싱할 수 있도록 전체 KYC 블록체인 네트워크에 계정 정보를 배포하는 단계이다. S20에 따르면, 기존의 블록체인과 달리 하나의 계정 정보에 대한 요청을 수신할 때 마다 KYC 블록체인에서 새로운 블록이 형성되게 되고, 하나의 블록당 하나의 계정 정보에 대한 트랜잭션이 기록되게 되므로 트랜잭션이 확정되는 속도(TPS)가 매우 빨라지고 블록체인 데이터 구조가 간명해지는 효과가 발생된다. In the account information distribution step (S20), the KYC node generates a new block in the KYC block chain, and distributes the account information to the entire KYC block chain network so that each KYC node can index the corresponding account information competitively in the public block chain. . According to S20, unlike the existing block chain, a new block is formed in the KYC block chain every time a request for one account information is received, and a transaction for one account information per block is recorded. The determined speed (TPS) becomes very fast and the block chain data structure is simplified.

퍼블릭 블록체인 인덱싱 단계(S21)는 S20에서 배포된 계정 정보를 KYC 블록체인의 각 KYC 노드가 수신하고, 각 KYC 노드가 계정 정보와 직간접적으로 거래가 수행된 계정인 관계 계정을 퍼블릭 블록체인에서 인덱싱하여 관계 계정 정보를 생성하는 단계이다. In the public block chain indexing step (S21), the account information distributed in S20 is received by each KYC node in the KYC block chain. Each KYC node indexes the relationship account, which is an account in which transactions are directly or indirectly performed with the account information, Thereby generating the relationship account information.

블록 증명 단계(S22)는 각 KYC 노드 중 특정 인덱싱 조건을 만족하는 관계 계정을 인덱싱 한 KYC 노드가 해당 블록을 증명한 것으로 설정되는 단계이다. 특정 인덱싱 조건은, 예를 들어, 인덱싱 된 관계 계정의 수, 인덱싱 된 관계 계정과 KYC 요청 대상인 특정 계정의 거래 관계의 거리(직접 거래인지, 간접 거래인지) 등으로 구성된 특정 인덱싱 조건의 이상 또는 초과를 의미할 수 있다. 또한, 블록 생성 이후 기설정된 특정 시간 이내에 인덱싱 된 관계 계정의 수, 인덱싱 된 관계 계정과 KYC 요청 대상인 특정 계정의 거래 관계의 거리(직접 거래인지, 간접 거래인지) 등으로 구성된 특정 인덱싱 조건을 가장 많이 달성하였는지 여부를 의미할 수 있다.The block proving step S22 is a step in which a KYC node indexing a relation account satisfying a specific indexing condition among the KYC nodes is set as a proof of the corresponding block. The specific indexing condition may be, for example, an abnormal or exceeding of a particular indexing condition, such as the number of indexed relationship accounts, the distance of the indexed relationship account and the transactional relationship of the specific account being the KYC requested subject (direct transaction, . ≪ / RTI > In addition, the number of specific indexing conditions consisting of the number of relationship accounts indexed within a predetermined period of time after block creation, the distance between the indexed relationship account and the transaction relationship of the specific account being KYC requested (whether direct transaction or indirect transaction) It can mean whether or not it has accomplished.

변형된 POW 방식에 따르면, KYC 노드의 관계 계정 인덱싱의 경쟁적 유도가 가능해지는 효과가 발생된다. 기존의 POW 방식에서는 KYC 노드들이 굳이 컴퓨팅 리소스를 투입하여 퍼블릭 블록체인에서 관계 계정 인덱싱을 수행할 이유가 제공되지 않는다. According to the modified POW method, it is possible to induce competitive indexing of the relation account of the KYC node. In the existing POW system, there is no reason for KYC nodes to insert computing resources and perform indexing of relationship accounts in the public block chain.

또한, S20 내지 S22에 따르면 기존의 블록체인과 달리 블록체인 분기 문제가 확률적으로 개선되는 효과가 발생된다. 본 발명의 일실시예에 따른 계정 정보 배포 단계(S20)에서 latency에 의해 서로 다른 KYC 노드(KYC 노드 a, KYC 노드 b)에 대해 블록 순서가 다른 블록체인이 생성된 경우의 예시를 상정해볼 수 있다. 블록체인에는 배포의 latency에 의해 일부 노드에 대해 블록체인의 블록 순서가 상이해지는 문제가 높은 확률로 발생한다. 이것은 블록체인 업계의 통상의 기술자들에게 포크(fork)로 불리우며, 포크는 2개의 블록체인이 임의로 발생된다는 점에서 블록체인의 가장 큰 효과인 무결성을 악화시키는 심각한 문제로 남아있었다. 비트코인이나 이더리움과 같은 기존의 퍼블릭 블록체인에서는 일정 시간 뒤에 어떤 블록체인이 더 길게 구성되었는지를 판정하여 길지 않은 한쪽을 일방적으로 삭제하는 방법으로 이러한 문제를 해결하고 있었는데, 이러한 기존의 해결방법은 항상 블록체인이 2개 이상으로 구성될 수 있다는 가능성에 휩싸이게 되어 완전한 해결책은 되지 못하는 실정이었다. 하지만, 본 발명의 일실시예에 따른 S20 내지 S22에 따르면, 생성된 블록의 순서가 다른 각각의 노드들이 스스로 생성한 블록을 증명하게 될 확률이 낮게 유지되기 때문에 포크가 발생될 확률이 저감되는 효과가 발생된다. In addition, according to S20 to S22, unlike the existing block chain, the block chain branching problem is improved stochastically. In the account information distribution step (S20) according to the embodiment of the present invention, an example of a case where block chains having different block orders are generated for different KYC nodes (KYC node a and KYC node b) by latency have. In the block chain, there is a high probability that the block order of the block chain differs for some nodes due to the latency of distribution. This has been called a fork to the ordinary engineers of the block chain industry and the fork has remained a serious problem that worsens the integrity of the block chain, the most effective in that two block chains are randomly generated. In existing public block chains such as bit coin and etherium, the problem has been solved by determining which block chain is longer than a certain time, and deleting one long one side unilaterally. There was always a possibility that a block chain could consist of two or more blocks, which was not a complete solution. However, according to S20 to S22 according to the embodiment of the present invention, since the probability that the generated blocks will be proved by the other nodes themselves is low, the probability that the fork will be generated is reduced Is generated.

변형된 POS 방식과 관련하여, 본 발명의 일실시예에 따른 S14 단계에서, 입출금 허용여부 정보는 이를 등록 요청한 서비스 계정 정보 및 해당 서비스 계정의 등록 당시 KYC 토큰 보유량(Balance) 정보를 포함할 수 있다. 이에 따르면, 하나의 계정 정보 또는 하나의 식별 정보에 대해 복수의 서비스 계정이 각각 입출금 허용여부 정보를 입력하게 되는 경우, 그 시간 차이(Gap)이 있다고 하더라도 상기 입출금 허용여부 정보가 각 서비스 계정의 KYC 토큰 보유량을 기준으로 확률적인 값 또는 불연속적인 값을 갖는 정보로 KYC 블록체인에 기록되고, 하나의 계정 정보 또는 하나의 식별 정보에 대해 복수의 서비스 계정이 블록 기록 당시의 KYC 토큰 보유량의 비율로 해당 블록을 증명하게 되는 효과가 발생된다. 이에 따르면, 각 서비스 계정의 정보 및 KYC 토큰 보유량의 비율의 hash 값이 블록 헤더에 저장되고, Linked list가 구성될 수 있다. 본 발명의 일실시예에 따른 변형된 POS 방식에 따르면, 기존의 POS 방식에 비해 KYC 탈중앙화에 더 적합해지는 효과가 발생된다. 변형된 POS 방식에 따르면 더 많은 KYC 토큰을 보유하고 있는 서비스 계정이 특정 계정 또는 특정 식별 정보에 대해 입출력 허부 정보를 등록하여 KYC 블록체인의 생태계에 일조하였을 경우 더 많은 보상이 지급되도록 구성되어 KYC 토큰 자체에 대한 수요도 상승되는 추가 효과가 발생된다. 기존의 POS 방식은 각 validator인 노드들이 현재 보유하고 있는 자산(stake)의 양에 비례해서 데이터의 업데이트 권한을 획득하는 방식으로 KYC 탈중앙화와 관련도가 낮았다. 또한, 변형된 POS 방식에 따르면, 복수개의 체인으로 포킹(Forking)이 일어나게 되더라도 더 많은 KYC 토큰을 증명(보유)하는 체인이 살아남게 되므로 체인의 포크를 빠르게 복구할 수 있는 효과가 발생된다. 또한, 변형된 POS 방식에 따라 특정 계정 정보 또는 특정 식별 정보에 대한 복수의 서비스 계정들의 다양한 의견(입출금 허용여부)이 크라우드 소싱되게 되는 효과가 발생된다. Regarding the modified POS method, in step S14 according to an embodiment of the present invention, the deposit / withdrawal allowance information may include the service account information requested to be registered and the KYC token holding amount (Balance) information at the time of registration of the service account . According to this, when a plurality of service accounts input one account information or one identification information, respectively, even if there is a time gap therebetween, the deposit / withdrawal allowance information is stored in the KYC A plurality of service accounts are recorded in the KYC block chain as information having a stochastic value or discontinuous value based on the token storage amount and corresponding to one account information or one identification information as a ratio of the KYC token storage amount at the time of block recording The effect of proving the block is generated. According to this, the hash value of the information of each service account and the ratio of the KYC token holding amount is stored in the block header, and a linked list can be constructed. According to the modified POS system according to an embodiment of the present invention, an effect of being more suitable for KYC decentralization than the existing POS system is generated. According to the modified POS method, a service account having more KYC tokens is configured so that more compensation is paid when the input / output authorization information is registered for a specific account or specific identification information and contributed to the ecosystem of the KYC block chain. There is an additional effect that the demand for itself increases. The existing POS method is related to the decentralization of KYC by acquiring update authority of data in proportion to the amount of stake held by each validator node. Further, according to the modified POS method, even if forking occurs in a plurality of chains, a chain that holds (certifies) more KYC tokens survives, and thus the fork of the chain can be quickly recovered. Also, according to the modified POS system, various opinions (whether deposit or withdrawal) of a plurality of service accounts for specific account information or specific identification information are sourced from the crowd.

본 발명의 범위는, 위의 변형된 POS 방식과 변형된 POW 방식이 통합된 블록 증명(합의) 방식을 포함할 수 있다. The scope of the present invention may include a block proof (consensus) scheme in which the above modified POS system and the modified POW system are integrated.

[토큰 보상 방식][Token Compensation Method]

이때, 본 발명의 일실시예에 따르면, KYC의 완전한 탈중앙화를 위해 보상 토큰을 특정 조건을 만족하는 KYC 노드의 계정에 배부할 수 있다. 토큰 보상의 방식은 특정 KYC 노드에서 KYC 블록체인으로 특정 계정에 대한 KYC를 요청할 때 특정 수의 토큰(KYC 토큰)을 Deposit하고, 해당 계정에 대한 입출금 허용여부 정보를 KYC 블록체인에 기저장한 KYC 노드에 Deposit된 토큰의 적어도 일부를 배부하도록 구성될 수 있다. 이를 위해서, 각 서비스 서버를 대표하는 각 KYC 노드에 대해 KYC 블록체인의 계정(서비스 계정)이 구성 또는 할당될 수 있다. 이하에서는 설명의 편의와 퍼블릭 블록체인의 코인 또는 토큰과의 구별을 위해 보상으로 지급될 토큰인 보상 토큰을 KYC 토큰으로 명명한다. At this time, according to an embodiment of the present invention, a compensation token may be allocated to the account of the KYC node satisfying a specific condition for complete decentralization of the KYC. The method of token compensation consists of depositing a certain number of tokens (KYC tokens) when requesting KYC for a specific account as a KYC block chain in a certain KYC node, and storing KYC block information in the KYC block chain And distribute at least a portion of the deposited token to the node. To this end, an account (service account) of the KYC block chain may be configured or assigned to each KYC node representing each service server. Hereinafter, the compensation token, which is a token to be paid in compensation for distinguishing between the convenience of explanation and the coin or token of the public block chain, is referred to as a KYC token.

보상 토큰인 KYC 토큰 생성 방식과 관련하여, 본 발명의 일실시예에 따르면 S10 단계에서 특정 서비스 서버가 특정 KYC 노드에 KYC 요청의 대상인 특정 사용자의 특정 계정 정보 및 특정 식별 정보에 대한 입출금 허용여부 정보를 요청할 때, 해당 KYC 노드의 계정인 서비스 계정을 토큰 송신자로 하는 특정 수의 KYC 토큰 상태변화에 대한 트랜잭션을 생성할 수 있다. 이 경우, KYC 블록체인을 이용하여 KYC를 수행하려는 서비스 주체들이 KYC 토큰을 항상 구매하여야 하므로, KYC 토큰에 대한 지속적인 수요가 발생하게 되는 효과가 있다. 또는, 기존의 퍼블릭 블록체인과 같이, 매 블록의 생성 및 증명 시 마다 KYC 토큰을 생성할 수 있다. According to an embodiment of the present invention, in step S10, a specific service server transmits specific account information of a specific user, which is a target of a KYC request, to a specific KYC node, , A transaction can be created for a certain number of KYC token state changes with the service account being the account of the corresponding KYC node as the token sender. In this case, since the KYC tokens are always purchased by the service subjects who want to perform KYC by using the KYC block chain, there is an effect that the KYC token is continuously demanded. Alternatively, a KYC token may be generated for each block creation and certification, such as an existing public block chain.

KYC 토큰의 보상 방식과 관련하여, 첫 번째 실시예로 본 발명의 일실시예에 따르면 S11 단계에서 KYC 블록체인에 서비스 서버가 요청한 특정 계정 정보 또는 특정 식별 정보에 대해 입출금 허용여부 정보가 기저장되어 있는 경우, 해당 특정 계정 정보 또는 특정 식별 정보에 대해 입출금 허용여부 정보를 등록한 서비스 계정에 KYC 토큰을 보상하도록 구성될 수 있다. 이러한 경우, 특정 계정 정보 또는 특정 식별 정보에 대한 입출금 허용여부 정보의 등록이 유도되는 효과가 발생된다. Regarding the compensation method of the KYC token, according to an embodiment of the present invention, in the step S11, deposit / withdrawal allowance information is stored in the KYC block chain for specific account information requested by the service server or specific identification information If so, it can be configured to compensate the KYC token for the service account that registered the deposit / withdrawal allowance information for the specific account information or specific identification information. In this case, the effect of registering the deposit / non-deposit / disapproval information on specific account information or specific identification information is generated.

KYC 토큰의 보상 방식의 두 번째 실시예로 본 발명의 일실시예에 따르면 도 2의 12b 또는 도 5의 S21에서, KYC 노드에 의해 퍼블릭 블록체인에서 관계 계정이 인덱싱 될 때, 인덱싱 된 관계 계정의 수, 인덱싱 된 관계 계정과 KYC 요청 대상인 특정 계정의 거래 관계의 거리(직접 거래인지, 간접 거래인지) 등으로 구성된 특정 인덱싱 조건의 이상 또는 초과를 특정 KYC 노드에 의해 인덱싱된 관계 계정 정보가 만족하는 경우, 해당 특정 KYC 노드의 서비스 계정에 KYC 토큰을 보상하는 방식이 이용될 수 있다. 이러한 경우, 복수개의 KYC 노드들이 퍼블릭 블록체인의 인덱싱을 상호 경쟁적으로 진행하게 되므로, 특정 인덱싱 조건 이상 또는 초과의 관계 계정 정보의 hash 값을 이용해서 POW(Proof of Work)의 블록 증명 및 합의 방식을 구축할 수 있게 되는 효과가 발생된다. 즉, KYC 토큰의 보상 방식의 두 번째 실시예에 따르면 컴퓨팅 리소스가 이용되는 퍼블릭 블록체인의 인덱싱이 복수개의 KYC 노드에 의해 경쟁적으로 진행되면서 KYC 요청 대상인 특정 계정의 관계 계정이 충분히 인덱싱 되는 생태계가 형성되는 효과가 발생된다. 이 경우, 특정 인덱싱 조건 이상 또는 초과의 관계 계정 정보의 hash 값이 블록 헤더에 저장되어 Linked list를 구성할 수 있게 된다. KYC 토큰의 보상 방식의 두 번째 실시예의 변형예로는 블록 생성 이후 기설정된 특정 시간 이내에 인덱싱 된 관계 계정의 수, 인덱싱 된 관계 계정과 KYC 요청 대상인 특정 계정의 거래 관계의 거리(직접 거래인지, 간접 거래인지) 등으로 구성된 특정 인덱싱 조건을 가장 많이 달성한 KYC 노드의 서비스 계정에 KYC 토큰을 보상하는 방식도 적용될 수 있고, 이러한 변형예는 본 발명의 범위에 포함된다. According to one embodiment of the present invention, when a relationship account is indexed in the public block chain by the KYC node in 12b of FIG. 2 or S21 of FIG. 5 according to an embodiment of the present invention, Number, indexed relationship account, and the distance of the transaction relationship of the specific account that is the KYC request target (whether it is direct transaction or indirect transaction), is satisfied by the relationship account information indexed by the specific KYC node , A scheme of compensating the KYC token for the service account of the specific KYC node may be used. In this case, since a plurality of KYC nodes perform indexing of the public block chain in a competitive manner, the block proof and agreement method of the POW (Proof of Work) is performed using the hash value of the account information of a value exceeding or exceeding a specific indexing condition It is possible to construct an effect. That is, according to the second embodiment of the compensation scheme of the KYC token, indexing of the public block chain in which the computing resource is used is competitively performed by a plurality of KYC nodes, and an ecosystem in which a relation account of a specific account, . In this case, the hash value of the related account information over or under a specific indexing condition is stored in the block header, so that a linked list can be constructed. A variant of the second embodiment of the compensation scheme of the KYC token includes the number of relationship accounts indexed within a predetermined time after the creation of the block, the distance of the transaction relationship between the indexed relationship account and the specific account subject to the KYC request And the like), and the like. Also, a method of compensating the KYC token for the service account of the KYC node that has achieved the most specific indexing condition, which is composed of, for example,

KYC 토큰의 보상 방식의 세 번째 실시예로 본 발명의 일실시예에 따르면, 도 2의 12b 또는 도 5의 S21에서 KYC 노드에 의해 퍼블릭 블록체인에서 관계 계정이 인덱싱 될 때, 인덱싱 된 관계 계정에 대해 KYC 블록체인에 입출금 허용여부 정보를 등록한 서비스 계정에 KYC 토큰을 보상하도록 구성될 수 있다. 이러한 경우, 특정 계정 정보 또는 특정 식별 정보에 대한 입출금 허용여부 정보의 등록이 유도되는 효과가 발생된다.According to one embodiment of the present invention in a third embodiment of the KYC token compensation scheme, when a relationship account is indexed in the public block chain by the KYC node in 12b of FIG. 2 or S21 of FIG. 5, It is possible to compensate the KYC token for the service account in which the deposit / withdrawal allowability information is registered in the KYC block chain. In this case, the effect of registering the deposit / non-deposit / disapproval information on specific account information or specific identification information is generated.

KYC 토큰의 보상 방식의 네 번째 실시예로 서비스 계정에서 KYC 블록체인에 기록하는 식별 정보의 정보량이 많을수록 더 많은 보상을 받도록 보상 가중치를 설정할 수 있다. 이에 따르면, 각 서비스 계정들이 특정 사용자에 대해 더 많은 정보를 축적하는 것이 유도되게 된다. As a fourth embodiment of the compensation scheme of the KYC tokens, the compensation weights can be set so as to receive more compensation as the information amount of the identification information recorded in the KYC block chain in the service account increases. This leads to each service account accumulating more information about a particular user.

[식별 정보][Identification information]

본 발명의 일실시예에 따른 식별 정보는, 서비스 서버로 사용자 또는 서비스 주체가 입력하는 주민번호, 성명, Facial data, UUID 등의 Hash 값을 의미할 수 있다. Hash 값 저장으로 개인을 식별할 수 없도록 KYC 블록체인에 기록될 수 있다. 본 발명의 일실시예에 따라 UUID가 식별 정보로 KYC 블록체인에 기록되는 경우, 동일한 디바이스에서 여러 계정을 운영하는 사용자에 대한 블랙리스트 관리도 가능해지는 효과가 발생된다. The identification information according to an embodiment of the present invention may mean a hash value such as a resident number, a name, facial data, and a UUID that the user or the service subject inputs to the service server. It can be recorded in the KYC block chain so that the individual can not be identified by storing the hash value. According to one embodiment of the present invention, when the UUID is recorded in the KYC block chain as the identification information, black list management for users operating multiple accounts in the same device is enabled.

본 발명의 일실시예에 따라 Facial data가 식별 정보로 KYC 블록체인에 기록되는 경우에는, KYC 노드에서 전처리 후 규격이 표준화된 Facial image에 대해 특정 랜드마크를 추출하여 랜드마크 사이의 관계 정보를 추출하고, 추출된 랜드마크 정보의 Hash 값을 KYC 블록체인에 식별 정보로 기록하도록 구성될 수 있다. 이에 따르면, KYC 노드가 Facial data를 인덱싱하는 것이 가능하면서도 개인정보의 보호가 가능해지는 효과가 발생된다. 랜드마크 사이의 관계 정보란 예를 들어, 눈동자와 눈동자 사이의 거리와 얼굴 너비의 비율 등을 의미할 수 있다. According to an embodiment of the present invention, when facial data is recorded in the KYC block chain as the identification information, a specific landmark is extracted from the facial image having the standardized standard after the preprocessing at the KYC node to extract the relationship information between the landmarks And record the Hash value of the extracted landmark information as identification information in the KYC block chain. According to this, the KYC node can index the facial data, but protects the personal information. The relationship information between the landmarks may mean, for example, the ratio of the distance between the pupil and the pupil to the face width.

본 발명의 일실시예에 따르면, KYC의 탈중앙화가 가능해지고, 별도의 플레이어가 KYC 인증 사업을 수행하지 않더라도 복수의 사용자에 대한 계정 정보, 식별 정보 및 입출금 허용여부 정보가 축적되는 효과가 발생된다. 이때, 본 발명의 일실시예와 같이 블록체인을 활용하지 않는 경우에는 개인정보의 문제, 서버 미러링의 문제, 신뢰의 문제, 정보 수집 어려움의 문제 등이 발생되게 된다. According to an embodiment of the present invention, decentralization of KYC becomes possible, and even if a separate player does not perform the KYC certification business, the effect of accumulating account information, identification information, and deposit / no- . At this time, when the block chain is not utilized as in the embodiment of the present invention, problems such as personal information, server mirroring, trust, and difficulty in collecting information may occur.

본 발명의 일실시예에 따르면, 예를 들어, 법적인 이슈 때문에 ICO를 참여할 수 없는 a라는 미국 국민이 A라는 ICO에 참여하려 해서 A 서비스 계정에 의해 a가 입출금 불허로 KYC 블록체인에 기록된 경우, a는 다른 계정을 만들어서 b라는 명의로 A라는 ICO에 참여하려 할 수 있다. 기존의 방식으로는 a의 이러한 차명계좌, 명의대여 행위를 막을 수 없는 문제가 있었다. 하지만, 본 발명의 일실시예에 따르면, A 서비스 서버에서 b의 입출금 허용여부 정보 요청을 KYC 노드를 통해 수행하게 된다(S10). KYC 노드는 b의 계정 정보에 대해 퍼블릭 블록체인에서 관계 계정을 인덱싱하게 되어 a 계정과의 관계를 발견하게 되고(S12b, S21), A 서비스 서버에서는 a 계정이 b 계정의 관계 계정이라는 정보를 KYC 노드를 통해 수신하게 된다(S13). 이후 A 서비스 서버에서는 b 계정의 입출금 불허를 처리하고, b 계정에 대한 입출금 불허를 KYC 노드를 통해 KYC 블록체인에 기록하게 된다(S14, S15). According to an embodiment of the present invention, for example, if a US citizen a who can not participate in ICO due to a legal issue participates in an ICO of A, and a is recorded in the KYC block chain as a denial of deposit / , a may create another account and attempt to join an ICO with the name b. In the conventional way, there was a problem that a loan account of such a name can not be blocked. However, according to an embodiment of the present invention, the A service server performs a request for information on whether or not b is permitted to deposit and withdraw through the KYC node (S10). The KYC node finds a relationship with a account (S12b, S21) by indexing the relationship account in the public block chain with respect to the account information of b, and in the service server A, the information that a account is the relation account of the b account is KYC Node (S13). After that, the A service server processes the denial of b < / RTI > access to the account b and records the denial of denial of deposit and withdrawal of the account b to the KYC block chain via the KYC node (S14 and S15).

이상에서 설명한 바와 같이, 본 발명이 속하는 기술 분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 상술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함하는 것으로 해석되어야 한다.As described above, those skilled in the art will appreciate that the present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. It is therefore to be understood that the above-described embodiments are to be considered in all respects only as illustrative and not restrictive. The scope of the present invention is defined by the appended claims rather than the detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalents should be construed as being included in the scope of the present invention.

본 명세서 내에 기술된 특징들 및 장점들은 모두를 포함하지 않으며, 특히 많은 추가적인 특징들 및 장점들이 도면들, 명세서, 및 청구항들을 고려하여 당업자에게 명백해질 것이다. 더욱이, 본 명세서에 사용된 언어는 주로 읽기 쉽도록 그리고 교시의 목적으로 선택되었고, 본 발명의 주제를 묘사하거나 제한하기 위해 선택되지 않을 수도 있다는 것을 주의해야 한다.The features and advantages described herein are not all inclusive, and in particular, many additional features and advantages will be apparent to those skilled in the art in view of the drawings, specification, and claims. Moreover, it should be noted that the language used herein is primarily chosen for readability and for purposes of teaching, and may not be selected to delineate or limit the subject matter of the invention.

본 발명의 실시예들의 상기한 설명은 예시의 목적으로 제시되었다; 이는 개시된 정확한 형태로 본 발명을 제한하거나, 빠뜨리는 것 없이 만들려고 의도한 것이 아니다. 당업자는 상기한 개시에 비추어 많은 수정 및 변형이 가능하다는 것을 이해할 수 있다.The foregoing description of embodiments of the invention has been presented for purposes of illustration; It is not intended to be exhaustive or to limit the invention to the precise form disclosed. Those skilled in the art will appreciate that many modifications and variations are possible in light of the above teachings.

본 설명의 일부는 연산의 기호 표현 및 알고리즘에 관한 본 발명의 실시예들을 기술한다. 이러한 알고리즘적 설명 및 표현은, 일반적으로 그들의 작업의 핵심을 효율적으로 다른 당업자에게 전달하기 위해 데이터 처리 분야의 당업자에 의해 사용된다. 이러한 동작은 기능적, 연산적, 또는 논리적으로 설명되지만, 컴퓨터나 이와 동등한 전기 회로, 마이크로코드 등에 의해 구현될 것으로 이해된다. 나아가, 또한 이것은 모듈로서의 이러한 동작의 배열을 나타내기 위해, 때때로 일반성의 상실 없이 편리하게 입증된다. 상기 기술된 동작 및 그들의 연관된 모듈은 소프트웨어, 펌웨어, 하드웨어, 또는 이들의 임의의 조합 내에서 구현될 수 있다.Some portions of this description describe embodiments of the present invention relating to symbolic representations of operations and algorithms. These algorithmic descriptions and representations are generally used by those skilled in the data processing arts to efficiently convey the essence of their work to the other skilled artisan. While such operations are described functionally, computationally, or logically, they are understood to be implemented by a computer or equivalent electrical circuitry, microcode, or the like. Furthermore, this is also conveniently demonstrated without loss of generality, sometimes to represent an arrangement of such operations as a module. The operations described above and their associated modules may be implemented in software, firmware, hardware, or any combination thereof.

여기서 기술된 임의의 단계, 동작, 또는 프로세스는, 하나 이상의 하드웨어 또는 소프트웨어 모듈과 함께 단독으로 또는 다른 장치와 조합하여 수행되거나 구현될 수 있다. 일 실시예에서, 소프트웨어 모듈은 컴퓨터 프로그램 코드를 포함하는 컴퓨터-판독 가능 매체로 구성되는 컴퓨터 프로그램 제품과 함께 구현되고, 컴퓨터 프로그램 코드는 기술된 임의의 또는 모든 공정, 단계, 또는 동작을 수행하기 위한 컴퓨터 프로세서에 의해 실행될 수 있다.Any of the steps, operations, or processes described herein may be performed or implemented in conjunction with one or more hardware or software modules, alone or in combination with other devices. In one embodiment, a software module is implemented with a computer program product comprised of a computer-readable medium comprising computer program code, and the computer program code is executable to perform any or all of the processes, steps, May be executed by a computer processor.

또한, 본 발명의 실시예들은, 여기서의 동작을 수행하기 위한 장치와 관련될 수 있다. 이들 장치는 요구되는 목적을 위해 특별히 제작될 수 있고/있거나, 컴퓨터 내에 저장된 컴퓨터 프로그램에 의해 선택적으로 활성화되거나 재구성되는 일반적-목적의 연산 장치를 포함할 수 있다. 이러한 컴퓨터 프로그램은, 유형의 컴퓨터 판독가능 저장 매체 또는 전자 명령어를 저장하기 위해 적합한 임의의 유형의 미디어 내에 저장될 수 있고, 컴퓨터 시스템 버스에 결합될 수 있다. 나아가, 본 명세서에 참조되는 임의의 연산 시스템은 단일 프로세서를 포함할 수 있거나, 증가한 연산 능력을 위한 다중 프로세서 디자인을 채택한 구조가 될 수 있다.Furthermore, embodiments of the invention may relate to an apparatus for performing the operations herein. These devices may include a general-purpose computing device that may be specially constructed and / or selectively activated or reconfigured by a computer program stored within the computer for the required purpose. Such a computer program may be stored in any type of media suitable for storing computer readable storage media or type of instructions, and may be coupled to a computer system bus. Further, any computing system referred to herein may comprise a single processor, or it may be a structure employing a multiprocessor design for increased computing power.

마지막으로, 본 명세서에 사용된 언어는 주로 읽기 쉽도록 그리고 교시의 목적으로 선택되었고, 본 발명의 주제를 묘사하거나 제한하기 위해 선택되지 않을 수 있다.Finally, the language used herein has been chosen primarily for readability and for purposes of teaching, and may not be selected to describe or limit the subject matter of the invention.

그러므로 본 발명의 범위는 상세한 설명에 의해 한정되지 않고, 이를 기반으로 하는 출원의 임의의 청구항들에 의해 한정된다. 따라서, 본 발명의 실시예들의 개시는 예시적인 것이며, 이하의 청구항에 기재된 본 발명의 범위를 제한하는 것은 아니다.The scope of the invention is, therefore, not to be limited by the Detailed Description, but is to be defined by the claims of any application based thereon. Accordingly, the disclosure of embodiments of the invention is illustrative and not restrictive of the scope of the invention, which is set forth in the following claims.

30: KYC 블록체인
200: 서비스 서버
400: KYC 노드
500: 퍼블릭 블록체인
30: KYC block chain
200: service server
400: KYC node
500: Public block chain

Claims (4)

특정 계정에 대한 입출금 허용여부 정보를 기록하고 KYC(Know Your Customer) 노드에 저장되며 복수개의 상기 KYC 노드에 의해 블록체인 분산 네트워크를 구성하는, KYC 블록체인을 이용한 KYC 수행 방법에 있어서,
상기 KYC 노드가 서비스 서버에서 계정 정보 및 식별 정보에 대한 입출금 허용여부 정보의 요청을 수신하는 입출금 허용여부 요청 단계;
상기 KYC 노드가 상기 KYC 노드의 메모리 모듈에 저장된 상기 KYC 블록체인에서 상기 계정 정보 또는 상기 식별 정보를 인덱싱하는 제1차 인덱싱 단계;
상기 제1차 인덱싱 단계에서 상기 입출금 허용여부 정보가 기저장되어 있지 않은 경우에는 상기 KYC 노드가 상기 계정 정보의 계정을 포함하는 퍼블릭 블록체인에서 상기 계정 정보와 직간접적으로 거래가 수행된 계정인 관계 계정을 인덱싱하고 관계 계정 정보를 생성하는 제2차 인덱싱 단계;
상기 KYC 노드가 상기 관계 계정 정보를 상기 서비스 서버로 송신하는 관계 계정 정보 송신 단계;
상기 KYC 노드가 상기 서비스 서버에서 상기 계정 정보 및 상기 식별 정보에 대한 상기 입출금 허용여부 정보를 수신하는 입출금 허용여부 정보 수신 단계; 및
상기 KYC 노드가 상기 KYC 블록체인에 상기 계정 정보, 상기 식별 정보 및 상기 입출금 허용여부 정보에 대한 트랜잭션인 KYC 트랜잭션을 생성하고 배포하는 블록체인 기록 단계;
를 포함하며,
상기 제1차 인덱싱 단계에서 상기 입출금 허용여부 정보가 기저장되어 있는 경우에는 상기 KYC 노드가 상기 서비스 서버로 기저장된 상기 입출금 허용여부 정보를 송신하는 것을 특징으로 하는,
KYC 블록체인을 이용한 KYC 수행 방법.
A method of performing a KYC using a KYC block chain in which deposit and withdrawal allowance information for a specific account is recorded and stored in a KYC (Know Your Customer) node and a plurality of KYC nodes form a block-chain distributed network,
A KYC node receiving a request for deposit / withdrawal allowance information on account information and identification information at a service server;
A primary indexing step in which the KYC node indexes the account information or the identification information in the KYC block chain stored in the memory module of the KYC node;
When the deposit / withdrawal allowance information is not stored in the first indexing step, the KYC node transmits the account information in the public block chain including the account information of the account information, which is an account that is directly or indirectly traded with the account information A second indexing step of indexing the related account information and generating relationship account information;
A relationship account information transmission step in which the KYC node transmits the relationship account information to the service server;
Receiving information on deposit / withdrawal allowance / non-receipt of the account information and the deposit / withdrawal allowance information on the identification information from the service server; And
A block chain recording step of causing the KYC node to generate and distribute a KYC transaction which is a transaction for the account information, the identification information, and the deposit / withdrawal allowance information to the KYC block chain;
/ RTI >
When the deposit / withdrawal allowance information is stored in the first indexing step, the KYC node transmits the deposit / withdrawal allowance information previously stored in the service server.
How to Perform KYC using KYC Block Chain.
특정 계정에 대한 입출금 허용여부 정보를 기록하는 KYC(Know Your Customer) 블록체인을 저장하고 상기 KYC 블록체인의 블록체인 분산 네트워크의 적어도 일부를 구성하는, 상기 KYC 블록체인을 이용한 KYC 수행 장치에 있어서,
KYC 프로그램 코드 및 상기 KYC 블록체인을 저장하는 메모리 모듈; 및
상기 KYC 프로그램 코드를 처리하는 처리 모듈;
을 포함하고,
상기 KYC 프로그램 코드는,
서비스 서버에서 계정 정보 및 식별 정보에 대한 입출금 허용여부 정보의 요청을 수신하는 입출금 허용여부 요청 단계;
상기 메모리 모듈에 저장된 상기 KYC 블록체인에서 상기 계정 정보 또는 상기 식별 정보를 인덱싱하는 제1차 인덱싱 단계;
상기 제1차 인덱싱 단계에서 상기 입출금 허용여부 정보가 기저장되어 있지 않은 경우, 상기 계정 정보의 계정을 포함하는 퍼블릭 블록체인에서 상기 계정 정보와 직간접적으로 거래가 수행된 계정인 관계 계정을 인덱싱하고 관계 계정 정보를 생성하는 제2차 인덱싱 단계;
상기 관계 계정 정보를 상기 서비스 서버로 송신하는 관계 계정 정보 송신 단계;
상기 서비스 서버에서 상기 계정 정보 및 상기 식별 정보에 대한 상기 입출금 허용여부 정보를 수신하는 입출금 허용여부 정보 수신 단계; 및
상기 KYC 블록체인에 상기 계정 정보, 상기 식별 정보 및 상기 입출금 허용여부 정보에 대한 트랜잭션인 KYC 트랜잭션을 생성하고 배포하는 블록체인 기록 단계;
를 컴퓨터 상에서 수행시키는 프로그램 코드를 포함하며,
상기 제1차 인덱싱 단계에서 상기 입출금 허용여부 정보가 기저장되어 있는 경우에는 상기 서비스 서버로 기저장된 상기 입출금 허용여부 정보를 송신하는 것을 특징으로 하는,
KYC 블록체인을 이용한 KYC 수행 장치.
A KYC execution device using the KYC block chain, wherein the KYC block chain stores a KYC (Know Your Customer) block chain that records deposit and withdrawal allowance information for a specific account and constitutes at least a part of a distributed chain of block chains of the KYC block chain,
A memory module for storing the KYC program code and the KYC block chain; And
A processing module for processing the KYC program code;
/ RTI >
The KYC program code includes:
A request for deposit and withdrawal permission or denial of receipt of a request for deposit and withdrawal allowance information on account information and identification information in a service server;
A first indexing step of indexing the account information or the identification information in the KYC block chain stored in the memory module;
When the deposit / withdrawal allowance information has not been stored in the first indexing step, a relationship account, which is an account that is directly or indirectly traded with the account information, is indexed in a public block chain including an account of the account information, A second indexing step of generating account information;
Transmitting the relationship account information to the service server;
A deposit / withdrawal allowance information receiving step of receiving the account information and the deposit / withdrawal allowance information on the identification information from the service server; And
A block chain recording step of generating and distributing a KYC transaction, which is a transaction for the account information, the identification information, and the deposit / withdrawal allowance information, to the KYC block chain;
On a computer,
When the deposit / withdrawal allowance information is stored in the first indexing step, the deposit / withdrawal allowance information previously stored in the service server is transmitted.
KYC execution unit using KYC block chain.
삭제delete 삭제delete
KR1020180088210A 2018-07-27 2018-07-27 Apparatus and Method for KYC using KYC blockchain KR101936759B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180088210A KR101936759B1 (en) 2018-07-27 2018-07-27 Apparatus and Method for KYC using KYC blockchain

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180088210A KR101936759B1 (en) 2018-07-27 2018-07-27 Apparatus and Method for KYC using KYC blockchain

Related Child Applications (7)

Application Number Title Priority Date Filing Date
KR1020180174320A Division KR102096646B1 (en) 2018-12-31 2018-12-31 Apparatus for KYC using KYC blockchain
KR1020180174318A Division KR102096644B1 (en) 2018-12-31 2018-12-31 Apparatus for KYC using KYC blockchain
KR1020180174315A Division KR102096641B1 (en) 2018-12-31 2018-12-31 Apparatus and Method for KYC using KYC blockchain
KR1020180174319A Division KR102096645B1 (en) 2018-12-31 2018-12-31 Apparatus for KYC using KYC blockchain
KR1020180174314A Division KR102096640B1 (en) 2018-12-31 2018-12-31 Apparatus for KYC using Token Balance within KYC blockchain
KR1020180174316A Division KR102096642B1 (en) 2018-12-31 2018-12-31 Apparatus for KYC using KYC blockchain
KR1020180174317A Division KR102096643B1 (en) 2018-12-31 2018-12-31 Apparatus for KYC using KYC blockchain

Publications (1)

Publication Number Publication Date
KR101936759B1 true KR101936759B1 (en) 2019-01-11

Family

ID=65028210

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180088210A KR101936759B1 (en) 2018-07-27 2018-07-27 Apparatus and Method for KYC using KYC blockchain

Country Status (1)

Country Link
KR (1) KR101936759B1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109741052A (en) * 2019-01-28 2019-05-10 杭州复杂美科技有限公司 Red packet processing method, equipment and storage medium
CN110428260A (en) * 2019-07-31 2019-11-08 北京米弘科技有限公司 The account model of block chain
CN111311416A (en) * 2020-02-28 2020-06-19 杭州云象网络技术有限公司 Block chain money laundering node detection method based on multichannel graph and graph neural network
WO2021002692A1 (en) * 2019-07-03 2021-01-07 Coinplug, Inc. Method for providing virtual asset service based on decentralized identifier and virtual asset service providing server using them
KR20210004842A (en) * 2019-07-03 2021-01-13 주식회사 코인플러그 Method for providing virtual asset service based on dicentralized identity and virtual asset service providing server using them
KR20210010396A (en) * 2019-07-17 2021-01-27 두나무 주식회사 Method and apparatus for authenticating address of virtual asset
WO2021127446A1 (en) * 2019-12-18 2021-06-24 Tzero Ip, Llc Account owner funding of know your customer and accredited investor verification renewal and monitoring charges through coin payment
KR20230038162A (en) * 2019-07-17 2023-03-17 두나무 주식회사 Method and apparatus for authenticating address of virtual asset

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003162633A (en) 2001-11-22 2003-06-06 Hachijuni Bank Ltd Personal authentication data management method and accounting system
KR101852077B1 (en) 2018-01-16 2018-04-27 주식회사 미탭스플러스 Distributed Ledger Device and Distributed Ledger Method for Game Difficulty Control based on Block Chain

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003162633A (en) 2001-11-22 2003-06-06 Hachijuni Bank Ltd Personal authentication data management method and accounting system
KR101852077B1 (en) 2018-01-16 2018-04-27 주식회사 미탭스플러스 Distributed Ledger Device and Distributed Ledger Method for Game Difficulty Control based on Block Chain

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109741052A (en) * 2019-01-28 2019-05-10 杭州复杂美科技有限公司 Red packet processing method, equipment and storage medium
US10944574B2 (en) 2019-07-03 2021-03-09 Coinplug, Inc. Method for providing virtual asset service based on decentralized identifier and virtual asset service providing server using them
WO2021002692A1 (en) * 2019-07-03 2021-01-07 Coinplug, Inc. Method for providing virtual asset service based on decentralized identifier and virtual asset service providing server using them
KR20210004842A (en) * 2019-07-03 2021-01-13 주식회사 코인플러그 Method for providing virtual asset service based on dicentralized identity and virtual asset service providing server using them
KR102348232B1 (en) * 2019-07-03 2022-01-10 주식회사 코인플러그 Method for providing virtual asset service based on dicentralized identity and virtual asset service providing server using them
KR20210010396A (en) * 2019-07-17 2021-01-27 두나무 주식회사 Method and apparatus for authenticating address of virtual asset
KR102509039B1 (en) * 2019-07-17 2023-03-10 두나무 주식회사 Method and apparatus for authenticating address of virtual asset
KR20230038162A (en) * 2019-07-17 2023-03-17 두나무 주식회사 Method and apparatus for authenticating address of virtual asset
KR102633664B1 (en) 2019-07-17 2024-02-05 두나무 주식회사 Method and apparatus for authenticating address of virtual asset
CN110428260A (en) * 2019-07-31 2019-11-08 北京米弘科技有限公司 The account model of block chain
WO2021127446A1 (en) * 2019-12-18 2021-06-24 Tzero Ip, Llc Account owner funding of know your customer and accredited investor verification renewal and monitoring charges through coin payment
CN111311416A (en) * 2020-02-28 2020-06-19 杭州云象网络技术有限公司 Block chain money laundering node detection method based on multichannel graph and graph neural network
CN111311416B (en) * 2020-02-28 2024-01-23 杭州云象网络技术有限公司 Block chain money laundering node detection method based on multichannel graph and graph neural network

Similar Documents

Publication Publication Date Title
KR101936759B1 (en) Apparatus and Method for KYC using KYC blockchain
KR101878869B1 (en) Distributed Ledger Device and Distributed Ledger Method for User Identification Management Based on Block Chain
CN110766550B (en) Asset query method and device based on block chain and electronic equipment
JP7128111B2 (en) Systems and methods for controlling asset-related activities via blockchain
EP3411824B1 (en) Systems and methods for storing and sharing transactional data using distributed computer systems
US20210065293A1 (en) Distributed ledger lending
KR101936756B1 (en) Apparatus for Supporting Sharing Economy using Blockchain
US20190333030A1 (en) Blockchain-based digital token utilization
KR101878870B1 (en) Distributed Ledger Device and Distributed Ledger Method for Token Issuance and User Identification Management Based on Block Chain
CN112513906A (en) Managing transactions over blockchain networks
US20220067717A1 (en) Blockchain system that includes bank nodes each having separate ledgers for identity, digital currency and other functions, and operation method thereof
CN111738724A (en) Cross-border resource transfer authenticity auditing method and device, and electronic equipment
Khandelwal et al. Blockchain technology based smart contract agreement on remix ide
KR101962285B1 (en) Distributed Ledger Device and Distributed Ledger Method for User Identification Management Based on Block Chain
US20230013119A1 (en) Tainted asset marker management
Ren et al. Interoperability in blockchain: A survey
Cai et al. Introduction to blockchain basics
KR102096643B1 (en) Apparatus for KYC using KYC blockchain
Horch et al. Adversary tactics and techniques specific to cryptocurrency scams
Ghosh Adoption of blockchain in financial services
KR102096646B1 (en) Apparatus for KYC using KYC blockchain
KR102096645B1 (en) Apparatus for KYC using KYC blockchain
KR102096640B1 (en) Apparatus for KYC using Token Balance within KYC blockchain
KR102096644B1 (en) Apparatus for KYC using KYC blockchain
KR102096642B1 (en) Apparatus for KYC using KYC blockchain

Legal Events

Date Code Title Description
A107 Divisional application of patent
GRNT Written decision to grant