KR20190136844A - Cancelable transfer method for cryptocurrency - Google Patents

Cancelable transfer method for cryptocurrency Download PDF

Info

Publication number
KR20190136844A
KR20190136844A KR1020180063038A KR20180063038A KR20190136844A KR 20190136844 A KR20190136844 A KR 20190136844A KR 1020180063038 A KR1020180063038 A KR 1020180063038A KR 20180063038 A KR20180063038 A KR 20180063038A KR 20190136844 A KR20190136844 A KR 20190136844A
Authority
KR
South Korea
Prior art keywords
remittance
smart contract
electronic wallet
address
remitter
Prior art date
Application number
KR1020180063038A
Other languages
Korean (ko)
Other versions
KR102600645B1 (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 KR1020180063038A priority Critical patent/KR102600645B1/en
Publication of KR20190136844A publication Critical patent/KR20190136844A/en
Application granted granted Critical
Publication of KR102600645B1 publication Critical patent/KR102600645B1/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/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • 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/405Establishing or using transaction specific rules

Abstract

A cancelable remittance method for cryptocurrency of the present invention is based on a blockchain smart contract, and comprises the steps of: allowing an electronic wallet application of a remitter to be connected to a blockchain node to generate and distribute a smart contract in which an inputted remittance amount, the address of an electronic wallet of a receiver, and a remittance freezing time are set; transporting the remittance amount from the electronic wallet of the remitter to the address of the smart contract; starting the set remittance freezing time timer to freeze the remittance; and remitting to the address of the electronic wallet of the receiver when the remittance freezing time timer is terminated. Here, provided is a means to cancel a remittance transaction and refund the remittance amount to the remitter according to a request by the remitter before the remittance freezing time timer is terminated after the remittance began.

Description

취소 가능한 암호화폐 송금방법{CANCELABLE TRANSFER METHOD FOR CRYPTOCURRENCY}CANCELABLE TRANSFER METHOD FOR CRYPTOCURRENCY}

암호화폐를 송금하는 방법에 대한 것으로, 보다 상세하게는 송금 후 송금을 취소할 수 있는 암호화폐 송금방법에 대한 발명이 개시된다.The present invention relates to a method for remitting a cryptocurrency, and more particularly, to a cryptocurrency remittance method that can cancel a remittance after a remittance.

일반적으로 암호화폐는 지폐 또는 동전 등의 실물 없이 암호화 기술을 바탕으로 온라인에서 거래되는 화폐를 말한다. 암호화폐는 정부나 중앙은행이 발행하는 일반 화폐와 달리 처음 고안한 사람이 정한 규칙에 따라 가치가 매겨진다. 이들 암호화폐는 정부나 중앙은행이 거래 내역을 관리하지 않고 블록체인 기술을 기반으로 유통되는 특징이 있다. 암호화폐는 암호화 기술을 바탕으로 하며 블록체인에 참여한 노드들이 모두 동일한 거래원장을 보유하고 있기 때문에 해킹으로부터 안전한 것으로 알려져 있다. 대표적인 암호화폐로는 2009년 1월 사토시 나카모토가 개발하여 소스코드를 공개한 암호화폐인 비트코인이 있으며, 그 외에도 이더리움, 리플 등이 있다.In general, cryptocurrency refers to a currency that is traded online based on cryptographic technology without a real bill or coin. Cryptocurrency is valued according to the rules set by the original creator, unlike general currency issued by the government or central bank. These cryptocurrencies are characterized by the government or central banks being distributed based on blockchain technology without managing transaction details. Cryptocurrency is based on encryption technology and is known to be safe from hacking because all nodes participating in the blockchain have the same ledger. Representative cryptocurrencies include Bitcoin, a cryptocurrency developed by Satoshi Nakamoto in January 2009 and releasing the source code. Others include Ethereum and Ripple.

블록체인을 기반으로 하는 암호화폐들은 일반 화폐와 마찬가지로 화폐의 소유권을 이전하는 송금 거래가 가능하다. 암호화폐와 함께 급부상한 블록체인 기술은 단순한 송금 거래 이외의 다양한 거래가 가능하도록 발전하고 있다. 제한적이긴 하지만 비트코인 역시 비트코인 스크립트를 이용하여 조건에 따라 자동으로 거래를 수행하는 스마트 컨트랙트를 작성할 수 있다. 다만 비트코인 스크립트는 반복문을 사용할 수 없고, 비트코인 잔고 외의 다른 정보를 관리할 수 없는 한계가 있다.Cryptocurrencies based on blockchain can be used to transfer money transfers that transfer ownership of money, just like regular money. Blockchain technology, which has emerged with cryptocurrency, is evolving to enable various transactions beyond simple remittance transactions. Although limited, Bitcoin can also write smart contracts that automatically trade on conditional terms using Bitcoin scripts. However, Bitcoin script can not use the loop statement, and there is a limit that can not manage other information than Bitcoin balance.

이후 이더리움을 비롯한 다양한 블록체인 플랫폼들이 비트코인 스크립트의 한계를 극복하는 스마트 컨트랙트를 지원하고 있다. 스마트 컨트랙트는 분산 네트워크 환경에서도 신뢰할 수 있는 코드실행 기술이다. 이를 통해 다양한 조건을 갖는 계약이 중앙 시스템이나 인간의 개입이 없이 실행되고 조건에 따라 계약이 진행될 수 있도록 보장된다.Since then, various blockchain platforms, including Ethereum, have supported smart contracts that overcome the limitations of Bitcoin script. Smart contracts are reliable code execution technology even in distributed network environments. This ensures that contracts with various conditions can be executed without a central system or human intervention, and that the contract can be processed on condition.

스마트 컨트랙트를 이용하여 암호화폐 잔고 외의 다른 정보를 관리할 수 는 다양한 탈중앙화된 어플리케이션들이 개발되고 있다.Various decentralized applications are being developed that can use smart contracts to manage other information than cryptocurrency balances.

제안된 발명은 피싱 등으로 인해 잘못 송금된 송금 거래로 인한 손실을 방지하기 위하여 일정시간 동안 송금한 암호화폐를 동결시키고 잘못된 송금인 경우 송금 거래를 취소하고 송금자에게 다시 환불할 수 있는 방법을 제공하는 것을 목적으로 한다.The proposed invention freezes the cryptocurrency sent for a certain period of time in order to prevent loss due to a remittance transaction that is incorrectly sent due to phishing, etc., and provides a method for canceling the remittance transaction and refunding the sender again in case of a wrong remittance. For the purpose of

일 양상에 따르면, 취소 가능한 암호화폐 송금방법은 블록체인 스마트 컨트랙트를 기반으로 하여 송금자의 전자지갑 앱이 블록체인 노드에 연결하여 입력된 송금액, 수령자의 전자지갑 주소 및 송금 동결시간이 설정된 스마트 컨트랙트를 생성하고 배포하고, 송금자의 전자지갑에서 스마트 컨트랙트 주소로 송금액을 송금한 후, 설정된 송금 동결시간 타이머를 시작하여 송금을 동결하고, 송금 동결시간 타이머 만료 시 수령자의 전자지갑 주소로 송금하는 방법을 사용한다. 다만, 송금을 개시한 후 송금 동결시간 타이머 만료 전에 송금자의 요청에 의해 송금 거래를 취소하고 다시 송금자에게 송금액을 환불하는 수단을 제공한다.According to one aspect, the reversible cryptocurrency remittance method is based on the blockchain smart contract, the sender's electronic wallet app connects to the blockchain node, the smart contract set the input amount, recipient's electronic wallet address and remittance freeze time After creating and distributing the money, remitting the money from the sender's electronic wallet to the smart contract address, start the set remittance freeze time timer to freeze the remittance, and remit it to the recipient's e-mail address when the remittance freeze time timer expires. do. However, after the remittance is initiated and before the remittance freeze time timer expires, the remittance transaction is canceled at the request of the remitter and the remitter is provided with a means for refunding the remittance amount.

추가적 양상에 따르면, 수령자의 전자지갑 앱은 즉시 송금을 요청할 수 있고, 이에 대응하여 송금자의 전자지갑 앱은 스마트 컨트랙트에 연결하여 동결시간 타이머 만료 전이라도 즉시 송금하도록 처리할 수 있다.According to a further aspect, the recipient's electronic wallet app may request a remittance immediately, and correspondingly the sender's electronic wallet app may connect to the smart contract and process the remittance immediately even before the freeze time timer expires.

제안된 발명은 일정시간 동안 송금한 암호화폐를 동결시키고 잘못된 송금인 경우 송금 거래를 취소하고 송금자에게 다시 환불할 수 있어 피싱 등으로 인해 잘못 송금된 송금 거래로 인한 손실을 최소화할 수 있는 효과가 있다.The proposed invention freezes the cryptocurrency remitted for a certain period of time, cancels the remittance transaction in case of a wrong remittance, and refunds the remitter again, thereby minimizing the loss due to the remittance transaction that was incorrectly remitted due to phishing. .

도 1은 블록체인에 배포된 스마트 컨트랙트에 사용자가 접근하여 스마트 컨트랙트를 실행하는 개념도이다.
도 2는 일 실시 예에 따른 스마트 컨트랙트를 이용한 취소 가능한 암호화폐 송금방법의 절차를 도시한 것이다.
도 3은 일 실시 예에 따른 취소 가능한 암호화폐의 송금방법에서 송금 동결시간 경과 후 송금 실행과정을 도시한 흐름도이다.
도 4는 또 다른 실시 예에 따른 취소 가능한 암호화폐의 송금방법에서 송금 동결시간 확인 과정을 도시한 흐름도이다.
도 5는 또 다른 실시 예에 따른 스마트 컨트랙트를 이용한 취소 가능한 암호화폐 송금방법의 절차를 도시한 것이다.
도 6은 또 다른 실시 예에 따른 취소 가능한 암호화폐의 송금방법에서 송금 동결시간 경과 전 즉시 송금 실행과정을 도시한 흐름도이다.
도 7은 또 다른 실시 예에 따른 스마트 컨트랙트를 이용한 취소 가능한 암호화폐 송금방법의 송금 취소 절차를 도시한 것이다.
도 8은 또 다른 실시 예에 따른 취소 가능한 암호화폐의 송금방법에서 송금 동결시간 경과 전 계약 취소 과정을 도시한 흐름도이다.
도 9는 일 양상 예에 따른 취소 가능한 송금방법을 구현한 스마트 컨트랙트의 블록도이다.
1 is a conceptual diagram of a user executing a smart contract by accessing a smart contract distributed in a blockchain.
2 is a flowchart illustrating a reversible cryptocurrency transfer method using a smart contract according to an embodiment.
3 is a flowchart illustrating a remittance execution process after a remittance freezing time passes in a method of remitting a reversible cryptocurrency according to an embodiment.
4 is a flowchart illustrating a process of checking a remittance freezing time in a method of remitting a reversible cryptocurrency according to another embodiment.
5 is a flowchart illustrating a reversible cryptocurrency transfer method using a smart contract according to another embodiment.
FIG. 6 is a flowchart illustrating a process of immediately transmitting money before a freezing time of remittance in the method of remitting a reversible cryptocurrency according to another embodiment.
7 illustrates a remittance cancellation procedure of a reversible cryptocurrency remittance method using a smart contract according to another embodiment.
8 is a flowchart illustrating a process of canceling a contract before a remittance freezing time passes in a method of remitting a reversible cryptocurrency according to another embodiment.
9 is a block diagram of a smart contract implementing a cancelable remittance method according to an aspect example.

전술한, 그리고 추가적인 양상들은 첨부된 도면을 참조하여 설명하는 실시 예들을 통해 구체화된다. 각 실시 예들의 구성 요소들은 다른 언급이나 상호간에 모순이 없는 한 실시 예 내에서 다양한 조합이 가능한 것으로 이해된다. 블록도의 각 블록은 어느 경우에 있어서 물리적인 부품을 표현할 수 있으나 또 다른 경우에 있어서 하나의 물리적인 부품의 기능의 일부 혹은 복수의 물리적인 부품에 걸친 기능의 논리적인 표현일 수 있다. 때로는 블록 혹은 그 일부의 실체는 프로그램 명령어들의 집합(set)일 수 있다. 이러한 블록들은 전부 혹은 일부가 하드웨어, 소프트웨어 혹은 이들의 결합에 의해 구현될 수 있다.The foregoing and further aspects are embodied through the embodiments described with reference to the accompanying drawings. It is to be understood that the components of the embodiments may be variously combined within the embodiments as long as there is no contradiction between each other and each other. Each block in the block diagram may in some cases represent a physical part, but in another case may be a logical representation of a part of the function of one physical part or a function across a plurality of physical parts. Sometimes an instance of a block or part of it may be a set of program instructions. These blocks may be implemented in whole or in part by hardware, software or a combination thereof.

스마트 컨트랙트는 블록체인에서 동작하는 어플리케이션이다. 블록체인의 분산 원장 기술을 이용하여 중개자 없이 이해 당사자 간에 계약 조건을 부과하고 계약 조건을 만족 시 자동으로 계약을 체결하는 기술이다. 스마트 컨트랙트는 솔리디티와 같은 프로그램밍 언어로 작성되고, 컴파일되어 바이트코드 형태로 블록체인에 배포된다. 즉, 블록체인의 블록 안에 바이트코드 형태로 저장된다. 따라서, 블록체인 네트워크에 참가하는 모든 노드는 같은 블록을 가지고 있기 때문에 모든 노드가 배포된 스마트 컨트랙트의 바이트코드를 보유하고 실행할 수 있다. 스마트 컨트랙트를 지원하는 대표적인 블록체인 플랫폼으로 이더리움(Etherium)과 EOS 등이 있다.Smart contracts are applications that run on the blockchain. It is a technology that imposes contract terms between interested parties without an intermediary using the block ledger's distributed ledger technology and automatically contracts when the contract conditions are satisfied. Smart contracts are written in a programming language such as Solidity, compiled, and distributed to the blockchain in bytecode form. That is, it is stored in the form of bytecode in the block of the blockchain. Therefore, all nodes participating in the blockchain network have the same block, so that all nodes can hold and execute the bytecode of the distributed smart contract. Representative blockchain platforms that support smart contracts include Ethereum and EOS.

도 1은 블록체인에 배포된 스마트 컨트랙트에 사용자가 접근하여 스마트 컨트랙트를 실행하는 개념도이다. 도 1에 도시된 바와 같이 사용자1과 사용자2는 전자지갑 형태의 응용 프로그램을 통해 블록체인에 존재하는 스마트 컨트랙트의 바이트코드에 접근한다. 스마트 컨트랙트의 바이트코드는 사용자가 연결한 노드의 블록체인의 가상 머신에서 실행되고, 송금 등을 통해 데이터를 갱신하는 경우에는 갱신 내용이 블록체인 네트워크로 전달된다. 또한 사용자1과 사용자2는 자신의 컴퓨팅 장치의 웹 브라우저를 통해 접속한 블록체인 노드의 웹 어플리케이션 형태로 구현된 전자지갑으로도 접근할 수 있다. 1 is a conceptual diagram of a user executing a smart contract by accessing a smart contract distributed in a blockchain. As shown in FIG. 1, user 1 and user 2 access the bytecode of the smart contract existing in the blockchain through an electronic wallet type application program. The bytecode of the smart contract is executed in the virtual machine of the blockchain of the node to which the user connects, and when the data is updated through remittance, the update is transmitted to the blockchain network. In addition, users 1 and 2 can also access an electronic wallet implemented in the form of a web application of a blockchain node accessed through a web browser of their computing device.

이하, 단독 실행되는 전자지갑 형태의 응용 프로그램 또는 브라우저에서 실행되는 웹 어플리케이션 전자지갑 모두 전자지갑 앱으로 지칭한다.Hereinafter, both an electronic wallet type application program or a web application electronic wallet executed in a browser will be referred to as an electronic wallet app.

도 1에 도시된 것과 같이 생성된 스마트 컨트랙트는 배포되어 블록체인에 포함되어 있다. 일예로, 블록체인 플랫폼은 이더리움 플랫폼일 수 있다. 이 경우 사용자는 브라우저 등을 통해 이더리움 블록체인의 노드 상의 이더리움 클라이언트에 접속하여 스마트 컨트랙트에 접근할 수 있다. 이더리움의 스마트 컨트랙트는 이더리움 가상 머신(EVM)에서 실행되는 EVM 바이트코드로 블록체인 네트워크에 배포되므로 사용자는 이더리움 클라이언트에서 해당 EVM 바이트코드를 실행할 수 있다.The smart contract created as shown in FIG. 1 is distributed and included in the blockchain. For example, the blockchain platform may be an Ethereum platform. In this case, the user can access the smart contract by connecting to the Ethereum client on the node of the Ethereum blockchain through a browser or the like. Ethereum's smart contracts are distributed on the blockchain network as EVM bytecode running on the Ethereum virtual machine (EVM), allowing users to run the EVM bytecode on the Ethereum client.

도 2는 일 실시 예에 따른 스마트 컨트랙트를 이용한 취소 가능한 암호화폐 송금방법의 절차를 도시한 것이다. 발명의 일 실시 예에 따르면, 취소 가능한 암호화폐 송금방법은 블록체인에 배포되어 블록체인 노드의 가상 머신에서 실행되는 스마트 컨트랙트(100)를 기반으로 송금이 실행되며, 스마트 컨트랙트(100)를 생성하여 배포하는 단계와, 스마트 컨트랙트(100) 주소로 송금 처리하는 단계와, 송금액을 송금 동결시간 동안 동결하며 송금을 대기하는 단계와, 수령자의 전자지갑 주소로 송금 처리하고 종료하는 단계를 포함한다.2 is a flowchart illustrating a reversible cryptocurrency transfer method using a smart contract according to an embodiment. According to an embodiment of the present invention, the reversible cryptocurrency remittance method is distributed on the blockchain and the remittance is executed based on the smart contract 100 that is executed in the virtual machine of the blockchain node, thereby generating the smart contract 100. The step of distributing, the step of remittance processing to the smart contract 100 address, the step of freezing the remittance amount for the remittance freezing time and waiting for remittance, and the step of remittance processing and termination to the recipient's electronic wallet address.

취소 가능한 암호화폐 송금방법을 구현한 스마트 컨트랙트(100)는 블록체인 가상 머신에서 실행 가능한 명령어 세트로 작성되고 컴파일되어 바이트코드 형태로 배포된다. 취소 가능한 암호화폐 송금방법으로 송금하려는 송금자는 PC, 스마트 폰과 같은 컴퓨팅 장치의 전자지갑 앱을 통해 블록체인 노드에 접속하여 해당 노드의 블록체인 가상 머신에서 스마트 컨트랙트(100)를 실행할 수 있다.The smart contract 100, which implements a reversible cryptocurrency remittance method, is written in a set of instructions executable in a blockchain virtual machine, compiled, and distributed in the form of bytecode. A remitter who wants to send money using a reversible cryptocurrency remittance method may access a blockchain node through an electronic wallet app of a computing device such as a PC or a smart phone, and execute the smart contract 100 in the blockchain virtual machine of the node.

스마트 컨트랙트(100)를 생성하여 배포하는 단계는 송금자가 송금자의 컴퓨팅 장치에서 실행되는 전자지갑 앱을 통해 블록체인 노드에 접속하여 블록체인 노드 상의 블록체인 가상 머신에서 스마트 컨트랙트(100)가 실행될 수 있도록 스마트 컨트랙트 객체(인스턴스)를 생성하여 배포하는 단계이다(S1000). 즉 송금자의 전자지갑 앱(200)이 블록체인 노드에 접속하여 스마트 컨트랙트(100)의 생성자를 호출하여 객체(인스턴스)를 생성하고 이 생성된 객체를 블록체인에 배포하는 단계이다. 이때 생성자에 전달되는 파라미터는 송금액과, 수령자의 전자지갑 주소와, 송금 동결시간 정보를 포함한다. 따라서 송금자의 전자지갑 앱(200)은 블록체인 노드에 접속하여 송금액과 수령자의 전자지갑 주소와 송금 동결시간 정보가 설정된 스마트 컨트랙트(100)를 생성하여 블록체인 네트워크로 배포한다. Creating and distributing the smart contract 100 may allow the sender to access the blockchain node through an electronic wallet app running on the sender's computing device so that the smart contract 100 can be executed in the blockchain virtual machine on the blockchain node. In operation S1000, a smart contract object (instance) is generated and distributed. That is, the electronic wallet app 200 of the remitter accesses the blockchain node to call the constructor of the smart contract 100 to generate an object (instance) and distribute the generated object to the blockchain. At this time, the parameters delivered to the creator include the remittance amount, the recipient's electronic wallet address, and the remittance freezing time information. Therefore, the electronic wallet app 200 of the remitter connects to the blockchain node, generates a smart contract 100 in which the remittance amount, the electronic wallet address of the recipient, and the remittance freezing time information are distributed to the blockchain network.

스마트 컨트랙트의 객체를 생성하고 배포하면 일정시간 경과 뒤, 즉 스마트 컨트랙트(100)를 포함하는 블록이 채굴되어 블록체인에 포함된다. 이후 스마트 컨트랙트(100)에 접근하여 계약을 실행할 수 있게 된다. 스마트 컨트랙트(100)에 접근하여 계약을 실행한다는 것은 배포한 스마트 컨트랙트(100)의 주소를 이용하여 객체에 접근하여 객체의 메소드를 호출하는 것을 의미한다. 일예로 이더리움 플랫폼의 경우 스마트 컨트랙트(100)의 내부 상태를 변경시킬 필요가 있는 경우에는 sendTransaction 함수 호출을 통해 객체의 메소드를 실행할 수 있고, 스마트 컨트랙트(100)의 내부 상태를 변경할 필요가 없는 겻우에는 call 함수 호출을 이용하여 객체의 메소드를 실행할 수 있다.When the object of the smart contract is created and distributed, after a predetermined time, that is, a block including the smart contract 100 is mined and included in the block chain. Thereafter, the smart contract 100 may be accessed to execute a contract. Executing a contract by accessing the smart contract 100 means accessing the object by using the address of the distributed smart contract 100 and calling a method of the object. For example, in the case of the Ethereum platform, when it is necessary to change the internal state of the smart contract 100, the method of the object can be executed through the sendTransaction function call, and there is no need to change the internal state of the smart contract 100. In this case, you can use the call function call to execute the object's methods.

발명의 양상에 따라서는, 송금자의 컴퓨팅 장치에서 실행되는 전자지갑 앱에서 스마트 컨트랙트(100)를 생성하여 배포하는 인터페이스를 제공할 수 있다. 사용자는 스마트 컨트랙트 객체 생성 시 필요한 송금액과 수령자의 전자지갑 주소와 송금 동결시간을 입력하고 제공되는 인터페이스의 계약 생성을 위한 버튼을 누르면 전자지갑 앱이 특정 블록체인 노드에 접속하여 스마트 컨트랙트(100)를 생성하고 배포하는 내부 처리를 자동으로 수행할 수 있다.According to an aspect of the invention, it is possible to provide an interface for creating and distributing the smart contract 100 in the electronic wallet app running on the sender's computing device. When the user enters the amount of money required to create the smart contract object, the recipient's electronic wallet address and the time to freeze the money, and presses a button for creating a contract of the provided interface, the electronic wallet app connects to a specific blockchain node to execute the smart contract 100. You can automatically perform the internal processing of creating and distributing.

스마트 컨트랙트(100) 주소로 송금 처리하는 단계는 송금자의 전자지갑 앱(200)이 생성된 스마트 컨트랙트(100) 주소로 설정된 송금액의 송금을 처리하는 단계로 송금자로부터 수령자에게로 송금액을 송금하기 위하여 먼저 송금자의 계좌에서 송금액만큼의 암호화폐를 인출하는 과정이다(S1100). 즉시 송금되는 종래의 송금방법과 마찬가지로 취소 가능한 암호화폐 송금방법에서도 송금자의 계좌에서 송금액만큼 차감되는 것이다. 다만, 수령자 계좌로 즉시 송금되는 것이 아니라 스마트 컨트랙트(100)의 주소로 송금하였다가 송금을 위한 조건이 달성되면 수령자의 전자지갑으로 송금하여 스마트 컨트랙트(100)를 완료하고, 송금을 위한 조건이 달성되지 않으면 다시 송금자의 전자지갑으로 암호화폐를 환불하고 스마트 컨트랙트(100)를 종료할 수 있도록 한다.Remittance processing to the smart contract 100 address is a step in which the remitter's electronic wallet app 200 processes the remittance of the remittance set to the generated smart contract 100 address in order to remit the remittance from the remitter to the recipient. First, the process of withdrawing cryptocurrency by the amount of money from the remitter's account (S1100). Similar to the conventional remittance method of instant remittance, the reversible cryptocurrency remittance method is deducted by the remittance amount from the sender's account. However, instead of being immediately transferred to the recipient's account, the funds are transferred to the address of the smart contract 100 and when the conditions for the transfer are achieved, the funds are transferred to the recipient's electronic wallet to complete the smart contract 100, and the conditions for the transfer are achieved. If not, the cryptocurrency is refunded to the sender's electronic wallet again and the smart contract 100 can be terminated.

발명의 일 양상에 따르면, 송금자의 컴퓨팅 장치에서 실행되는 송금자의 전자지갑 앱(200)에서 스마트 컨트랙트(100) 주소로 송금액을 송금하는 과정이 자동으로 수행될 수 있다. 발명의 또 다른 양상에 따르면, 송금자의 컴퓨팅 장치에서 실행되는 전자지갑 앱에서 스마트 컨트랙트(100) 주소로 송금액을 송금하는 인터페이스를 제공하고 송금자가 해당 인터페이스를 이용하여 송금하는 방법을 사용할 수 있다. According to an aspect of the present invention, a process of remitting the remittance amount to the smart contract 100 address may be automatically performed in the sender's electronic wallet app 200 executed on the sender's computing device. According to another aspect of the present invention, an electronic wallet app executed on a sender's computing device may provide an interface for remitting a remittance amount to a smart contract 100 address, and a remitter may use a method for remitting money using the interface.

송금액을 송금 동결시간 동안 동결하며 송금을 대기하는 단계는 피싱(Phishing) 등을 방지하기 위해 송금자가 송금자의 전자지갑 앱(200)이 스마트 컨트랙트(100)에 연결하여 스마트 컨트랙트(100)의 송금 동결시간 타이머를 시작시키고 수령자에게 송금되어야 할 송금액을 지정된 송금 동결시간 동안 즉, 타이머가 만료될 때까지 송금액을 동결하며 송금을 대기하는 단계이다(S1200).The step of freezing the remittance amount during the remittance freezing time and waiting for remittance is the sender freezes the remittance of the smart contract 100 by connecting the sender's electronic wallet app 200 to the smart contract 100 to prevent phishing and the like. Starting the time timer and the remittance amount to be remitted to the recipient during the specified remittance freezing time, that is, freezing the remittance until the timer expires (S1200).

일반적으로 암호화폐는 뛰어난 보안성으로 인해 해킹이 불가능한 것으로 알려져 있으나, 송금이 개시되면 바로 송금자의 계좌에서 송금액이 차감되고, 차감된 금액만큼 수령자의 계좌가 증가되기 때문에 잘못 송금된 경우 이를 되돌리는 방법이 없다. 즉, 송금과 관련한 트랜잭션은 블록에 기록되어 합의되고 블록체인에 추가되면 더 이상 고칠 수가 없다. 블록체인 기술은 블록체인에 저장된 거래 기록을 되돌릴 수 있는 방법을 제공하고 있지 않기 때문이다. 블록체인에 쓰여진 거래 내용은 한번 쓰여지면 해킹 등을 통해서도 고칠 수 없어 안전하고 신뢰할 수 있는 거래 장부가 되지만 피싱이나 착오 등으로 잘못 송금이 발생한 경우에도 블록체인에 그 거래 내용이 쓰여지면 다시 되돌릴 수 없어 송금자는 암호화폐를 복구할 수 없게 된다. 따라서, 송금자의 전자지갑에서 송금액이 송금을 위해 인출되더라도 일정시간 즉, 정해진 송금 동결시간 동안 수령자의 전자지갑으로 이체되지 않도록 송금액을 동결시키고 잘못된 송금일 경우에 원래의 계좌로 암호화폐를 환불할 수 있도록 하면 블록체인에 송금 거래내용이 기재되었더라도 잘못된 송금을 되돌려 받을 수 있는 방법을 마련할 수 있다.Generally, cryptocurrency is not known to be hacked due to its excellent security.However, as soon as the transfer is initiated, the money is deducted from the sender's account, and the recipient's account is increased by the amount deducted. There is no In other words, transactions related to remittances are recorded in the block and agreed upon and added to the blockchain can no longer be fixed. This is because blockchain technology does not provide a way to reverse the transaction records stored in the blockchain. Once a transaction is written on the blockchain, it cannot be repaired through hacking, so it is a safe and reliable book.However, even if a mistake is sent due to phishing or error, if the transaction is written on the blockchain, it cannot be reverted. The party cannot recover the cryptocurrency. Therefore, even if the remittance is withdrawn for remittance from the remitter's electronic wallet, it is possible to freeze the remittance so that it will not be transferred to the recipient's e-wallet for a certain period of time, i.e. during a fixed remittance freeze time and refund the cryptocurrency to the original account if the remittance is incorrect In this way, even if the remittance transaction is written on the blockchain, there is a way to get back the wrong remittance.

발명의 양상에 따라서는 송금 동결시간은 시스템 상에서 일괄적으로 정해서(예를 들어, 24시간) 지정할 수도 있고, 송금자가 원하는 송금 동결시간을 지정할 수도 있다.According to an aspect of the invention, the remittance freeze time may be specified in a batch on the system (for example, 24 hours) or may be specified by the remitter freezing time.

송금자가 송금자의 컴퓨팅 장치에서 실행되는 전자지갑 앱을 통해 스마트 컨트랙트(100)에 연결하여 전자지갑에 의해 제공되는 인터페이스를 통해 송금을 동결시간 타이머를 시작시키면, 스마트 컨트랙트 객체는 지정된 송금 동결시간 타이머가 만료할 때까지 수령자의 전자지갑으로 송금을 처리하지 않고 대기한다. When a sender connects to the smart contract 100 via an electronic wallet app running on the sender's computing device and starts a freeze time timer for the transfer through the interface provided by the electronic wallet, the smart contract object is assigned a freeze freeze time timer. Wait until the expiration does not process the transfer to the recipient's electronic wallet.

수령자의 전자지갑 주소로 송금 처리하고 종료하는 단계는 스마트 컨트랙트(100)가 송금 동결시간 타이머 만료시 자동으로 스마트 컨트랙트(100) 주소에서 수령자의 전자지갑 주소로 동결된 송금액의 송금을 처리하고 스마트 컨트랙트(100)를 종료한다(S1300). 이때 송금자는 이미 송금을 한 이후이기 때문에(스마트 컨트랙트 주소로 송금됨) 송금을 위한 추가적인 작업이 필요 없고, 수령자는 송금을 받기만 하면 되므로 또한 추가적인 작업이 필요 없다. 따라서 송금 동결시간 타이머가 만료되면 자동으로 송금자의 전자지갑에서 송금된 스마트 컨트랙트(100)의 주소에서 수령자의 전자지갑 주소로 송금액을 송금할 수 있다.In the step of processing and ending the remittance to the recipient's electronic wallet address, the smart contract 100 automatically handles the remittance of the remitted money amount from the smart contract 100 address to the recipient's electronic wallet address when the remittance freeze time timer expires. The operation 100 ends (S1300). At this time, since the sender has already sent the money (sent to the smart contract address), no additional work is required for the money transfer, and the recipient only needs to receive the money. Therefore, when the remittance freeze time timer expires, it is possible to automatically transfer the remittance amount from the address of the smart contract 100 transferred from the sender's electronic wallet to the recipient's electronic wallet address.

도 3은 일 실시 예에 따른 취소 가능한 암호화폐의 송금방법에서 송금 동결시간 경과 후 송금 실행과정을 도시한 흐름도이다. 도 3에 도시된 바와 같이, 송금자로부터 송금액, 수령자의 전자지갑 주소 및 송금 동결시간을 입력 받은 송금자의 전자지갑 앱(200)이 블록체인 노드에 접속하여 입력 받은 항목들을 전달하며 스마트 컨트랙트(100)의 생성자를 호출하여 객체를 생성하고 블록체인 네트워크에 배포한다(S1000). 일정시간 경과 후 스마트 컨트랙트(100)의 바이트코드를 포함하는 블록이 추가되면 송금자는 송금자의 전자지갑 앱(200)을 통해 스마트 컨트랙트(100) 주소로 송금액의 처리를 스마트 컨트랙트(100)로 요청한다(S1100). 스마트 컨트랙트(100)는 송금자의 계좌에서 송금액을 차감하고 스마트 컨트랙트(100) 계정에 추가한다.3 is a flowchart illustrating a remittance execution process after a remittance freezing time passes in a method of remitting a reversible cryptocurrency according to an embodiment. As shown in FIG. 3, the electronic wallet app 200 of the remitter receiving the remittance amount, the recipient's electronic wallet address, and the remittance freezing time from the remitter transfers the received items by accessing the blockchain node and transmits the smart contract 100. Call the constructor of) to create an object and distribute it to the blockchain network (S1000). After a certain period of time, if a block including the byte code of the smart contract 100 is added, the remitter requests the smart contract 100 to process the remittance amount to the smart contract 100 address through the sender's electronic wallet app 200. (S1100). The smart contract 100 subtracts the remittance amount from the remitter's account and adds it to the smart contract 100 account.

송금자는 송금자의 전자지갑 앱(200)을 통해 스마트 컨트랙트(100)에 송금 동결시간 타이머를 시작할 것을 요청하고 타이머가 만료될 때까지 송금이 동결되도록 한다(S1200). 발명의 양상에 따라서는 스마트 컨트랙트(100) 주소로 송금을 하는 처리와 송금 동결시간 타이머 시작을 요청하는 처리는 한번의 사용자 동작으로 처리될 수 있다. 즉, 사용자가 특정 버튼(예, 송금 시작)을 선택하면 스마트 컨트랙트(100) 주소로 송금처리를 요청하는 것과 송금 동결시간 타이머 시작을 요청하는 것이 순서대로 일어나도록 구현될 수 있다. 발명의 또 다른 양상에 따르면, 위 두 요청은 별개의 사용자 인터페이스 즉, 스마트 컨트랙트(100) 주소로 송금을 요청하는 버튼을 선택하고, 추가로 동결시간 타이머 시작을 요청하는 송금 시작을 요청하는 버튼을 선택하도록 구현될 수도 있다.The remitter requests the smart contract 100 to start the remittance freezing time timer through the remitter's electronic wallet app 200 and freezes the remittance until the timer expires (S1200). According to an aspect of the present invention, the process of sending money to the smart contract 100 address and the process of requesting the start of the remittance freezing time timer may be processed by one user operation. That is, when the user selects a specific button (eg, transfer start), the request for the transfer process to the smart contract 100 address and the request for the start of the transfer freeze time timer may be implemented in order. According to another aspect of the invention, the above two requests select a button for requesting a transfer to a separate user interface, i.e., the smart contract 100 address, and additionally a button for requesting a transfer start requesting the start of a freeze time timer. It may be implemented to select.

스마트 컨트랙트(100)는 타이머 개시 요청에 따라 타이머를 시작시키고(S1210), 송금액을 동결시킨다. 이후 송금 동결시간 타이머가 만료되면(S1220) 스마트 컨트랙트(100) 주소에서 수령자의 전자지갑 주소로 자동으로 해당 송금액을 송금 처리한다(S1300).The smart contract 100 starts the timer according to the timer start request (S1210), and freezes the remittance amount. After the remittance freeze time timer expires (S1220) and automatically transfers the transfer amount from the smart contract 100 address to the recipient's electronic wallet address (S1300).

도 4는 또 다른 실시 예에 따른 취소 가능한 암호화폐의 송금방법에서 송금 동결시간 확인 과정을 도시한 흐름도이다. 발명의 또 다른 실시 예에 따르면, 스마트 컨트랙트(100)를 기반으로 하는 취소 가능한 암호화폐 송금방법은 스마트 컨트랙트(100)를 생성하여 배포하는 단계와, 스마트 컨트랙트(100) 주소로 송금 처리하는 단계와, 송금액을 송금 동결시간 동안 동결하며 송금을 대기하는 단계와, 수령자의 전자지갑 주소로 송금 처리하고 종료하는 단계를 포함하고, 송금액 및 송금 동결시간을 조회하는 단계를 더 포함할 수 있다.4 is a flowchart illustrating a process of checking a remittance freezing time in a method of remitting a reversible cryptocurrency according to another embodiment. According to another embodiment of the present invention, the retractable cryptocurrency remittance method based on the smart contract 100 includes the steps of generating and distributing the smart contract 100, and transmitting the remittance to the smart contract 100 address; The method may further include the step of freezing the remittance amount during the remittance freezing time and waiting for remittance, and remitting the remittance to the recipient's electronic wallet address and ending the remittance time.

스마트 컨트랙트(100)를 생성하여 배포하는 단계는 송금자가 송금자의 컴퓨팅 장치에서 실행되는 전자지갑 앱을 통해 블록체인 노드에 접속하여 블록체인 노드 상의 블록체인 가상 머신에서 스마트 컨트랙트(100)가 실행될 수 있도록 송금액, 수령자의 전자지갑 주소 및 송금 동결시간을 포함하는 파라미터를 전달하며 스마트 컨트랙트 객체(인스턴스)를 생성하여 배포하는 단계이다(S2000).Creating and distributing the smart contract 100 may allow the sender to access the blockchain node through an electronic wallet app running on the sender's computing device so that the smart contract 100 can be executed in the blockchain virtual machine on the blockchain node. In step S2000, a parameter including a remittance amount, a recipient's electronic wallet address, and a remittance freezing time is transmitted and a smart contract object (instance) is generated and distributed.

스마트 컨트랙트(100) 주소로 송금 처리하는 단계는 송금자의 전자지갑 앱(200)이 생성된 스마트 컨트랙트(100) 주소로 설정된 송금액의 송금을 처리하는 단계로 송금자로부터 수령자에게로 송금액을 송금하기 위하여 먼저 송금자의 계좌에서 송금액만큼의 암호화폐를 인출하는 단계이다(S2100).Remittance processing to the smart contract 100 address is a step in which the remitter's electronic wallet app 200 processes the remittance of the remittance set to the generated smart contract 100 address in order to remit the remittance from the remitter to the recipient. First, it is a step of withdrawing the cryptocurrency as much as the remittance amount from the remitter's account (S2100).

송금액을 송금 동결시간 동안 동결하며 송금을 대기하는 단계는 피싱 등을 방지하기 위해 송금자가 송금자의 전자지갑 앱(200)이 스마트 컨트랙트(100)에 연결하여 스마트 컨트랙트(100)의 송금 동결시간 타이머를 시작시키고(S2210) 수령자에게 송금되어야 할 송금액을 지정된 송금 동결시간 동안 즉, 타이머가 만료될 때까지 송금액을 동결하며 송금을 대기하는 단계이다(S2200).The step of freezing the remittance amount during the remittance freeze time and waiting for remittance is the sender's electronic wallet app 200 of the sender connected to the smart contract 100 to prevent the phishing, etc., the remittance freeze time timer of the smart contract 100 In step S2210, the remittance amount to be remitted to the recipient is designated for the remittance freezing time, that is, the remittance of the remittance until the timer expires (S2200).

송금액 및 송금 동결시간을 조회하는 단계는 수령자의 전자지갑 앱(300)이 스마트 컨트랙트(100)에 연결하여 동결된 송금액 및 남은 송금 동결시간을 조회하여 출력하는 단계이다(S2300). 수령자는 스마트 컨트랙트(100)에 접근하여 스마트 컨트랙트(100)에 설정된 송금액을 조회하여 송금액이 계약한 금액과 일치하는 지 확인할 수 있고, 남아있는 송금 동결시간을 조회하여 자신의 계좌로 송금되는 시점을 정확히 파악할 수 있다.The step of querying the remittance amount and remittance freezing time is the step of receiving and outputting the frozen remittance amount and the remaining remittance freezing time connected to the smart wallet app of the recipient (100) (S2300). The recipient can access the smart contract 100 and check the remittance amount set in the smart contract 100 to check whether the remittance amount matches the contracted amount, and check the remaining remittance freeze time to see when the remittance is transferred to his account. I can figure out exactly.

수령자의 전자지갑 주소로 송금 처리하고 종료하는 단계는 스마트 컨트랙트(100)가 송금 동결시간 타이머 만료 시 자동으로 스마트 컨트랙트(100) 주소에서 수령자의 전자지갑 주소로 동결된 송금액의 송금을 처리하고 스마트 컨트랙트(100)를 종료한다(S2400).The step of processing and ending the remittance to the recipient's electronic wallet address automatically processes the remittance of the frozen money from the smart contract 100 address to the recipient's electronic wallet address when the smart contract 100 expires the freezing time timer. The operation 100 ends (S2400).

도 5는 또 다른 실시 예에 따른 스마트 컨트랙트를 이용한 취소 가능한 암호화폐 송금방법의 절차를 도시한 것이다. 발명의 또 다른 실시 예에 따르면, 스마트 컨트랙트(100)를 기반으로 하는 취소 가능한 암호화폐 송금방법은 스마트 컨트랙트(100)를 생성하여 배포하는 단계와, 스마트 컨트랙트(100) 주소로 송금 처리하는 단계와, 송금액을 송금 동결시간 동안 동결하며 송금을 대기하는 단계와, 수령자의 전자지갑 주소로 송금 처리하고 종료하는 단계를 포함하고, 즉시 송금을 요청하는 단계와, 즉시 송금을 처리하고 종료하는 단계를 더 포함할 수 있다.5 is a flowchart illustrating a reversible cryptocurrency transfer method using a smart contract according to another embodiment. According to another embodiment of the present invention, the retractable cryptocurrency remittance method based on the smart contract 100 includes the steps of generating and distributing the smart contract 100, and transmitting the remittance to the smart contract 100 address; Freezing the amount of money for the remittance freezing time and waiting for remittance; and processing and terminating the remittance to the recipient's e-wallet address; requesting the remittance immediately; and processing and terminating the remittance immediately. It may include.

스마트 컨트랙트(100)를 생성하여 배포하는 단계는 송금자가 송금자의 컴퓨팅 장치에서 실행되는 전자지갑 앱을 통해 블록체인 노드에 접속하여 블록체인 노드 상의 블록체인 가상 머신에서 스마트 컨트랙트(100)가 실행될 수 있도록 송금액, 수령자의 전자지갑 주소 및 송금 동결시간을 포함하는 파라미터를 전달하며 스마트 컨트랙트 객체(인스턴스)를 생성하여 배포하는 단계이다(S3000).Creating and distributing the smart contract 100 may allow the sender to access the blockchain node through an electronic wallet app running on the sender's computing device so that the smart contract 100 can be executed in the blockchain virtual machine on the blockchain node. In step S3000, a parameter including a remittance amount, a recipient's electronic wallet address, and a remittance freezing time is transmitted and a smart contract object (instance) is generated and distributed.

스마트 컨트랙트(100) 주소로 송금 처리하는 단계는 송금자의 전자지갑 앱(200)이 생성된 스마트 컨트랙트(100) 주소로 설정된 송금액의 송금을 처리하는 단계로 송금자로부터 수령자에게로 송금액을 송금하기 위하여 먼저 송금자의 계좌에서 송금액만큼의 암호화폐를 인출하는 단계이다(S3100).Remittance processing to the smart contract 100 address is a step in which the remitter's electronic wallet app 200 processes the remittance of the remittance set to the generated smart contract 100 address in order to remit the remittance from the remitter to the recipient. First, a step of withdrawing the cryptocurrency by the amount of money from the remitter's account (S3100).

송금액을 송금 동결시간 동안 동결하며 송금을 대기하는 단계는 피싱 등을 방지하기 위해 송금자가 송금자의 전자지갑 앱(200)이 스마트 컨트랙트(100)에 연결하여 스마트 컨트랙트(100)의 송금 동결시간 타이머를 시작시키고 수령자에게 송금되어야 할 송금액을 지정된 송금 동결시간 동안 즉, 타이머가 만료될 때까지 송금액을 동결하며 송금을 대기하는 단계이다(S3200).The step of freezing the remittance amount during the remittance freeze time and waiting for remittance is the sender's electronic wallet app 200 of the sender connected to the smart contract 100 to prevent the phishing, etc., the remittance freeze time timer of the smart contract 100 Starting and remitting the amount of money to be remitted to the recipient during the designated remittance freezing time, that is, freezing the amount of money until the timer expires (S3200).

즉시 송금을 요청하는 단계는 수령자의 전자지갑 앱(300)이 송금 동결시간 타이머 만료 전 스마트 컨트랙트(100)에 연결하여 송금자의 전자지갑 앱(200)으로 즉시 송금 실행을 요청하는 단계이다(S3300). 송금 동결시간 타이머가 만료되어 자동으로 수령자의 계좌로 송금되는 것 외에 수령자가 송금자의 요구 조건을 이미 달성한 경우 송금 동결시간 만료 전이라도 송금자에게 즉시 송금을 요청하는 수단으로 사용될 수 있다. 이는 단순 송금 계약 이외의 다른 계약으로 확장이 가능하도록 하는 효과가 있다. 예를 들어, 송금자가 수령자가 원격지에서 판매하는 상품을 통신(전화, 인터넷 등)을 통해 구매하고 상품을 수령할 때까지 취소 가능한 송금방법을 활용하여 송금하고 상품을 수령한 경우 수령자가 즉시 송금을 요청할 수 있도록 한다.The step of requesting the instant transfer is a step in which the recipient's electronic wallet app 300 connects to the smart contract 100 before the remittance freeze time timer expires and requests the remittance execution to the sender's electronic wallet app 200 immediately (S3300). . In addition to being automatically sent to the recipient's account after the remittance freeze timer expires, if the recipient has already fulfilled the remitter's requirements, it can be used as a means of requesting remittance to the remitter immediately even before the remittance freeze time expires. This has the effect of being able to be extended to other contracts than simple remittance contracts. For example, if a sender purchases goods sold remotely by telecommunications (telephone, Internet, etc.) and sends money using a revocable remittance method until the goods are received and the recipients receive the money immediately Make a request.

즉시 송금을 처리하고 종료하는 단계는 스마트 컨트랙트(100)를 종료하는 다른 과정으로 수령자의 즉시 송금 요청에 대응하여 송금자의 전자지갑 앱(200)이 송금 동결시간 타이머 만료 전 스마트 컨트랙트(100)에 연결하여 스마트 컨트랙트(100) 주소에서 수령자의 전자지갑 주소로 동결된 송금액의 송금을 처리하고 스마트 컨트랙트(100)를 종료하는 단계이다(S3400, S3500). 발명의 양상에 따라서는 수령자의 즉시 송금 요청이 없더라도 송금자가 자신이 원하는 계약조건이 달성되면 스스로 즉시 송금 요청을 할 수도 있다.The step of immediately processing and ending the remittance is another process of terminating the smart contract 100 in response to the recipient's immediate remittance request, the sender's electronic wallet app 200 connects to the smart contract 100 before the remittance freeze time timer expires. By processing the remittance of the frozen money transfer from the smart contract 100 address to the recipient's electronic wallet address and terminates the smart contract 100 (S3400, S3500). According to the aspect of the invention, even if there is no immediate remittance request of the recipient, the remitter may request the remittance immediately if the desired contract condition is achieved.

도 6은 또 다른 실시 예에 따른 취소 가능한 암호화폐의 송금방법에서 송금 동결시간 경과 전 즉시 송금 실행과정을 도시한 흐름도이다. 도 6에 도시된 바와 같이, 송금자로부터 송금액, 수령자의 전자지갑 주소 및 송금 동결시간을 입력 받은 송금자의 전자지갑 앱(200)이 블록체인 노드에 접속하여 입력 받은 항목들을 전달하며 스마트 컨트랙트(100)의 생성자를 호출하여 객체를 생성하고 블록체인 네트워크에 배포한다(S3000). 일정시간 경과 후 스마트 컨트랙트(100)의 바이트코드를 포함하는 블록이 추가되면 송금자는 송금자의 전자지갑 앱(200)을 통해 스마트 컨트랙트(100) 주소로 송금액의 처리를 스마트 컨트랙트(100)로 요청한다(S3100). 스마트 컨트랙트(100)는 송금자의 계좌에서 송금액을 차감하고 스마트 컨트랙트(100) 계정에 추가한다.FIG. 6 is a flowchart illustrating a process of immediately transmitting money before a freezing time of remittance in the method of remitting a reversible cryptocurrency according to another embodiment. As shown in FIG. 6, the electronic wallet app 200 of the remitter receiving the remittance amount, the recipient's electronic wallet address, and the remittance freezing time from the remitter accesses the blockchain node and delivers the received items to the smart contract 100. Call the constructor of) to create an object and distribute it to the blockchain network (S3000). After a certain period of time, if a block including the byte code of the smart contract 100 is added, the remitter requests the smart contract 100 to process the remittance amount to the smart contract 100 address through the sender's electronic wallet app 200. (S3100). The smart contract 100 subtracts the remittance amount from the remitter's account and adds it to the smart contract 100 account.

송금자는 송금자의 전자지갑 앱(200)을 통해 스마트 컨트랙트(100)에 송금 동결시간 타이머를 시작할 것을 요청하고 타이머가 만료될 때까지 송금이 동결되도록 한다(S3200). 발명의 양상에 따라서는 스마트 컨트랙트(100) 주소로 송금을 하는 처리와 송금 동결시간 타이머 시작을 요청하는 처리는 한번의 사용자 동작으로 처리될 수 있다. 즉, 사용자가 특정 버튼(예, 송금 시작)을 선택하면 스마트 컨트랙트(100) 주소로 송금처리를 요청하는 것과 송금 동결시간 타이머 시작을 요청하는 것이 순서대로 일어나도록 구현될 수 있다. 발명의 또 다른 양상에 따르면, 위 두 요청은 별개의 사용자 인터페이스 즉, 스마트 컨트랙트(100) 주소로 송금을 요청하는 버튼을 선택하고, 추가로 동결시간 타이머 시작을 요청하는 송금 시작을 요청하는 버튼을 선택하도록 구현될 수도 있다.The remitter requests the smart contract 100 to start the remittance freezing time timer through the remitter's electronic wallet app 200 and allows the remittance to be frozen until the timer expires (S3200). According to an aspect of the present invention, the process of sending money to the smart contract 100 address and the process of requesting the start of the remittance freezing time timer may be processed by one user operation. That is, when the user selects a specific button (eg, transfer start), the request for the transfer process to the smart contract 100 address and the request for the start of the transfer freeze time timer may be implemented in order. According to another aspect of the invention, the above two requests select a button for requesting a transfer to a separate user interface, i.e., the smart contract 100 address, and additionally a button for requesting a transfer start requesting the start of a freeze time timer. It may be implemented to select.

스마트 컨트랙트(100)는 타이머 개시 요청에 따라 타이머를 시작시키고(S3210), 송금액을 동결시킨다. The smart contract 100 starts the timer according to the timer start request (S3210), and freezes the remittance amount.

수령자의 전자지갑 앱(300)이 송금 동결시간 타이머 만료전이라도 송금자의 요구하는 조건을 모두 만족한 경우 스마트 컨트랙트(100)에 연결하여 즉시 송금을 요청할 수 있다(S3300). 즉시 요청을 수령한 스마트 컨트랙트(100)는 송금자의 전자지갑 앱(200)으로 즉시 송금 요청이 있음을 통지한다(S3310). 발명의 양상에 따라서는 이때 송금자의 전자지갑 앱(200)에는 수령자의 즉시 송금 요청을 알리는 메시지를 표시할 수 있다.If the recipient's electronic wallet app 300 satisfies all of the remitter's requirements even before the remittance freeze time timer expires, the recipient can connect to the smart contract 100 and request the remittance immediately (S3300). Upon receipt of the request, the smart contract 100 notifies that there is an immediate transfer request to the sender's electronic wallet app 200 (S3310). According to an aspect of the invention, the sender's electronic wallet app 200 may display a message informing the recipient of the immediate transfer request.

송금자는 수령자가 자신이 원하는 요구조건이 전부 만족되었는지 확인한 후 즉시 송금 요청에 대응하여 송금 동결시간 타이머가 만료 전 스마트 컨트랙트(100)에 연결하여 스마트 컨트랙트(100) 주소에서 수령자의 전자지갑 주소로 해당 송금액의 송금 처리를 요청할 수 있다(S3400). 이 요청을 받은 스마트 컨트랙트(100)는 수령자의 전자지갑 주소로 해당 송금액의 송금 처리하고 스마트 컨트랙트(100)를 종료한다(S3500).The sender confirms that the recipient has all the desired requirements and immediately responds to the remittance request. The remitter freeze-time timer connects to the smart contract 100 before the expiration and passes from the smart contract 100 address to the recipient's electronic wallet address. The remittance processing of the remittance amount may be requested (S3400). The smart contract 100 receives the request, and transfers the remittance to the recipient's electronic wallet address and terminates the smart contract 100 (S3500).

도 7은 또 다른 실시 예에 따른 스마트 컨트랙트를 이용한 취소 가능한 암호화폐 송금방법의 송금 취소 절차를 도시한 것이다. 발명의 또 다른 실시 예에 따르면, 스마트 컨트랙트(100)를 기반으로 하는 취소 가능한 암호화폐 송금방법은 스마트 컨트랙트(100)를 생성하여 배포하는 단계와, 스마트 컨트랙트(100) 주소로 송금 처리하는 단계와, 송금액을 송금 동결시간 동안 동결하며 송금을 대기하는 단계와, 수령자의 전자지갑 주소로 송금 처리하고 종료하는 단계를 포함하고, 계약을 파기하고 환불을 처리하는 단계를 더 포함할 수 있다.7 illustrates a remittance cancellation procedure of a reversible cryptocurrency remittance method using a smart contract according to another embodiment. According to another embodiment of the present invention, the retractable cryptocurrency remittance method based on the smart contract 100 includes the steps of generating and distributing the smart contract 100, and transmitting the remittance to the smart contract 100 address; The method may further include the step of freezing the remittance amount for a remittance freezing time and waiting for remittance, and remitting and ending the remittance to the recipient's e-wallet address.

스마트 컨트랙트(100)를 생성하여 배포하는 단계는 송금자가 송금자의 컴퓨팅 장치에서 실행되는 전자지갑 앱을 통해 블록체인 노드에 접속하여 블록체인 노드 상의 블록체인 가상 머신에서 스마트 컨트랙트(100)가 실행될 수 있도록 송금액, 수령자의 전자지갑 주소 및 송금 동결시간을 포함하는 파라미터를 전달하며 스마트 컨트랙트 객체(인스턴스)를 생성하여 배포하는 단계이다(S4000).Creating and distributing the smart contract 100 may allow the sender to access the blockchain node through an electronic wallet app running on the sender's computing device so that the smart contract 100 can be executed in the blockchain virtual machine on the blockchain node. In step S4000, a parameter including a remittance amount, a recipient's electronic wallet address, and a remittance freezing time is delivered and a smart contract object (instance) is generated and distributed.

스마트 컨트랙트(100) 주소로 송금 처리하는 단계는 송금자의 전자지갑 앱(200)이 생성된 스마트 컨트랙트(100) 주소로 설정된 송금액의 송금을 처리하는 단계로 송금자로부터 수령자에게로 송금액을 송금하기 위하여 먼저 송금자의 계좌에서 송금액만큼의 암호화폐를 인출하는 단계이다(S4100).Remittance processing to the smart contract 100 address is a step in which the remitter's electronic wallet app 200 processes the remittance of the remittance set to the generated smart contract 100 address in order to remit the remittance from the remitter to the recipient. First, a step of withdrawing the cryptocurrency by the amount of money from the remitter's account (S4100).

송금액을 송금 동결시간 동안 동결하며 송금을 대기하는 단계는 피싱 등을 방지하기 위해 송금자가 송금자의 전자지갑 앱(200)이 스마트 컨트랙트(100)에 연결하여 스마트 컨트랙트(100)의 송금 동결시간 타이머를 시작시키고 수령자에게 송금되어야 할 송금액을 지정된 송금 동결시간 동안 즉, 타이머가 만료될 때까지 송금액을 동결하며 송금을 대기하는 단계이다(S4200).The step of freezing the remittance amount during the remittance freeze time and waiting for remittance is the sender's electronic wallet app 200 of the sender connected to the smart contract 100 to prevent the phishing, etc., the remittance freeze time timer of the smart contract 100 Starting and remitting the amount of money to be remitted to the recipient during the designated remittance freezing time, that is, freezing the remittance until the timer expires (S4200).

계약을 파기하고 환불을 처리하는 단계는 송금자의 전자지갑 앱(200)이 송금 동결시간 타이머 만료 전 스마트 컨트랙트(100)에 연결하여 동결된 송금액을 스마트 컨트랙트(100) 주소에서 송금자의 전자지갑 주소로 환불처리하고 스마트 컨트랙트(100)를 파기하는 단계이다(S4300). 송금자가 피싱 또는 착오로 잘못된 수령자에게 송금을 한 경우 송금 동결시간 타이머가 만료되어 자동으로 수령자의 계좌로 송금되기 전에 이를 취소하고 스마트 컨트랙트(100)를 종료하는 단계이다. 또는 수령자가 송금자가 요구하는 계약조건을 달성할 수 없을 때 동결시간 타이머 만료전에 송금을 취소하고 종료할 수 있는 수단으로 사용될 수 있다.In the step of destroying the contract and processing the refund, the remitter's electronic wallet app 200 connects to the smart contract 100 before the remittance freeze time timer expires and transfers the frozen remittance amount from the smart contract 100 address to the remitter's electronic wallet address. Refund processing and destroying the smart contract 100 (S4300). When the remitter sends money to the wrong recipient by phishing or error, the remittance freezing time timer expires and is automatically canceled before being remitted to the recipient's account and the smart contract 100 is terminated. Alternatively, it can be used as a means to cancel and terminate the transfer before expiration of the freeze time timer when the recipient is unable to achieve the contract terms required by the sender.

도 8은 또 다른 실시 예에 따른 취소 가능한 암호화폐의 송금방법에서 송금 동결시간 경과 전 계약 취소 과정을 도시한 흐름도이다. 도 8에 도시된 바와 같이, 송금자로부터 송금액, 수령자의 전자지갑 주소 및 송금 동결시간을 입력 받은 송금자의 전자지갑 앱(200)이 블록체인 노드에 접속하여 입력 받은 항목들을 전달하며 스마트 컨트랙트(100)의 생성자를 호출하여 객체를 생성하고 블록체인 네트워크에 배포한다(S4000). 일정시간 경과 후 스마트 컨트랙트(100)의 바이트코드를 포함하는 블록이 추가되면 송금자는 송금자의 전자지갑 앱(200)을 통해 스마트 컨트랙트(100) 주소로 송금액의 처리를 스마트 컨트랙트(100)로 요청한다(S4100). 스마트 컨트랙트(100)는 송금자의 계좌에서 송금액을 차감하고 스마트 컨트랙트(100) 계정에 추가한다.8 is a flowchart illustrating a process of canceling a contract before a remittance freezing time passes in a method of remitting a cryptographic currency according to another embodiment. As shown in FIG. 8, the electronic wallet app 200 of the sender who receives the remittance amount, the recipient's electronic wallet address, and the remittance freezing time from the remitter transmits the items received by accessing the blockchain node and transmits the smart contract 100. Call the constructor of) to create an object and distribute it to the blockchain network (S4000). After a certain period of time, if a block including the byte code of the smart contract 100 is added, the remitter requests the smart contract 100 to process the remittance amount to the smart contract 100 address through the sender's electronic wallet app 200. (S4100). The smart contract 100 subtracts the remittance amount from the remitter's account and adds it to the smart contract 100 account.

송금자는 송금자의 전자지갑 앱(200)을 통해 스마트 컨트랙트(100)에 송금 동결시간 타이머를 시작할 것을 요청하고 타이머가 만료될 때까지 송금이 동결되도록 한다(S4200). 발명의 양상에 따라서는 스마트 컨트랙트(100) 주소로 송금을 하는 처리와 송금 동결시간 타이머 시작을 요청하는 처리는 한번의 사용자 동작으로 처리될 수 있다. 즉, 사용자가 특정 버튼(예, 송금 시작)을 선택하면 스마트 컨트랙트(100) 주소로 송금처리를 요청하는 것과 송금 동결시간 타이머 시작을 요청하는 것이 순서대로 일어나도록 구현될 수 있다. 발명의 또 다른 양상에 따르면, 위 두 요청은 별개의 사용자 인터페이스 즉, 스마트 컨트랙트(100) 주소로 송금을 요청하는 버튼을 선택하고, 추가로 동결시간 타이머 시작을 요청하는 송금 시작을 요청하는 버튼을 선택하도록 구현될 수도 있다.The remitter requests the smart contract 100 to start the remittance freezing time timer through the remitter's electronic wallet app 200 and allows the remittance to be frozen until the timer expires (S4200). According to an aspect of the present invention, the process of sending money to the smart contract 100 address and the process of requesting the start of the remittance freezing time timer may be processed by one user operation. That is, when the user selects a specific button (eg, transfer start), the request for the transfer process to the smart contract 100 address and the request for the start of the transfer freeze time timer may be implemented in order. According to another aspect of the invention, the above two requests select a button for requesting a transfer to a separate user interface, i.e., the smart contract 100 address, and additionally a button for requesting a transfer start requesting the start of a freeze time timer. It may be implemented to select.

스마트 컨트랙트(100)는 타이머 개시 요청에 따라 타이머를 시작시키고(S4210), 송금액을 동결시킨다. The smart contract 100 starts the timer according to the timer start request (S4210), and freezes the remittance amount.

송금자의 전자지갑 앱(200)이 송금 동결시간 타이머 만료 전 잘못 송금한 것을 알았거나 수령자가 송금자의 요구하는 조건을 만족하지 못하는 경우 스마트 컨트랙트(100)에 연결하여 송금 취소를 요청할 수 있다(S4250). 송금 취소을 수령한 스마트 컨트랙트(100)는 스마트 컨트랙트(100)의 주소에서 송금자의 전자지갑 주소로 환불처리를 하고 스마트 컨트랙트(100)의 실행을 종료한다(S4300).If the remitter's electronic wallet app 200 knew that the remittance was incorrectly sent before the remittance freeze time timer expired or the recipient did not meet the requirements of the remitter, the sender may request a cancellation of the wire by connecting to the smart contract 100 (S4250). . The smart contract 100 that has received the remittance cancellation performs a refund processing from the address of the smart contract 100 to the electronic wallet address of the sender and ends execution of the smart contract 100 (S4300).

도 9는 일 양상 예에 따른 취소 가능한 송금방법을 구현한 스마트 컨트랙트의 블록도이다. 일 양상 예에 따른 취소 가능한 송금방법을 구현한 스마트 컨트랙트(100)는 수령자의 전자지갑 앱(300)의 송금액 조회 요청에 따라 설정된 송금액의 조회를 처리하는 기능을 수행하는 송금액 조회 처리부(110)와, 수령자의 전자지갑 앱(300)의 송금 동결시간 조회 요청에 따라 타이머 만료까지 남은 송금 동결시간의 조회를 처리하는 기능을 수행하는 송금 동결시간 조회 처리부(120)와, 수령자의 전자지갑 앱(300)의 즉시 송금 요청에 따라 송금자의 전자지갑 앱(200)으로 즉시 송금 요청을 전달하는 기능을 수행하는 즉시 송금 요청 처리부(130)와, 송금자의 즉시 송금 요청에 따라 송금 동결시간 타이머 만료 전 송금액의 송금을 처리하는 기능을 수행하는 즉시 송금 처리부(140)와, 송금 동결시간 타이머 만료시 지정된 수령자의 전자지갑 주소로 설정된 송금액의 송금을 처리하는 기능을 수행하는 송금 처리부(150)와, 송금 동결시간 타이머 만료전 송금자의 전자지갑 주소로 송금액을 되돌리고 계약을 파기하고 종료하는 기능을 처리하는 송금 취소 처리부(160)를 포함할 수 있다.9 is a block diagram of a smart contract implementing a cancelable remittance method according to an aspect example. The smart contract 100 implementing the revocable remittance method according to an aspect of the present invention and the remittance amount inquiry processing unit 110 performs a function of processing the inquiry of the remittance amount set in response to the remittance inquiry request of the electronic wallet app 300 of the recipient and In response to the request for remittance freezing time of the electronic wallet app 300 of the recipient, the remittance freezing time inquiry processing unit 120 performs a function of processing the inquiry of the remittance freezing time remaining until the timer expires, and the recipient's electronic wallet app 300 In accordance with the instant remittance request of the remitter's electronic wallet app (200) immediately perform the function of transferring the remittance request immediately remittance request processing unit 130, according to the remitter's immediate remittance request of the remittance freeze time timer before expiration Immediately after the remittance processing unit 140 performs the remittance processing function and the remittance freeze time timer expires of the remittance amount set to the designated electronic wallet address of the recipient It may include a remittance processing unit 150 for performing a function of processing the money, and a remittance cancellation processing unit 160 for processing a function of returning the remittance to the electronic wallet address of the remitter before the remittance freeze time timer expires, destroying and terminating the contract. have.

스마트 컨트랙트(100)는 솔리디티와 같은 프로그래밍 언어로 작성될 수 있으며, 블록체인 플랫폼의 가상 머신에서 실행되는 컴퓨터 프로그램으로 CD??ROM, USB, ROM, RAN 등의 저장매체에 저장될 수 있다.The smart contract 100 may be written in a programming language such as solidity, and may be stored in a storage medium such as CD ?? ROM, USB, ROM, or RAN as a computer program running on a virtual machine of a blockchain platform.

이상에서 본 발명을 첨부된 도면을 참조하는 실시 예들을 통해 설명하였지만 이에 한정되는 것은 아니며, 이들로부터 당업자라면 자명하게 도출할 수 있는 다양한 변형 예들을 포괄하도록 해석되어야 한다. 특허청구범위는 이러한 변형 예들을 포괄하도록 의도되었다. Although the present invention has been described above with reference to the accompanying drawings, the present invention is not limited thereto, and it should be interpreted to cover various modifications that will be apparent to those skilled in the art. The claims are intended to cover these modifications.

100 : 스마트 컨트랙트
110 : 송금액 조회 처리부
120 : 송금 동결시간 조회 처리부
130 : 즉시 송금 요청 처리부
140 : 즉시 송금 처리부
150 : 송금 처리부
160 : 송금 취소 처리부
200 : 송금자의 전자지갑 앱
300 : 수령자의 전자지갑 앱
100: Smart Contract
110: remittance inquiry processing unit
120: remittance freeze time inquiry processing unit
130: immediate remittance request processing unit
140: Immediate remittance processing unit
150: remittance processing unit
160: remittance cancellation processing unit
200: Sender's electronic wallet app
300: Recipient's electronic wallet app

Claims (5)

블록체인 노드의 가상 머신에서 실행되는 스마트 컨트랙트 기반의 암호화폐 송금방법에 있어서,
송금자의 전자지갑 앱이 블록체인 노드에 접속하여 송금액, 수령자의 전자지갑 주소 및 송금 동결시간 정보가 설정된 스마트 컨트랙트를 생성하여 블록체인에 배포하는 단계;
송금자의 전자지갑 앱이 생성된 스마트 컨트랙트 주소로 설정된 송금액의 송금을 처리하는 단계;
송금자의 전자지갑 앱이 스마트 컨트랙트에 연결하여 스마트 컨트랙트의 송금 동결시간 타이머를 시작시키고 지정된 송금 동결시간 동안 송금을 대기하는 단계; 및
스마트 컨트랙트가 송금 동결시간 타이머 만료시 스마트 컨트랙트 주소에서 수령자의 전자지갑 주소로 동결된 송금액의 송금을 처리하고 종료하는 단계;
를 포함하는 암호화폐 송금방법.
In the smart contract-based cryptocurrency remittance method executed in the virtual machine of the blockchain node,
A step in which the remitter's electronic wallet app accesses the blockchain node to generate a smart contract in which the remittance amount, the recipient's electronic wallet address, and the remittance freezing time information are set and distributed to the blockchain;
Processing the remittance of the remittance amount set to the generated smart contract address of the remitter's electronic wallet app;
Connecting the sender's electronic wallet app to the smart contract to start a remittance freeze time timer of the smart contract and waiting for remittance for a specified remittance freeze time; And
Processing and terminating the remittance of the frozen remittance amount from the smart contract address to the recipient's electronic wallet address when the smart contract expires;
Cryptocurrency remittance method comprising a.
제 1 항에 있어서, 상기 방법은
수령자의 전자지갑 앱이 송금 동결시간 타이머 만료 전 스마트 컨트랙트에 연결하여 동결된 송금액 및 남은 송금 동결시간을 조회하여 출력하는 단계;
를 더 포함하는 암호화폐 송금방법.
The method of claim 1 wherein the method is
A recipient's electronic wallet app connected to the smart contract before the remittance freeze time timer expires to display and output the frozen remittance amount and the remaining remittance freeze time;
Cryptocurrency remittance method further comprising.
제 1 항에 있어서, 상기 방법은
수령자의 전자지갑 앱이 송금 동결시간 타이머 만료 전 스마트 컨트랙트에 연결하여 송금자의 전자지갑 앱으로 즉시 송금 실행을 요청하는 단계; 및
송금자의 전자지갑 앱이 송금 동결시간 타이머 만료 전 스마트 컨트랙트에 연결하여 스마트 컨트랙트 주소에서 수령자의 전자지갑 주소로 동결된 송금액의 송금을 처리하고 스마트 컨트랙트를 종료하는 단계;
를 더 포함하는 암호화폐 송금방법.
The method of claim 1 wherein the method is
Recipient's electronic wallet app is connected to the smart contract before the expiration of the freeze time timer requesting the remittance execution of the electronic wallet app immediately; And
A step in which the remitter's electronic wallet app connects to the smart contract before the remittance freeze time timer expires to process the remittance of the frozen remittance from the smart contract address to the recipient's electronic wallet address and terminate the smart contract;
Cryptocurrency remittance method further comprising.
제 1 항에 있어서, 상기 방법은
송금자의 전자지갑 앱이 송금 동결시간 타이머 만료 전 스마트 컨트랙트에 연결하여 동결된 송금액을 스마트 컨트랙트 주소에서 송금자의 전자지갑 주소로 환불처리하고 스마트 컨트랙트를 파기하는 단계;
를 더 포함하는 암호화폐 송금방법.
The method of claim 1 wherein the method is
Remitting the electronic wallet app of the remitter to the smart contract before the remittance freeze time timer expires and refunds the frozen remittance amount from the smart contract address to the electronic wallet address of the remitter and destroys the smart contract;
Cryptocurrency remittance method further comprising.
블록체인 노드의 가상 머신에서 실행되는 스마트 컨트랙트가 구현된 컴퓨터 프로그램에 있어서,
수령자의 전자지갑 앱의 송금액 조회 요청에 따라 설정된 송금액의 조회를 처리하는 기능을 수행하는 송금액 조회 처리부;
수령자의 전자지갑 앱의 송금 동결시간 조회 요청에 따라 타이머 만료까지 남은 송금 동결시간의 조회를 처리하는 기능을 수행하는 송금 동결시간 조회 처리부;
수령자의 전자지갑 앱의 즉시 송금 요청에 따라 송금자의 전자지갑 앱으로 즉시 송금 요청을 전달하는 기능을 수행하는 즉시 송금 요청 처리부;
송금자의 즉시 송금 요청에 따라 송금 동결시간 타이머 만료 전 송금액의 송금을 처리하는 기능을 수행하는 즉시 송금 처리부;
송금 동결시간 타이머 만료시 지정된 수령자의 전자지갑 주소로 설정된 송금액의 송금을 처리하는 기능을 수행하는 송금 처리부; 및
송금 동결시간 타이머 만료전 송금자의 전자지갑 주소로 송금액을 되돌리고 계약을 파기하고 종료하는 기능을 수행하는 송금 취소 처리부;
를 포함하여 블록체인 플랫폼의 가상 머신과 결합되어 실행되는 매체에 저장된 스마트 컨트랙트가 구현된 컴퓨터 프로그램.
In a computer program implemented with a smart contract that runs on a virtual machine of a blockchain node,
A remittance amount retrieval processing unit performing a function of processing retrieval of a remittance amount set according to a remittance retrieval retrieval request of an electronic wallet app;
A remittance freezing time inquiry processing unit which performs a function of processing an inquiry of the remittance freezing time remaining until the timer expires according to the remittance freezing time inquiry request of the recipient's electronic wallet app;
An instant remittance request processing unit performing a function of immediately transferring a remittance request to a remitter's electronic wallet app according to an immediate remittance request of a recipient's electronic wallet app;
An instant remittance processing unit performing a function of processing a remittance of the remittance amount before the remittance freeze time timer expires according to the remitter's immediate remittance request;
A remittance processing unit configured to process a remittance of a remittance amount set to a designated recipient's electronic wallet address when the remittance freeze time timer expires; And
A remittance cancellation processing unit performing a function of returning the remittance amount to the remitter's electronic wallet address, destroying the contract, and terminating the remittance before the remittance freezing time timer expires;
A computer program implemented with a smart contract stored in a medium that is executed in combination with a virtual machine of the blockchain platform, including.
KR1020180063038A 2018-05-31 2018-05-31 Cancelable transfer method for cryptocurrency KR102600645B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180063038A KR102600645B1 (en) 2018-05-31 2018-05-31 Cancelable transfer method for cryptocurrency

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180063038A KR102600645B1 (en) 2018-05-31 2018-05-31 Cancelable transfer method for cryptocurrency

Publications (2)

Publication Number Publication Date
KR20190136844A true KR20190136844A (en) 2019-12-10
KR102600645B1 KR102600645B1 (en) 2023-11-09

Family

ID=69003071

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180063038A KR102600645B1 (en) 2018-05-31 2018-05-31 Cancelable transfer method for cryptocurrency

Country Status (1)

Country Link
KR (1) KR102600645B1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021162341A1 (en) * 2020-02-13 2021-08-19 주식회사 소버린월렛 Operation method of blockchain remittance service system, and electronic wallet for remittance
KR20220068812A (en) 2020-11-19 2022-05-26 김형근 Method for stepwise transfer of electronic money
WO2022145679A1 (en) * 2020-12-30 2022-07-07 고려대학교 산학협력단 Blockchain-based safe and reliable data transaction method, and data transaction platform providing system
WO2023229412A1 (en) * 2022-05-25 2023-11-30 박종배 System and method for trading unstable asset and intermediary asset through stable asset escrow
KR102627289B1 (en) * 2022-11-23 2024-01-23 주식회사 메타월드와이드 Payment apparatus for fixed price products using blockchain-based unstable coin

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6218979B2 (en) * 1981-07-15 1987-04-25 Matsushita Electric Ind Co Ltd
KR20160095720A (en) * 2015-02-03 2016-08-12 한양대학교 에리카산학협력단 Method and apparatus for protecting transasction of encrypted currency
KR20160132307A (en) * 2015-05-09 2016-11-17 김성일 Method and storage medium using cryptocurrency for money transfer
KR20170118563A (en) * 2016-04-17 2017-10-25 김성순 Bank transfer managing system and method thereof

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6218979B1 (en) * 2017-02-24 2017-10-25 株式会社三井住友銀行 Financial transaction method and system using blockchain

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6218979B2 (en) * 1981-07-15 1987-04-25 Matsushita Electric Ind Co Ltd
KR20160095720A (en) * 2015-02-03 2016-08-12 한양대학교 에리카산학협력단 Method and apparatus for protecting transasction of encrypted currency
KR20160132307A (en) * 2015-05-09 2016-11-17 김성일 Method and storage medium using cryptocurrency for money transfer
KR20170118563A (en) * 2016-04-17 2017-10-25 김성순 Bank transfer managing system and method thereof

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021162341A1 (en) * 2020-02-13 2021-08-19 주식회사 소버린월렛 Operation method of blockchain remittance service system, and electronic wallet for remittance
KR20210103227A (en) * 2020-02-13 2021-08-23 주식회사 소버린월렛 Operation method of blockchain currency remittance service system and electronic wallet for currency remittance
KR20220068812A (en) 2020-11-19 2022-05-26 김형근 Method for stepwise transfer of electronic money
WO2022145679A1 (en) * 2020-12-30 2022-07-07 고려대학교 산학협력단 Blockchain-based safe and reliable data transaction method, and data transaction platform providing system
WO2023229412A1 (en) * 2022-05-25 2023-11-30 박종배 System and method for trading unstable asset and intermediary asset through stable asset escrow
KR102627289B1 (en) * 2022-11-23 2024-01-23 주식회사 메타월드와이드 Payment apparatus for fixed price products using blockchain-based unstable coin

Also Published As

Publication number Publication date
KR102600645B1 (en) 2023-11-09

Similar Documents

Publication Publication Date Title
KR20190136844A (en) Cancelable transfer method for cryptocurrency
JP7385706B2 (en) Method of distributing digital assets registered on blockchain and autonomous computing agent
CN110163590B (en) Payment withholding method and device based on block chain, electronic equipment and storage medium
US10915874B2 (en) System and process for tokenization of digital media
WO2020220761A1 (en) Method and device for signing payment deduction agreement employing blockchain, and electronic apparatus.
US20170221053A1 (en) Digital asset conversion
JP6490071B2 (en) Launching a client application based on a message
US20200327498A1 (en) Business Process Execution on a Blockchain Platform
TW201935384A (en) Asset management method and device, and electronic equipment
TW201935383A (en) Asset management method and apparatus, and electronic device
US20200193428A1 (en) Blockchain-based payment withholding and agreement signing method, apparatus, and electronic device
CN110597916B (en) Data processing method and device based on block chain, storage medium and terminal
US11640604B2 (en) Automated blockchain address creation and transfers by uniform resource locator generation and execution
JP2018500681A (en) Transaction information processing method and apparatus
CN113421156A (en) Asset management method and device based on block chain and electronic equipment
CN111881166B (en) Method, device and system for processing operation data based on block chain
JP2023171211A (en) Program, information processing device and method
JP6885457B2 (en) Virtual currency payment agency, virtual currency payment agency method and program
KR102070252B1 (en) Blockchain based payment service server and operating method thereof
JP2012094061A (en) Remittance system effectively utilizing information processing terminal
JP2022536450A (en) Method, transaction management device and computer readable medium for facilitating concurrent trading
KR20200012688A (en) Apparatus for KYC using KYC blockchain
JP6691174B2 (en) Credit payment processing device, method and program
JP2012203874A (en) Electronic commercial transaction system
Moonde et al. Cryptocurrency Payments Implementation Based on Blockchain Technologies in Addressing Covid-19 in Higher Learning Institutions

Legal Events

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