KR102209852B1 - Transaction transfer realy method between compatible blockchain networks - Google Patents

Transaction transfer realy method between compatible blockchain networks Download PDF

Info

Publication number
KR102209852B1
KR102209852B1 KR1020200016816A KR20200016816A KR102209852B1 KR 102209852 B1 KR102209852 B1 KR 102209852B1 KR 1020200016816 A KR1020200016816 A KR 1020200016816A KR 20200016816 A KR20200016816 A KR 20200016816A KR 102209852 B1 KR102209852 B1 KR 102209852B1
Authority
KR
South Korea
Prior art keywords
blockchain
transaction
smart contract
meta
compatible
Prior art date
Application number
KR1020200016816A
Other languages
Korean (ko)
Inventor
현수영
임도형
이동현
Original Assignee
현수영
임도형
이동현
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 현수영, 임도형, 이동현 filed Critical 현수영
Priority to KR1020200016816A priority Critical patent/KR102209852B1/en
Application granted granted Critical
Publication of KR102209852B1 publication Critical patent/KR102209852B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures
    • 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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1087Peer-to-peer [P2P] networks using cross-functional networking aspects
    • H04L67/1091Interfacing with client-server systems or between P2P systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • H04L2209/38
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

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

Abstract

The present invention relates to a transaction transmission relay method between compatible blockchain networks to remove inconvenience of installing a dedicated wallet for each blockchain. According to the present invention, the transaction transmission relay method between compatible blockchain networks comprises the following steps: (a) using a blockchain wallet of a first blockchain, which is a specific blockchain platform, to receive a signed meta transaction, wherein the blockchain wallet is installed in a user′s communication terminal and the meta transaction is a transaction processed without a fee for a smart contract; and (b) when the smart contract requested through the meta transaction should be executed through a second blockchain, which is another blockchain platform compatible with the first blockchain, generating and transmitting a relay transaction for executing the smart contract to the second blockchain and paying a transaction fee on behalf of the user, so that the smart contract is executed.

Description

호환 가능한 블록체인 네트워크 간의 트랜잭션 전송 중계 방법{TRANSACTION TRANSFER REALY METHOD BETWEEN COMPATIBLE BLOCKCHAIN NETWORKS}Transaction transmission relay method between compatible blockchain networks {TRANSACTION TRANSFER REALY METHOD BETWEEN COMPATIBLE BLOCKCHAIN NETWORKS}

본 발명은 호환 가능한 블록체인 네트워크 간의 트랜잭션 전송 중계 방법에 관한 것으로, 보다 상세하게는 동일한 주소체계를 가진 블록체인 간의 메타 트랜잭션(meta-tx)을 응용한 트랜잭션 전송 중계 방법에 관한 것이다.The present invention relates to a transaction transmission relay method between compatible blockchain networks, and more particularly, to a transaction transmission relay method applying meta-transactions (meta-tx) between blockchains having the same address system.

다양한 방식의 블록체인 토큰들이 만들어져 많은 사용자들에게 널리 보급되어 있으나 실생활에서 사용하기에는 많은 문제점이 있다. 그 중 가장 큰 문제는 사용성과 속도이며, 이 문제를 해결하기 위해 많은 개발자들이 노력을 하고 있다.Various types of blockchain tokens have been created and are widely spread to many users, but there are many problems to use in real life. The biggest problem among them is usability and speed, and many developers are working hard to solve this problem.

상술한 문제를 해결하기 위해 많은 개발사들이 자사의 전용 블록체인들과 지갑과 같은 전용 소프트웨어들을 개발하고 있는데, 많은 블록체인들이 이더리움(ethereum)을 기초로 속도를 높이기 위해 거버넌스를 개량하되 개발사마다 자신에게 필요한 기능들을 추가하는 방식을 주로 채용하고 있다. 이렇게 만들어진 전용 블록체인들 마다의 차이는 크지 않다. 이것은 웹서핑을 할 때 사용자가 자신이 접속하는 인터넷 서비스가 구글 서버인지 아마존 서버인지 구분할 수 없는 것으로 비유해서 설명할 수 있다.To solve the above problem, many developers are developing their own dedicated blockchains and dedicated software such as wallets.Many blockchains have improved governance to increase speed based on ethereum, but each developer has their own It is mainly adopting a method of adding functions necessary for users. There is not much difference between the dedicated blockchains created in this way. This can be explained by analogy to the fact that when surfing the web, users cannot tell whether the Internet service they access is Google or Amazon.

즉, 사용자에겐 웹 브라우저만 있으면 http 프로토콜을 통해 호스팅되는 서버에 상관없이 접속할 수 있어야 하고, 서비스 제공자 또한 서버의 종류와 상관없이 웹을 호스팅할 수 있어야 하는 것과 마찬가지로, 블록체인 서비스 제공자도 자신의 용도에 맞춰 블록체인을 고르기만 하면 블록체인 전용의 소프트웨어가 아니라 범용의 소프트웨어를 통해 자신의 서비스를 제공할 수 있어야 할 필요가 있다.In other words, as long as a user has a web browser, they should be able to access regardless of the server hosted through the http protocol, and the service provider should be able to host the web regardless of the type of server. There is a need to be able to provide one's own services through general-purpose software, not exclusive software for the blockchain, simply by selecting a block chain according to it.

기본적으로 이더리움과 이더리움을 하드 포크(hard fork)한 블록체인들은 매우 높은 수준의 호환성을 가지고 있기 때문에, 이것을 이용해 이더리움 호환 체인들을 사용자의 용도에 맞춰 혼합 사용을 할 수 있는 기술적 환경(즉, 블록체인을 구분해서 사용할 필요 없는 사용성이 높은 서비스)에 대한 사용자들의 요구가 점점 더 높아지고 있는 실정이다.
한편, 관련 선행 기술로는 공개특허공보 제10-2019-0128814호(블록체인 기반 트랜잭션 처리 방법, 장치 및 그 시스템, 2019.11.19.)가 있다.
Basically, since the blockchains that hard fork Ethereum and Ethereum have a very high level of compatibility, this is a technical environment in which Ethereum compatible chains can be mixed and used according to the user's purpose (i.e. , The demands of users for highly usable services that do not require separate use of blockchains) are increasing.
On the other hand, related prior art is Unexamined Patent Publication No. 10-2019-0128814 (blockchain-based transaction processing method, device and system, November 19, 2019).

본 발명은 상술한 바와 같은 문제점을 해결하기 위한 것으로서, 개발자들 입장에서는 이더리움 호환 체인들 마다 제 각각의 전용 지갑을 개발할 필요가 없으며, 사용자 입장에서 또한 제 각각의 블록체인 전용 지갑을 설치하는 번거로움을 해소할 수 있는 방법을 제공하고자 한다.The present invention is to solve the above-described problem, and developers do not need to develop their own dedicated wallet for each Ethereum compatible chain, and from the user's point of view, the hassle of installing each dedicated wallet for each blockchain. We want to provide a way to solve the feelings.

또한, 본 발명은 이더리움과 이더리움 호환 체인이 갖는 각각의 장점을 혼합함으로써, 분산형 ID(DID : Decentralized Identifier) 서비스처럼 중요하며 공공성이 필요한 서비스들은 퍼블릭 체인인 이더리움을 사용할 수 있도록 하고, 빠른 TPS(transaction per second)의 장점과 함께 사용자들에게 가스비 없는 서비스를 제공하고 싶은 개발자들은 전환 비용 없이 즉각 이더리움 호환 체인들로 서비스를 이전해 사용성을 높인 서비스를 구현할 수 있도록 하는 방법을 제공하고자 한다.In addition, the present invention mixes the advantages of each of the Ethereum and Ethereum-compatible chains, so that services that are important and require publicity, such as a decentralized ID (DID) service, can use Ethereum, a public chain, Developers who want to provide gas-free service to users with the advantage of fast TPS (transaction per second), want to provide a way to implement services with improved usability by immediately transferring services to Ethereum-compatible chains without conversion costs. do.

상술한 바와 같이 본 발명은 사용자가 블록체인 플랫폼 상에서 동작하는 각종 서비스앱(DApp : 분산형 App)의 사용시 사용상 편의성을 제공함과 아울러, 이더리움 기반의 블록체인들 간의 상호 운용성을 높일 수 있고, 본 발명에서 제안하는 방식의 메타 트랜잭션(meta-tx)를 이용함으로써 가스비가 전혀 필요 없는 서비스를 구현할 수 있는, 호환 가능한 블록체인 네트워크 간의 트랜잭션 전송 중계 방법을 제공하기 위한 것이다.As described above, the present invention provides convenience in use when a user uses various service apps (DApps: decentralized apps) operating on a blockchain platform, and can increase interoperability between Ethereum-based blockchains. The purpose of the present invention is to provide a transaction transmission relay method between blockchain networks that can implement a service that does not require gas fees by using a meta-transaction (meta-tx) of the method proposed in the invention.

본 발명의 일 측면에 따르면, 사용자와 서비스 제공자 간의 스마트 컨트랙트(smart contract) 처리를 위해 구현되며, 릴레이어(relayer)에 의해 실행되는, 호환 가능한 블록체인 네트워크 간의 트랜잭션 전송 중계 방법으로서,According to an aspect of the present invention, a method for relaying transaction transmission between compatible blockchain networks, implemented for processing a smart contract between a user and a service provider, and executed by a relay,

(a) 특정 블록체인 플랫폼인 제1 블록체인의 블록체인 지갑을 이용하여 서명된 메타 트랜잭션이 수신되는 단계-여기서, 상기 블록체인 지갑은 사용자의 통신 단말에 설치되고, 상기 메타 트랜잭션은 상기 스마트 컨트랙트를 위해 수수료 없이 처리되는 트랜잭션임-;(a) receiving a signed meta transaction using a blockchain wallet of the first blockchain platform, which is a specific blockchain platform, where the blockchain wallet is installed in the user's communication terminal, and the meta transaction is the smart contract It is a transaction that is processed without commission for the purpose of

(b) 상기 메타 트랜잭션을 통해서 요청된 상기 스마트 컨트랙트가 상기 제1 블록체인과 호환 가능한 다른 블록체인 플랫폼인 제2 블록체인을 통해서 실행되어야 하는 경우, 상기 스마트 컨트랙트의 실행을 위한 중계용 트랜잭션을 생성하여 상기 제2 블록체인으로 전송하며, 트랜잭션 수수료를 상기 사용자 대신에 대납하여 상기 스마트 컨트랙트가 실행되도록 하는 단계;를 포함하는 호환 가능한 블록체인 네트워크 간의 트랜잭션 전송 중계 방법이 제공된다.(b) When the smart contract requested through the meta transaction is to be executed through the second blockchain, another blockchain platform compatible with the first blockchain, a relay transaction for execution of the smart contract is created. A method of relaying a transaction transmission between a compatible blockchain network is provided, including the step of transmitting to the second blockchain and allowing the smart contract to be executed by paying a transaction fee on behalf of the user.

일 실시예에서, 상기 제1 블록체인 및 상기 제2 블록체인 중 어느 하나는, 상기 스마트 컨트랙트의 서비스 속성 또는 데이터 속성에 따라, 빠른 처리 속도보다는 데이터 보안이 중요하거나 또는 쓰기 작업보다는 읽기 작업이 많은 경우에 매칭되도록 설정되고,In one embodiment, in any one of the first blockchain and the second blockchain, according to the service attribute or data attribute of the smart contract, data security is more important than a fast processing speed or a read operation is more than a write operation. Is set to match in case,

상기 제1 블록체인 및 상기 제2 블록체인 중 다른 하나는, 상기 스마트 컨트랙트의 서비스 속성 또는 데이터 속성에 따라, 빠른 처리 속도가 요구되거나 또는 읽기 작업보다 쓰기 작업이 많은 경우에 매칭되도록 설정될 수 있다.The other of the first block chain and the second block chain may be set to match when a fast processing speed is required or a write operation is more than a read operation according to the service attribute or data attribute of the smart contract. .

본 발명의 다른 측면에 따르면, 사용자와 서비스 제공자 간에 DApp을 통한 스마트 컨트랙트(smart contract) 처리를 위해 구현되는, 호환 가능한 블록체인 네트워크 간의 트랜잭션 전송 중계 방법으로서-여기서, 상기 DApp(Decentralized App)은 블록체인 기반으로 구동되는 서비스 앱을 나타냄-,According to another aspect of the present invention, as a transaction transmission relay method between compatible blockchain networks, implemented for smart contract processing through DApp between a user and a service provider-Here, the DApp (Decentralized App) is a block Represents a service app running on a chain basis -,

(a) 사용자의 통신 단말에 설치된 에이전트 프로그램이, 특정 블록체인 플랫폼인 제1 블록체인을 기반으로 DID(Decentralized Identifier)를 생성하고, 상기 생성된 DID를 이용하여 상기 DApp에 서비스 로그인 처리를 수행하는 단계;(a) The agent program installed in the user's communication terminal generates a Decentralized Identifier (DID) based on the first blockchain, which is a specific blockchain platform, and performs service login processing to the DApp using the generated DID. step;

(b) 상기 에이전트 프로그램이, 상기 제1 블록체인의 블록체인 지갑을 이용하여 서명한 메타 트랜잭션을 생성하여 릴레이어(relayer)에게 전송하는 단계-여기서, 상기 블록체인 지갑은 사용자의 통신 단말에 설치되고, 상기 메타 트랜잭션은 상기 스마트 컨트랙트를 위해 수수료 없이 처리되는 트랜잭션이고, 상기 릴레이어는 상기 서비스 제공자 또는 제3자의 통신 단말 또는 서버임-;(b) The agent program generates a meta-transaction signed using the blockchain wallet of the first blockchain and transmits it to a relayer-Here, the blockchain wallet is installed in the user's communication terminal Wherein the meta transaction is a transaction processed without a fee for the smart contract, and the relay is a communication terminal or server of the service provider or a third party;

(c) 상기 메타 트랜잭션을 통해서 요청된 상기 스마트 컨트랙트가 상기 제1 블록체인과 호환 가능한 다른 블록체인 플랫폼인 제2 블록체인을 통해서 실행되어야 하는 경우, 상기 릴레이어가, 상기 스마트 컨트랙트의 실행을 위한 중계용 트랜잭션을 생성하여 상기 제2 블록체인으로 전송하며, 트랜잭션 수수료를 상기 사용자 대신에 대납하여 상기 스마트 컨트랙트가 실행되도록 하는 단계;를 포함하는 호환 가능한 블록체인 네트워크 간의 트랜잭션 전송 중계 방법이 제공된다.(c) When the smart contract requested through the meta transaction is to be executed through the second blockchain, another blockchain platform compatible with the first blockchain, the relay is relayed for execution of the smart contract. A transaction transmission relay method between compatible blockchain networks is provided, comprising: generating and transmitting a transaction to the second blockchain, and paying a transaction fee on behalf of the user to execute the smart contract.

일 실시예에서, 상기 제1 블록체인은 이더리움 메인넷으로 구성되고,In one embodiment, the first blockchain is composed of the Ethereum mainnet,

상기 제2 블록체인은 상기 이더리움 메인넷과 동일한 스마트 컨트랙트를 사용하는 호환 체인으로서, 상기 스마트 컨트랙트의 함수를 상기 제1 블록체인 보다 빠른 트랜잭션 처리 속도로 실행하는 블록체인으로 선택될 수 있다.The second blockchain is a compatible chain that uses the same smart contract as the Ethereum mainnet, and may be selected as a blockchain that executes functions of the smart contract at a faster transaction processing speed than the first blockchain.

본 발명의 실시예에 의하면, 개발자들 입장에서는 이더리움 호환 체인들 마다 제 각각의 전용 지갑을 개발할 필요가 없으며, 사용자 입장에서 또한 제 각각의 블록체인 전용 지갑을 설치하는 번거로움을 해소할 수 있다.According to an embodiment of the present invention, developers do not need to develop their own dedicated wallet for each Ethereum compatible chain, and from the user's point of view, the hassle of installing a wallet dedicated to each blockchain can be eliminated. .

본 발명의 실시예에 의하면, 이더리움과 이더리움 호환 체인이 갖는 각각의 장점을 혼합함으로써, 분산 ID(DID : Decentralized Identifier) 서비스처럼 중요하며 공공성이 필요한 서비스들은 퍼블릭 체인인 이더리움을 사용할 수 있도록 하고, 빠른 TPS(transaction per second)의 장점과 함께 사용자들에게 가스비 없는 서비스를 제공하고 싶은 개발자들은 전환 비용 없이 즉각 이더리움 호환 체인들로 서비스를 이전해 사용성을 높인 서비스를 구현할 수 있다.According to an embodiment of the present invention, by mixing the advantages of each of the Ethereum and Ethereum-compatible chains, services that are important and require publicity, such as a distributed ID (DID) service, can use Ethereum, a public chain. And, developers who want to provide a gas-free service to users with the advantage of fast TPS (transaction per second) can implement a service with increased usability by immediately transferring the service to Ethereum-compatible chains without the cost of conversion.

본 발명의 실시예에 의하면, 사용자가 블록체인 플랫폼 상에서 동작하는 각종 서비스앱(DApp : 분산형 App)의 사용시 사용상 편의성을 제공함과 아울러, 이더리움 기반의 블록체인들 간의 상호 운용성을 높일 수 있고, 본 발명에서 제안하는 방식의 메타 트랜잭션(meta-tx)를 이용함으로써 가스비가 전혀 필요 없는 서비스를 구현할 수 있다.According to an embodiment of the present invention, it is possible to provide convenience in use when a user uses various service apps (DApps: decentralized apps) running on a blockchain platform, and to increase interoperability between Ethereum-based blockchains, By using the meta-transaction (meta-tx) of the scheme proposed in the present invention, a service that does not require gas cost can be implemented.

도 1 및 도 2는 본 발명의 실시예에 따른 호환 가능한 블록체인 네트워크 간의 트랜잭션 전송 중계 방법을 설명하기 위한 도면.
도 3 내지 도 5는 본 발명의 실시예에 따른 호환 가능한 블록체인 네트워크 간의 트랜잭션 전송 중계 방법에 활용되는 JSON(JavaScript Object Notion) 포맷으로 작성된 메타 트랜잭션의 예들.
1 and 2 are diagrams for explaining a method of relaying transaction transmission between compatible blockchain networks according to an embodiment of the present invention.
3 to 5 are examples of meta transactions written in JSON (JavaScript Object Notion) format used in a transaction transmission relay method between compatible blockchain networks according to an embodiment of the present invention.

본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Since the present invention can apply various transformations and have various embodiments, specific embodiments are illustrated in the drawings and will be described in detail in the detailed description. However, this is not intended to limit the present invention to a specific embodiment, it should be understood to include all conversions, equivalents, and substitutes included in the spirit and scope of the present invention.

본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.In describing the present invention, when it is determined that a detailed description of a related known technology may unnecessarily obscure the subject matter of the present invention, a detailed description thereof will be omitted. In addition, numbers (eg, first, second, etc.) used in the description of the present specification are merely identification symbols for distinguishing one component from another component.

또한, 명세서 전체에서, 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다. 또한, 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하나 이상의 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 조합으로 구현될 수 있음을 의미한다.In addition, throughout the specification, when one component is referred to as "connected" or "connected" to another component, the one component may be directly connected or directly connected to the other component, but specially It should be understood that as long as there is no opposing substrate, it may be connected or may be connected via another component in the middle. In addition, throughout the specification, when a certain part "includes" a certain component, it means that other components may be further included rather than excluding other components unless otherwise stated. In addition, terms such as "unit" and "module" described in the specification mean a unit that processes at least one function or operation, which means that it can be implemented as one or more hardware or software, or a combination of hardware and software. .

이하, 본 발명에 관한 이해를 돕기 위해 본 발명의 기술적 컨셉을 먼저 설명하기로 한다. 후술할 모든 설명에서는 블록체인 플랫폼 중에서도 이더리움(ethereum)과 이로부터 포크하여 개발된 이더리움 호환의 블록체인을 예로 들어 본 발명을 설명할 것이지만, 본 발명은 이더리움과 그 호환 체인들 간에만 한정적으로 적용되는 것은 아니며 본 발명의 기술적 컨셉이 허용되는 한 다른 다양한 플랫폼 환경을 갖는 블록체인들에도 동일 유사하게 적용될 수 있음은 물론이다.Hereinafter, the technical concept of the present invention will be first described in order to help understand the present invention. In all the descriptions to be described later, the present invention will be described by taking Ethereum and an Ethereum compatible blockchain developed by forking from it among the blockchain platforms, but the present invention is limited only between Ethereum and its compatible chains. As long as the technical concept of the present invention is permitted, it can be applied similarly to blockchains having various platform environments.

동일한 개인키를 가지는 경우 동일한 주소가 생성되게 되므로(이더리움 메인넷과 테스트넷처럼), 이더리움(ethereum)을 포크하여 개발한 이더리움 호환 체인들도 동일한 개인키로부터 동일한 주소가 생성된다. 따라서 동일한 개인키를 가진 이더리움 호환 체인의 각 지갑들에서 사인된 트랜잭션을 검증해 트랜잭션 전송자(sender)의 주소를 확인하는 과정 또한 동일하다.If the same private key is used, the same address is generated (like Ethereum mainnet and testnet), so Ethereum-compatible chains developed by forking Ethereum also generate the same address from the same private key. Therefore, the process of verifying the address of the transaction sender by verifying the signed transaction in each wallet of the Ethereum compatible chain with the same private key is also the same.

또한 이더리움 호환 체인들은 이더리움과 동일한 스마트 컨트랙트를 사용할 수 있으며, 몇 가지 제약 조건을 제외하면 같은 방식이지만 훨씬 더 빠른 TPS로 작동한다. Also, Ethereum-compatible chains can use the same smart contracts as Ethereum, and operate in the same way but with a much faster TPS, except for a few constraints.

따라서, 표준 이더리움 지갑에서 서명된 meta-tx를 이용해 가스비를 릴레이어(relayer)에게 위임하여 스마트 컨트랙트를 실행하는 과정은 이더리움 메인넷과 이더리움 호환 체인에서 동일하다. Therefore, the process of executing a smart contract by delegating the gas fee to the relayer using meta-tx signed in the standard Ethereum wallet is the same for the Ethereum mainnet and Ethereum compatible chain.

이에 관하여 예시적 시나리오를 들어 설명하면 다음과 같다.In this regard, an exemplary scenario is described as follows.

사용자(A)가 서비스 제공자(B)의 가게에서 암호화폐 토큰으로 상품을 사는 케이스를 가정하고, 사용자(A)는 표준 이더리움 지갑을 갖고 있고 토큰은 소유하고 있으나 토큰을 전송하기 위한 수수료인 가스(즉, 이더(ether)는 갖고 있지 않다고 가정한다.Assuming a case where a user (A) buys a product with a cryptocurrency token at a store of a service provider (B), and a user (A) has a standard Ethereum wallet and owns the token, gas is a fee to transfer the token. (In other words, it is assumed that it does not have ether.

사용자(A)는 자신이 소유한 토큰을 서비스 제공자(B)에게 전송하는 트랜잭션을 생성해 표준 이더리움 지갑 내에서 자신의 개인키로 서명 후, 서명된 트랜잭션(Meta-tx)을 릴레이어(relayer, 서비스 제공자(B) 혹은 제 3자일 수 있음, 다만 본 예시의 시나리오에서는 서비스 제공자(B)인 것으로 가정함)에게 전송한다. 릴레이어는 전송받은 Meta-tx를 이더리움 네트워크로 대신 전송하며 수수료(가스)를 대납한다. 여기까지는 Meta-tx에 관한 내용이며, 이는 이미 공개되어 있는 프로세스이다.User (A) creates a transaction that transmits his own token to the service provider (B), signs it with his own private key in the standard Ethereum wallet, and then relayers the signed transaction (Meta-tx). It may be a service provider (B) or a third party, but in this example scenario, it is assumed that it is a service provider (B)). Relayer transfers the received Meta-tx to the Ethereum network instead and pays the fee (gas). Up to this point, it is about Meta-tx, which is a process that has already been disclosed.

위의 상황을 보면, 사용자(A)는 자신의 이더리움 기반 토큰을 서비스 제공자(B)에게 전송은 할 수 있다. 다만, 이더리움의 블록생성 속도가 빠르지 않기 때문에 토큰 전송이 완료되기까지 30초 ~ 1분 정도의 시간이 걸리고, 거래가 많아지면 많아질수록 처리 속도는 더 느려진다. 즉, 사용자들 입장에서는 대중적이고, 탈중앙화되어 있으면서, 안정적이고, 보안에서 유리한 이더리움을 쓰기 위해서 이와 같은 느린 속도를 감안하여야만 하는 상황이다.In the above situation, user (A) can transmit his Ethereum-based token to service provider (B). However, since the block generation speed of Ethereum is not fast, it takes about 30 seconds to 1 minute for the token transfer to be completed, and the processing speed becomes slower as the number of transactions increases. In other words, users have to consider this slow speed in order to use Ethereum, which is popular, decentralized, stable, and advantageous in terms of security.

반면, 오픈소스인 이더리움의 코드를 포크하여 개발한 이더리움 호환 체인들 중에서는 탈중앙화를 희생한 대신에 합의하는 노드 수를 줄여 빠른 트랜잭션 처리 속도를 장점으로 블록체인들이 많이 있다. 예를 들어, 대표적으로 그라운드X의 클레이튼(klaytn) 블록체인과 같은 이더리움 호환 체인을 이용하게 되면, 이더리움 토큰과 비교하여 매우 빠른 속도로 토큰 전송이 가능하게 된다.On the other hand, among Ethereum-compatible chains developed by forking the code of open source Ethereum, there are many blockchains that have the advantage of fast transaction processing speed by reducing the number of consensus nodes instead of sacrificing decentralization. For example, if you use an Ethereum-compatible chain such as Ground X's Klaytn blockchain, it is possible to transfer tokens at a very high speed compared to Ethereum tokens.

위와 같은 이유로, 만일 서비스 제공자(B)가 거래 처리 속도가 느린 것에 대한 불만이 생겨, 결제 토큰을 클레이튼 블록체인 기반의 토큰으로 변경하게 된다면, 해당 서비스 제공자(B)로부터 상품 구매를 하고자 하는 사용자(A) 또한 클레이튼 지갑을 다시 설치해야 하는 불편함이 생긴다.For the above reasons, if a service provider (B) complains about the slow transaction processing speed and changes the payment token to a token based on the Clayton blockchain, a user who wants to purchase a product from the service provider (B) ( A) There is also the inconvenience of having to reinstall the Clayton wallet.

상술한 문제점을 해결하기 위한 방법으로서, 위의 Meta-tx와 연결지어 본다면, 만일 사용자(A)는 현재 사용하는 표준 이더리움 지갑을 그대로 사용해 Meta-tx에 서명 하여 서비스 제공자(B)에게 전달하되, 릴레이어인 서비스 제공자(B)가 사용자(A)로부터 전달 받은 Meta-tx를 이더리움 네트워크가 아닌 클레이튼 네트워크로 전송하는 방식이 구현될 수 있다면, 사용자(A)는 하나의 인터페이스(본 예에서는, 표준 이더리움 지갑)에서 모든 서비스를 이용하는 것이 가능하며, 수수료 없이도 블록체인을 이용할 수 있고, 서비스 제공자(B) 입장에서도 빠른 결제를 통해 사용자들의 서비스 만족도를 높일 수 있을 것이다. 즉, 이더리움 표준 지갑을 이용하면 최소의 개발 비용으로, 서비스 제공자에게 가스를 위임하여 운영되는 높은 사용성을 가진 서비스를 구현 할 수 있게 된다.As a method to solve the above problem, if you connect with the above Meta-tx, if the user (A) signs the Meta-tx using the standard Ethereum wallet that is currently in use, it is delivered to the service provider (B). , If a method of transmitting the Meta-tx received from the user (A) to the Clayton network instead of the Ethereum network can be implemented by the relay service provider (B), the user (A) has one interface (in this example, Standard Ethereum wallet), all services can be used, blockchain can be used without fees, and service provider (B) can also increase user satisfaction through fast payment. In other words, by using the standard Ethereum wallet, it is possible to implement a service with high usability that is operated by delegating gas to the service provider at the minimum development cost.

또한 이러한 점에 착안할 때, 퍼블릭 체인인 이더리움 메인넷은 분산형 ID(DID) 검증 등의 대중적인 용도로 활용하며, 높은 TPS와 저렴한 가스비 등의 장점이 있는 이더리움 호환 체인들은 빠르게 스마트 컨트랙트 함수를 실행하기 위한 사이드 체인 용도로 활용하는 방식도 고려할 수 있다. 즉, 데이터를 쓰는 비용이 비싸고 처리 속도가 느린 대신 보안과 탈중앙성이 뛰어난 이더리움과 같은 블록체인에는 DID(분산형 ID)처럼 중요하면서도 쓰기 작업보다 읽는 작업이 많은 데이터 활용에 사용하고, 단순히 빠른 처리가 필요하고 쓰기 작업이 많은 경우에는 클레이튼과 같이 빠른 전송 속도에 특화된 블록체인 사용함으로써, 하나의 인터페이스에서 각 체인의 장점을 선택적으로 사용할 수 있으며, 개발자들은 각각의 체인별로 지갑과 같은 인터페이스를 중복 개발하는 비용을 줄일 수도 있을 것이다. In addition, considering this point, the Ethereum mainnet, a public chain, is used for popular purposes such as decentralized ID (DID) verification, and Ethereum-compatible chains with advantages such as high TPS and low gas cost quickly become smart contracts. You can also consider using it as a side chain for executing functions. In other words, the cost of writing data is expensive and the processing speed is slow, but in a blockchain such as Ethereum, which has excellent security and decentralization, it is important like DID (Distributed ID), but it is used for data utilization that requires more reading than writing. When fast processing is required and there are many writes, a blockchain specialized for high transmission speeds such as Clayton can be used to selectively use the advantages of each chain in one interface, and developers can use an interface such as a wallet for each chain. It may also reduce the cost of redundant development.

이하, 상술한 기술적 컨셉을 구현한 본 발명의 실시예에 대하여 첨부된 도면들을 참조하여 상세히 설명하기로 한다.Hereinafter, embodiments of the present invention implementing the above-described technical concept will be described in detail with reference to the accompanying drawings.

도 1 및 도 2에는 사용자와 서비스 제공자 간의 스마트 컨트랙트(smart contract) 처리를 위해 구현되는 블록체인 네트워크 간의 트랜잭션 전송 중계 방법이 도시되고 있다. 여기서, 호환 가능한 블록체인 네트워크 간의 트랜잭션 전송 중계는 릴레이어(relayer)에 의해 실행된다. 이때, 릴레이어는 서비스 제공자가 그 역할을 담당할 수도 있고 중계자로서 독립적으로 존재하는 제3자일 수도 있다.1 and 2 illustrate a method of relaying transaction transmission between blockchain networks implemented for processing a smart contract between a user and a service provider. Here, the transaction transmission relay between compatible blockchain networks is executed by a relay. In this case, the relay may be a service provider or a third party that independently exists as a relay.

도 1 및 도 2를 참조할 때, 릴레이어는, 특정 블록체인 플랫폼인 제1 블록체인의 블록체인 지갑을 이용하여 서명된 메타 트랜잭션이 수신되면, 그 수신된 메타 트랜잭션을 통해서 요청된 스마트 컨트랙트가 실행되어야 할 블록체인정보를 확인하여, 만일 그 스마트 컨트랙트가 상기 제1 블록체인과는 호환 가능한 제2 블록체인을 통해서 실행되어야 하는 경우, 상기 스마트 컨트랙트의 실행을 위한 중계용 트랜잭션을 생성하여 상기 제2 블록체인으로 전송하며, 트랜잭션 수수료를 상기 사용자 대신에 대납하여 상기 스마트 컨트랙트가 실행되도록 하는 역할을 수행한다.1 and 2, when a meta transaction signed using the blockchain wallet of the first blockchain, which is a specific blockchain platform, is received, the requested smart contract is executed through the received meta transaction. Check the blockchain information to be performed, and if the smart contract is to be executed through a second blockchain compatible with the first blockchain, a relay transaction for execution of the smart contract is generated and the second It transfers to the blockchain, and performs the role of executing the smart contract by paying the transaction fee on behalf of the user.

여기서, 상기 블록체인 지갑은 사용자의 통신 단말에 설치되는 것이고, 상기 메타 트랜잭션(Meta-tx)이란 상기 스마트 컨트랙트를 위해 수수료 없이 처리되는 트랜잭션을 의미한다. 본 예에서는 설명의 편의 및 집중을 위해, 사용자의 통신 단말에 표준 이더리움 지갑만이 설치되어 있는 것으로 가정한다. 이때, 메타 트랜잭션은 도 3 ~ 도 5에 예시된 JSON 포맷의 데이터들을 읽어 들인 후(이는 예를 들어 QR 코드 등에 저장됨으로써 스캔을 통해서 읽어 들일 수 있음), 이더리움 지갑을 통해서 해당 사용자의 개인키로 서명하고, 각종 파라미터들과 함께 릴레이어의 서버로 전송되게 된다.Here, the blockchain wallet is installed in the user's communication terminal, and the meta-transaction (Meta-tx) refers to a transaction processed without a fee for the smart contract. In this example, for convenience and concentration of explanation, it is assumed that only a standard Ethereum wallet is installed in the user's communication terminal. At this time, the meta transaction reads data in the JSON format illustrated in FIGS. 3 to 5 (this can be read through scanning by being stored in a QR code, for example), and then using the user's private key through the Ethereum wallet. It is signed and sent to the relay server along with various parameters.

이에 따라, 릴레이어는, 수신된 메타 트랜잭션의 서명에 이용된 사용자의 개인키에 대응하는 공개키를 이용하여 서명의 진위를 검증하고, 서명의 진위 검증이 정상적으로 완료된 경우, 상기 서명, 상기 메타 트랜잭션에 포함된 파라미터, 상기 릴레이어의 개인키를 이용하여 상기 중계용 트랜잭션을 생성한다.Accordingly, the relayer verifies the authenticity of the signature using the public key corresponding to the user's private key used for signing the received meta transaction, and when the authenticity verification of the signature is normally completed, the signature and the meta transaction The relay transaction is generated using the included parameter and the relay's private key.

또한 여기서, 상기 메타 트랜잭션에 포함된 파라미터는, 도 3 ~ 도 5에 예시된 JSON 포맷에서 확인되는 바와 같이, 상기 스마트 컨트랙트를 실행할 블록체인정보(즉, 메타 트랜잭션을 전송할 블록체인 종류와 ID), 트랜잭션을 전송하기 위한 스마트 컨트랙트의 주소(address)정보, 상기 스마트 컨트랙트를 통해 호출하고자 하는 함수정보(즉, 해당 함수의 인터페이스 및 호출될 함수에서 사용될 인자)를 포함한다.In addition, here, the parameters included in the meta transaction, as confirmed in the JSON format illustrated in FIGS. 3 to 5, block chain information to execute the smart contract (i.e., the type and ID of the block chain to which the meta transaction will be transmitted), It includes address information of a smart contract for transmitting a transaction, and function information to be called through the smart contract (ie, an interface of the function and an argument to be used in the function to be called).

일 실시예에서, 상기 스마트 컨트랙트를 실행할 상기 블록체인정보는, 상기 서비스 제공자 또는 상기 릴레이어에 의해 사전에 지정되거나, 상기 실행할 스마트 컨트랙트에 따른 서비스 속성 또는 데이터 속성 별로 사전에 구분 지정될 수 있다.In one embodiment, the block chain information to execute the smart contract may be designated in advance by the service provider or the relay, or separately designated by service attribute or data attribute according to the smart contract to be executed.

예를 들어, 상기 스마트 컨트랙트의 서비스 속성 또는 데이터 속성에 따라, 빠른 처리 속도보다는 데이터 보안이 중요하거나 또는 쓰기 작업보다는 읽기 작업이 많은 경우에는 이더리움 메인넷과 매칭되도록 설정하고, 빠른 처리 속도가 요구되거나 또는 읽기 작업보다 쓰기 작업이 많은 경우에는 클레이튼 블록체인과 매칭되도록 설정할 수 있다.For example, according to the service attribute or data attribute of the smart contract, if data security is more important than fast processing speed or if there are more read operations than write operations, set to match the Ethereum mainnet, and fast processing speed is required. Or, if there are more writes than reads, it can be set to match the Clayton blockchain.

도 3 내지 도 5는 본 발명의 실시예에 따른 호환 가능한 블록체인 네트워크 간의 트랜잭션 전송 중계 방법에 활용되는 JSON(JavaScript Object Notion) 포맷으로 작성된 메타 트랜잭션의 예들이다. 이하, 도 3 내지 도 5를 참조하여 본 발명에 관한 구체적 예시를 설명하되, 본 발명에 관한 명확한 이해를 돕기 위해, 표준 이더리움 지갑으로 서명하여 클레이튼의 스마트 컨트랙트를 이용하는 케이스에서 DApp(Decentralized App) 서비스 기반의 시나리오를 기준으로 하여 본 발명의 일 실시예를 설명하기로 한다. 또한 DApp을 통해서 이용하고자 하는 서비스는 특정 IoT 기기 사용에 관한 예약 및 제어 서비스인 것으로 가정하여 설명한다.3 to 5 are examples of meta transactions written in JSON (JavaScript Object Notion) format used in a transaction transmission relay method between compatible blockchain networks according to an embodiment of the present invention. Hereinafter, a specific example of the present invention will be described with reference to FIGS. 3 to 5, but in order to help a clearer understanding of the present invention, in the case of using Clayton's smart contract by signing with a standard Ethereum wallet, DApp (Decentralized App) An embodiment of the present invention will be described based on a service-based scenario. In addition, it is assumed that the service to be used through the DApp is a reservation and control service for the use of a specific IoT device.

[DID 생성] 먼저, 사용자 단말(명확하게는 본 발명의 전송 중계를 위한 에이전트 프로그램임, 다만, 이하에서는 설명의 편의상 사용자 단말을 그 주체로 간략 표기함)이 제1 블록체인 기반으로 분산형 ID(Decentralized Identifier: 이하, DID)를 생성한다. 이때, 본 발명의 일 실시예에 따르면 상기 제1 블록체인으로서는 가장 대중적이고, 보안에서 유리한 이더리움(ethereum) 메인넷에 기반하여 상기 분산형 ID를 생성할 수 있다.[DID generation] First, the user terminal (which is clearly an agent program for transmission relay of the present invention, but hereinafter, for convenience of explanation, the user terminal is briefly indicated as its subject) is a distributed ID based on the first blockchain (Decentralized Identifier: hereinafter, DID) is generated. At this time, according to an embodiment of the present invention, the distributed ID can be generated based on the Ethereum mainnet, which is the most popular as the first blockchain and is advantageous in security.

[서비스 로그인] 이후, 상기 사용자 단말이 상기 DID를 제어할 수 있는 개인키를 통해 DApp 서비스에 로그인한다. 이를 위해 이더리움 지갑을 사용하며 이때 이더리움 지갑인 모바일 오페라(Opera) 브라우저를 사용할 수 있다.After [Service Login], the user terminal logs in to the DApp service through a private key capable of controlling the DID. For this, you use an Ethereum wallet, and you can use the mobile Opera browser, an Ethereum wallet.

[서명 및 전송] 이후, 상기 사용자 단말이 서비스 이용을 위한 데이터를 개인키로 서명하고 인자들과 함께 메타 트랜잭션을 릴레이어로 전송한다After [Signature and Transmission], the user terminal signs the data for service use with a private key and transmits the meta transaction along with the parameters to the relay.

이에 따라, 릴레이어는 수신된 메타 트랜잭션이 포함된 중계용 트랜잭션을 생성하여 제2 블록체인으로 전송하며, 이때 릴레이어는 상기 데이터를 수신하여 제2 블록체인으로 전송하고 수수료를 대납할 수 있다. 본 예시에 의할 때, 제2 블록체인은 빠른 트랜잭션 처리 속도를 갖는 클레이튼(klaytn) 블록체인일 수 있다.Accordingly, the relayer generates a relay transaction including the received meta-transaction and transmits it to the second blockchain, where the relayer can receive the data, transmit it to the second blockchain, and pay the fee. According to this example, the second blockchain may be a Klaytn blockchain having a high transaction processing speed.

도 3의 경우에는 DApp에 의한 서비스로서 IoT 기기 권한 부여를 수행하는 것과 관련 있는 스마트 컨트랙트 함수(Checkin 함수)를 호출하는데 있어서, 빠르게 기기 제어 권한을 얻기 위해 상기 이더리움이 아닌 그 호환 체인으로서 클레이튼(klaytn) 블록체인을 이용하는 경우를 예로 들고 있다. In the case of FIG. 3, in calling a smart contract function (Checkin function) related to granting IoT device authorization as a service by a DApp, Clayton (not the Ethereum) as a compatible chain to quickly obtain device control authorization ( klaytn) Using a blockchain is an example.

[기기 제어] 도 3을 기준으로 할 때, 릴레이어가 전송한 트랜잭션은 클레이튼에 배포된 스마트 컨트랙트의 Checkin 함수를 실행하게 되고, 이에 따라 사용자의 특정 IoT 기기의 제어 권한(본 예에서는 특정 전등 제어 권한)은 스마트 컨트랙트에 기록된다.[Device Control] Based on Fig. 3, the transaction transmitted by the relay executes the Checkin function of the smart contract distributed to Clayton, and accordingly, the user's control authority of a specific IoT device (in this example, a specific light control authority ) Is recorded in the smart contract.

그러나 시스템 설계 방식에 따라서 동일한 기기 제어 권한 부여 목적이라고 하더라도 신원 인증에 따른 기기 보안에 더욱 초점을 맞추는 케이스라면 도 4에서와 같이 이더리움 네트워크로 메타 트랜잭션을 전송할 수도 있음은 물론이다. 이를 보다 구체적으로 설명하면 다음과 같다.However, according to the system design method, even for the purpose of granting the same device control authority, meta transactions can be transmitted to the Ethereum network as shown in FIG. This is described in more detail as follows.

사용자는 하나의 인터페이스(이더리움 지갑)을 사용하여 서비스에 접속한 후, 권한 인증을 위해 도 4에 도시된 바와 같이 릴레이어에서 제공하는 jsonInterface에 서명할 수 있다. 이때, 서명된 meta-tx와 체인 정보를 수수료 없이 릴레이어의 백엔드로 전송한다.After accessing the service using one interface (Ethereum wallet), the user can sign jsonInterface provided by the relay as shown in FIG. 4 for authorization authentication. At this time, the signed meta-tx and chain information are transmitted to the relay's backend without a fee.

그에 따라, 상기 릴레이어가 상기 데이터를 읽고 인자를 넣어 상기 제1 블록체인의 컨트랙트 어드레스(address)의 체크인(checkin) 함수가 실행될 수 있다. 즉, 릴레이어(백엔드)에서는 데이터를 읽고, meta-tx를 인자로 넣어 이더리움 블록체인의 컨트랙트 어드레스(anchor dapp)의 체크인(checkin)가 함수가 실행될 수 있다.Accordingly, the relay may read the data, insert an argument, and execute a checkin function of the contract address of the first blockchain. That is, in the relay (backend), the function can be executed to read data and check-in the contract address (anchor dapp) of the Ethereum blockchain by passing meta-tx as an argument.

이때, 블록체인에 기록될 인증 정보는 중요한 정보로, 체인이 안전하게 유지되어야 할 필요가 있기 때문에 이더리움(ethereum) 기반 분산 어플리케이션(anchor dapp) 을 사용할 수 있다.At this time, the authentication information to be recorded on the blockchain is important information, and since the chain needs to be kept secure, an ethereum-based distributed application (anchor dapp) can be used.

또한, 사용자의 기기 제어 내역이 일반 데이터베이스에 저장이 되지만, 사용 내역을 블록체인에 기록할 필요가 있을 때, 자주 발생하게 될 트랜잭션이며, 빠른 속도가 중요하기 때문에 제2 블록체인인 클레이튼(klaytn) 블록체인을 이용하여 저장하는 것이 유리하다.In addition, the user's device control history is stored in a general database, but it is a transaction that will occur frequently when there is a need to record the usage history in the blockchain, and because high speed is important, the second blockchain, klaytn. It is advantageous to store using a blockchain.

이를 위하여 사용자 단말은 도 5에 도시된 바와 같이 릴레이어가 제공하는 jsonInterface에 서명을 하여, 릴레이 서버(서비스)의 백엔드로 전송하기만 하면 된다.To this end, the user terminal only needs to sign the jsonInterface provided by the relay as shown in FIG. 5 and transmit it to the backend of the relay server (service).

또한, 릴레이어가 상기 데이터를 읽고 인자를 넣어 상기 제2 블록체인의 컨트랙트 어드레스(address)의 레코드(record) 함수가 실행된다.In addition, the relay reads the data, inserts an argument, and executes a record function of the contract address of the second blockchain.

즉, 릴레이어(백엔드)에서는 데이터를 읽고, meta-tx를 인자로 넣어 제2 블록체인인 클레이튼(klaytn) 블록체인의 컨트랙트 어드레스(service dapp)의 레코드(record) 함수가 실행될 수 있다.That is, in the relay (backend), data can be read and a record function of the contract address (service dapp) of the second blockchain, Klaytn blockchain, can be executed by entering meta-tx as an argument.

블록체인에 기록될 사용 내역 정보는 매 트랜잭션 마다 빠르게 처리되어 기록되어야 하므로 제2 블록체인인 클레이튼(klaytn) 블록체인(service dapp) 사용할 수 있다.Since the usage history information to be recorded in the blockchain must be rapidly processed and recorded for each transaction, the second blockchain, the Klaytn blockchain (service dapp), can be used.

사용자는 이 모든 작업을 하나의 인터페이스(이더리움 지갑)에서 가스비(수수료) 없이 진행 할 수 있으며, 릴레이어(릴레이 서버)에서는 서로 다른 블록체인에 배포된 스마트 컨트랙트로 가스비를 대납하며 meta-tx를 전송할 수 있다.Users can perform all these tasks in one interface (Ethereum wallet) without gas fees (fees), and in relays (relay servers), they pay gas fees with smart contracts deployed on different blockchains, and meta-tx Can be transmitted.

이상에서는 본 발명의 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 쉽게 이해할 수 있을 것이다.The above has been described with reference to the embodiments of the present invention, but those of ordinary skill in the relevant technical field variously modify the present invention within the scope not departing from the spirit and scope of the present invention described in the following claims. And it will be easily understood that it can be changed.

Claims (7)

사용자와 서비스 제공자 간의 스마트 컨트랙트(smart contract) 처리를 위해 구현되며, 릴레이어(relayer)에 의해 실행되는, 호환 가능한 블록체인 네트워크 간의 트랜잭션 전송 중계 방법으로서,
(a) 특정 블록체인 플랫폼인 제1 블록체인의 블록체인 지갑을 이용하여 서명된 메타 트랜잭션이 수신되는 단계-여기서, 상기 블록체인 지갑은 사용자의 통신 단말에 설치되고, 상기 메타 트랜잭션은 상기 스마트 컨트랙트를 위해 수수료 없이 처리되는 트랜잭션임-;
(b) 상기 메타 트랜잭션을 통해서 요청된 상기 스마트 컨트랙트가 상기 제1 블록체인과 호환 가능한 다른 블록체인 플랫폼인 제2 블록체인을 통해서 실행되어야 하는 경우, 상기 스마트 컨트랙트의 실행을 위한 중계용 트랜잭션을 생성하여 상기 제2 블록체인으로 전송하며, 트랜잭션 수수료를 상기 사용자 대신에 대납하여 상기 스마트 컨트랙트가 실행되도록 하는 단계를 포함하고,
상기 (b) 단계는,
(b1) 상기 메타 트랜잭션의 서명에 이용된 사용자의 개인키(private key)에 대응하는 공개키(public key)를 이용하여 상기 서명의 진위를 검증하는 단계; 및 (b2) 상기 서명의 진위 검증이 정상적으로 완료된 경우, 상기 서명, 상기 메타 트랜잭션에 포함된 파라미터, 상기 릴레이어의 개인키를 이용하여 상기 중계용 트랜잭션을 생성하는 단계를 포함하고,
상기 메타 트랜잭션에 포함된 파라미터는,
상기 스마트 컨트랙트를 실행할 블록체인정보, 상기 스마트 컨트랙트의 주소(address)정보, 상기 스마트 컨트랙트를 통해 호출하고자 하는 함수정보를 포함하고,
상기 메타 트랜잭션에 포함된 파라미터로서, 상기 스마트 컨트랙트를 실행할 상기 블록체인정보는,
상기 서비스 제공자 또는 상기 릴레이어에 의해 사전에 지정되거나, 상기 실행할 스마트 컨트랙트에 따른 서비스 속성 또는 데이터 속성 별로 사전에 구분 지정되는 호환 가능한 블록체인 네트워크 간의 트랜잭션 전송 중계 방법.
As a method of relaying transaction transmission between compatible blockchain networks, implemented for the processing of smart contracts between users and service providers, and executed by a relayer,
(a) receiving a signed meta transaction using a blockchain wallet of the first blockchain platform, which is a specific blockchain platform, where the blockchain wallet is installed in the user's communication terminal, and the meta transaction is the smart contract This is a transaction that is processed without commission for the purpose of
(b) When the smart contract requested through the meta transaction is to be executed through the second blockchain, another blockchain platform compatible with the first blockchain, a relay transaction for execution of the smart contract is created. And transmitting it to the second blockchain, and paying a transaction fee on behalf of the user to execute the smart contract,
The step (b),
(b1) verifying the authenticity of the signature using a public key corresponding to the user's private key used for signing the meta transaction; And (b2) generating the relay transaction using the signature, a parameter included in the meta transaction, and a private key of the relay when the authenticity verification of the signature is normally completed,
The parameters included in the meta transaction,
Blockchain information to execute the smart contract, address information of the smart contract, and function information to be called through the smart contract,
As a parameter included in the meta transaction, the blockchain information to execute the smart contract,
A transaction transmission relay method between compatible blockchain networks that is designated in advance by the service provider or the relay, or separately designated by service attribute or data attribute according to the smart contract to be executed.
삭제delete 삭제delete 제1항에 있어서,
상기 제1 블록체인 및 상기 제2 블록체인 중 어느 하나는,
상기 스마트 컨트랙트의 서비스 속성 또는 데이터 속성에 따라, 빠른 처리 속도보다는 데이터 보안이 중요하거나 또는 쓰기 작업보다는 읽기 작업이 많은 경우에 매칭되도록 설정되고,
상기 제1 블록체인 및 상기 제2 블록체인 중 다른 하나는,
상기 스마트 컨트랙트의 서비스 속성 또는 데이터 속성에 따라, 빠른 처리 속도가 요구되거나 또는 읽기 작업보다 쓰기 작업이 많은 경우에 매칭되도록 설정되는 것을 특징으로 하는, 호환 가능한 블록체인 네트워크 간의 트랜잭션 전송 중계 방법.
The method of claim 1,
Any one of the first block chain and the second block chain,
According to the service attribute or data attribute of the smart contract, it is set to match when data security is important rather than fast processing speed or when there are more read operations than write operations,
The other one of the first block chain and the second block chain,
According to the service property or data property of the smart contract, it is set to match when a fast processing speed is required or when a write operation is more than a read operation, a transaction transmission relay method between compatible blockchain networks.
사용자와 서비스 제공자 간에 DApp을 통한 스마트 컨트랙트(smart contract) 처리를 위해 구현되는, 호환 가능한 블록체인 네트워크 간의 트랜잭션 전송 중계 방법으로서-여기서, 상기 DApp(Decentralized App)은 블록체인 기반으로 구동되는 서비스 앱을 나타냄-,
(a) 사용자의 통신 단말에 설치된 에이전트 프로그램이, 특정 블록체인 플랫폼인 제1 블록체인을 기반으로 DID(Decentralized Identifier)를 생성하고, 상기 생성된 DID를 이용하여 상기 DApp에 서비스 로그인 처리를 수행하는 단계;
(b) 상기 에이전트 프로그램이, 상기 제1 블록체인의 블록체인 지갑을 이용하여 서명한 메타 트랜잭션을 생성하여 릴레이어(relayer)에게 전송하는 단계-여기서, 상기 블록체인 지갑은 사용자의 통신 단말에 설치되고, 상기 메타 트랜잭션은 상기 스마트 컨트랙트를 위해 수수료 없이 처리되는 트랜잭션이고, 상기 릴레이어는 상기 서비스 제공자 또는 제3자의 통신 단말 또는 서버임-;
(c) 상기 메타 트랜잭션을 통해서 요청된 상기 스마트 컨트랙트가 상기 제1 블록체인과 호환 가능한 다른 블록체인 플랫폼인 제2 블록체인을 통해서 실행되어야 하는 경우, 상기 릴레이어가, 상기 스마트 컨트랙트의 실행을 위한 중계용 트랜잭션을 생성하여 상기 제2 블록체인으로 전송하며, 트랜잭션 수수료를 상기 사용자 대신에 대납하여 상기 스마트 컨트랙트가 실행되도록 하는 단계를 포함하고,
상기 메타 트랜잭션에 포함된 파라미터는,
상기 스마트 컨트랙트를 실행할 블록체인정보, 상기 스마트 컨트랙트의 주소(address)정보, 상기 스마트 컨트랙트를 통해 호출하고자 하는 함수정보를 포함하되,
상기 스마트 컨트랙트를 실행할 상기 블록체인정보는,
상기 서비스 제공자 또는 상기 릴레이어에 의해 사전에 지정되거나 또는 상기 실행할 스마트 컨트랙트에 따른 서비스 속성 별로 사전에 구분 지정되는 호환 가능한 블록체인 네트워크 간의 트랜잭션 전송 중계 방법.
As a transaction transmission relay method between compatible blockchain networks that is implemented for processing smart contracts through DApps between users and service providers-Here, the DApp (Decentralized App) refers to a service app running on a blockchain basis. Indicates -,
(a) The agent program installed in the user's communication terminal generates a Decentralized Identifier (DID) based on the first blockchain, which is a specific blockchain platform, and performs service login processing to the DApp using the generated DID. step;
(b) The agent program generates a meta-transaction signed using the blockchain wallet of the first blockchain and transmits it to a relayer-Here, the blockchain wallet is installed in the user's communication terminal Wherein the meta transaction is a transaction processed without a fee for the smart contract, and the relay is a communication terminal or server of the service provider or a third party;
(c) When the smart contract requested through the meta transaction is to be executed through the second blockchain, another blockchain platform compatible with the first blockchain, the relay is relayed for execution of the smart contract. Generating a transaction for use and transmitting it to the second blockchain, and paying a transaction fee on behalf of the user to execute the smart contract,
The parameters included in the meta transaction,
Blockchain information to execute the smart contract, address information of the smart contract, and function information to be called through the smart contract,
The block chain information to execute the smart contract,
A transaction transmission relay method between compatible blockchain networks that is designated in advance by the service provider or the relay, or classified and designated in advance for each service attribute according to the smart contract to be executed.
삭제delete 제5항에 있어서,
상기 제1 블록체인은 이더리움 메인넷으로 구성되고,
상기 제2 블록체인은 상기 이더리움 메인넷과 동일한 스마트 컨트랙트를 사용하는 호환 체인으로서, 상기 스마트 컨트랙트의 함수를 상기 제1 블록체인 보다 빠른 트랜잭션 처리 속도로 실행하는 블록체인으로 선택되는 것을 특징으로 하는, 호환 가능한 블록체인 네트워크 간의 트랜잭션 전송 중계 방법.
The method of claim 5,
The first blockchain is composed of the Ethereum mainnet,
The second blockchain is a compatible chain that uses the same smart contract as the Ethereum mainnet, and is selected as a blockchain that executes the function of the smart contract at a faster transaction processing speed than the first blockchain. , A transaction transmission relay method between compatible blockchain networks.
KR1020200016816A 2020-02-12 2020-02-12 Transaction transfer realy method between compatible blockchain networks KR102209852B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200016816A KR102209852B1 (en) 2020-02-12 2020-02-12 Transaction transfer realy method between compatible blockchain networks

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200016816A KR102209852B1 (en) 2020-02-12 2020-02-12 Transaction transfer realy method between compatible blockchain networks

Publications (1)

Publication Number Publication Date
KR102209852B1 true KR102209852B1 (en) 2021-01-29

Family

ID=74236613

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200016816A KR102209852B1 (en) 2020-02-12 2020-02-12 Transaction transfer realy method between compatible blockchain networks

Country Status (1)

Country Link
KR (1) KR102209852B1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220108302A (en) * 2021-01-27 2022-08-03 임도형 Method for exchanging asset between compatible blockchain networks
CN115001816A (en) * 2022-05-31 2022-09-02 杭州万林数链科技服务有限公司 Block chain link point service system of multi-block chain platform
KR20230057173A (en) * 2021-10-21 2023-04-28 고려대학교 산학협력단 Method for reducing smart contract fee of dapp, recording medium and compute server for performing the method
KR102601381B1 (en) * 2023-01-26 2023-11-13 주식회사 인피닛블록 System for transaction fee payment by proxy of token transaction using smart contract and method of the same

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190019004A (en) * 2017-08-16 2019-02-26 김용태 The trading system and the method based on a blockchain
KR20190101532A (en) * 2018-02-23 2019-09-02 에이치닥 테크놀로지 아게 Method and system for encrypted communication between devices based on the block chain system
KR20190128814A (en) * 2018-05-09 2019-11-19 삼성에스디에스 주식회사 Method and apparatus for prcocessing transaction based on bllockchain and system tehereof
KR20190132009A (en) * 2018-05-18 2019-11-27 삼성에스디에스 주식회사 System for managing transaction based on blockchain and operationg method thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190019004A (en) * 2017-08-16 2019-02-26 김용태 The trading system and the method based on a blockchain
KR20190101532A (en) * 2018-02-23 2019-09-02 에이치닥 테크놀로지 아게 Method and system for encrypted communication between devices based on the block chain system
KR20190128814A (en) * 2018-05-09 2019-11-19 삼성에스디에스 주식회사 Method and apparatus for prcocessing transaction based on bllockchain and system tehereof
KR20190132009A (en) * 2018-05-18 2019-11-27 삼성에스디에스 주식회사 System for managing transaction based on blockchain and operationg method thereof

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220108302A (en) * 2021-01-27 2022-08-03 임도형 Method for exchanging asset between compatible blockchain networks
KR102634677B1 (en) * 2021-01-27 2024-02-08 임도형 Method for exchanging asset between compatible blockchain networks
KR20230057173A (en) * 2021-10-21 2023-04-28 고려대학교 산학협력단 Method for reducing smart contract fee of dapp, recording medium and compute server for performing the method
KR102610011B1 (en) * 2021-10-21 2023-12-04 고려대학교 산학협력단 Method for reducing smart contract fee of dapp, recording medium and compute server for performing the method
US11893579B2 (en) 2021-10-21 2024-02-06 Korea University Research And Business Foundation Method of reducing smart contract fee for DApp, and recording medium and compute server for performing the same
CN115001816A (en) * 2022-05-31 2022-09-02 杭州万林数链科技服务有限公司 Block chain link point service system of multi-block chain platform
KR102601381B1 (en) * 2023-01-26 2023-11-13 주식회사 인피닛블록 System for transaction fee payment by proxy of token transaction using smart contract and method of the same

Similar Documents

Publication Publication Date Title
KR102209852B1 (en) Transaction transfer realy method between compatible blockchain networks
US10558963B2 (en) Shareable widget interface to mobile wallet functions
US20190266604A1 (en) Configuring a plurality of security isolated wallet containers on a single mobile device
US10026079B2 (en) Selecting ecosystem features for inclusion in operational tiers of a multi-domain ecosystem platform for secure personalized transactions
US9626675B2 (en) Updating a widget that was deployed to a secure wallet container on a mobile device
US9667426B2 (en) Information processing apparatus, program, storage medium and information processing system
JP5547803B2 (en) Method, server, and computer program for sending a message to a secure element
RU2488888C2 (en) Method of access to applications in secure mobile environment
EP0942349A2 (en) Cryptographic apparatus for an international cryptography framework
EP2467989A1 (en) Method and system for universal application for transaction procedures with nfc technology
US11887109B1 (en) Service composition in a mobile communication device application framework
KR20130053867A (en) Management method of trusted application download, management server, device and system using it
WO2022271138A2 (en) A platform providing multiple applications
KR101382436B1 (en) Method and device for processing admission of payment and device for managing payment module
JP2024063696A (en) Information processing device and information processing method

Legal Events

Date Code Title Description
GRNT Written decision to grant