KR20210131031A - Method for managing user key using smart contract on blockchain - Google Patents

Method for managing user key using smart contract on blockchain Download PDF

Info

Publication number
KR20210131031A
KR20210131031A KR1020200049324A KR20200049324A KR20210131031A KR 20210131031 A KR20210131031 A KR 20210131031A KR 1020200049324 A KR1020200049324 A KR 1020200049324A KR 20200049324 A KR20200049324 A KR 20200049324A KR 20210131031 A KR20210131031 A KR 20210131031A
Authority
KR
South Korea
Prior art keywords
user
account
master
key
transaction
Prior art date
Application number
KR1020200049324A
Other languages
Korean (ko)
Other versions
KR102383492B1 (en
Inventor
장우영
김진년
이철희
Original Assignee
에스케이 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에스케이 주식회사 filed Critical 에스케이 주식회사
Priority to KR1020200049324A priority Critical patent/KR102383492B1/en
Publication of KR20210131031A publication Critical patent/KR20210131031A/en
Application granted granted Critical
Publication of KR102383492B1 publication Critical patent/KR102383492B1/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/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4014Identity check for transactions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • H04L2209/38

Landscapes

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

Abstract

Provided is a user key management method using a smart contract on a blockchain. According to an embodiment of the present invention, the user key management method comprises the following steps by a user key management system: generating a master account for storing and transacting a user's assets for which an authentication procedure has been completed, and a user account mapped to the master account; processing a transaction on the basis of transaction information signed by the user; and when a user key for the user account is lost, maintaining the master account, generating a new user account, and updating and restoring a mapping relationship between the newly generated user account and the master account. It is possible to solve the problem of being incapable of accessing the assets sorted in the master account when the user account or user key is lost and have transparency and traceability of asset management.

Description

블록체인 상의 스마트 계약을 이용한 사용자 키 관리 방법{Method for managing user key using smart contract on blockchain}Method for managing user key using smart contract on blockchain}

본 발명은 블록체인 기술에 관한 것으로, 더욱 상세하게는 블록체인 상의 스마트 계약을 이용한 사용자 키 관리 방법에 관한 것이다.The present invention relates to blockchain technology, and more particularly, to a user key management method using a smart contract on a blockchain.

일반적으로 블록체인 네트워크(blockchain network)는 복수의 블록이 체인 형태로 연결된 블록체인 데이터를 분산 관리하기 위해, 복수의 블록체인 노드로 구성되어 있으며, 복수의 블록체인 노드는 서로 간의 통신 및 합의를 통해 체인화된 블록체인 거래장부에 대한 블록을 만들고 유지하게 된다. In general, a blockchain network is composed of a plurality of blockchain nodes to distribute and manage blockchain data in which a plurality of blocks are connected in a chain form. Creates and maintains blocks for the chained blockchain transaction ledger.

그래서 블록체인 네트워크는 어느 특정 블록체인 노드가 죽거나 해킹되더라도 과반의 블록체인 노드가 정상적이면 시스템이 연속적으로 운영되어 신뢰성 있는 서비스가 가능하다.Therefore, in the blockchain network, even if a specific blockchain node dies or is hacked, if the majority of the blockchain nodes are normal, the system is continuously operated and reliable service is possible.

또한, 블록체인 내 사용자 계정 주소(account)는 해당하는 개인 키(Private key)와 공개 키(Public key)가 부가되어, 블록체인 네트워크가 허용하는 트랜잭션(transaction)을 개인 키로 서명해서 보낼 수 있으며, 블록체인 네트워크는 공개 키를 이용하여 검증하고 합의하여 블록체인 거래장부에 반영할 수 있다. In addition, the corresponding private key and public key are added to the user account address in the block chain, so that the transaction allowed by the block chain network can be signed with the private key and sent. The blockchain network can be verified and agreed using the public key and reflected in the blockchain transaction ledger.

이러한 블록체인 기술은 계정(account, 사용자 지갑 주소) 및 개인 키(개인 암호 키)를 사용자의 부주의로 인하여 분실하는 경우, 해당 계정 내 보관된 토큰 등의 자산을 찾을 방법이 없다는 점에서 그 불편함이 존재한다.This blockchain technology is inconvenient in that if the account (account, user wallet address) and private key (personal encryption key) are lost due to the user's carelessness, there is no way to find assets such as tokens stored in the account. this exists

이를 보완하기 위해, 기존 블록체인 기반 서비스 업체들은 개인이 보관해야 할 개인 키를 서버의 데이터베이스 등에 보관하면서 분실을 대비하고 있어, 서버에 보안 침입 사고 발생 시, 개인 계정의 자산이 도난당하는 사고가 발생할 수 있다는 점에서 그 한계가 존재한다. 따라서, 이를 보완하기 위한 방안의 모색이 요구된다. To compensate for this, existing blockchain-based service providers keep the private key that individuals need to keep in the database of the server and prepare for loss. There are limits to what can be done. Therefore, it is required to find a way to supplement this.

본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은, 자산을 보관하고 거래하는 마스터 계정과 사용자가 알고 있는 사용자 계정을 각각 생성하여 분리하고, 분리된 두 계정을 스마트 계약으로 등록하여, 사용자 계정 또는 사용자 키를 분실하더라도 마스터 계정을 유지하되, 사용자 계정을 신규 생성하고, 신규 생성된 사용자 계정과 마스터 계정 간의 관계를 갱신할 수 있는 블록체인 상의 스마트 계약을 이용한 사용자 키 관리 방법을 제공함에 있다.The present invention has been devised to solve the above problems, and an object of the present invention is to create and separate a master account that stores and trades assets and a user account known by the user, respectively, and separates the two separate accounts into a smart contract User key management using a smart contract on the blockchain that can register as a user account or lose the user key, maintain the master account, create a new user account, and renew the relationship between the newly created user account and the master account to provide a method.

상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른, 블록체인 상의 스마트 계약을 이용한 사용자 키 관리 방법은, 사용자 키 관리 시스템이, 인증 절차가 완료된 사용자의 자산을 보관하고 거래하는 마스터 계정과 마스터 계정에 매핑되는 사용자 계정을 각각 생성하는 단계; 사용자 키 관리 시스템이, 사용자에 의해 서명된 거래 정보를 기반으로 거래(transaction)를 처리하는 단계; 및 사용자 계정에 대한 사용자 키 분실 시, 사용자 키 관리 시스템이, 마스터 계정을 유지하되, 사용자 계정을 신규 생성하고, 신규 생성된 사용자 계정과 마스터 계정 간의 매핑 관계를 갱신하여, 복구하는 단계;를 포함한다.In a user key management method using a smart contract on a block chain according to an embodiment of the present invention for achieving the above object, the user key management system stores and transacts the user's assets for which the authentication procedure has been completed. creating each user account mapped to the account; processing, by the user key management system, a transaction based on transaction information signed by the user; and when the user key for the user account is lost, the user key management system maintains the master account, creates a new user account, and updates and restores the mapping relationship between the newly created user account and the master account. do.

그리고 생성 단계는, 사용자의 마스터 계정 생성 시, 키 쌍(Key pair)으로 구성되는 마스터 계정에 대한 마스터 개인 키 및 마스터 공개 키를 생성하고, 생성된 마스터 개인 키 및 마스터 공개 키를 서로 분리하여 관리할 수 있다. In the creation step, when the user's master account is created, a master private key and a master public key for the master account composed of a key pair are generated, and the generated master private key and master public key are separated from each other and managed can do.

또한, 생성 단계는, 마스터 개인 키 및 마스터 공개 키가 생성되면, 생성된 마스터 개인 키를 암호화시켜 별도로 마련되는 암호화 저장소에 저장하되, 생성된 마스터 공개 키를 인증 절차를 통해 등록된 사용자 정보에 매칭시켜 데이터베이스에 저장하여 관리할 수 있다. In addition, in the generation step, when the master private key and the master public key are generated, the generated master private key is encrypted and stored in a separate encrypted storage, but the generated master public key is matched with the registered user information through the authentication procedure It can be stored and managed in a database.

그리고 사용자 계정은, 마스터 계정과의 매핑 관계가 스마트 계약(Smart contract)으로 등록될 수 있다. And the user account, the mapping relationship with the master account may be registered as a smart contract (Smart contract).

또한, 생성 단계는, 사용자의 사용자 계정 생성 시, 키 쌍(Key pair)으로 구성되는 사용자 계정에 대한 사용자 개인 키 및 사용자 공개 키를 생성하고, 생성된 사용자 공개 키를 블록체인 거래장부에 저장하여, 사용자 계정 및 마스터 계정 간의 스마트 계약 등록 시, 블록체인 거래장부에 저장된 마스터 공개 키와 사용자 공개 키 간의 매핑 관계가 이뤄지도록 할 수 있다.In addition, in the creation step, when a user's user account is created, a user private key and a user public key are generated for the user account composed of a key pair, and the generated user public key is stored in the blockchain transaction ledger. , when registering a smart contract between a user account and a master account, it is possible to establish a mapping relationship between the master public key stored in the blockchain transaction ledger and the user public key.

그리고 처리 단계는, 사용자 개인 키로 서명된 거래 정보가 전달되면, 블록체인 거래장부에 저장된 사용자 공개 키의 유효성을 검증하고, 사용자 공개 키의 유효성이 검증되면, 사용자 공개 키와 매핑 관계인 마스터 공개 키를 이용하여 거래를 처리할 수 있다.And the processing step, when the transaction information signed with the user private key is delivered, verifies the validity of the user public key stored in the blockchain transaction ledger, and when the validity of the user public key is verified, the master public key, which is a mapping relationship with the user public key can be used to process transactions.

또한, 처리 단계는, 유효성이 검증된 사용자 공개 키와 매핑 관계인 마스터 공개 키의 키 쌍에 해당하는 마스터 개인 키로 거래 정보를 서명하여 거래를 처리하고, 거래 처리 후 갱신된 거래 정보를 블록체인 거래장부에 기록할 수 있다. In addition, the processing step processes the transaction by signing the transaction information with the master private key corresponding to the key pair of the master public key, which is a mapping relationship with the validated user public key, and stores the transaction information updated after transaction processing into the blockchain transaction book can be recorded in

그리고 복구 단계는, 사용자 계정에 대한 사용자 키 분실 시, 사용자 개인 키 및 사용자 공개 키를 신규 생성하고, 신규 생성된 사용자 공개 키와 블록체인 거래장부에 저장된 마스터 공개 키 간의 매핑 관계를 이뤄지도록 갱신할 수 있다. And in the recovery step, when the user key for the user account is lost, the user private key and the user public key are newly created, and the mapping relationship between the newly created user public key and the master public key stored in the blockchain transaction book is updated. can

또한, 생성 단계는, 사용자의 요청에 의해 사용자 계정이 추가 생성되면, 사용자의 선택에 따라 추가 생성된 사용자 계정과 기존에 생성된 마스터 계정 간의 매핑 관계가 갱신되어 스마트 계약으로 등록되거나 또는 마스터 계정이 추가 생성되어, 추가 생성된 사용자 계정과 추가 생성된 마스터 계정 간의 매핑 관계가 스마트 계약으로 등록되도록 할 수 있다. In addition, in the creation step, when a user account is additionally created by the user's request, the mapping relationship between the additionally created user account and the previously created master account is updated according to the user's selection and registered as a smart contract or the master account is By being additionally created, a mapping relationship between the additionally created user account and the additionally created master account can be registered as a smart contract.

한편, 본 발명의 다른 실시예에 따른, 블록체인 상의 스마트 계약을 이용한 사용자 키 관리 시스템은, 사용자 지갑을 지원하는 사용자 단말 또는 블록체인 노드에 연결되도록 하는 통신부; 및 사용자의 인증 절차가 완료되면, 자산을 보관하고 거래하는 마스터 계정을 생성하고, 사용자에 의해 서명된 거래 정보를 기반으로 블록체인 노드에 연결되어, 거래(transaction)가 처리되도록 하며, 사용자 계정에 대한 사용자 키 분실 시, 마스터 계정을 유지하되, 사용자 계정이 신규 생성되도록 하고, 신규 생성된 사용자 계정과 마스터 계정 간의 매핑 관계가 갱신되도록 하는 프로세서;를 포함한다. On the other hand, according to another embodiment of the present invention, a user key management system using a smart contract on a block chain, a communication unit to be connected to a user terminal or block chain node supporting a user wallet; And when the user's authentication process is completed, it creates a master account that stores and trades assets, is connected to a blockchain node based on the transaction information signed by the user, allows the transaction to be processed, and is stored in the user account. and a processor that maintains the master account when the user key is lost, but causes the user account to be newly created and the mapping relationship between the newly created user account and the master account is updated.

이상 설명한 바와 같이, 본 발명의 실시예들에 따르면, 사용자 계정 또는 사용자 키 분실 시, 마스터 계정 내 보관된 자산에 접근하지 못하는 문제를 해결하고, 자산 관리의 투명성과 추적 가능성을 제공할 수 있다. As described above, according to embodiments of the present invention, when a user account or a user key is lost, it is possible to solve the problem of inability to access assets stored in the master account, and provide transparency and traceability of asset management.

도 1은 본 발명의 일 실시예에 따른 블록체인 상의 스마트 계약을 이용한 사용자 키 관리 시스템의 설명에 제공된 도면,
도 2는 블록체인 거래 플랫폼 운영 서버 구조의 설명에 제공된 도면,
도 3은 본 발명의 일 실시예에 따른 블록체인 상의 스마트 계약을 이용한 사용자 키 관리 방법의 설명에 제공된 도면,
도 4는 사용자 계정 생성 과정의 설명에 제공된 도면,
도 5는 거래 처리 과정의 설명에 제공된 도면, 그리고
도 6은 사용자 키 분실 시, 복구 과정의 설명에 제공된 도면이다.
1 is a diagram provided for the description of a user key management system using a smart contract on a block chain according to an embodiment of the present invention;
2 is a diagram provided for the description of the blockchain transaction platform operation server structure;
3 is a view provided for the description of a user key management method using a smart contract on a block chain according to an embodiment of the present invention;
4 is a diagram provided to explain the user account creation process;
5 is a diagram provided for the description of a transaction processing process, and
6 is a diagram provided to explain a recovery process when a user key is lost.

이하에서는 도면을 참조하여 본 발명을 보다 상세하게 설명한다.Hereinafter, the present invention will be described in more detail with reference to the drawings.

도 1은 본 발명의 일 실시예에 따른 블록체인 상의 스마트 계약을 이용한 사용자 키 관리 시스템(이하에서는 '사용자 키 관리 시스템'으로 총칭하기로 함)의 설명에 제공된 도면이다. 1 is a diagram provided for explanation of a user key management system (hereinafter, collectively referred to as a 'user key management system') using a smart contract on a block chain according to an embodiment of the present invention.

본 실시에에 따른 사용자 키 관리 시스템은, 자산을 보관하고 거래하는 마스터 계정과 사용자가 알고 있는 사용자 계정을 각각 생성하여 분리하고, 분리된 두 계정을 스마트 계약으로 등록하여, 사용자 계정 또는 사용자 키를 분실하더라도 마스터 계정을 유지하되, 사용자 계정을 신규 생성하고, 신규 생성된 사용자 계정과 마스터 계정 간의 관계를 갱신할 수 있다.The user key management system according to this embodiment creates and separates a master account that stores and trades assets and a user account known by the user, registers the two separate accounts as a smart contract, and stores the user account or the user key. Although the master account is maintained even if it is lost, a new user account can be created and the relationship between the newly created user account and the master account can be renewed.

이를 위해, 본 사용자 키 관리 시스템은, 사용자 단말(100), 블록체인 거래 플랫폼 운영 서버(200), 블록체인 노드(300), 거래 서명 모듈(400) 및 암호화 저장소(500)를 포함할 수 있다. To this end, the user key management system may include a user terminal 100 , a block chain transaction platform operation server 200 , a block chain node 300 , a transaction signature module 400 , and an encryption storage 500 . .

사용자 단말(100)은, 사용자 지갑(Wallet)을 지원하기 위해 마련되는 스마트폰, 태블릿 PC, 노트북, 데스크 탑과 같은 정보처리 단말이다. The user terminal 100 is an information processing terminal such as a smart phone, a tablet PC, a notebook computer, and a desktop provided to support a user wallet.

여기서, 사용자 지갑(Wallet)은, 재화의 가치로 환산 가능한 토큰 등의 자산이 보관되는 지갑 파일을 의미한다. 사용자 지갑에는 각각의 고유 주소가 부여되며, 그 주소를 기반으로 토큰 등의 거래가 이루어진다. Here, the user wallet (Wallet) means a wallet file in which assets such as tokens that can be converted into the value of goods are stored. Each user's wallet is given a unique address, and transactions such as tokens are made based on that address.

본 실시예에 따른 사용자 지갑을 지원하는 사용자 단말(100)은, 블록체인 거래 플랫폼에 접속하여, 마스터 계정에 매핑되는 사용자 계정을 생성할 수 있다. The user terminal 100 supporting the user wallet according to the present embodiment may access the blockchain transaction platform and create a user account mapped to the master account.

구체적으로, 사용자 지갑을 지원하는 사용자 단말(100)은, 사용자의 사용자 계정 생성 시, 키 쌍(Key pair)으로 구성되는 사용자 계정에 대한 사용자 개인 키 및 사용자 공개 키를 생성할 수 있다. Specifically, the user terminal 100 supporting the user wallet may generate a user private key and a user public key for a user account composed of a key pair when a user account is created.

블록체인 거래 플랫폼 운영 서버(200)는, 블록체인 거래 플랫폼을 운영하기 위해 마련된다.The block chain transaction platform operation server 200 is provided to operate the block chain transaction platform.

여기서, 블록체인 거래 플랫폼은, 사용자 단말(100)을 통해, 사용자의 인증 절차가 완료되면, 자산을 보관하고 거래하는 마스터 계정을 생성할 수 있으며, 사용자에 의해 서명된 거래 정보를 기반으로 거래(transaction)가 처리되도록 할 수 있다.Here, the blockchain transaction platform, through the user terminal 100, when the user's authentication procedure is completed, can create a master account for storing and transacting assets, and based on the transaction information signed by the user ( transaction) can be processed.

더불어, 블록체인 거래 플랫폼은, 사용자 계정에 대한 사용자 키 분실 시, 마스터 계정을 유지하되, 사용자 계정을 신규 생성하도록 하고, 신규 생성된 사용자 계정과 마스터 계정 간의 매핑 관계가 갱신되도록 할 수 있다. In addition, the blockchain transaction platform can maintain the master account when the user key for the user account is lost, but create a new user account, and update the mapping relationship between the newly created user account and the master account.

구체적으로 예를 들면, 블록체인 거래 플랫폼은, 사용자의 마스터 계정 생성 시, 키 쌍(Key pair)으로 구성되는 마스터 계정에 대한 마스터 개인 키 및 마스터 공개 키를 생성하고, 생성된 마스터 개인 키 및 마스터 공개 키를 서로 분리하여 관리할 수 있다.Specifically, for example, the blockchain transaction platform generates a master private key and a master public key for a master account composed of a key pair when a user's master account is created, and the generated master private key and master Public keys can be managed separately from each other.

즉, 블록체인 거래 플랫폼 운영 서버(200)는, 마스터 개인 키 및 마스터 공개 키가 생성되면, 생성된 마스터 개인 키를 암호화시켜 별도로 마련되는 암호화 저장소(500)에 저장하되, 생성된 마스터 공개 키를 인증 절차를 통해 등록된 사용자 정보에 매칭시켜 데이터베이스에 저장하여 관리할 수 있다. That is, the blockchain transaction platform operation server 200, when the master private key and the master public key are generated, encrypts the generated master private key and stores it in a separate encrypted storage 500, but stores the generated master public key It can be stored and managed in the database by matching with the registered user information through the authentication process.

그리고 블록체인 거래 플랫폼 운영 서버(200)는, 사용자 단말(100)로부터 전달된 사용자 공개 키를 데이터베이스에 저장하여, 사용자 계정 및 마스터 계정 간의 스마트 계약 등록 시, 블록체인 거래장부에 저장된 마스터 공개 키와 사용자 공개 키 간의 매핑 관계가 이뤄지도록 할 수 있다. And the block chain transaction platform operation server 200 stores the user public key transmitted from the user terminal 100 in the database, and when registering a smart contract between the user account and the master account, the master public key stored in the block chain transaction book and the A mapping relationship between user public keys can be made.

또한, 블록체인 거래 플랫폼 운영 서버(200)는, 사용자 개인 키로 서명된 거래 정보가 전달되면, 블록체인 거래장부에 저장된 사용자 공개 키의 유효성을 검증하고, 사용자 공개 키의 유효성이 검증되면, 사용자 공개 키와 매핑 관계인 마스터 공개 키를 이용하여 거래가 처리되도록 할 수 있다. In addition, the block chain transaction platform operation server 200 verifies the validity of the user public key stored in the block chain transaction book when the transaction information signed with the user's private key is transmitted, and when the validity of the user public key is verified, the user public A transaction can be processed using the master public key, which is a mapping relationship with the key.

블록체인 노드(300)는, 블록체인 네트워크를 구성하는 노드로서, 스마트폰, 태블릿 PC, 노트북, 데스크 탑과 같은 정보처리 단말로 구현되며, 블록체인 거래 장부 등을 저장할 수 있다. The block chain node 300 is a node constituting a block chain network and is implemented as an information processing terminal such as a smart phone, a tablet PC, a laptop computer, and a desktop, and can store a block chain transaction book.

본 실시예에 따른 블록체인 노드(300)는, 사용자 계정과 마스터 계정의 매핑 관계가 스마트 계약(Smart contract)으로 등록되도록 할 수 있다. The blockchain node 300 according to the present embodiment may register a mapping relationship between a user account and a master account as a smart contract.

거래 서명 모듈(400)은, 거래(transaction) 서명을 수행하기 위해 마련된다. The transaction signature module 400 is provided to perform transaction signature.

구체적으로 예를 들면, 거래 서명 모듈(400)은, 다양한 클라우드 공급자에서 보호하거나 로컬 디스크에서 암호화할 수 있는 개인 키를 사용하여 트랜잭션에 서명함으로써, 개인 키 관리와 트랜잭션 유효성 검사를 분리하여 수행할 수 있다. Specifically, for example, the transaction signing module 400 can perform separate private key management and transaction validation by signing a transaction using a private key that can be protected by various cloud providers or encrypted on a local disk. have.

암호화 저장소(500)는, 블록체인 거래 플랫폼에 의해 생성되는 마스터 개인 키를 암호화시켜 저장하는데 이용된다. The cryptographic storage 500 is used to encrypt and store the master private key generated by the blockchain transaction platform.

도 2는 블록체인 거래 플랫폼 운영 서버(200) 구조의 설명에 제공된 도면이다. 2 is a diagram provided for the description of the block chain transaction platform operation server 200 structure.

도 2를 참조하면, 본 블록체인 거래 플랫폼 운영 서버(200)는, 통신부(210), 저장부(220) 및 프로세서(230)를 포함할 수 있다. Referring to FIG. 2 , the blockchain transaction platform operation server 200 may include a communication unit 210 , a storage unit 220 , and a processor 230 .

통신부(210)는, 블록체인 거래 플랫폼 운영 서버(200)가 사용자 지갑을 지원하는 사용자 단말(100) 또는 블록체인 노드(300)들과 연결되기 위한 통신수단이다. The communication unit 210 is a communication means for the block chain transaction platform operation server 200 to connect with the user terminal 100 or block chain nodes 300 supporting the user wallet.

저장부(220)는, 프로세서(230)가 동작함에 있어 필요한 프로그램 및 데이터를 저장하는 저장 공간을 제공하는 저장매체이다. The storage unit 220 is a storage medium that provides a storage space for storing programs and data necessary for the operation of the processor 230 .

예를 들면, 저장부(220)는, 사용자 정보 및 사용자 공개 키를 저장하는 데이터베이스를 포함할 수 있다. For example, the storage 220 may include a database that stores user information and a user public key.

프로세서(230)는, 블록체인 거래 플랫폼 운영 서버(200)의 제반사항을 처리하기 위해 마련된다.The processor 230 is provided to process all matters of the blockchain transaction platform operation server 200 .

예를 들면, 프로세서(230)는, 사용자의 인증 절차가 완료되면, 자산을 보관하고 거래하는 마스터 계정을 생성하고, 사용자에 의해 서명된 거래 정보를 기반으로 블록체인 노드(300)에 연결되어, 거래가 처리되도록 할 수 있다.For example, when the user's authentication procedure is completed, the processor 230 creates a master account that stores and trades assets, and is connected to the blockchain node 300 based on the transaction information signed by the user, Transactions can be processed.

또한, 프로세서(230)는, 사용자 계정에 대한 사용자 키 분실 시, 마스터 계정을 유지하되, 사용자 계정이 신규 생성되도록 하고, 신규 생성된 사용자 계정과 마스터 계정 간의 매핑 관계가 갱신되도록 할 수 있다. In addition, when the user key for the user account is lost, the processor 230 may maintain the master account, create a new user account, and update the mapping relationship between the newly created user account and the master account.

구체적으로, 프로세서(230)는, 사용자의 마스터 계정 생성 시, 키 쌍(Key pair)으로 구성되는 마스터 계정에 대한 마스터 개인 키 및 마스터 공개 키를 생성하고, 생성된 마스터 개인 키 및 마스터 공개 키를 서로 분리하여 관리할 수 있다.Specifically, when the user's master account is created, the processor 230 generates a master private key and a master public key for a master account composed of a key pair, and uses the generated master private key and master public key. They can be managed separately from each other.

또한, 프로세서(230)는 사용자 단말(100)로부터 전달된 사용자 공개 키를 데이터베이스에 저장하여, 사용자 계정 및 마스터 계정 간의 스마트 계약 등록 시, 블록체인 거래장부에 저장된 마스터 공개 키와 사용자 공개 키 간의 매핑 관계가 이뤄지도록 할 수 있다. In addition, the processor 230 stores the user public key transmitted from the user terminal 100 in the database, and when registering a smart contract between the user account and the master account, the mapping between the master public key stored in the block chain transaction ledger and the user public key relationship can be made.

그리고 프로세서(230)는, 사용자 개인 키로 서명된 거래 정보가 전달되면, 블록체인 거래장부에 저장된 사용자 공개 키의 유효성을 검증하고, 사용자 공개 키의 유효성이 검증되면, 사용자 공개 키와 매핑 관계인 마스터 공개 키를 이용하여 거래가 처리되도록 할 수 있다. And the processor 230, when the transaction information signed with the user private key is transmitted, verifies the validity of the user public key stored in the block chain transaction ledger, and when the validity of the user public key is verified, the master public key and the mapping relationship with the user public key You can use the key to make the transaction process.

즉, 프로세서(230)는, 유효성이 검증된 사용자 공개 키와 매핑 관계인 마스터 공개 키의 키 쌍에 해당하는 마스터 개인 키로 거래 정보를 서명하여 거래를 처리하고, 거래 처리 후 갱신된 거래 정보가 블록체인 노드(300)에 저장되는 블록체인 거래장부에 기록되도록 할 수 있다. That is, the processor 230 processes the transaction by signing the transaction information with the master private key corresponding to the key pair of the master public key, which is a mapping relationship between the validated user public key and the user public key, and the transaction information updated after transaction processing is transferred to the block chain It can be recorded in the block chain transaction ledger stored in the node 300 .

또한, 프로세서(230)는, 사용자의 요청에 의해 사용자 계정이 추가 생성되면, 사용자의 선택에 따라 추가 생성된 사용자 계정과 기존에 생성된 마스터 계정 간의 매핑 관계가 갱신되어 스마트 계약으로 등록되거나 또는 마스터 계정이 추가 생성되어, 추가 생성된 사용자 계정과 추가 생성된 마스터 계정 간의 매핑 관계가 스마트 계약으로 등록되도록 할 수 있다. In addition, the processor 230, when a user account is additionally created by the user's request, the mapping relationship between the additionally created user account and the previously created master account is updated according to the user's selection and registered as a smart contract or master An additional account may be created so that the mapping relationship between the additionally created user account and the additionally created master account is registered as a smart contract.

도 3은 본 발명의 일 실시예에 따른 블록체인 상의 스마트 계약을 이용한 사용자 키 관리 방법(이하에서는 '사용자 키 관리 방법'으로 총칭하기로 함)의 설명에 제공된 도면이다.3 is a diagram provided to explain a user key management method (hereinafter, collectively referred to as a 'user key management method') using a smart contract on a block chain according to an embodiment of the present invention.

도 3을 참조하면, 본 발명의 일 실시예에 따른 사용자 키 관리 시스템을 이용하는 사용자 키 관리 방법은, 블록체인 거래 플랫폼 운영 서버(200)가 인증 절차가 완료된 사용자의 자산을 보관하고 거래하는 마스터 계정을 생성하고, 인증 절차에 이용된 사용자 단말(100)이 마스터 계정에 매핑되는 사용자 계정을 각각 생성할 수 있다(S310). 여기서, 마스터 계정 및 사용자 계정의 생성 과정의 더욱 상세한 설명은, 도 4를 참조하여 후술하기로 한다. Referring to FIG. 3 , in the user key management method using the user key management system according to an embodiment of the present invention, the block chain transaction platform operation server 200 stores and transacts the user's assets for which the authentication procedure has been completed. , and the user terminal 100 used in the authentication procedure may create each user account mapped to the master account (S310). Here, a more detailed description of the process of creating a master account and a user account will be described later with reference to FIG. 4 .

그리고 블록체인 거래 플랫폼 운영 서버(200)는, 계정들이 생성된 이후, 사용자 단말(100)에 의해, 거래가 요청되면(S320-Y), 요청된 거래를 처리할 수 있다(S330). 이때, 거래 처리 과정의 더욱 상세한 설명은, 도 5를 참조하여 후술하기로 한다. And the block chain transaction platform operation server 200, after the accounts are created, when a transaction is requested by the user terminal 100 (S320-Y), may process the requested transaction (S330). In this case, a more detailed description of the transaction processing process will be described later with reference to FIG. 5 .

블록체인 거래 플랫폼 운영 서버(200)는, 사용자 키가 분실되는 경우에(S340-Y), 마스터 계정을 유지하되, 사용자 단말(100)에 의해, 사용자 계정이 신규 생성되도록 하고(S350), 블록체인 노드(300)들과 연결되어, 신규 생성된 사용자 계정과 기존의 마스터 계정 간의 매핑 관계가 갱신되도록 할 수 있다(S360). 여기서, 사용자 키 분실 시, 복구 과정에 대한 더욱 상세한 설명은 도 6을 참조하여 후술하기로 한다. The block chain transaction platform operation server 200, in case the user key is lost (S340-Y), maintains the master account, but allows the user account to be newly created by the user terminal 100 (S350), and blocks It can be connected to the chain nodes 300 so that the mapping relationship between the newly created user account and the existing master account is updated (S360). Here, when the user key is lost, a more detailed description of the recovery process will be described later with reference to FIG. 6 .

도 4는 사용자 계정 생성 과정의 설명에 제공된 도면이다. 4 is a diagram provided to explain a user account creation process.

도 4를 참조하면, 본 사용자 키 관리 방법은, 사용자가 사용자 단말(100)을 이용하여, 블록체인 거래 플랫폼을 이용하기 위한 회원 가입 또는 사용자 인증을 수행할 수 있다(S410). Referring to FIG. 4 , in this user key management method, a user may perform membership registration or user authentication for using the block chain transaction platform by using the user terminal 100 ( S410 ).

블록체인 거래 플랫폼 운영 서버(200)는, 회원 가입 또는 사용자 인증 절차가 수행되면, 회원 가입 또는 사용자 인증 과정에서 획득된 사용자 정보를 데이터베이스(DB)에 저장할 수 있다(S420). The block chain transaction platform operation server 200 may store the user information obtained in the membership registration or user authentication process in the database DB when the membership registration or user authentication procedure is performed (S420).

또한, 블록체인 거래 플랫폼 운영 서버(200)는, 키 쌍(Key pair)으로 구성되는 마스터 계정에 대한 마스터 개인 키 및 마스터 공개 키를 생성하여, 사용자의 마스터 계정을 생성할 수 있다(S430). 여기서, 마스터 공개 키에는 마스터 계정 생성 시 할당되는 마스터 주소가 포함될 수 있다. In addition, the block chain transaction platform operation server 200 may generate a master private key and a master public key for a master account composed of a key pair to create a master account of the user (S430). Here, the master public key may include a master address allocated when the master account is created.

블록체인 거래 플랫폼 운영 서버(200)는, 마스터 개인 키 및 마스터 공개 키를 서로 분리하여 관리할 수 있다.The blockchain transaction platform operation server 200 may manage the master private key and the master public key separately from each other.

예를 들면, 블록체인 거래 플랫폼 운영 서버(200)는, 마스터 공개 키를 회원 가입 또는 인증 절차를 통해 등록된 사용자 정보에 매칭시켜 데이터베이스에 저장하고(S440), 마스터 개인 키를 암호화시켜 암호화 저장소(500)에 저장함으로써, 마스터 개인 키 및 마스터 공개 키를 서로 분리하여 관리할 수 있다(S450).For example, the block chain transaction platform operation server 200 matches the master public key with the user information registered through the membership registration or authentication procedure and stores it in the database (S440), and encrypts the master private key to the encrypted storage ( 500), the master private key and the master public key can be managed separately from each other (S450).

그리고 블록체인 거래 플랫폼 운영 서버(200)는, 데이터베이스에 저장된 마스터 공개 키와 사용자 단말(100)을 통해 생성되는 사용자 공개 키 간의 매핑 관계가 스마트 계약으로 등록되도록, 마스터 공개 키를 블록체인 노드(300)에 전달할 수 있다(S460). And the block chain transaction platform operation server 200 transfers the master public key to the block chain node 300 so that the mapping relationship between the master public key stored in the database and the user public key generated through the user terminal 100 is registered as a smart contract. ) can be transmitted to (S460).

사용자 단말(100)은, 키 쌍(Key pair)으로 구성되는 사용자 개인 키 및 사용자 공개 키를 생성하여, 사용자 계정을 생성할 수 있다(S470). 여기서, 사용자 공개 키에는 사용자 계정 생성 시 할당되는 사용자 일반 주소가 포함될 수 있다.The user terminal 100 may generate a user account by generating a user private key and a user public key composed of a key pair (S470). Here, the user public key may include a user general address assigned when a user account is created.

그리고 사용자 단말(100)은, 사용자 계정이 생성되면, 생성된 사용자 공개 키를 블록체인 거래 플랫폼 운영 서버(200)에 전달할 수 있다(S480). And when the user account is created, the user terminal 100 may transmit the generated user public key to the blockchain transaction platform operation server 200 (S480).

블록체인 거래 플랫폼 운영 서버(200)는, 수신된 사용자 공개 키를 블록체인 노드(300)에 전달하여, 마스터 공개 키와 사용자 공개 키 간의 매핑 관계가 스마트 계약으로 등록되도록 할 수 있다(S490). The blockchain transaction platform operation server 200 may transmit the received user public key to the blockchain node 300 so that the mapping relationship between the master public key and the user public key is registered as a smart contract (S490).

한 가지 첨언하면, 블록체인 거래 플랫폼 운영 서버(200)는, 사용자의 요청에 의해 사용자 계정이 추가 생성되면, 사용자의 선택에 따라 추가 생성된 사용자 계정과 기존에 생성된 마스터 계정 간의 매핑 관계가 갱신되어 스마트 계약으로 등록되거나 또는 마스터 계정이 추가 생성되어, 추가 생성된 사용자 계정과 추가 생성된 마스터 계정 간의 매핑 관계가 스마트 계약으로 등록되도록 할 수 있다. As a side note, in the blockchain transaction platform operation server 200, when a user account is additionally created by the user's request, the mapping relationship between the additionally created user account and the previously created master account is updated according to the user's selection. It is registered as a smart contract or a master account is additionally created, so that the mapping relationship between the additionally created user account and the additionally created master account is registered as a smart contract.

도 5는 거래 처리 과정의 설명에 제공된 도면이다. 5 is a diagram provided for explanation of a transaction processing process.

도 5를 참조하면, 본 사용자 키 관리 방법은, 계정들이 생성된 이후, 사용자가 거래 요청을 위해, 사용자 개인 키로 서명하면(S510), 사용자 개인 키로 서명된 거래 정보가 블록체인 거래 플랫폼 운영 서버(200)에 전달될 수 있다(S520). Referring to FIG. 5 , in this user key management method, after accounts are created, when the user signs with the user private key for a transaction request (S510), the transaction information signed with the user private key is transferred to the blockchain transaction platform operation server ( 200) (S520).

블록체인 거래 플랫폼 운영 서버(200)는, 사용자 개인 키로 서명된 거래 정보가 전달되면, 사용자 개인 키로 서명된 거래 정보를 블록체인 노드(300)에 전달할 수 있다(S530).When the transaction information signed with the user's private key is transmitted, the blockchain transaction platform operation server 200 may transmit the transaction information signed with the user's private key to the block chain node 300 ( S530 ).

블록체인 노드(300)는, 사용자 개인 키로 서명된 거래 정보가 전달되면, 블록체인 거래장부에 저장된 사용자 공개 키의 유효성을 검증할 수 있다(S540).The block chain node 300 may verify the validity of the user public key stored in the block chain transaction ledger when the transaction information signed with the user's private key is transmitted (S540).

그리고 블록체인 노드(300)는, 검증 결과, 사용자 공개 키의 유효성이 검증되면, 거래를 허용하는 응답과 거래 정보를 블록체인 거래 플랫폼 운영 서버(200)에 전달할 수 있다(S550). And, as a result of the verification, when the validity of the user public key is verified, the block chain node 300 may transmit a transaction permitting response and transaction information to the block chain transaction platform operation server 200 ( S550 ).

여기서, 블록체인 거래 플랫폼 운영 서버(200)는, 블록체인 노드(300)로부터 거래 정보가 전달되면, 거래 정보를 거래 서명 모듈(400)에 전달할 수 있다(S560).Here, when the transaction information is transmitted from the block chain node 300 , the block chain transaction platform operation server 200 may transmit the transaction information to the transaction signature module 400 ( S560 ).

거래 서명 모듈(400)은, 거래 정보가 전달되면, 암호화 저장소(500)에 마스터 개인 키를 요청하여, 이를 전달받고(S570), 마스터 개인 키로 서명하여(S580), 거래 정보 및 서명 정보를 블록체인 노드(300)에 전달할 수 있다(S590).The transaction signature module 400, when the transaction information is transmitted, requests the master private key from the cryptographic storage 500, receives it (S570), signs it with the master private key (S580), and blocks the transaction information and the signature information It can be transmitted to the chain node 300 (S590).

블록체인 노드(300)는, 거래 서명 모듈(400)로부터 전달받은 거래 정보 및 서명 정보를 기반으로, 서명된 마스터 개인 키의 유효성을 검증할 수 있다(S593).The blockchain node 300 may verify the validity of the signed master private key based on the transaction information and the signature information received from the transaction signature module 400 (S593).

그리고 블록체인 노드(300)는, 서명된 마스터 개인 키의 유효성이 검증되면, 거래에 합의하여, 거래를 처리하고, 갱신된 거래 정보가 블록체인 거래장부에 기록되도록 할 수 있다(S595). And when the validity of the signed master private key is verified, the blockchain node 300 may agree on a transaction, process the transaction, and have the updated transaction information recorded in the blockchain transaction book (S595).

도 6은 사용자 키 분실 시, 복구 과정의 설명에 제공된 도면이다. 6 is a diagram provided to explain a recovery process when a user key is lost.

도 6을 참조하면, 본 사용자 키 관리 방법은, 사용자 키가 분실되는 경우에, 사용자가 사용자 단말(100)을 이용하여, 사용자 일반 키 쌍를 신규 생성할 수 있다. Referring to FIG. 6 , in this user key management method, when the user key is lost, the user may use the user terminal 100 to newly generate a user general key pair.

그리고 사용자 단말(100)은, 사용자 일반 키 쌍가 신규 생성되면, 신규 생성된 사용자 공개 키를 블록체인 거래 플랫폼 운영 서버(200)에 전달할 수 있다.And when the user general key pair is newly generated, the user terminal 100 may transmit the newly generated user public key to the block chain transaction platform operation server 200 .

이때, 블록체인 거래 플랫폼 운영 서버(200)는, 마스터 계정을 유지하고, 신규 생성된 사용자 공개 키를 블록체인 노드(300)에 전달하여, 블록체인 노드(300)가 신규 생성된 사용자 계정과 기존의 마스터 계정 간의 매핑 관계가 갱신되도록 할 수 있다. At this time, the block chain transaction platform operation server 200 maintains the master account and transmits the newly created user public key to the block chain node 300 so that the block chain node 300 uses the newly created user account and the existing user account. The mapping relationship between the master accounts of

이를 통해, 사용자 키 관리 방법은, 사용자 계정 또는 사용자 키 분실 시, 마스터 계정 내 보관된 자산에 접근하지 못하는 문제를 해결할 수 있다.Through this, the user key management method can solve the problem of not being able to access the assets stored in the master account when the user account or the user key is lost.

더불어, 사용자 키 관리 방법은, 사용자 계정과 마스터 계정 간의 매핑 관계가 스마트 계약으로 등록되어, 자산 관리의 투명성과 추적 가능성을 제공할 수 있다.In addition, the user key management method can provide transparency and traceability of asset management by registering a mapping relationship between a user account and a master account as a smart contract.

한편, 본 실시예에 따른 장치와 방법의 기능을 수행하게 하는 컴퓨터 프로그램을 수록한 컴퓨터로 읽을 수 있는 기록매체에도 본 발명의 기술적 사상이 적용될 수 있음은 물론이다. 또한, 본 발명의 다양한 실시예에 따른 기술적 사상은 컴퓨터로 읽을 수 있는 기록매체에 기록된 컴퓨터로 읽을 수 있는 코드 형태로 구현될 수도 있다. 컴퓨터로 읽을 수 있는 기록매체는 컴퓨터에 의해 읽을 수 있고 데이터를 저장할 수 있는 어떤 데이터 저장 장치이더라도 가능하다. 예를 들어, 컴퓨터로 읽을 수 있는 기록매체는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광디스크, 하드 디스크 드라이브, 등이 될 수 있음은 물론이다. 또한, 컴퓨터로 읽을 수 있는 기록매체에 저장된 컴퓨터로 읽을 수 있는 코드 또는 프로그램은 컴퓨터간에 연결된 네트워크를 통해 전송될 수도 있다.On the other hand, it goes without saying that the technical idea of the present invention can also be applied to a computer-readable recording medium containing a computer program for performing the functions of the apparatus and method according to the present embodiment. In addition, the technical ideas according to various embodiments of the present invention may be implemented in the form of computer-readable codes recorded on a computer-readable recording medium. The computer-readable recording medium may be any data storage device readable by the computer and capable of storing data. For example, the computer-readable recording medium may be a ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical disk, hard disk drive, or the like. In addition, the computer-readable code or program stored in the computer-readable recording medium may be transmitted through a network connected between computers.

또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.In addition, although preferred embodiments of the present invention have been illustrated and described above, the present invention is not limited to the specific embodiments described above, and the technical field to which the present invention belongs without departing from the gist of the present invention as claimed in the claims Various modifications are possible by those of ordinary skill in the art, and these modifications should not be individually understood from the technical spirit or prospect of the present invention.

100 : 사용자 단말
200 : 블록체인 거래 플랫폼 운영 서버
210 : 통신부
220 : 저장부
230 : 프로세서
300 : 블록체인 노드
400 : 거래 서명 모듈
500 : 암호화 저장소
100: user terminal
200: Blockchain transaction platform operation server
210: communication department
220: storage
230: processor
300 : Blockchain Node
400: transaction signature module
500 : encrypted storage

Claims (10)

사용자 키 관리 시스템이, 인증 절차가 완료된 사용자의 자산을 보관하고 거래하는 마스터 계정과 마스터 계정에 매핑되는 사용자 계정을 각각 생성하는 단계;
사용자 키 관리 시스템이, 사용자에 의해 서명된 거래 정보를 기반으로 거래(transaction)를 처리하는 단계; 및
사용자 계정에 대한 사용자 키 분실 시, 사용자 키 관리 시스템이, 마스터 계정을 유지하되, 사용자 계정을 신규 생성하고, 신규 생성된 사용자 계정과 마스터 계정 간의 매핑 관계를 갱신하여, 복구하는 단계;를 포함하는 블록체인 상의 스마트 계약을 이용한 사용자 키 관리 방법.
generating, by the user key management system, a master account for storing and transacting assets of a user whose authentication procedure has been completed, and a user account mapped to the master account;
processing, by the user key management system, a transaction based on transaction information signed by the user; and
When the user key for the user account is lost, the user key management system maintains the master account, creates a new user account, updates the mapping relationship between the newly created user account and the master account, and restores; A method for managing user keys using smart contracts on the blockchain.
청구항 1에 있어서,
생성 단계는,
사용자의 마스터 계정 생성 시, 키 쌍(Key pair)으로 구성되는 마스터 계정에 대한 마스터 개인 키 및 마스터 공개 키를 생성하고,
생성된 마스터 개인 키 및 마스터 공개 키를 서로 분리하여 관리하는 것을 특징으로 하는 블록체인 상의 스마트 계약을 이용한 사용자 키 관리 방법.
The method according to claim 1,
The creation step is
When creating a user's master account, create a master private key and a master public key for the master account composed of a key pair,
A user key management method using a smart contract on a blockchain, characterized in that the generated master private key and master public key are managed separately from each other.
청구항 2에 있어서,
생성 단계는,
마스터 개인 키 및 마스터 공개 키가 생성되면, 생성된 마스터 개인 키를 암호화시켜 별도로 마련되는 암호화 저장소에 저장하되, 생성된 마스터 공개 키를 인증 절차를 통해 등록된 사용자 정보에 매칭시켜 데이터베이스에 저장하여 관리하는 블록체인 상의 스마트 계약을 이용한 사용자 키 관리 방법.
3. The method according to claim 2,
The creation step is
When the master private key and master public key are generated, the generated master private key is encrypted and stored in a separate encrypted storage. A method of managing user keys using smart contracts on the blockchain.
청구항 3에 있어서,
사용자 계정은,
마스터 계정과의 매핑 관계가 스마트 계약(Smart contract)으로 등록되는 것을 특징으로 하는 블록체인 상의 스마트 계약을 이용한 사용자 키 관리 방법.
4. The method according to claim 3,
user account,
A user key management method using a smart contract on a block chain, characterized in that the mapping relationship with the master account is registered as a smart contract.
청구항 4에 있어서,
생성 단계는,
사용자의 사용자 계정 생성 시, 키 쌍(Key pair)으로 구성되는 사용자 계정에 대한 사용자 개인 키 및 사용자 공개 키를 생성하고, 생성된 사용자 공개 키를 블록체인 거래장부에 저장하여,
사용자 계정 및 마스터 계정 간의 스마트 계약 등록 시, 블록체인 거래장부에 저장된 마스터 공개 키와 사용자 공개 키 간의 매핑 관계가 이뤄지도록 하는 것을 특징으로 하는 블록체인 상의 스마트 계약을 이용한 사용자 키 관리 방법.
5. The method according to claim 4,
The creation step is
When a user's user account is created, a user private key and a user public key are generated for the user account composed of a key pair, and the generated user public key is stored in the blockchain transaction ledger,
A user key management method using a smart contract on a block chain, characterized in that when a smart contract is registered between a user account and a master account, a mapping relationship between the master public key stored in the block chain transaction book and the user public key is established.
청구항 5에 있어서,
처리 단계는,
사용자 개인 키로 서명된 거래 정보가 전달되면, 블록체인 거래장부에 저장된 사용자 공개 키의 유효성을 검증하고,
사용자 공개 키의 유효성이 검증되면, 사용자 공개 키와 매핑 관계인 마스터 공개 키를 이용하여 거래를 처리하는 것을 특징으로 하는 블록체인 상의 스마트 계약을 이용한 사용자 키 관리 방법.
6. The method of claim 5,
The processing steps are
When the transaction information signed by the user's private key is delivered, the validity of the user's public key stored in the blockchain transaction ledger is verified,
When the validity of the user public key is verified, a user key management method using a smart contract on a block chain, characterized in that the transaction is processed using the master public key, which is a mapping relationship with the user public key.
청구항 6에 있어서,
처리 단계는,
유효성이 검증된 사용자 공개 키와 매핑 관계인 마스터 공개 키의 키 쌍에 해당하는 마스터 개인 키로 거래 정보를 서명하여 거래를 처리하고,
거래 처리 후 갱신된 거래 정보를 블록체인 거래장부에 기록하는 것을 특징으로 하는 블록체인 상의 스마트 계약을 이용한 사용자 키 관리 방법.
7. The method of claim 6,
The processing steps are
Process the transaction by signing the transaction information with the master private key corresponding to the key pair of the master public key, which is a mapping relationship with the validated user public key;
A user key management method using a smart contract on a block chain, characterized in that the updated transaction information is recorded in the block chain transaction book after transaction processing.
청구항 5에 있어서,
복구 단계는,
사용자 계정에 대한 사용자 키 분실 시, 사용자 개인 키 및 사용자 공개 키를 신규 생성하고, 신규 생성된 사용자 공개 키와 블록체인 거래장부에 저장된 마스터 공개 키 간의 매핑 관계를 이뤄지도록 갱신하는 것을 특징으로 하는 블록체인 상의 스마트 계약을 이용한 사용자 키 관리 방법.
6. The method of claim 5,
The recovery steps are:
A block characterized in that when a user key for a user account is lost, a user private key and a user public key are newly generated, and the mapping relationship between the newly created user public key and the master public key stored in the block chain transaction book is updated to be established. A method of managing user keys using on-chain smart contracts.
청구항 1에 있어서,
생성 단계는,
사용자의 요청에 의해 사용자 계정이 추가 생성되면, 사용자의 선택에 따라 추가 생성된 사용자 계정과 기존에 생성된 마스터 계정 간의 매핑 관계가 갱신되어 스마트 계약으로 등록되거나 또는 마스터 계정이 추가 생성되어, 추가 생성된 사용자 계정과 추가 생성된 마스터 계정 간의 매핑 관계가 스마트 계약으로 등록되도록 하는 것을 특징으로 하는 블록체인 상의 스마트 계약을 이용한 사용자 키 관리 방법.
The method according to claim 1,
The creation step is
When a user account is additionally created by the user's request, the mapping relationship between the additionally created user account and the previously created master account is updated and registered as a smart contract, or a master account is additionally created and created according to the user's selection. A user key management method using a smart contract on a block chain, characterized in that the mapping relationship between the newly created user account and the additionally created master account is registered as a smart contract.
사용자 지갑을 지원하는 사용자 단말 또는 블록체인 노드에 연결되도록 하는 통신부; 및
사용자의 인증 절차가 완료되면, 자산을 보관하고 거래하는 마스터 계정을 생성하고, 사용자에 의해 서명된 거래 정보를 기반으로 블록체인 노드에 연결되어, 거래(transaction)가 처리되도록 하며, 사용자 계정에 대한 사용자 키 분실 시, 마스터 계정을 유지하되, 사용자 계정이 신규 생성되도록 하고, 신규 생성된 사용자 계정과 마스터 계정 간의 매핑 관계가 갱신되도록 하는 프로세서;를 포함하는 블록체인 상의 스마트 계약을 이용한 사용자 키 관리 시스템.
a communication unit to be connected to a user terminal or a block chain node supporting a user wallet; and
When the user's authentication process is completed, it creates a master account that stores and trades assets, connects to a blockchain node based on the transaction information signed by the user, allows the transaction to be processed, and A user key management system using a smart contract on a blockchain including a processor that maintains the master account when the user key is lost, but causes a new user account to be created, and updates the mapping relationship between the newly created user account and the master account .
KR1020200049324A 2020-04-23 2020-04-23 Method for managing user key using smart contract on blockchain KR102383492B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200049324A KR102383492B1 (en) 2020-04-23 2020-04-23 Method for managing user key using smart contract on blockchain

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200049324A KR102383492B1 (en) 2020-04-23 2020-04-23 Method for managing user key using smart contract on blockchain

Publications (2)

Publication Number Publication Date
KR20210131031A true KR20210131031A (en) 2021-11-02
KR102383492B1 KR102383492B1 (en) 2022-04-05

Family

ID=78476524

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200049324A KR102383492B1 (en) 2020-04-23 2020-04-23 Method for managing user key using smart contract on blockchain

Country Status (1)

Country Link
KR (1) KR102383492B1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114297721A (en) * 2022-01-25 2022-04-08 联想(北京)有限公司 Information processing method, information processing apparatus, block chain platform, and storage medium
KR102517001B1 (en) * 2022-08-05 2023-04-03 주식회사 더문랩스 System and method for processing digital signature on a blockchain network
KR20230120200A (en) * 2022-02-08 2023-08-17 주식회사 디지털존 Blockchain did-based non-face-to-face market research panel qualification system, panel device and control method thereof
KR102610237B1 (en) * 2023-01-26 2023-12-06 주식회사 인피닛블록 Digital asset custody system and digital asset management method using multi-factor authentication and multi-signature

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170046664A1 (en) * 2015-08-13 2017-02-16 The Toronto-Dominion Bank Systems and methods for tracking and transferring ownership of connected devices using blockchain ledgers
WO2018229608A1 (en) * 2017-06-13 2018-12-20 nChain Holdings Limited Computer-implemented system and method providing a decentralised protocol for the recovery of cryptographic assets
KR20200002015A (en) * 2018-06-28 2020-01-07 주식회사 페이게이트 System for controlling multi signature secure account
KR102078566B1 (en) * 2019-03-19 2020-02-19 크립토 주식회사 Method and system of preventing loss of a cryptocurrency
KR20210060746A (en) 2019-11-19 2021-05-27 주식회사 어뎁트 System for processing electronic contracts based on privatd key of blockchai

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170046664A1 (en) * 2015-08-13 2017-02-16 The Toronto-Dominion Bank Systems and methods for tracking and transferring ownership of connected devices using blockchain ledgers
WO2018229608A1 (en) * 2017-06-13 2018-12-20 nChain Holdings Limited Computer-implemented system and method providing a decentralised protocol for the recovery of cryptographic assets
KR20200002015A (en) * 2018-06-28 2020-01-07 주식회사 페이게이트 System for controlling multi signature secure account
KR102078566B1 (en) * 2019-03-19 2020-02-19 크립토 주식회사 Method and system of preventing loss of a cryptocurrency
KR20210060746A (en) 2019-11-19 2021-05-27 주식회사 어뎁트 System for processing electronic contracts based on privatd key of blockchai

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114297721A (en) * 2022-01-25 2022-04-08 联想(北京)有限公司 Information processing method, information processing apparatus, block chain platform, and storage medium
KR20230120200A (en) * 2022-02-08 2023-08-17 주식회사 디지털존 Blockchain did-based non-face-to-face market research panel qualification system, panel device and control method thereof
KR102517001B1 (en) * 2022-08-05 2023-04-03 주식회사 더문랩스 System and method for processing digital signature on a blockchain network
KR102610237B1 (en) * 2023-01-26 2023-12-06 주식회사 인피닛블록 Digital asset custody system and digital asset management method using multi-factor authentication and multi-signature

Also Published As

Publication number Publication date
KR102383492B1 (en) 2022-04-05

Similar Documents

Publication Publication Date Title
US11665147B2 (en) Blockchain systems and methods for user authentication
US11743052B2 (en) Platform for generating authenticated data objects
KR102383492B1 (en) Method for managing user key using smart contract on blockchain
US20210287770A1 (en) Electronic patient credentials
US11900380B2 (en) Blockchain architecture with record security
US20200162448A1 (en) Distributed ledger-based profile verification
US20190354963A1 (en) Cryptographic transaction processing system and client wallet and methods therefor
KR20180113084A (en) Method for managing Digital Identity based on Blockchain
KR102116235B1 (en) Method and server for managing user identity using blockchain network, and method and terminal for verifying user using user identity based on blockchain network
CN109508564B (en) Block chain-based digital asset storage system and method
US11038685B1 (en) Correcting blockchain transactions with cryptocurrency type mistakes
KR102118962B1 (en) Method and server for managing user identity using blockchain network, and method and terminal for verifying user using user identity based on blockchain network
CN109669955B (en) Digital asset query system and method based on block chain
EP3867849B1 (en) Secure digital wallet processing system
JP7462903B2 (en) User terminal, authenticator terminal, registrant terminal, management system and program
US20230379155A1 (en) Identity Information Processing Method, Device, and System
KR102118935B1 (en) Method and server for managing user identity using blockchain network, and method and terminal for verifying user using user identity based on blockchain network
US12020244B2 (en) Masking a primary account number between a party and a service provider
JP2022054439A (en) Payment method and system for central bank digital currency
KR20200110118A (en) Method and server for managing user identity using blockchain network, and method and terminal for verifying user using user identity based on blockchain network
JP6901373B2 (en) User management device, user management system
KR102118921B1 (en) Method and server for managing user identity using blockchain network, and method and terminal for verifying user using user identity based on blockchain network
KR20220041692A (en) Method and system for payment for central bank digital currency
KR20210053567A (en) Method for verifying certification improper use in block environment and system therefor
KR20200083179A (en) Method and server for managing user identity using blockchain network, and method and terminal for verifying user using user identity based on blockchain network

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant