KR102363804B1 - Node for verifying and publishing Crypto currency and System paying using Crypto currency - Google Patents

Node for verifying and publishing Crypto currency and System paying using Crypto currency Download PDF

Info

Publication number
KR102363804B1
KR102363804B1 KR1020190132434A KR20190132434A KR102363804B1 KR 102363804 B1 KR102363804 B1 KR 102363804B1 KR 1020190132434 A KR1020190132434 A KR 1020190132434A KR 20190132434 A KR20190132434 A KR 20190132434A KR 102363804 B1 KR102363804 B1 KR 102363804B1
Authority
KR
South Korea
Prior art keywords
electronic check
node
cryptocurrency
verification
check
Prior art date
Application number
KR1020190132434A
Other languages
Korean (ko)
Other versions
KR20210048307A (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 KR1020190132434A priority Critical patent/KR102363804B1/en
Publication of KR20210048307A publication Critical patent/KR20210048307A/en
Application granted granted Critical
Publication of KR102363804B1 publication Critical patent/KR102363804B1/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/403Solvency checks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3827Use of message hashing

Abstract

본 문서에 개시되는 일 실시 예에 따른 블록체인 시스템 외부의 암호 화폐 검증 노드는, 상기 블록체인 시스템에 각기 속하는 발행 노드 및 수령 노드와 통신할 수 있는 통신 회로; 메모리; 및 프로세서를 포함하고, 상기 프로세서는, 상기 발행 노드로부터 스마트 컨트랙트(smart contract)에 예치된 암호 화폐를 지급하기 위한 전자 수표에 대한 검증 요청을 수신하고, 상기 전자 수표에 기반한 암호 화폐의 지급 가능성을 확인하고, 상기 암호 화폐를 지급 가능하면, 상기 전자 수표를 전자 서명한 후 전자 수표 정보를 상기 전자 수표와 관련하여 상기 메모리에 저장하고, 상기 수령 노드로 상기 암호 화폐를 지급하기 위하여, 상기 전자 서명된 전자 수표를 상기 발행 노드로 송신하도록 설정될 수 있다.The cryptocurrency verification node outside the blockchain system according to an embodiment disclosed in this document includes a communication circuit capable of communicating with the issuing node and the receiving node belonging to the blockchain system; Memory; and a processor, wherein the processor receives a verification request for an electronic check for disbursing cryptocurrency deposited in a smart contract from the issuing node, and the possibility of payment of cryptocurrency based on the electronic check to confirm, and if it is possible to pay the cryptocurrency, after electronically signing the electronic check, store electronic check information in the memory in connection with the electronic check, and pay the cryptocurrency to the receiving node, the electronic signature The electronic check may be configured to be sent to the issuing node.

Description

암호 화폐 검증 노드, 발행 노드 및 결제 시스템{Node for verifying and publishing Crypto currency and System paying using Crypto currency}Cryptocurrency verification node, issuing node and payment system {Node for verifying and publishing Crypto currency and System paying using Crypto currency}

본 문서에서 개시되는 다양한 실시 예들은, 암호 화폐 거래 기술과 관련된다.Various embodiments disclosed in this document relate to cryptocurrency trading technology.

온라인에서 블록체인 기판의 암호 화폐가 사용 및 통용되고 있다. 암호 화폐는 온라인 또는 오프라인 상의 재화나 서비스 구매에 이용될 수 있다. 종래의 신용 화폐(fiat currency)와는 달리, 암호 화폐는 중앙권한이나 은행이 없는 운영을 위해 블록체인 시스템에 기초하여 구현된다.Blockchain-based cryptocurrency is being used and used online. Cryptocurrency can be used to purchase goods or services online or offline. Unlike conventional fiat currency, cryptocurrency is implemented based on a blockchain system for operation without a central authority or bank.

블록체인(block chain) 시스템은 새로운 거래가 발생할 때마다 거래 내역을 담은 블록을 생성하고, 현 블록의 해시 코드와 이전 블록의 해시 코드를 이용하여 시스템 내 다른 블록과 사슬(chain) 같이 연결하는 공공 장부를 시스템 내 복수의 노드에 분산 저장한다. 블록체인 시스템 내 거래자 노드(예: 발행 노드, 수령 노드)는 거래 전에 자체 저장된 장부들을 다른 노드들에 송부하고, 다른 노드들로 하여금 각기 저장하고 있는 장부들과 대조하도록 하여 자체 저장된 장부들의 신뢰성을 검증한다.The block chain system creates a block containing the transaction details whenever a new transaction occurs, and uses the hash code of the current block and the hash code of the previous block to connect with other blocks in the system as a chain. distributed and stored in multiple nodes in the system. In the blockchain system, trader nodes (e.g., issuing nodes, receiving nodes) send their own stored books to other nodes before a transaction, and have other nodes compare them with the books they store to ensure the reliability of the self-stored books. verify

블록체인 시스템은 모든 거래들이 블록체인 시스템에 기록되는 온 체인(on chain) 방식과 핵심 데이터만 블록체인 시스템에 기록되고 일부 데이터(예: 빠른 속도 처리가 필요한 데이터)는 다른 시스템에 기록되는 오프 체인 방식이 있다. The blockchain system is an on-chain method in which all transactions are recorded in the blockchain system, and an off-chain method in which only core data is recorded in the blockchain system, and some data (eg, data requiring high-speed processing) is recorded in another system. There is a way.

온 체인 방식의 블록체인 시스템은 기록 내용이 많으므로, 연산 비용이 높고 처리 속도가 느리고 너무 많은 정보가 공개됨에 따라 프라이버시가 침해되는 문제가 있다. 반면, 오프 체인 방식의 블록체인 시스템은 연산 비용이 낮고 처리 속도는 빠르지만, 블록체인 외부에서 이뤄지는 거래의 신뢰성을 보장할 수 없다는 문제가 있다.Since the on-chain blockchain system has a lot of records, there are problems such as high computation cost, slow processing speed, and invasion of privacy as too much information is disclosed. On the other hand, the off-chain blockchain system has a low computational cost and high processing speed, but has a problem in that it cannot guarantee the reliability of transactions made outside the blockchain.

본 문서에 개시되는 다양한 실시 예들은 블록체인 상에서 암호 화폐를 이용한 거래의 처리 속도 및 신뢰성을 높이면서 연산 비용을 낮출 수 있는 암호 화폐 검증 노드, 발행 노드 및 결제 시스템을 제공할 수 있다.Various embodiments disclosed in this document may provide a cryptocurrency verification node, an issuance node, and a payment system that can reduce computation costs while increasing the processing speed and reliability of transactions using cryptocurrency on a block chain.

본 문서에 개시되는 일 실시 예에 따른 검증 노드는, 상기 블록체인 시스템에 각기 속하는 발행 노드 및 수령 노드와 통신할 수 있는 통신 회로; 메모리; 및 프로세서를 포함하고, 상기 프로세서는, 상기 발행 노드로부터 스마트 컨트랙트(smart contract)에 예치된 암호 화폐를 지급하기 위한 전자 수표에 대한 검증 요청을 수신하고, 상기 전자 수표에 기반한 암호 화폐의 지급 가능성을 확인하고, 상기 암호 화폐를 지급 가능하면, 상기 전자 수표를 전자 서명한 후 전자 수표 정보를 상기 전자 수표와 관련하여 상기 메모리에 저장하고, 상기 수령 노드로 상기 암호 화폐를 지급하기 위하여, 상기 전자 서명된 전자 수표를 상기 발행 노드로 송신하도록 설정될 수 있다.A verification node according to an embodiment disclosed in this document may include a communication circuit capable of communicating with an issuing node and a receiving node, respectively, belonging to the block chain system; Memory; and a processor, wherein the processor receives a verification request for an electronic check for disbursing cryptocurrency deposited in a smart contract from the issuing node, and the possibility of payment of cryptocurrency based on the electronic check to confirm, and if it is possible to pay the cryptocurrency, after electronically signing the electronic check, store electronic check information in the memory in connection with the electronic check, and pay the cryptocurrency to the receiving node, the electronic signature The electronic check may be configured to be sent to the issuing node.

또한, 본 문서에 개시되는 일 실시 예에 따른 블록체인 시스템에 속하는 발행 노드는, 상기 블록체인 시스템에 속하는 수령 노드 및 상기 블록체인 시스템 외부의 검증 노드와 통신할 수 있는 통신 회로; 및 프로세서를 포함하고, 상기 프로세서는, 스마트 컨트랙트에 암호 화폐를 예치하고, 상기 수령 노드로 상기 암호 화폐를 지급하기 위한 전자 수표를 발행하고, 상기 전자 수표에 관련된 암호 화폐의 지급에 대한 검증을 상기 검증 노드로 요청하고, 상기 검증 노드가 상기 암호 화폐의 지급을 검증함에 따라 전자 서명한 전자 수표를 수신하면, 상기 암호 화폐의 지급이 가능한 것으로 결정하고, 상기 수신된 전자 수표를 상기 검증 노드로 송신하여, 상기 수신된 전자 수표에 기반한 암호 화폐를 상기 검증 노드로 지급하도록 설정될 수 있다.In addition, the issuing node belonging to the block chain system according to an embodiment disclosed in this document may include a communication circuit capable of communicating with a receiving node belonging to the block chain system and a verification node outside the block chain system; and a processor, wherein the processor deposits cryptocurrency in a smart contract, issues an electronic check for disbursing the cryptocurrency to the receiving node, and performs verification of payment of cryptocurrency related to the electronic check. When a request is made to a verification node and the verification node receives an electronically signed electronic check as the verification node verifies the payment of the cryptocurrency, it is determined that the payment of the cryptocurrency is possible, and the received electronic check is sent to the verification node Thus, it may be set to pay the cryptocurrency based on the received electronic check to the verification node.

또한, 본 문서에 개시되는 일 실시 예에 따른 암호 화폐 결제 시스템은 암호 화폐 결제 시스템은, 암호 화폐를 예치 및 지급할 수 있는 스마트 컨트랙트; 상기 스마트 컨트랙트를 이용하여 상기 스마트 컨트랙트(smart contract)에 예치된 암호 화폐를 지급하기 위한 전자 수표를 발행할 수 있는 발행 노드; 상기 스마트 컨트랙트를 이용하여 상기 전자 수표를 검증할 수 있는 검증 노드; 및 상기 검증 노드를 통한 검증을 거쳐 상기 전자 수표와 관련된 암호 화폐를 수령할 수 있는 발행 노드를 포함하고, 상기 검증 노드는, 상기 발행 노드로부터 상기 암호 화폐를 지급하기 위한 전자 수표에 대한 검증 요청을 수신하고, 상기 발행 노드로부터 상기 발행된 전자 수표에 대한 검증 요청을 수신하고, 상기 전자 수표에 기반한 암호 화폐의 지급 가능성을 확인하고, 상기 암호 화폐를 지급 가능하면, 상기 전자 수표를 전자 서명하고, 전자 서명된 전자 수표 정보를 저장하고, 상기 전자 서명된 전자 수표를 상기 발행 노드로 송신할 수 있다.In addition, the cryptocurrency payment system according to an embodiment disclosed in this document is a cryptocurrency payment system, a smart contract capable of depositing and paying cryptocurrency; an issuance node capable of issuing an electronic check for disbursing cryptocurrency deposited in the smart contract using the smart contract; a verification node capable of verifying the electronic check using the smart contract; and an issuing node capable of receiving cryptocurrency related to the electronic check through verification through the verification node, wherein the verification node receives a verification request for the electronic check for dispensing the cryptocurrency from the issuing node. receiving, receiving a verification request for the issued electronic check from the issuing node, confirming the payability of cryptocurrency based on the electronic check, and electronically signing the electronic check if the cryptocurrency is payable; store electronically signed electronic check information, and transmit the electronically signed electronic check to the issuing node.

본 문서에 개시되는 다양한 실시 예들에 따르면, 블록체인 상에서 암호 화폐를 이용한 거래의 처리 속도 및 신뢰성을 높이면서 연산 비용을 낮출 수 있다. 이 외에, 본 문서를 통해 직접적 또는 간접적으로 파악되는 다양한 효과들이 제공될 수 있다.According to various embodiments disclosed in this document, it is possible to increase the processing speed and reliability of transactions using cryptocurrencies on the block chain, while reducing the computational cost. In addition, various effects directly or indirectly identified through this document may be provided.

도 1은 일 실시예에 따른 암호 화폐 결제 시스템을 나타낸다.
도 2는 일 실시예에 따른 암호 화폐 결제 시스템에 포함된 노드의 구성도를 나타낸다.
도 3은 일 실시예에 따른 암호 화폐 결제 방법의 흐름도를 나타낸다.
도 4는 일 실시예에 따른 스마트 컨트랙트에 의한 발행될 전자 수표 검증 방법을 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 검증 노드에 의한 발행된 전자 수표 검증 방법을 나타낸다.
도 6은 일 실시예에 따른 거래 과정에서의 스마트 컨트랙트에 의한 전자 수표 검증 방법을 나타낸다.
도 7은 일 실시예에 따른 거래 과정에서의 검증 노드에 의한 전자 수표 검증 방법을 나타낸다.
도면의 설명과 관련하여, 동일 또는 유사한 구성요소에 대해서는 동일 또는 유사한 참조 부호가 사용될 수 있다.
1 shows a cryptocurrency payment system according to an embodiment.
2 shows a configuration diagram of a node included in a cryptocurrency payment system according to an embodiment.
3 is a flowchart of a cryptocurrency payment method according to an embodiment.
4 is a view for explaining a method of verifying an electronic check to be issued by a smart contract according to an embodiment.
5 illustrates a method of verifying an electronic check issued by a verification node according to an embodiment.
6 illustrates an electronic check verification method by a smart contract in a transaction process according to an embodiment.
7 illustrates an electronic check verification method by a verification node in a transaction process according to an embodiment.
In connection with the description of the drawings, the same or similar reference numerals may be used for the same or similar components.

도 1은 일 실시예에 따른 암호 화폐 결제 시스템을 나타낸다.1 shows a cryptocurrency payment system according to an embodiment.

도 1을 참조하면, 일 실시예에 따른 암호 화폐 결제 시스템(100)은 스마트 컨트랙트(smart contract)(130), 발행 노드(110), 수령 노드(120) 및 검증 노드(140)를 포함할 수 있다. 스마트 컨트랙트(130), 발행 노드(110) 및 수령 노드(120)는 블록체인 시스템(block chain)(또는, 블록체인 데이터베이스)에 속할 수 있다. 검증 노드(140)는 블록체인 시스템의 외부에서 스마트 컨트랙트(130), 발행 노드(110) 및 수령 노드(120)와 유선 또는 무선 통신할 수 있다. 블록체인 시스템은 발행 노드(110) 및 수령 노드(120)를 포함하는 복수의 노드들을 포함할 수 있다. Referring to FIG. 1 , the cryptocurrency payment system 100 according to an embodiment may include a smart contract 130 , an issuing node 110 , a receiving node 120 and a verification node 140 . there is. The smart contract 130, the issuing node 110, and the receiving node 120 may belong to a block chain (or block chain database). The verification node 140 may communicate with the smart contract 130 , the issuing node 110 , and the receiving node 120 by wire or wirelessly outside the blockchain system. A blockchain system may include a plurality of nodes including an issuing node 110 and a receiving node 120 .

일 실시예에 따르면, 스마트 컨트랙트(130)는 실행 가능한 바이트 코드로 컴파일되어, 블록체인 시스템을 구성하는 복수의 노드들(예: 발행 노드(110), 수령 노드(120)) 및 블록체인 시스템 외부의 검증 노드(140)에서 실행될 수 있는 소스 코드일 수 있다. 스마트 컨트랙트(130)는 특정 조건이 만족되면 특정 조건에 따른 지정된 처리를 수행할 수 있다. 상기 지정된 처리는 예를 들면, 암호 화폐 예치, 전자 수표 발행, 전자 수표의 지급 가능성 검증, 전자 수표의 유효성 검증 및 암호 화폐 수령 중 적어도 하나를 포함할 수 있다. 스마트 컨트랙트(130)는 상기 지정된 처리를 위한 트랜잭션(transaction)(또는, 거래) 메시지를 생성할 수 있다. 스마트 컨트랙트(130)는 블록체인 시스템에 포함된 복수의 노드들 중 적어도 일부 노드에 저장 및 실행될 수 있다.According to one embodiment, the smart contract 130 is compiled into executable byte code, and a plurality of nodes constituting the blockchain system (eg, the issuing node 110, the receiving node 120) and the outside of the blockchain system It may be a source code that can be executed in the verification node 140 of When a specific condition is satisfied, the smart contract 130 may perform specified processing according to the specific condition. The designated processing may include, for example, at least one of depositing cryptocurrency, issuing an electronic check, verifying the payability of the electronic check, verifying the validity of the electronic check, and receiving cryptocurrency. The smart contract 130 may generate a transaction (or transaction) message for the specified processing. The smart contract 130 may be stored and executed in at least some nodes among a plurality of nodes included in the blockchain system.

일 실시예에 따르면, 발행 노드(110)는 암호 화폐를 이용하여 재화 또는 서비스를 구매하고자 하는 사용자의 전자 장치일 수 있다. 발행 노드(110)는 스마트 컨트랙트(130)에 암호 화폐를 예치할 수 있다. 발행 노드(110)는 스마트 컨트랙트(130)를 이용(예: 호출)하여, 암호 화폐 중 적어도 일부 화폐를 수령 노드(120)에 지급하기 위한, 전자 수표를 발행할 수 있다. 발행 노드(110)는 발행 노드의 비밀 키에 기반하여 제1 전자 서명하고, 검증 노드(140)로 검증 노드(140)에 의한 제2 전자 서명(또는, 전자 수표의 지급 가능성 검증)을 요청할 수 있다. 발행 노드(110)는 검증 노드(140)로부터 검증 노드(140)의 검증을 거쳐 제2 전자 서명된 전자 수표를 수신할 수 있다. 발행 노드(110)는 수령 노드(120)로 암호 화폐를 지급하기 위하여, 제1 및 제2 전자 서명된 전자 수표를 수령 노드(120)로 송신할 수 있다. 발행 노드(110)는 예를 들면, PC 또는 스마트폰을 포함할 수 있다.According to an embodiment, the issuing node 110 may be an electronic device of a user who wants to purchase goods or services using cryptocurrency. The issuing node 110 may deposit cryptocurrency in the smart contract 130 . The issuing node 110 may use (eg, call) the smart contract 130 to issue an electronic check for paying at least some of the cryptocurrency to the receiving node 120 . The issuing node 110 may make a first electronic signature based on the secret key of the issuing node, and request the verification node 140 for a second electronic signature (or verify the payability of the electronic check) by the verification node 140 . there is. The issuing node 110 may receive the second electronically signed electronic check from the verification node 140 through verification by the verification node 140 . The issuing node 110 may send the first and second electronically signed electronic checks to the receiving node 120 to disburse cryptographic currency to the receiving node 120 . The issuing node 110 may include, for example, a PC or a smartphone.

일 실시예에 따르면, 수령 노드(120)는 암호 화폐를 이용하여 재화 또는 서비스를 판매하는 사용자의 전자 장치일 수 있다. 수령 노드(120)는 발행 노드(110)로부터 전자 수표를 수신하면, 전자 수표에 포함된 전자 서명에 기반하여 수신된 전자 수표의 유효성을 검증할 수 있다. 예를 들어, 수령 노드(120)는 전자 수표에 포함된 정보(예: 전자 서명 정보 또는 거래 정보)에 기반하여 전자 수표에 지정된 전자 서명이 포함되는지를 확인함에 따라 전자 수표의 유효성을 검증할 수 있다. 수령 노드(120)는 수신된 전자 수표에 포함된 적어도 일부 정보(예: 해시 값, 거래 금액)를 검증 노드(140)에 저장된 정보와 비교함에 따라 상기 전자 수표의 유효성을 검증할 수 있다. 수령 노드(120)는 예를 들면, POS(point of sale) 단말, PC를 포함할 수 있다.According to an embodiment, the receiving node 120 may be an electronic device of a user who sells goods or services using cryptocurrency. Upon receiving the electronic check from the issuing node 110 , the receiving node 120 may verify the validity of the received electronic check based on an electronic signature included in the electronic check. For example, the receiving node 120 may validate the electronic check by verifying that the electronic check contains a specified electronic signature based on information contained in the electronic check (eg, electronic signature information or transaction information). there is. The receiving node 120 may verify the validity of the electronic check by comparing at least some information (eg, hash value, transaction amount) included in the received electronic check with information stored in the verification node 140 . The receiving node 120 may include, for example, a point of sale (POS) terminal or a PC.

일 실시예에 따르면, 검증 노드(140)는 암호 화폐를 이용한 거래의 유효성을 검증하는 사용자의 전자 장치(예: 검증 서비스 서버)일 수 있다. 검증 노드(140)는 발행 노드(110)로부터 제1 전자 서명된 전자 수표를 수신하고, 스마트 컨트랙트(130)를 이용하여 전자 수표의 지급 가능성(또는, 유효성)을 검증할 수 있다. 검증 노드(140)는 전자 수표가 지급 가능하면, 전자 수표에 제2 전자 서명하고, 제2 전자 서명된 전자 수표를 발행 노드(110)로 송신할 수 있다. 이 경우, 검증 노드(140)는 전자 수표 정보를 검증 노드(140)의 자체 메모리에 저장할 수 있다. 상기 전자 수표 정보는 예를 들면, 전자 수표의 해시 값, 전자 수표에 의한 거래 금액 및 전자 수표 및 이전 전자 수표 중 미지급된 전자 수표의 총액 중 적어도 하나를 포함할 수 있다. According to an embodiment, the verification node 140 may be a user's electronic device (eg, a verification service server) that verifies the validity of a transaction using cryptocurrency. The verification node 140 may receive the first electronically signed electronic check from the issuing node 110 and verify the payability (or validity) of the electronic check using the smart contract 130 . If the electronic check is payable, the verification node 140 may second electronically sign the electronic check and transmit the second electronically signed electronic check to the issuing node 110 . In this case, the verification node 140 may store the electronic check information in its own memory of the verification node 140 . The electronic check information may include, for example, at least one of a hash value of the electronic check, a transaction amount by the electronic check, and the total amount of the electronic check that has not been paid among the electronic check and the previous electronic check.

일 실시예에 따르면, 검증 노드(140)는 수령 노드(120)로부터 전자 수표에 대한 유효성 검증 요청을 수신하면, 전자 수표에 포함된 적어도 일부 정보(예: 해당 전자 수표의 해시 값 및 거래 금액)가 전자 수표 정보와 일치하는지를 확인할 수 있다. 검증 노드(140)는 상기 적어도 일부 정보가 전자 수표 정보와 일치하면, 전자 수표가 유효한 것으로 결정할 수 있다. 검증 노드(140)는 PC, 서비스(예: 전자 수표 검증 서비스) 제공 서버를 포함할 수 있다.According to an embodiment, when the verification node 140 receives a request for validation of the electronic check from the receiving node 120 , at least some information included in the electronic check (eg, a hash value and transaction amount of the electronic check) You can check whether the information matches the electronic check information. The verification node 140 may determine that the electronic check is valid when the at least some information matches the electronic check information. The verification node 140 may include a PC and a service (eg, electronic check verification service) providing server.

상술한 실시예에 따르면, 암호 화폐 결제 시스템(100)(예: 발행 노드(110))은 전자 수표를 발행할 때 전자 수표의 지급 가능성을 검토함에 따라 발행된 전자 수표의 신뢰성을 높일 수 있다. 또한, 암호 화폐 결제 시스템(100)(예: 수령 노드(120)) 전자 수표를 지급 받을 때에 스마트 컨트랙트(130) 및 검증 노드(140)를 통해 전자 수표의 유효성을 검증함에 따라, 위/변조된 전자 수표를 지급받고 재화 또는 서비스를 제공하는 것을 방지할 수 있다. 또한, 암호 화폐 결제 시스템(100)은 전자 수표의 지급 가능성 또는 유효성을 오프체인에서 검증(또는, 확인)함에 따라 암호 화폐 거래의 처리 속도를 높이고 처리 비용을 낮출 수 있다.According to the above-described embodiment, the cryptocurrency payment system 100 (eg, the issuing node 110) may increase the reliability of the issued electronic check by examining the payability of the electronic check when issuing the electronic check. In addition, when the cryptocurrency payment system 100 (eg, the receiving node 120) receives the electronic check payment, as the validity of the electronic check is verified through the smart contract 130 and the verification node 140, forged/falsified It can prevent you from accepting electronic checks and providing goods or services. In addition, the cryptocurrency payment system 100 can increase the processing speed of cryptocurrency transactions and reduce processing costs by verifying (or confirming) the payability or validity of the electronic check off-chain.

도 2는 일 실시예에 따른 암호 화폐 결제 시스템에 포함된 노드의 구성도를 나타낸다.2 shows a configuration diagram of a node included in a cryptocurrency payment system according to an embodiment.

도 2를 참조하면, 일 실시예에 따른 노드(200)(예: 발행 노드(110), 수령 노드(120) 또는 검증 노드(140))는 통신 회로(210), 메모리(220) 및 프로세서(230)를 포함할 수 있다. 일 실시예에서, 노드(200)는 일부 구성요소가 생략되거나, 추가적인 구성요소를 더 포함할 수 있다. 또한, 노드(200)의 구성요소들 중 일부가 결합되어 하나의 개체로 구성되되, 결합 이전의 해당 구성요소들의 기능을 동일하게 수행할 수 있다. 예를 들어, 메모리(220)는 프로세서(230)에 포함될 수 있다. 노드(200)는 발행 노드(110), 수령 노드(120) 또는 검증 노드(140)로 동작할 수 있다. 경우에 따라서, 발행 노드(110)는 수령 노드(120)로 동작하고 수령 노드(120)는 발행 노드(110)로 동작할 수 있다. 하지만, 검증 노드(140)는 발행 노드(110) 또는 수령 노드(120)로 동작 불가한 발행 노드(110) 및 수령 노드(120)와는 별개의 장치일 수 없다. 도 2의 일부 설명에서는 노드(200)가 발행 노드(110), 수령 노드(120) 또는 검증 노드(140)로 동작하는 경우를 구분하여 설명한다.Referring to FIG. 2 , a node 200 (eg, an issuing node 110 , a receiving node 120 or a verifying node 140 ) according to an embodiment includes a communication circuit 210 , a memory 220 and a processor ( 230) may be included. In an embodiment, the node 200 may omit some components or further include additional components. In addition, some of the components of the node 200 are combined to form a single entity, and the functions of the components prior to the combination may be performed identically. For example, the memory 220 may be included in the processor 230 . Node 200 may act as issuing node 110 , receiving node 120 , or verifying node 140 . In some cases, the publishing node 110 may act as the receiving node 120 and the receiving node 120 may act as the publishing node 110 . However, the verifying node 140 cannot be a separate device from the issuing node 110 and the receiving node 120 inoperable as either the issuing node 110 or the receiving node 120. In some descriptions of FIG. 2 , cases in which the node 200 operates as the issuing node 110 , the receiving node 120 , or the verification node 140 will be separately described.

통신 회로(210)는 블록체인 시스템에 속하는 발행 노드(110) 및 수령 노드(120) 및 블록체인 시스템 외부의 검증 노드(140) 간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 발행 노드(110), 수령 노드(120)와 검증 노드(140)는 통신 회로(210)를 통해 통신하지만, 이하의 문서에서는 설명의 편의성을 위하여 통신 회로(210)에 대한 언급을 생략할 수 있다.The communication circuit 210 establishes a direct (eg, wired) communication channel or a wireless communication channel between the issuing node 110 and the receiving node 120 belonging to the blockchain system and the verification node 140 outside the blockchain system, and It is possible to support performing communication through an established communication channel. The issuing node 110 , the receiving node 120 , and the verification node 140 communicate through the communication circuit 210 , but in the following documents, for convenience of description, reference to the communication circuit 210 may be omitted. .

메모리(220)는 노드(200)의 적어도 하나의 구성요소(예: 프로세서(230))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는 예를 들어, 소프트웨어 및 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(220)는 휘발성 메모리 또는 비휘발성 메모리를 포함할 수 있다.The memory 220 may store various data used by at least one component (eg, the processor 230 ) of the node 200 . Data may include, for example, input data or output data for software and related instructions. The memory 220 may include a volatile memory or a non-volatile memory.

프로세서(230)는 노드(200)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)(예: 스마트 컨트랙트)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 프로세서(230)는 예를 들어, 중앙처리장치(CPU), 그래픽처리장치(GPU), 마이크로프로세서, 애플리케이션 프로세서(application processor), 주문형 반도체(ASIC(application specific integrated circuit), FPGA(field programmable gate arrays)) 중 적어도 하나를 포함할 수 있으며, 복수의 코어를 가질 수 있다. The processor 230 may control at least one other component (eg, a hardware or software component) (eg, a smart contract) of the node 200 and may perform various data processing or operations. The processor 230 may include, for example, a central processing unit (CPU), a graphic processing unit (GPU), a microprocessor, an application processor, an application specific integrated circuit (ASIC), or field programmable gate arrays (FPGA). )), and may have a plurality of cores.

< 발행 노드 동작 >< Publish node operation >

노드(200)가 발행 노드(110)일 때, 프로세서(230)는 블록체인 시스템에 배포된 오프체인 거래를 위한 스마트 컨트랙트(130)를 수신하고, 스마트 컨트랙트(130)에 거래에 사용될 암호 화폐를 예치할 수 있다. 이 과정에서, 스마트 컨트랙트(130)에는, 암호 화폐에 관련된 사용자 정보(예: 이름, 계좌 정보, 이더리움 계정 정보), 또는 지갑 정보(예: 지갑 주소, 잔액) 중 적어도 일부를 포함하는, 암호 화폐 정보가 저장될 수 있다.When the node 200 is the issuing node 110, the processor 230 receives the smart contract 130 for off-chain transaction distributed in the block chain system, and sends the smart contract 130 cryptocurrency to be used for the transaction. can be deposited In this process, the smart contract 130 includes at least a portion of user information (eg, name, account information, Ethereum account information) related to cryptocurrency, or wallet information (eg, wallet address, balance). Currency information may be stored.

프로세서(230)는 예치된 암호 화폐의 적어도 일부를 이용하여 재화 또는 서비스의 대금을 (수령 노드(120)로) 지급하기 위해서 전자 수표를 발행할 수 있다. 예를 들어, 프로세서(230)는 스마트 컨트랙트(130)를 호출하여 수령인의 지갑 주소 및 거래 금액을 설정(또는, 입력)함에 따라 전자 수표를 발행할 수 있다. 상기 전자 수표는 거래 정보 예컨대, 암호 화폐에 관련된 이전 전자 수표(예: 이전에 발행된 전자 수표)의 해시 값, 수령 노드(120)의 지갑 주소, 거래 금액, 발행 시간 또는 블록 넘버(block number) 중 적어도 하나를 포함할 수 있다. The processor 230 may issue an electronic check to pay (to the receiving node 120 ) a price for a good or service using at least a portion of the deposited cryptocurrency. For example, the processor 230 may issue an electronic check by calling the smart contract 130 to set (or input) the recipient's wallet address and transaction amount. The electronic check includes transaction information, for example, a hash value of a previous electronic check (eg, previously issued electronic check) related to cryptocurrency, a wallet address of the recipient node 120, transaction amount, issuance time, or block number. may include at least one of

프로세서(230)는 발행된 전자 수표에 노드(200)의 비밀 키(private key)에 기반하여 제1 전자 서명할 수 있다. 프로세서(230)는 제1 전자 서명된 전자 수표를 검증 노드(140)로 송신함에 따라 검증 노드(140)로 상기 전자 수표의 지급 가능성에 대한 검증 요청을 송신할 수 있다. 프로세서(230)는 검증 노드(140)가 전자 수표를 검증한 후 검증 노드(140)의 비밀 키에 기반하여 제2 전자 서명한 전자 수표를 검증 노드(140)로부터 수신할 수 있다. The processor 230 may first digitally sign the issued electronic check based on the private key of the node 200 . As the processor 230 transmits the first electronically signed electronic check to the verification node 140 , the processor 230 may transmit a verification request for the payability of the electronic check to the verification node 140 . After the verification node 140 verifies the electronic check, the processor 230 may receive a second electronically signed electronic check from the verification node 140 based on the secret key of the verification node 140 .

프로세서(230)는 전자 수표에 관련된 암호 화폐를 재화 또는 서비스의 대금으로 수령 노드(120)에게 지급하기 위해서 제2 전자 서명된 전자 수표를 수령 노드(120)로 송신할 수 있다.The processor 230 may transmit a second electronically signed electronic check to the receiving node 120 in order to pay the receiving node 120 for the cryptocurrency related to the electronic check as a price for goods or services.

< 수령 노드 동작>< Receiving node operation >

노드(200)가 수령 노드(120)일 때, 프로세서(230)는 발행 노드(110)로부터 전자 수표를 수신하면, 스마트 컨트랙트(130)를 호출하여 전자 수표의 유효성을 검증할 수 있다. 예를 들어, 프로세서(230)는 전자 수표에 포함된 정보(예: 제1 전자 서명 정보 및 제2 전자 서명 정보)가 스마트 컨트랙트(130)에 저장된 정보(예: 제1 전자 서명 정보 및 제2 전자 서명 정보)와 일치하는지에 기반하여 전자 수표의 유효성을 제1 검증할 수 있다. 프로세서(230)는 예를 들면, 전자 수표에 포함된 제1 및 제2 전자 서명 정보가 스마트 컨트랙트(130)에 저장된 제1 및 제2 전자 서명 정보와 일치하는지를 확인하고, 일치하면 전자 수표의 유효성이 제1 검증된 것으로 결정할 수 있다. When the node 200 is the receiving node 120 , the processor 230 may call the smart contract 130 to verify the validity of the electronic check upon receiving the electronic check from the issuing node 110 . For example, the processor 230 stores information (eg, first electronic signature information and second electronic signature information) included in the electronic check in the smart contract 130 (eg, first electronic signature information and second electronic signature information). The validity of the electronic check may be first verified based on whether it matches the electronic signature information). The processor 230, for example, checks whether the first and second electronic signature information included in the electronic check matches the first and second electronic signature information stored in the smart contract 130, and if they match, the validity of the electronic check It may be determined that this first verified.

프로세서(230)는 전자 수표에 포함된 정보가 검증 노드(140)에 저장된 정보와 일치하는지에 기반하여 전자 수표의 유효성을 제2 검증할 수 있다. 예를 들어, 프로세서(230)는 전자 수표에 포함된 적어도 일부 정보(예: 해시 값, 거래 금액)가 검증 노드(140)에 저장된 전자 수표 정보와 일치하는지를 확인하고, 상호 일치하면 전자 수표의 유효성이 제2 검증된 것으로 결정할 수 있다. 상기 전자 수표 정보는 예를 들면, 전자 수표의 해시 값, 전자 수표에 의한 거래 금액 및 전자 수표 및 이전 전자 수표 중 미지급된 전자 수표의 총액 중 적어도 하나를 포함할 수 있다.The processor 230 may second verify the validity of the electronic check based on whether information included in the electronic check matches information stored in the verification node 140 . For example, the processor 230 checks whether at least some information (eg, hash value, transaction amount) included in the electronic check matches the electronic check information stored in the verification node 140 , and if they match, the validity of the electronic check It can be determined that this second verified. The electronic check information may include, for example, at least one of a hash value of the electronic check, a transaction amount by the electronic check, and the total amount of the electronic check that has not been paid among the electronic check and the previous electronic check.

프로세서(230)는 전자 수표의 유효성이 제1 검증 및 제2 검증되면, 전자 수표가 유효한 것으로 확인할 수 있다. 이 경우, 프로세서(230)는 출력 장치(예: 디스플레이 또는 스피커)를 통해 전자 수표가 유효함을 안내(예: 출력)할 수 있다. When the validity of the electronic check is first verified and the second verified, the processor 230 may confirm that the electronic check is valid. In this case, the processor 230 may guide (eg, output) that the electronic check is valid through an output device (eg, a display or a speaker).

프로세서(230)는 스마트 컨트랙트(130)를 이용하여 전자 수표에 관련된 암호 화폐를 수령할 수 있다. 예를 들어, 프로세서(230)는 통신 회로(210)를 통해 스마트 컨트랙트(130)에 전자 수표를 송신함에 따라 스마트 컨트랙트(130)에 암호 화폐 출력 요청을 송신할 수 있다. 프로세서(230)는 요청에 대한 응답으로 스마트 컨트랙트(130)로부터 수령 노드(120)의 지갑 주소로 암호 화폐를 수령할 수 있다. 추가적으로 또는 대체적으로, 프로세서(230)는 암호 화폐를 실물 화폐로 변환하고 실물 화폐를 수령할 수 있다.The processor 230 may receive the cryptocurrency related to the electronic check by using the smart contract 130 . For example, the processor 230 may transmit a cryptocurrency output request to the smart contract 130 as the electronic check is transmitted to the smart contract 130 through the communication circuit 210 . The processor 230 may receive the cryptocurrency from the smart contract 130 to the wallet address of the receiving node 120 in response to the request. Additionally or alternatively, the processor 230 may convert cryptocurrency into real money and receive real money.

< 검증 노드 동작 >< Verification node operation >

노드(200)가 검증 노드(140)일 때, 프로세서(230)는 발행 노드(110)로부터 제1 전자 서명된 전자 수표에 대한 검증 요청을 수신하면, 제1 전자 서명된 전자 수표의 지급 가능성을 검증할 수 있다. 예를 들어, 프로세서(230)는 전자 수표에 포함된 거래 정보로부터 전자 수표의 거래 금액을 확인하고, 스마트 컨트랙트(130)를 이용하여 전자 수표에 관련된 암호 화폐의 잔액을 확인할 수 있다. 프로세서(230)는 전자 수표의 거래 금액이 암호 화폐의 잔액 이하인지를 확인하고, 전자 수표의 거래 금액이 암호 화폐의 잔액 이하이면, 전자 수표가 지급 가능한 것으로 결정할 수 있다. 추가적으로 또는 대체적으로, 프로세서(230)는 암호 화폐의 잔액이 전자 수표의 거래 금액 이하이면, 이전에 발행된 전자 수표 중 미지급된 전자 수표의 총합을 확인할 수 있다. 프로세서(230)는 확인된 총합과 현재 전자 수표의 거래 금액을 합산하고, 합산된 총액이 암호 화폐의 잔액 이하인지를 확인할 수 있다. 프로세서(230)는 상기 합산된 총액이 암호 화폐의 잔액 이하이면, 전자 수표를 지급 가능한 것으로 결정할 수 있다. 다른 예를 들어, 프로세서(230)는 제1 전자 서명된 전자 수표에 포함되어 있는 거래 정보에 기반하여 이전 전자 수표를 해시 값을 확인하고, 자체 메모리에 저장된 이전 전자 수표(이전에 발행된 전자 수표)의 해시 값을 확인할 수 있다. 프로세서(230)는 전자 수표에 포함된 이전 전자 수표의 해시 값이 자체 저장된 이전 전자 수표의 해시 값과 일치하는지를 확인하고, 전자 수표에 포함된 이전 전자 수표의 해시 값이 자체 저장된 이전 전자 수표의 해시 값과 일치하면 전자 수표를 지급 가능한 것으로 결정할 수 있다. 다양한 실시예에 따르면, 프로세서(230)는 암호 화폐의 잔액, 전자 수표의 거래 금액, 미지급된 전자 수표 총합 및 이전 전자 수표의 해시 값을 모두 이용하여 전자 수표의 지급 가능성을 확인할 수 있다.When the node 200 is the verification node 140, the processor 230, upon receiving a verification request for the first electronically signed electronic check from the issuing node 110, determines the payability of the first electronically signed electronic check. can be verified. For example, the processor 230 may check the transaction amount of the electronic check from transaction information included in the electronic check, and check the balance of cryptocurrency related to the electronic check using the smart contract 130 . The processor 230 may determine whether the transaction amount of the electronic check is equal to or less than the balance of cryptocurrency, and if the transaction amount of the electronic check is equal to or less than the balance of the cryptocurrency, it may be determined that the electronic check is payable. Additionally or alternatively, if the balance of the cryptocurrency is less than or equal to the transaction amount of the electronic check, the processor 230 may check the total number of unpaid electronic checks among previously issued electronic checks. The processor 230 may add up the confirmed total and the transaction amount of the current electronic check, and check whether the sum total is equal to or less than the balance of cryptocurrency. The processor 230 may determine that the electronic check is payable if the sum total is less than or equal to the balance of cryptocurrency. As another example, the processor 230 checks the hash value of the previous electronic check based on transaction information included in the first electronically signed electronic check, and the previous electronic check (previously issued electronic check) stored in its own memory. ) can be checked. The processor 230 checks whether the hash value of the previous electronic check included in the electronic check matches the hash value of the previous electronic check stored by itself, and the hash value of the previous electronic check included in the electronic check is the hash value of the previously stored electronic check If the values match, the electronic check may be determined payable. According to various embodiments, the processor 230 may check the payability of the electronic check by using all of the balance of the cryptocurrency, the transaction amount of the electronic check, the total unpaid electronic check, and the hash value of the previous electronic check.

프로세서(230)는 전자 수표를 지급 가능하면, 검증 노드(140)의 비밀 키에 기반하여 전자 수표를 제2 전자 서명하고, 제2 전자 서명된 전자 수표를 발행 노드(110)로 송신할 수 있다. 프로세서(230)는 제2 전자 서명 정보(예: 제2 전자 서명된 전자 수표)를 메모리(220)에 저장할 수 있다. 이 과정에서, 프로세서(230)는 제2 전자 서명된 전자 수표와 관련된 암호 화폐와 관련하여 스마트 컨트랙트(130)에 저장할 수 있다.If the electronic check is payable, the processor 230 may second electronically sign the electronic check based on the secret key of the verification node 140 , and transmit the second electronically signed electronic check to the issuing node 110 . . The processor 230 may store the second electronic signature information (eg, the second electronically signed electronic check) in the memory 220 . In this process, the processor 230 may store in the smart contract 130 in relation to the cryptocurrency related to the second electronically signed electronic check.

프로세서(230)는 수령 노드(120)로부터 전자 수표를 수신하면, 수신된 전자 수표에 포함된 적어도 일부 정보가 메모리(220)에 저장된 전자 수표 정보와 일치하는지를 확인할 수 있다. 프로세서(230)는 상기 적어도 일부 정보가 전자 수표 정보와 일치하면, 수신된 전자 수표의 유효성이 제2 검증할 수 있다. 이 경우, 프로세서(230)는 수신된 전자 수표의 유효성이 제2 검증되었음을 수령 노드(120)에 안내할 수 있다.When receiving the electronic check from the receiving node 120 , the processor 230 may check whether at least some information included in the received electronic check matches electronic check information stored in the memory 220 . When the at least some information matches the electronic check information, the processor 230 may second verify the validity of the received electronic check. In this case, the processor 230 may inform the receiving node 120 that the validity of the received electronic check is secondly verified.

상술한 실시예에 따르면, 발행 노드(110)는 전자 수표를 발행할 때 전자수표의 지급 가능성을 검토함에 따라 발행된 전자 수표의 신뢰성을 높일 수 있다. 또한, 수령 노드(120)는 전자 수표를 수신한 때에 스마트 컨트랙트(130) 및 검증 노드(140)를 통해 전자 수표의 유효성을 검증함에 따라, 위/변조된 전자 수표를 지급받고 재화 또는 서비스를 제공하는 것을 방지할 수 있다. 또한, 각 노드(200)는 전자 수표의 지급 가능성 또는 유효성을 오프체인에서 검증(또는, 확인)함에 따라 암호 화폐 거래의 처리 속도를 높이고 처리 비용을 낮출 수 있다.According to the above-described embodiment, the issuing node 110 may increase the reliability of the issued electronic check by examining the payability of the electronic check when issuing the electronic check. In addition, the receiving node 120, upon receiving the electronic check, verifies the validity of the electronic check through the smart contract 130 and the verification node 140, receives a forged/falsified electronic check and provides goods or services can be prevented from doing In addition, each node 200 can increase the processing speed of cryptocurrency transactions and reduce processing costs by verifying (or verifying) the payability or validity of the electronic check off-chain.

도 3은 일 실시예에 따른 암호 화폐 결제 방법의 흐름도를 나타낸다.3 is a flowchart of a cryptocurrency payment method according to an embodiment.

도 3을 참조하면, 동작 ①에서, 발행 노드(110)는 암호 화폐를 스마트 컨트랙트(130)에 예치할 수 있다. 예를 들어, 발행 노드(110)는 수령인의 조작에 따라, 스마트 컨트랙트(130)는 암호 화폐에 관련된 사용자 정보(예: 이름, 계좌 정보, 이더리움 계정 정보), 또는 지갑 정보(예: 지갑 주소, 잔액) 중 적어도 일부를 포함하는 암호 화폐 정보를 저장할 수 있다.Referring to FIG. 3 , in operation ①, the issuing node 110 may deposit cryptocurrency in the smart contract 130 . For example, according to the operation of the recipient, the issuing node 110 provides user information related to cryptocurrency (eg, name, account information, Ethereum account information), or wallet information (eg, wallet address). , balance) may store cryptocurrency information including at least a part of it.

동작 ②에서, 발행 노드(110)는 재화 또는 서비스의 대금을 결제하기 위해서 상기 예치된 암호 화폐와 관련된 전자 수표를 발행할 수 있다. 상기 전자 수표는 예를 들면, 암호 화폐에 관련된 이전 전자 수표(예: 이전에 발행된 전자 수표)의 해시 값, 수령 노드(120)의 지갑 주소, 거래 금액, 발행 시간 또는 블록 넘버(block number) 중 적어도 하나를 거래 정보로서 포함할 수 있다.In operation ②, the issuing node 110 may issue an electronic check related to the deposited cryptocurrency to pay for the goods or services. The electronic check is, for example, a hash value of a previous electronic check related to cryptocurrency (eg, previously issued electronic check), the wallet address of the receiving node 120, transaction amount, issuance time or block number (block number) At least one of them may be included as transaction information.

동작 ③에서, 발행 노드(110)는 발행 노드(110)의 비밀 키에 기반하여 전자 수표를 제1 전자 서명할 수 있다. In operation ③, the issuing node 110 may first electronically sign the electronic check based on the secret key of the issuing node 110 .

동작 ④에서, 발행 노드(110)는 제1 전자 서명된 전자 수표를 검증 노드(140)로 송신하여, 제1 전자 서명된 전자 수표의 지급 가능성에 대한 검증을 요청할 수 있다.In operation ④, the issuing node 110 may transmit the first electronically signed electronic check to the verification node 140 to request verification of the payability of the first electronically signed electronic check.

동작 ⑤에서, 검증 노드(140)는 스마트 컨트랙트(130)를 이용하여 전자 수표의 지급 가능성을 검증할 수 있다. 예를 들어, 검증 노드(140)는 전자 수표에 포함된 거래 정보에 기반하여 전자 수표의 거래 금액을 확인하고, 스마트 컨트랙트(130)와 통신하여 전자 수표에 관련된 암호 화폐의 잔액을 확인할 수 있다. 검증 노드(140)는 전자 수표의 거래 금액이 암호 화폐의 잔액 이하인지를 확인하고, 전자 수표의 거래 금액이 암호 화폐의 잔액 이하이면, 예컨대, 자체 메모리(220)에 저장된 전자 수표 정보에 기반하여 이전 전자 수표 중 미지급된 전자 수표의 총합을 확인할 수 있다. 검증 노드(140)는 미지급된 전자 수표의 총합과 현재 전자 수표의 거래 금액을 합산하고, 합산된 총액이 암호 화폐의 잔액 이하인지를 확인할 수 있다. 검증 노드(140)는 상기 합산된 총액이 암호 화폐의 잔액 이하이면, 전자 수표를 지급 가능한 것으로 결정할 수 있다. 추가적으로, 검증 노드(140)는 전자 수표에 포함되어 있는 거래 정보 및 검증 노드(140)의 자체 메모리로부터 이전 전자 수표(이전에 발행된 전자 수표)의 해시 값을 확인할 수 있다. 프로세서(230)는 상기 거래 정보에 따른 이전 전자 수표의 해시 값이 이전 전자 수표의 해시 값과 일치하는지를 확인하고, 상호 일치하면 전자 수표에 기반하여 암호 화폐를 지급 가능한 것으로 결정할 수 있다. In operation ⑤, the verification node 140 may verify the payability of the electronic check using the smart contract 130 . For example, the verification node 140 may check the transaction amount of the electronic check based on transaction information included in the electronic check, and communicate with the smart contract 130 to check the balance of cryptocurrency related to the electronic check. The verification node 140 checks whether the transaction amount of the electronic check is equal to or less than the balance of cryptocurrency, and if the transaction amount of the electronic check is less than or equal to the balance of the cryptocurrency, for example, based on the electronic check information stored in its own memory 220 You can check the total number of unpaid electronic checks among previous electronic checks. The verification node 140 may add the total amount of the unpaid electronic check and the transaction amount of the current electronic check, and check whether the total amount is equal to or less than the balance of cryptocurrency. The verification node 140 may determine that the electronic check is payable if the sum total is less than or equal to the balance of cryptocurrency. Additionally, the verification node 140 may check the hash value of the previous electronic check (a previously issued electronic check) from transaction information included in the electronic check and its own memory of the verification node 140 . The processor 230 may determine whether the hash value of the previous electronic check according to the transaction information matches the hash value of the previous electronic check, and if they match, determine that cryptocurrency can be paid based on the electronic check.

동작 ⑥에서, 검증 노드(140)는 전자 수표에 기반하여 암호 화폐를 지급 가능하면, 전자 수표에 제2 전자 서명하고, 제2 전자 서명된 전자 수표의 전자 수표 정보를 검증 노드(140)의 자체 메모리에 저장할 수 있다.In operation ⑥, if the verification node 140 is able to pay cryptocurrency based on the electronic check, the second electronic check is signed electronically, and the electronic check information of the second electronically signed electronic check is verified by the verification node 140 itself. can be stored in memory.

동작 ⑦에서, 검증 노드(140)는 제2 전자 서명된 전자 수표를 발행 노드(110)로 송신할 수 있다.In operation ⑦, the verification node 140 may transmit a second electronically signed electronic check to the issuing node 110 .

동작 ⑧에서, 발행 노드(110)는 검증 노드(140)로부터 제2 전자 서명된 전자 수표를 수신한 후 재화나 서비스의 대금을 지급하기 위하여 제1 및 제2 전자 서명된 전자 수표를 수령 노드(120)로 송신할 수 있다.In operation ⑧, the issuing node 110 receives the second electronically signed electronic check from the verification node 140 and then receives the first and second electronically signed electronic checks to the receiving node ( 120) can be transmitted.

동작 ⑨에서, 수령 노드(120)는 발행 노드(110)로부터 전자 수표를 수신하면, 수신된 전자 수표의 위/변조 여부를 확인하기 위하여 스마트 컨트랙트(130)를 이용하여 전자 수표의 유효성을 검증할 수 있다. 예를 들어, 발행 노드(110)는 수신된 전자 수표를 스마트 컨트랙트(130)로 송신하고, 수신된 전자 수표의 유효성에 대한 제1 검증을 요청할 수 있다. 스마트 컨트랙트(130)는 스마트 컨트랙트(130)에 저장된 제1 및 제2 전자 서명 정보가 수신된 전자 수표에 포함되어 있는지를 확인하고, 제1 및 제2 전자 서명 정보가 수신된 전자 수표에 포함되어 있으면, 전자 수표의 유효성을 제1 검증할 수 있다. 스마트 컨트랙트(130)는 전자 수표의 유효성이 제1 검증된 것을 수령 노드(120)에 안내할 수 있다.In operation ⑨, when receiving the electronic check from the issuing node 110, the receiving node 120 verifies the validity of the electronic check using the smart contract 130 to check whether the received electronic check has been forged or forged. can For example, the issuing node 110 may transmit the received electronic check to the smart contract 130 and request a first verification of the validity of the received electronic check. The smart contract 130 checks whether the first and second electronic signature information stored in the smart contract 130 is included in the received electronic check, and the first and second electronic signature information is included in the received electronic check. If there is, the validity of the electronic check may be first verified. The smart contract 130 may inform the receiving node 120 that the validity of the electronic check is first verified.

동작 ⑩에서, 수령 노드(120)는 전자 수표에 포함된 정보가 검증 노드(140)에 저장된 정보와 일치하는지에 기반하여 전자 수표의 유효성을 제2 검증할 수 있다. 예를 들어, 수령 노드(120)는 수신된 전자 수표를 검증 노드(140)에 송신하고, 검증 노드(140)에 수신된 전자 수표의 유효성에 대한 제2 검증을 요청할 수 있다. 검증 노드(140)는 수신된 전자 수표의 적어도 일부 정보가 검증 노드(140)의 자체 메모리에 저장된 전자 수표 정보에 대응하는지를 확인하고, 상기 적어도 일부 정보가 상기 전자 수표 정보에 대응하면, 전자 수표의 유효성이 제2 검증된 것으로 결정할 수 있다. 검증 노드(140)는 전자 수표의 유효성이 제2 검증된 것을 수령 노드(120)에 안내할 수 있다. In operation ⑩, the receiving node 120 may second verify the validity of the electronic check based on whether information included in the electronic check matches information stored in the verification node 140 . For example, the receiving node 120 may transmit the received electronic check to the verification node 140 , and request the verification node 140 to perform a second verification of the validity of the received electronic check. The verification node 140 checks whether at least some information of the received electronic check corresponds to electronic check information stored in its own memory of the verification node 140, and if the at least some information corresponds to the electronic check information, The validity may be determined to be second verified. The verification node 140 may inform the receiving node 120 that the validity of the electronic check is secondly verified.

동작 ⑪에서, 수령 노드(120)는 제1 및 제2 검증된 전자 수표를 스마트 컨트랙트(130)에 송신함에 따라 전자 수표에 관련된 암호 화폐 출금을 요청할 수 있다. 이후, 스마트 컨트랙트(130)는 수령 노드(120)의 지갑 주소로 암호 화폐를 출금할 수 있다.In operation ⑪, the receiving node 120 may request a cryptocurrency withdrawal related to the electronic check by sending the first and second verified electronic checks to the smart contract 130 . Thereafter, the smart contract 130 may withdraw cryptocurrency to the wallet address of the receiving node 120 .

이하, 도 4 내지 도 7를 참조하여 일 실시예에 따른 전자 수표를 다중 검증하는 암호 화폐 결제 시스템의 효과를 설명한다.Hereinafter, the effect of the cryptocurrency payment system for multiple verification of the electronic check according to an embodiment will be described with reference to FIGS. 4 to 7 .

도 4는 일 실시예에 따른 스마트 컨트랙트에 의한 발행될 전자 수표 검증 방법을 설명하기 위한 도면이다.4 is a view for explaining a method of verifying an electronic check to be issued by a smart contract according to an embodiment.

도 4를 참조하면, 일 실시예에 따른 스마트 컨트랙트(130)를 통해 발행된 전자 수표들(410, 420, 430)은 각기 이전 발행된 전자 수표의 해시 값(예: 411), 해당 전자 수표의 해시 값(예: 413), 지갑 주소(to)(예: 413) 및 거래 금액(Amount)(예: 100)를 포함할 수 있다. 또한, 발행 노드(110)가 전자 수표들(410, 420, 430)에 제1 전자 서명하면, 전자 수표들(410, 420, 430)은 발행 노드(110)에 의한 제1 전자 서명(415)를 더 포함할 수 있다.Referring to FIG. 4 , the electronic checks 410 , 420 , and 430 issued through the smart contract 130 according to an embodiment each include a hash value (eg, 411 ) of a previously issued electronic check, and the corresponding electronic check. It may include a hash value (eg 413), a wallet address (to) (eg 413), and a transaction amount (eg 100). Also, if the issuing node 110 first electronically signs the electronic checks 410 , 420 , 430 , the electronic checks 410 , 420 , 430 are first electronically signed 415 by the issuing node 110 . may further include.

스마트 컨트랙트(130)는 발행 노드(110)의 요청에 따라 전자 수표들(410, 420, 430)을 발행할 수 있다. 예를 들어, 스마트 컨트랙트(130)는 암호 화폐의 잔고(451)가 120원이고 이전 지급된 전자 수표의 해시 값이 #0일 때, 거래 금액을 100원으로 하는 전자 수표들(410, 420)을 발행할 수 있다. 다른 예를 들어, 스마트 컨트랙트(130)는 암호 화폐의 잔고(451)가 120원이고 이전 지급된 전자 수표의 해시 값이 #0일 때, 거래 금액이 120원으로 하는 전자 수표(430)을 발행할 수 있다. 또 다른 예를 들어, 스마트 컨트랙트(130)는 암호 화폐의 잔고(451)가 120원이고 이전 지급된 전자 수표의 해시 값이 #0일 때, 거래 금액을 130원으로 하는 전자 수표(440)의 발행을 거부할 수 있다. 또는, 스마트 컨트랙트(130)는 암호 화폐의 잔고(451)가 120원이고 이전 지급된 전자 수표의 해시 값이 #0일 때, 거래 금액을 130원으로 하는 전자 수표(440)에 대하여 해시 값을 생성하지 않을 수 있다.The smart contract 130 may issue the electronic checks 410 , 420 , 430 according to the request of the issuing node 110 . For example, when the balance 451 of the cryptocurrency is 120 won and the hash value of the previously paid electronic check is #0, the smart contract 130 performs electronic checks with a transaction amount of 100 won (410, 420) can be issued. For another example, when the balance 451 of the cryptocurrency is 120 won and the hash value of the previously paid electronic check is #0, the smart contract 130 issues an electronic check 430 with a transaction amount of 120 won can do. As another example, when the balance 451 of the cryptocurrency is 120 won and the hash value of the previously paid electronic check is #0, the smart contract 130 sets the transaction amount to 130 won. publication may be refused. Alternatively, when the balance 451 of the cryptocurrency is 120 won and the hash value of the previously paid electronic check is #0, the smart contract 130 sets a hash value for the electronic check 440 with a transaction amount of 130 won. may not be created.

상술한 실시예에 따르면, 스마트 컨트랙트(130)는 암호 화폐의 잔고를 초과하는 금액의 전자 수표를 발행하지 않을 수 있다.According to the above-described embodiment, the smart contract 130 may not issue an electronic check for an amount exceeding the balance of cryptocurrency.

도 5는 일 실시예에 따른 검증 노드에 의한 발행된 전자 수표 검증 방법을 나타낸다.5 illustrates a method of verifying an electronic check issued by a verification node according to an embodiment.

도 5를 참조하면, 검증 노드(140)는 발행 노드(110)로부터 이전 전자 수표의 해시 값이 #0이고 현재 전자 수표의 해시 값 #1001 및 거래 금액 10원으로 하는 현재 전자 수표에 대한 검증 요청을 수신할 수 있다. 이 경우, 현재 전자 수표는 발행 노드(110)에 의한 제1 전자 서명(531)을 포함할 수 있다. 검증 노드(140)는 스마트 컨트랙트(130)를 이용하여 현재 전자 수표에 관련된 암호 화폐의 잔액이 120이고, 이전 지급된 전자 수표의 해시 값이 #0인 것을 확인할 수 있다. 이 경우, 미지급된 전자 수표가 없고 현재 전자 수표의 거래 금액이 암호 화폐의 잔액 이하이므로, 검증 노드(140)는 현재 전자 수표에 제2 전자 서명(532)할 수 있다. 검증 노드(140)는 제2 전자 서명된 전자 수표(511)를 발행 노드(110)로 송신할 수 있다. Referring to FIG. 5 , the verification node 140 requests verification of the current electronic check in which the hash value of the previous electronic check is #0 from the issuing node 110 and the hash value of the current electronic check is #1001 and the transaction amount is 10 won. can receive In this case, the current electronic check may include a first electronic signature 531 by the issuing node 110 . The verification node 140 may use the smart contract 130 to confirm that the current balance of the cryptocurrency related to the electronic check is 120, and the hash value of the previously paid electronic check is #0. In this case, since there is no unpaid electronic check and the transaction amount of the current electronic check is equal to or less than the balance of the cryptocurrency, the verification node 140 may make a second electronic signature 532 on the current electronic check. The verification node 140 may send a second electronically signed electronic check 511 to the issuing node 110 .

검증 노드(140)는 발행 노드(110)로부터 이전 전자 수표의 해시 값이 #1001이고 현재 전자 수표의 해시 값 #2312 및 거래 금액 100원으로 하며, 제1 전자 서명(531)을 포함하는 전자 수표에 대한 검증 요청을 수신할 수 있다. 검증 노드(140)는 스마트 컨트랙트(130)를 이용하여 현재 전자 수표에 관련된 암호 화폐의 잔액이 120이고 이전 지급된 전자 수표의 해시 값이 #0인 것을 확인할 수 있다. 검증 노드(140)는 미지급된 전자 수표가 있으므로, 현재 전자 수표의 거래 금액 100원과 미지급된 전자 수표의 총액 10원을 합산한 금액이 암호 화폐의 잔고 이하인지를 확인할 수 있다. 합산된 금액이 암호 화폐의 잔고 이하이므로, 검증 노드(140)는 현재 전자 수표에 제2 전자 서명(532)하고, 제2 전자 서명된 전자 수표(512)를 발행 노드(110)로 송신할 수 있다.The verification node 140 assumes that the hash value of the previous electronic check is #1001 from the issuing node 110, the hash value of the current electronic check #2312, and the transaction amount 100 won, the electronic check including the first electronic signature 531 You can receive a verification request for . The verification node 140 may use the smart contract 130 to confirm that the current balance of the cryptocurrency related to the electronic check is 120 and the hash value of the previously paid electronic check is #0. Since there is an unpaid electronic check, the verification node 140 may determine whether the sum of the current electronic check transaction amount of 100 won and the unpaid electronic check total of 10 won is equal to or less than the balance of cryptocurrency. Since the summed amount is less than or equal to the balance of the cryptocurrency, the verification node 140 may make a second electronic signature 532 on the current electronic check, and transmit the second electronically signed electronic check 512 to the issuing node 110. there is.

이후, 검증 노드(140)는 발행 노드(110)로부터 이전 전자 수표의 해시 값이 #2312이고 해당 전자 수표의 해시 값 #4712 및 거래 금액 120원으로 하며, 제1 전자 서명(531)을 포함하는 전자 수표에 대한 검증 요청을 수신할 수 있다. 검증 노드(140)는 스마트 컨트랙트(130)를 이용하여 현재 전자 수표에 관련된 암호 화폐의 잔액이 120이고 이전 지급된 전자 수표의 해시 값이 #0인 것을 확인할 수 있다. 검증 노드(140)는 현재 전자 수표의 거래 금액 120원과 미지급된 전자 수표의 총액 110원을 합산하고, 합산된 금액이 암호 화폐의 잔고를 초과하는 것을 확인할 수 있다. 검증 노드(140)는 전자 수표(513)에 전자 서명하지 않고, 해당 전자 수표를 지급 불가함을 발행 노드(110)에 안내할 수 있다. 이와 유사하게, 검증 노드(140)는 이전 전자 수표의 해시 값이 #4712이고 해당 전자 수표의 해시 값을 포함하지 않고, 거래 금액이 120원이며 제1 전자 서명(531)을 포함하는 전자 수표에 대한 검증 요청을 수신하는 경우에, 현재 전자 수표(514)의 서명하지 않고, 현재 전자 수표(514)에 기반하여 암호 화폐를 지급 불가함을 발행 노드(110)에 안내할 수 있다.After that, the verification node 140 assumes that the hash value of the previous electronic check from the issuing node 110 is #2312, the hash value of the electronic check #4712, and the transaction amount 120 won, including the first electronic signature 531 You may receive a verification request for the electronic check. The verification node 140 may use the smart contract 130 to confirm that the current balance of the cryptocurrency related to the electronic check is 120 and the hash value of the previously paid electronic check is #0. The verification node 140 sums up the current electronic check transaction amount of 120 won and the unpaid electronic check total of 110 won, and confirms that the summed amount exceeds the balance of cryptocurrency. The verification node 140 may inform the issuing node 110 that the electronic check cannot be paid without electronically signing the electronic check 513 . Similarly, the verification node 140 sends an electronic check that has a hash value of #4712 of the previous electronic check, does not include the hash value of the electronic check, has a transaction amount of 120 won, and includes a first electronic signature 531. In the case of receiving a verification request for , it is possible to inform the issuing node 110 that cryptographic currency cannot be paid based on the current electronic check 514 without signing the current electronic check 514 .

상술한 실시예에 따르면, 검증 노드(140)는 암호 화폐의 잔액보다 낮은 금액을 출금하는 복수의 전자 수표들을 발행함에 따라 전자 수표에 따른 총 출금액이 암호 화폐의 잔액을 초과하는 문제점을 개선할 수 있다.According to the above-described embodiment, as the verification node 140 issues a plurality of electronic checks that withdraw an amount lower than the balance of cryptocurrency, the problem that the total withdrawal amount according to the electronic check exceeds the balance of cryptocurrency can be improved. there is.

도 6은 일 실시예에 따른 거래 과정에서의 스마트 컨트랙트에 의한 전자 수표 검증 방법을 나타낸다.6 illustrates an electronic check verification method by a smart contract in a transaction process according to an embodiment.

도 6을 참조하면, 수령 노드(120)는 발행 노드(110)로부터 전자 수표들(610, 620, 630, 640)를 수신하면, 스마트 컨트랙트(130)를 이용하여 수신된 전자 수표들(610, 620, 630, 640)의 유효성을 제1 검증할 수 있다. 수령 노드(120)는 스마트 컨트랙트(130)가 전자 수표들(610, 620, 630, 640)의 유효성을 제1 검증하도록, 전자 수표들(610, 620, 630, 640)을 각기 스마트 컨트랙트(130)에 송신할 수 있다. 스마트 컨트랙트(130)는 전자 수표들(610, 620, 630, 640) 중 제1 전자 서명(651) 및 제2 전자 서명(652)을 둘 다 포함하는 전자 수표들(610, 620)의 유효성을 제1 검증할 수 있다. 반면, 스마트 컨트랙트(130)는 전자 수표들(610, 620, 630, 640) 중 제1 전자 서명(651) 및 제2 전자 서명(652)를 둘 다 포함하지 않는 전자 수표들(630, 640)을 유효하지 않은 것으로 결정할 수 있다. Referring to FIG. 6 , the receiving node 120 receives the electronic checks 610 , 620 , 630 , and 640 from the issuing node 110 , the electronic checks 610 , received using the smart contract 130 , The validity of 620 , 630 , and 640 may be first verified. The receiving node 120 transmits the electronic checks 610, 620, 630, and 640 to the smart contract 130 such that the smart contract 130 first validates the electronic checks 610, 620, 630, 640. ) can be sent to The smart contract 130 checks the validity of the electronic checks 610 and 620 including both the first electronic signature 651 and the second electronic signature 652 among the electronic checks 610 , 620 , 630 , 640 . The first may be verified. On the other hand, the smart contract 130 includes electronic checks 630 and 640 that do not include both the first electronic signature 651 and the second electronic signature 652 among the electronic checks 610 , 620 , 630 and 640 . can be determined to be invalid.

상술한 실시예에 따르면, 수령 노드(120)는 전자 수표들(610, 620, 630, 640)을 수신한 때에 스마트 컨트랙트(130)를 이용하여 수신된 전자 수표들(610, 620, 630, 640)의 유효성을 검증함에 따라, 수령인이 위/변조된 전자 수표들(610, 620, 630, 640)을 지급 받고 재화나 서비스를 제공하는 것을 방지할 수 있다.According to the embodiment described above, the receiving node 120 receives the electronic checks 610 , 620 , 630 , 640 using the smart contract 130 when receiving the electronic checks 610 , 620 , 630 , 640 . ), it is possible to prevent the recipient from receiving the forged / forged electronic checks (610, 620, 630, 640) and providing goods or services.

도 7은 일 실시예에 따른 거래 과정에서의 검증 노드에 의한 전자 수표 검증 방법을 나타낸다.7 illustrates an electronic check verification method by a verification node in a transaction process according to an embodiment.

도 7을 참조하면, 수령 노드(120)는 검증 노드(140)에 전자 수표들(610, 620, 630, 640)을 송신하여, 전자 수표들(610, 620, 630, 640)의 유효성을 제2 검증할 수 있다. Referring to FIG. 7 , the receiving node 120 transmits the electronic checks 610 , 620 , 630 , and 640 to the verification node 140 to verify the validity of the electronic checks 610 , 620 , 630 and 640 . 2 can be verified.

검증 노드(140)는 수령 노드(120)의 요청에 따라 수신된 전자 수표(610)로부터 현재 전자 수표의 해시 값(#1011)을 확인하고, 확인된 해시 값에 대응하는 자체 메모리에 저장되어 있는 전자 수표 정보(710)를 검색할 수 있다. 검증 노드(140)는 수신된 전자 수표(610)의 적어도 일부 정보(예: 현재 전자 수표의 해시 값, 거래 금액)가 전자 수표 정보(710)와 일치하면, 전자 수표(610)가 유효한(또는, 전자 수표(610)의 유효성이 제2 검증된) 것으로 결정할 수 있다. 추가적으로 또는, 대체적으로, 검증 노드(140)는 수신된 전자 수표(610)에 전자 수표 정보(710)에 따른 제1 전자 서명(651) 및 제2 전자 서명(652)이 포함되면, 전자 수표(610)가 유효한(또는, 전자 수표(610)의 유효성이 제2 검증된) 것으로 결정할 수 있다. 이와 유사하게, 검증 노드(140)는 수신된 전자 수표(620)과 자체 메모리에 저장되어 있는 전자 수표 정보(720)에 기반하여 전자 수표(620)의 유효성을 제2 검증할 수 있다.The verification node 140 checks the hash value (#1011) of the current electronic check from the received electronic check 610 according to the request of the receiving node 120, and is stored in its own memory corresponding to the checked hash value. Electronic check information 710 may be retrieved. The verification node 140 determines that the electronic check 610 is valid (or , it may be determined that the validity of the electronic check 610 is secondly verified. Additionally or alternatively, the verification node 140 includes the first electronic signature 651 and the second electronic signature 652 according to the electronic check information 710 in the received electronic check 610, It may be determined that 610 is valid (or that the validity of the electronic check 610 is secondly verified). Similarly, the verification node 140 may second verify the validity of the electronic check 620 based on the received electronic check 620 and electronic check information 720 stored in its own memory.

검증 노드(140)는 전자 수표들(630, 640)의 해시 값(#4712, 8821)에 대응하는 전자 수표 정보가 메모리에 저장되어 있지 않으므로, 전자 수표들(630, 640)이 유효하지 않은 것으로 결정할 수 있다. Since the electronic check information corresponding to the hash values #4712 and 8821 of the electronic checks 630 and 640 is not stored in the memory, the verification node 140 determines that the electronic checks 630 and 640 are invalid. can decide

상술한 실시예에 따르면, 수령 노드(120)는 전자 수표들(610, 620, 630, 640)을 수신한 때에 스마트 컨트랙트(130) 이외에도 검증 노드(140)를 이용하여 수신된 전자 수표들(610, 620, 630, 640)의 유효성을 추가 검증할 수 있어, 위/변조된 전자 수표들(610, 620, 630, 640)의 통용을 방지할 수 있다.According to the above-described embodiment, the receiving node 120 receives the electronic checks 610 , 620 , 630 , and 640 using the verification node 140 in addition to the smart contract 130 when receiving the electronic checks 610 . , 620, 630, 640) can be further verified, so that the use of forged / forged electronic checks (610, 620, 630, 640) can be prevented.

본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시예들로 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나","A 또는 B 중 적어도 하나", "A, B 또는 C", "A, B 및 C 중 적어도 하나" 및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제 3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.The various embodiments of this document and terms used therein are not intended to limit the technical features described in this document to specific embodiments, but it should be understood to include various modifications, equivalents, or substitutions of the embodiments. In connection with the description of the drawings, like reference numerals may be used for similar or related components. The singular form of the noun corresponding to the item may include one or more of the item, unless the relevant context clearly dictates otherwise. As used herein, "A or B", "at least one of A and B", "at least one of A or B", "A, B or C", "at least one of A, B and C" and "A; Each of the phrases such as "at least one of B, or C" may include any one of, or all possible combinations of, items listed together in the corresponding one of the phrases. Terms such as "first", "second", or "first" or "second" may be used simply to distinguish the element from other elements in question, and may refer to elements in other aspects (e.g., importance or order) is not limited. It is said that one (eg, first) component is "coupled" or "connected" to another (eg, second) component, with or without the terms "functionally" or "communicatively". When referenced, it means that one component can be connected to the other component directly (eg by wire), wirelessly, or through a third component.

본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로와 같은 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일실시예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다. As used herein, the term “module” may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with terms such as, for example, logic, logic block, component, or circuit. A module may be an integrally formed part or a minimum unit or a part of the part that performs one or more functions. For example, according to an embodiment, the module may be implemented in the form of an application-specific integrated circuit (ASIC).

본 문서의 다양한 실시예들은 기기(machine)(예: 전자 장치(1401)) 의해 읽을 수 있는 저장 매체(storage medium)(예: 내장 메모리(1436) 또는 외장 메모리(1438))에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램(1440))로서 구현될 수 있다. 예를 들면, 기기(예: 전자 장치(1401))의 프로세서(예: 프로세서(1420))는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체 는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적’은 저장매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.Various embodiments of the present document include one or more instructions stored in a storage medium (eg, internal memory 1436 or external memory 1438) readable by a machine (eg, electronic device 1401). may be implemented as software (eg, a program 1440) including For example, a processor (eg, processor 1420 ) of a device (eg, electronic device 1401 ) may call at least one command among one or more commands stored from a storage medium and execute it. This makes it possible for the device to be operated to perform at least one function according to the called at least one command. The one or more instructions may include code generated by a compiler or code executable by an interpreter. The device-readable storage medium may be provided in the form of a non-transitory storage medium. Here, 'non-transitory' only means that the storage medium is a tangible device and does not contain a signal (eg, electromagnetic wave), and this term is used in cases where data is semi-permanently stored in the storage medium and It does not distinguish between temporary storage cases.

일실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.According to one embodiment, the method according to various embodiments disclosed in this document may be provided as included in a computer program product. Computer program products may be traded between sellers and buyers as commodities. The computer program product is distributed in the form of a machine-readable storage medium (eg compact disc read only memory (CD-ROM)), or via an application store (eg Play Store TM ) or on two user devices ( It can be distributed (eg downloaded or uploaded) directly or online between smartphones (eg: smartphones). In the case of online distribution, at least a part of the computer program product may be temporarily stored or temporarily generated in a machine-readable storage medium such as a memory of a server of a manufacturer, a server of an application store, or a relay server.

다양한 실시예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있다. 다양한 실시예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.According to various embodiments, each component (eg, a module or a program) of the above-described components may include a singular or a plurality of entities. According to various embodiments, one or more components or operations among the above-described corresponding components may be omitted, or one or more other components or operations may be added. Alternatively or additionally, a plurality of components (eg, a module or a program) may be integrated into one component. In this case, the integrated component may perform one or more functions of each component of the plurality of components identically or similarly to those performed by the corresponding component among the plurality of components prior to the integration. . According to various embodiments, operations performed by a module, program, or other component are executed sequentially, in parallel, repeatedly, or heuristically, or one or more of the operations are executed in a different order, or omitted. or one or more other operations may be added.

Claims (19)

블록체인 시스템 외부의 암호 화폐 검증 노드에 있어서,
상기 블록체인 시스템에 각기 속하는 발행 노드 및 수령 노드와 통신할 수 있는 통신 회로;
메모리; 및
프로세서를 포함하고, 상기 프로세서는,
상기 발행 노드로부터 스마트 컨트랙트(smart contract)에 예치된 암호 화폐를 지급하기 위한 전자 수표에 대한 검증 요청을 수신하고,
상기 전자 수표에 기반한 암호 화폐의 지급 가능성을 확인하고,
상기 암호 화폐를 지급 가능하면, 상기 전자 수표를 전자 서명한 후 전자 수표 정보를 상기 전자 수표와 관련하여 상기 메모리에 저장하고,
상기 수령 노드로 상기 암호 화폐를 지급하기 위하여, 상기 전자 서명된 전자 수표를 상기 발행 노드로 송신하도록 설정되고,
상기 프로세서는,
상기 전자 수표에 관련된 암호 화폐의 잔고 정보와 상기 전자 수표에 포함된 거래 정보에 기반하여, 상기 거래 정보로부터 상기 전자 수표에 의한 거래 금액을 확인하고, 상기 거래 금액이 상기 잔고 정보에 따른 잔액 이하이거나,
상기 암호 화폐와 관련하여 이전에 발행된 전자 수표 중 미지급된 전자 수표가 있는지를 확인하고, 상기 전자 수표에 의한 거래 금액과 상기 미지급된 전자 수표의 거래 금액 총합을 합산하고, 합산에 따른 총액이 상기 잔고 정보에 따른 잔액 이하이고,
상기 스마트 컨트랙트를 이용하여, 상기 암호 화폐에 관련된 이전 전자 수표의 해시 값이 상기 거래 정보에 포함된 해시 값과 일치하는지를 확인하고, 상기 이전 전자 수표의 해시 값이 상기 전자 수표에 포함된 해시 값과 일치하면,
상기 전자 수표에 관련된 암호 화폐를 지급 가능한 것으로 결정하도록 설정되고,
상기 프로세서는,
상기 스마트 컨트랙트를 인식하면, 상기 스마트 컨트랙트에 상기 통신 회로의 고유 주소를 등록하도록 설정되며,
상기 수령 노드로부터 전자 수표를 수신하고,
상기 수신된 전자 수표에 포함된 적어도 일부 정보 및 상기 전자 수표 정보에 기반하여 상기 수신된 전자 수표의 유효성을 확인하고,
상기 전자 수표의 유효성 여부에 관한 정보를 상기 수령 노드로 송신하도록 설정되고,
상기 적어도 일부 정보 및 전자 수표 정보는,
상기 전자 수표의 해시 값, 상기 전자 수표의 거래 금액 및 상기 전자 수표를 포함하는 미지급된 전자 수표의 총액 중 적어도 일부를 포함하는, 검증 노드.
In the cryptocurrency verification node outside the blockchain system,
a communication circuit capable of communicating with the issuing node and the receiving node respectively belonging to the blockchain system;
Memory; and
A processor comprising:
receiving a verification request for an electronic check for disbursing cryptocurrency deposited in a smart contract from the issuing node;
Confirming the payment possibility of cryptocurrency based on the electronic check,
If it is possible to pay the cryptocurrency, after electronically signing the electronic check, electronic check information is stored in the memory in relation to the electronic check,
configured to send the electronically signed electronic check to the issuing node for disbursing the cryptocurrency to the receiving node;
The processor is
Based on the balance information of the cryptocurrency related to the electronic check and the transaction information included in the electronic check, the transaction amount by the electronic check is confirmed from the transaction information, and the transaction amount is less than or equal to the balance according to the balance information, or ,
Check whether there is an unpaid electronic check among the previously issued electronic checks in relation to the cryptocurrency, and add the transaction amount by the electronic check and the total transaction amount of the unpaid electronic check, and the total resulting from the summation is the above less than the balance according to the balance information,
Using the smart contract, it is checked whether the hash value of the previous electronic check related to the cryptocurrency matches the hash value included in the transaction information, and the hash value of the previous electronic check is the hash value included in the electronic check and If match,
It is set to determine that the cryptocurrency related to the electronic check is payable;
The processor is
Upon recognizing the smart contract, it is set to register the unique address of the communication circuit in the smart contract,
receive an electronic check from the receiving node;
Check the validity of the received electronic check based on at least some information included in the received electronic check and the electronic check information;
configured to transmit information regarding the validity of the electronic check to the receiving node;
the at least some information and electronic check information,
a verification node comprising at least a portion of a hash value of the electronic check, a transaction amount of the electronic check, and a total amount of an outstanding electronic check comprising the electronic check.
삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 블록체인 시스템에 속하는 발행 노드에 있어서,
상기 블록체인 시스템에 속하는 수령 노드 및 상기 블록체인 시스템 외부의 검증 노드와 통신할 수 있는 통신 회로; 및
프로세서를 포함하고, 상기 프로세서는,
스마트 컨트랙트에 암호 화폐를 예치하고,
상기 수령 노드로 상기 암호 화폐를 지급하기 위한 전자 수표를 발행하고,
상기 전자 수표에 관련된 암호 화폐의 지급에 대한 검증을 상기 검증 노드로 요청하고,
상기 검증 노드가 상기 암호 화폐의 지급을 검증함에 따라 전자 서명한 전자 수표를 수신하면, 상기 암호 화폐의 지급이 가능한 것으로 결정하고,
상기 수신된 전자 수표를 상기 수령 노드로 송신하여, 상기 수신된 전자 수표에 기반한 암호 화폐를 상기 수령 노드로 지급하도록 설정되고,
상기 전자 수표는,
거래 금액, 상기 암호 화폐와 관련된 이전 전자 수표의 해시 값, 상기 수령 노드의 지갑 주소, 수표 발행 시간 및 블록 넘버 중 적어도 하나를 포함하고,
상기 프로세서는,
상기 발행 노드의 비밀 키에 기반하여 제1 전자 서명하고,
제1 전자 서명된 전자 수표를 상기 검증 노드로 송신하도록 설정되고,
상기 검증 노드로부터 상기 검증 노드의 비밀 키에 기반하여 제2 전자 서명된 전자 수표를 수신하면, 상기 암호 화폐의 지급이 가능한 것으로 결정하도록 설정되고,
상기 검증 노드로부터 상기 검증 노드의 비밀 키에 기반하여 전자 서명되지 않은 전자 수표를 수신하면, 상기 발행된 전자 수표를 지급 불가한 것으로 확인하도록 설정된 발행 노드.
In the issuing node belonging to the blockchain system,
a communication circuit capable of communicating with a recipient node belonging to the blockchain system and a verification node external to the blockchain system; and
A processor comprising:
Deposit cryptocurrency in smart contract,
issue an electronic check for disbursing the cryptocurrency to the receiving node;
request verification of the payment of cryptocurrency related to the electronic check to the verification node;
When the verification node receives an electronically signed electronic check as the verification node verifies the payment of the cryptocurrency, it is determined that the payment of the cryptocurrency is possible,
and sending the received electronic check to the receiving node to pay the receiving node with cryptocurrency based on the received electronic check;
The electronic check is
at least one of a transaction amount, a hash value of a previous electronic check related to the cryptocurrency, a wallet address of the receiving node, a check issuance time, and a block number;
The processor is
first digitally sign based on the secret key of the issuing node;
configured to send a first electronically signed electronic check to the verification node;
when receiving a second digitally signed electronic check from the verification node based on the secret key of the verification node, determine that the payment of the cryptocurrency is possible;
an issuing node configured to, upon receipt of an electronic check that is not electronically signed, from the verification node based on the secret key of the verification node, confirm the issued electronic check as non-payable.
삭제delete 삭제delete 삭제delete 삭제delete 암호 화폐 결제 시스템에 있어서,
암호 화폐를 예치 및 지급할 수 있는 스마트 컨트랙트;
상기 스마트 컨트랙트를 이용하여 상기 스마트 컨트랙트(smart contract)에 예치된 암호 화폐를 지급하기 위한 전자 수표를 발행할 수 있는 발행 노드;
상기 스마트 컨트랙트를 이용하여 상기 전자 수표를 검증할 수 있는 검증 노드; 및
상기 검증 노드를 통한 검증을 거쳐 상기 전자 수표와 관련된 암호 화폐를 수령할 수 있는 수령 노드를 포함하고,
상기 검증 노드는,
상기 발행 노드로부터 상기 암호 화폐를 지급하기 위한 전자 수표에 대한 검증 요청을 수신하고,
상기 발행 노드로부터 상기 발행된 전자 수표에 대한 검증 요청을 수신하고,
상기 전자 수표에 기반한 암호 화폐의 지급 가능성을 확인하고,
상기 암호 화폐를 지급 가능하면, 상기 전자 수표를 전자 서명하고, 전자 서명된 전자 수표 정보를 저장하고,
상기 전자 서명된 전자 수표를 상기 발행 노드로 송신하고,
상기 검증 노드는,
상기 발행 노드로부터 전자 수표를 수신하고,
상기 전자 수표에 관련된 암호 화폐의 잔고 정보와 상기 전자 수표에 포함된 거래 정보에 기반하여, 상기 전자 수표에 기반한 암호 화폐의 지급 가능성을 확인하도록 설정되고,
상기 검증 노드는,
상기 수령 노드로부터 전자 수표를 수신하고,
상기 수신된 전자 수표에 포함된 전자 서명 및 상기 저장된 전자 수표 정보 중 적어도 하나에 기반하여, 상기 수신된 전자 수표의 유효성을 확인하고,
상기 수신된 전자 수표의 유효성 여부에 관한 정보를 상기 수령 노드로 송신하고,
상기 발행 노드는,
상기 전자 수표에 관련된 암호 화폐의 지급에 대한 검증을 상기 검증 노드로 요청하고,
상기 검증 노드로부터 상기 검증 노드에 의해 전자 서명된 전자 수표를 수신하면, 상기 암호 화폐의 지급이 가능한 것으로 결정하고,
상기 수신된 전자 수표를 상기 수령 노드로 송신하여, 상기 수신된 전자 수표에 기반한 암호 화폐를 상기 수령 노드로 지급하고,
상기 수령 노드는,
상기 발행 노드로부터 상기 발행 노드 및 상기 검증 노드에 의해 전자 서명된 전자 수표를 수신하고,
상기 스마트 컨트랙트 및 상기 검증 노드를 통해 상기 수신된 전자 수표의 전자 서명 정보에 기반하여 상기 수신된 전자 수표의 유효성을 검증하되,
상기 스마트 컨트랙트에 저장된 정보와 상기 수신된 전자 수표에 포함된 정보를 비교하여 상기 수신된 전자 수표의 유효성을 제1 검증하고,
상기 검증 노드에 저장된 정보와 상기 수신된 전자 수표에 포함된 정보를 비교하여 상기 수신된 전자 수표의 유효성을 제2 검증하는, 암호 화폐 결제 시스템.
In the cryptocurrency payment system,
smart contracts for depositing and disbursing cryptocurrencies;
an issuance node capable of issuing an electronic check for disbursing cryptocurrency deposited in the smart contract using the smart contract;
a verification node capable of verifying the electronic check using the smart contract; and
a receiving node capable of receiving the cryptocurrency related to the electronic check through verification through the verification node;
The verification node is
receiving a verification request for an electronic check for disbursing the cryptocurrency from the issuing node;
receiving a verification request for the issued electronic check from the issuing node;
Confirming the payment possibility of cryptocurrency based on the electronic check,
If the cryptocurrency is payable, electronically sign the electronic check, store electronically signed electronic check information,
sending the electronically signed electronic check to the issuing node;
The verification node is
receive an electronic check from the issuing node;
Based on the balance information of the cryptocurrency related to the electronic check and the transaction information included in the electronic check, it is set to confirm the payment possibility of the cryptocurrency based on the electronic check,
The verification node is
receive an electronic check from the receiving node;
Verifies the validity of the received electronic check based on at least one of an electronic signature included in the received electronic check and the stored electronic check information;
sending information regarding the validity of the received electronic check to the receiving node;
The issuing node is
request verification of the payment of cryptocurrency related to the electronic check to the verification node;
Upon receipt of an electronic check digitally signed by the verification node from the verification node, determining that the payment of the cryptocurrency is possible;
sending the received electronic check to the receiving node to pay cryptocurrency based on the received electronic check to the receiving node;
The receiving node is
receive an electronic check electronically signed by the issuing node and the verifying node from the issuing node;
Validating the validity of the received electronic check based on the electronic signature information of the received electronic check through the smart contract and the verification node,
First verify the validity of the received electronic check by comparing the information stored in the smart contract with the information included in the received electronic check,
Comparing information stored in the verification node with information included in the received electronic check, the second verification of validity of the received electronic check is performed.
삭제delete 삭제delete 삭제delete 삭제delete 삭제delete
KR1020190132434A 2019-10-23 2019-10-23 Node for verifying and publishing Crypto currency and System paying using Crypto currency KR102363804B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190132434A KR102363804B1 (en) 2019-10-23 2019-10-23 Node for verifying and publishing Crypto currency and System paying using Crypto currency

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190132434A KR102363804B1 (en) 2019-10-23 2019-10-23 Node for verifying and publishing Crypto currency and System paying using Crypto currency

Publications (2)

Publication Number Publication Date
KR20210048307A KR20210048307A (en) 2021-05-03
KR102363804B1 true KR102363804B1 (en) 2022-02-16

Family

ID=75911042

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190132434A KR102363804B1 (en) 2019-10-23 2019-10-23 Node for verifying and publishing Crypto currency and System paying using Crypto currency

Country Status (1)

Country Link
KR (1) KR102363804B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101922963B1 (en) * 2017-08-28 2018-11-28 아주대학교산학협력단 Apparatus and method for generating block chain
KR101975822B1 (en) * 2018-10-26 2019-05-08 (주)리그시스템 Private blockchain network system and method for consensus based on blockchain

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190046486A (en) * 2017-10-26 2019-05-07 주식회사 케이티 Virtual currency processing system and method based on blockchain
KR20190115553A (en) * 2018-04-03 2019-10-14 주식회사 비즈모델라인 Method for Providing Cryptocurrency Trade based on Verification of Information by using Smart Contract based on Blockchain

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101922963B1 (en) * 2017-08-28 2018-11-28 아주대학교산학협력단 Apparatus and method for generating block chain
KR101975822B1 (en) * 2018-10-26 2019-05-08 (주)리그시스템 Private blockchain network system and method for consensus based on blockchain

Also Published As

Publication number Publication date
KR20210048307A (en) 2021-05-03

Similar Documents

Publication Publication Date Title
KR102309819B1 (en) The trading system and the method based on a blockchain
US9292852B2 (en) System and method for applying stored value to a financial transaction
US20150324764A1 (en) Enabling a User to Transact Using Cryptocurrency
CN109074564A (en) The method and system of usage record guarantee pay down
CN109636593B (en) System and method for authenticating a user in a network transaction
CN109804401A (en) For the method and system via block chain certification discount coupon
CN102982441A (en) Dynamic electronic money
KR102249864B1 (en) Server and method for credit transaction using blockchain network
CN102150398A (en) System and method for providing a secure network on another secure network
RU2692969C1 (en) Client uniqueness management in tokenised systems
KR20190108666A (en) Apparatus and method for automated deposit and withdrawal of funds for cryptocurrency transactions and computer program for the same
KR102063628B1 (en) Method for paying based on blockchain and payment server using the same
US11188903B2 (en) Managing customer uniqueness in tokenised systems
US20220005023A1 (en) Programmable Transactions
US11615406B2 (en) Method and system for providing a service at a self-service machine
KR102363804B1 (en) Node for verifying and publishing Crypto currency and System paying using Crypto currency
WO2020154576A1 (en) Cryptographic transactions supporting real world requirements
KR101936417B1 (en) Method for providing a service of electronic gift certificate based on blockchain, and vending machine and server using the same
US20210125177A1 (en) Authentication network for transaction data
CN110675260A (en) Agricultural product transaction data processing method and device based on block chain
CN110570305A (en) Game data processing method and device based on block chain
CN110599344A (en) Foundation transaction data processing method and device based on block chain
CN110544169A (en) payment data processing method and device based on block chain
KR102374232B1 (en) Cloud-based payment guarantee transaction management server using digital gold tokens and operating method thereof
US11144912B2 (en) Authentication bypass software for merchant terminals

Legal Events

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