KR20190070888A - 오프체인에서의 스마트 컨트랙트 채널 서비스 제공 장치 및 방법, 그리고 이를 포함하는 시스템 - Google Patents

오프체인에서의 스마트 컨트랙트 채널 서비스 제공 장치 및 방법, 그리고 이를 포함하는 시스템 Download PDF

Info

Publication number
KR20190070888A
KR20190070888A KR1020180160355A KR20180160355A KR20190070888A KR 20190070888 A KR20190070888 A KR 20190070888A KR 1020180160355 A KR1020180160355 A KR 1020180160355A KR 20180160355 A KR20180160355 A KR 20180160355A KR 20190070888 A KR20190070888 A KR 20190070888A
Authority
KR
South Korea
Prior art keywords
contract
transaction
channel service
chain network
smart contract
Prior art date
Application number
KR1020180160355A
Other languages
English (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 포항공과대학교 산학협력단
Publication of KR20190070888A publication Critical patent/KR20190070888A/ko

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/3827Use of message hashing
    • 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
    • G06Q20/3678Payment 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 e-cash details, e.g. blinded, divisible or detecting double spending
    • 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/385Payment protocols; Details thereof using an alias or single-use codes

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

오프체인에서의 스마트 컨트랙트 채널 서비스 제공 장치 및 방법, 그리고 이를 포함하는 시스템이 개시된다. 상기 오프체인에서의 스마트 컨트랙트 채널 서비스 제공 장치 및 방법, 그리고 이를 포함하는 시스템은 퍼블릭 블록체인 네트워크에서의 적어도 한명의 클라이언트의 컨트랙션을 프라이빗 블록체인 네트워크에 이전하여 수행하고, 최종 컨트랙트 거래 내역만을 퍼블릭 블록체인 네트워크에 반영함으로써, 블록체인 네트워크에 참여하는 노드들의 저장 용량 및 마이너들의 트랜잭션 처리율을 감소시키고, 트랜잭션 처리 시간이 축소되며, 확장성이 증가된 오프체인에서의 스마트 컨트랙트 채널 서비스 제공 장치 및 방법, 그리고 이를 포함하는 시스템을 제공할 수 있다.

Description

오프체인에서의 스마트 컨트랙트 채널 서비스 제공 장치 및 방법, 그리고 이를 포함하는 시스템{APPARATUS AND METHOD FOR PROVIDING SMARTCONTRACT CHANNEL SERVICE IN OFF-CHAIN, AND SYSTEM HAVING THE SAME}
본 발명은 오프체인에서의 스마트 컨트랙트 채널 서비스 제공 장치 및 방법, 그리고 이를 포함하는 시스템에 관한 것으로, 보다 상세하게는, 오프체인에서의 스마트 컨트랙트의 트랜잭션 처리를 수행하기 위한 채널 서비스 제공 장치 및 방법, 그리고 이를 포함하는 시스템에 관한 것이다.
블록체인(Blockchain)은 서로를 신뢰할 수 없는 분산 시스템 환경에서도 모든 노드들이 동일한 거래(transaction) 장부를 바라볼 수 있도록 도와주는 매커니즘이다. 대표적인 활용 예로 비트코인(Bitcoin)이 있다.
또한, 스마트 컨트랙트(Smart Contract)는 프로그래밍 가능한 컨트랙트로, 단순히 코인과 같은 자산 거래 이외에도 분산 시스템 환경에서 모든 노드들이 동일한 순서로 트랜잭션(transaction)을 수행하여 동일한 프로그램 상태를 바라볼 수 있도록 한다. 대표적인 오픈 프로젝트로 이더리움(Ethereum)이 있다.
분산 네트워크 환경에서도 안정성을 보장해주기 위해 블록체인 네트워크는 마이너(miner)들이 합의 알고리즘(Consensus Algorithm)을 수행하여 발생되는 트랜잭션들을 블록 형태로 생성하여 참여 노드들에게 전달한다. 블록체인 네트워크에 참여하는 모든 노드들은 동일한 형태의 블록체인을 유지하며 합의된 블록만을 추가할 수 있다. 이에 따라, 블록체인 네트워크의 안정성이 보장될 수 있다.
그러나, 퍼블릭(Public) 블록체인의 경우 네트워크에 참여하는 노드는 전 세계에 퍼져있고 그에 따라 발생하는 트랜잭션 또한 점차 늘어나고 있는 추세이다.
또한, 다수의 트랜잭션을 모아 블록 1개를 만드는데 걸리는 시간은 비트코인의 경우 현재 10분 정도 소요되며, 한 블록 안에 포함될 수 있는 트랜잭션 수가 한정되어 있다.
이에, 전 세계에 퍼져있는 노드(node)들에게 블록이 전달되어 모두가 동의함을 확신하여 안정성을 입증하기까지 걸리는 시간은 확인하고자 하는 블록으로부터 6개의 블록이 추가되어야 하므로 대략 1시간 가량 소요된다.
안정성 보장을 위해 장시간이 소요되는 문제를 해결하기 위해, 종래에는 오프체인(OffChain) 기법이 제안되고 있다. 오프체인(OffChain) 기법은 빈번한 거래 당사자들끼리의 트랜잭션들을 블록체인 바깥에서 상호 합의하고 실행하게 하며, 최종 결과만을 블록체인에 기록하게 하는 형태의 기법이다. 예를 들어, 비트코인 블록체인에서의 페이먼트 채널(Payment Channel)과 이더리움 블록체인에서의 레이든 네트워크(Raiden Networks)가 대표적인 오프체인(OffChain) 기법이다.
그 중에서도, 레이든 네트워크(Raiden Networks)의 경우, 두 참여자가 블록체인에 미리 예금해 둔 토큰(token) 금액 내에서는 블록체인 밖에서도 토큰 전송이 가능하여, 최종 거래 내역만을 블록체인에 반영하면 정산되도록 하는 오프체인(Off-Chain) 기법이다.
그러나, 종래의 레이든 네트워크는 단순히 토큰의 거래만을 지원하고 있어, 스마트 컨트랙트와 연계되어 진행되는 토큰 거래를 지원하지 못하는 단점이 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은 고속, 고확장성 및 고안정성을 제공하는 오프체인에서의 스마트 컨트랙트 채널 서비스 제공 장치를 제공하는 데 있다.
또한, 상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은 고속, 고확장성 및 고안정성을 제공하는 오프체인에서의 스마트 컨트랙트 채널 서비스 제공 방법을 제공하는 데 있다.
또한, 상기와 같은 문제점을 해결하기 위한 본 발명의 또다른 목적은 고속, 고확장성 및 고안정성을 제공하는 오프체인에서의 스마트 컨트랙트 채널 서비스 제공 시스템을 제공하는 데 있다.
상기 목적을 달성하기 위한 본 발명의 실시예에 따라 오프체인(Off-Chain)에서의 컨트랙트 트랜잭션(Contract Transaction) 서비스를 제공하는 스마트 컨트랙트(Smart Contract) 채널 서비스 제공 방법은 이종의 블록체인 네트워크 간에 채널(Channel)을 형성하는 단계, 제1 블록체인 네트워크에서 동작하는 제1 컨트랙트의 트랜잭션 처리를 중단시키는 단계, 상기 채널을 통해, 상기 제1 컨트랙트의 트랜잭션 정보가 기록된 제1 상태 정보를 오프체인인 제2 블록체인 네트워크로 전달하는 단계, 상기 전달된 제1 상태 정보를 상기 제2 블록체인 네트워크 내 제2 컨트랙트에 반영하여, 상기 제2 컨트랙트의 트랜잭션을 수행하는 단계, 상기 제2 컨트랙트의 트랜잭션을 중단시키는 단계 및 상기 채널을 통해, 상기 제2 컨트랙트의 트랜잭션 정보가 기록된 제2 상태 정보를 상기 제1 블록체인 네트워크로 전달하는 단계를 포함한다.
본 발명의 실시예에 따른 오프체인에서의 스마트 컨트랙트 채널 서비스 제공 장치 및 방법, 그리고 이를 포함하는 시스템은 퍼블릭 블록체인 네트워크에서의 적어도 한명의 클라이언트의 컨트랙션을 프라이빗 블록체인 네트워크에 이전하여 수행하고, 최종 컨트랙트 거래 내역만을 퍼블릭 블록체인 네트워크에 반영함으로써, 블록체인 네트워크에 참여하는 노드들의 저장 용량 및 마이너들의 트랜잭션 처리율을 감소시키고, 트랜잭션 처리 시간이 축소되며, 확장성이 증가된 오프체인에서의 스마트 컨트랙트 채널 서비스 제공 장치 및 방법, 그리고 이를 포함하는 시스템을 제공할 수 있다.
도 1은 본 발명의 실시예에 따른 스마트 컨트랙트 채널 서비스 제공 시스템의 블록 구성도이다.
도 2는 본 발명의 실시예에 따른 스마트 컨트랙트 채널 서비스 제공 장치의 블록 구성도이다.
도 3은 본 발명의 실시예에 따른 오프체인에서의 스마트 컨트랙트 채널 서비스 제공 방법의 순서도이다.
도 4는 본 발명의 실시예에 따른 오프체인에서의 스마트 컨트랙트 채널 서비스 제공 방법 중 제2 채널 서비스 제공 장치가 제2 컨트랙트 트랜잭션을 수행하는 단계를 설명하기 위한 순서도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는 데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. "및/또는"이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 실시예에 따른 스마트 컨트랙트 채널 서비스 제공 시스템의 블록 구성도이다.
도 1을 참조하면, 스마트 컨트랙트 채널 서비스 제공 시스템은 퍼블릭 블록체인(Public Blockchain) 네트워크 외부에서 스마트 컨트랙트(Smart Contract) 트랜잭션(Transaction)을 수행하기 위한 채널(Channel)을 형성하는 시스템일 수 있다.
보다 구체적으로 설명하면, 스마트 컨트랙트 체널 서비스 제공 시스템은 퍼브릭 블록체인 네트워크 및 프라이빗 블록체인 네트워크 간의 채널을 형성하여, 퍼블릭 블록체인 네트워크 내 클라이언트들의 컨트랙트 트랜잭션을 오프체인인 프라이빗 블록체인 네트워크에서 수행하기 위한 시스템일 수 있다.
실시예에 따르면, 스마트 컨트랙트 채널 서비스 제공 시스템은 스마트 컨트랙트 채널 서비스 제공 장치(1000) 및 동기화 장치(5000)를 포함할 수 있다.
스마트 컨트랙트 채널 서비스 제공 장치(1000)는 이종의 블록체인 네트워크에 개별 제공되는 장치로써, 앞서 설명한 바와 같이, 이종의 블록체인 네트워크 간의 컨트랙트 동작을 이전시키기 위한 채널을 형성할 수 있다.
실시예에 따르면, 스마트 컨트랙트 채널 서비스 제공 장치(1000)는 제1 채널 서비스 제공 장치(1000A) 및 제2 채널 서비스 제공 장치(1000B)를 포함할 수 있다.
예를 들어, 제1 채널 서비스 제공 장치(1000A)는 퍼블릭 블록체인(Public Blockchain) 네트워크에 제공되어, 퍼블릭 블록체인(Public Blockchain) 네트워크 내 클라이언트의 컨트랙트 상태 정보를 프라이빗(Private Blockchain) 네트워크로 이전시킬 수 있으며, 제2 채널 서비스 제공 장치(1000B)는 오프체인(Off-Chain)인 프라이빗 블록체인(Private Blockchain) 네트워크에 제공되어, 퍼블릭 블록체인(Public Blockchain) 네트워크로부터 이전된 클라이언트의 컨트랙트 상태 정보를 다시 퍼블릭 블록체인(Public Blockchain) 네트워크로 복귀시킬 수 있다.
여기서, 퍼블릭 블록체인(Public Blockchain) 네트워크는 전 세계의 노드가 컨트랙트의 트랜잭션 처리에 참여함으로써 신뢰성 및 안정성이 높은 트랜잭션 처리가 가능하나, 처리 속도가 느린 단점이 있다.
이에, 본 발명의 실시예에 따른 스마트 컨트랙트 채널 서비스 제공 시스템은 스마트 컨트랙트 채널 서비스 제공 장치(1000)에 의해 퍼블릭 블록체인(Public Blockchain) 네트워크에서 수행되는 컨트랙트의 동작을, 참여 권한이 부여된 참여자만이 합의에 참여하여 블록을 생성하는 프라이빗 블록체인(Private Blockchain) 네트워크로 이전시킴으로써, 고속의 안정적인 트랜잭션 처리 효과를 제공할 수 있다. 고성능의 컨트랙트 트랜잭션 처리를 수행하는 상기 스마트 컨트랙트 채널 서비스 제공 장치(1000)에 대해서는 하기 도 2를 참조하여 보다 구체적으로 설명하겠다.
도 2는 본 발명의 실시예에 따른 스마트 컨트랙트 채널 서비스 제공 장치의 블록 구성도이다.
도 2를 참조하면, 스마트 컨트랙트 채널 서비스 제공 장치(1000)는 적어도 한명의 클라이언트(USER A, USER B 및 USER C) 중 적어도 한명에게 채널 서비스를 제공하기 위한 장치로, 저장부(1100), 메모리(1300) 및 프로세서(1500)를 포함할 수 있다.
저장부(1100)는 적어도 하나의 정보를 저장할 수 있다. 실시예에 따르면, 저장부(1100)는 제1 저장부(1110) 및 제2 저장부(1150)를 포함할 수 있다.
제1 저장부(1110)는 해당 블록체인 네트워크 내에서 동작 중인 적어도 하나의 컨트랙트 정보를 포함할 수 있다. 여기서, 컨트랙트 정보는 해당 블록체인 네트워크 내 컨트랙트의 상태 정보일 수 있다.
일 실시예에 따르면, 상기 컨트랙트 정보는 퍼블릭 블록체인(Public Blockchain) 네트워크에서 동작이 멈추기 전까지 수행된 트랜잭션 정보를 포함할 수 있다.
또한, 다른 실시예에 따르면, 상기 컨트랙트 정보는 프라이빗 블록체인(Private Blockchain) 네트워크에서 동작이 멈추기 전까지 수행된 트랜잭션 정보를 포함할 수 있다.
제2 저장부(1150)는 스마트 컨트랙트 채널을 이용하기 위해 클라이언트들로부터 수신된 토큰을 사전에 예치(預置)하는 저장 공간일 수 있다.
실시예에 따르면, 본 발명의 실시예에 따른 스마트 컨트랙트 채널 서비스 제공 장치(1000)는 프라이빗 블록체인(Private Blockchain) 네트워크에서의 컨트랙트의 트랜잭션 처리가 종료될 경우, 제2 저징부(1150)에 사전 예치된 토큰으로 오프체인에서의 스마트 컨트랙트 채널 서비스 제공 비용이 정산될 수 있다.
메모리(1300)는 휘발성 저장 매체 및/또는 비휘발성 저장 매체로 구성될 수 있다. 예를 들어, 메모리(1300)는 읽기 전용 메모리(read only memory, ROM) 및/또는 랜덤 액세스 메모리(random access memory, RAM)로 구성될 수 있다.
메모리(1300)는 후술될 프로세서(1500)를 실행하기 위한 적어도 하나의 명령을 포함할 수 있다.
실시예에 따르면, 적어도 하나의 명령은 오프체인에서의 스마트 컨트랙트를 위한 채널을 형성하도록 하는 명령, 퍼블릭 블록체인(Public Blockchain) 네트워크에서 동작하는 컨트랙트의 트랜잭션 처리를 중단하도록 하는 명령, 오프체인인 프라이빗 블록체인(Private Blockchain) 네트워크에서 컨트랙트 트랜잭션을 처리하도록 하는 명령, 오프체인(Off-Chain)인 프라이빗 블록체인(Private Blockchain) 네트워크에서 컨트랙트의 트랜잭션 처리가 종료되도록 하는 명령, 오프체인(Off-Chain)에서의 스마트 컨트랙트 채널 서비스 제공 비용을 정산하도록 하는 명령 및 프라이빗 블록체인(Private Blockchain) 네트워크에서 트랜잭션 처리가 종료된 컨트랙트의 상태 정보를 퍼블릭 블록체인(Public Blockchain) 네트워크로 이전하도록 하는 명령을 포함할 수 있다.
프로세서(1500)는 메모리(1300)에 저장된 프로그램 명령(program command)을 실행할 수 있다. 프로세서(1500)는 중앙 처리 장치(central processing unit, CPU), 그래픽 처리 장치(graphics processing unit, GPU) 또는 본 발명에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 프로세서(1500)의 동작은 메모리(1300) 내 적어도 하나의 명령과 중복되므로, 스마트 컨트랙트 채널 서비스 제공 방법의 설명 시 보다 구체적으로 설명하겠다.
다시 도 1을 참조하면, 동기화 장치(5000)는 서로 다른 네트워크에 개별 제공되는 채널 서비스 제공 장치(1000) 내 컨트랙트 정보를 동기화하는 장치일 수 있다. 다시 말하면, 동기화 장치(5000)는 채널 서비스 제공 장치(1000) 내 저장부(1100)에 저장된 컨트랙트 정보를 동기화 할 수 있다.
일반적으로, 컨트랙트는 이종의 블록체인 네트워크에서 동시에 동작하지 않고, 단일 블록체인 네트워크에서만 동작될 수 있다. 이에 따라, 본 발명의 실시예에 따른 스마트 컨트랙트 채널 서비스 제공 시스템은 퍼블릭 블록체인(Public Blockchain) 네트워크로부터 오프체인(Off-Chain)인 프라이빗 블록체인(Private Blockchain) 네트워크로의 컨트랙트 동작 이전시, 컨트랙트의 상태 정보도 함께 전달함으로써 컨트랙트의 동작 수행이 가능할 수 있다.
이상, 본 발명의 실시예에 따른 오프체인(Off-Chain) 스마트 컨트랙트 채널 서비스 제공 시스템 및 장치를 설명하였다.
종래의 퍼블릿 블록체인(Public Blockchain) 네트워크의 경우, 앞서 설명한 바와 같이, 전 세계의 모든 노드들이 트랜잭션에 참여 가능함으로써 보안성이 높은 장점을 가지고 있으나, 블록을 생성하기 위한 복수의 노드들의 합의시 장시간이 소요되고, 마이너 들의 컴퓨터 전력 소모량 또한 증가되는 단점이 있다.
한편, 본 발명의 실시예에 따른 오프체인(Off-Chain)에서의 스마트 컨트랙트 채널 서비스 제공 시스템은 퍼블릭 블록체인(Public Blockchain) 네트워크 내 컨트랙트(Samart Contract)의 트랜잭션(Transaction)을, 트랜잭션(Transaction)의 처리 속도가 빠른 프라이빗 블록체인(Private Blockchain) 네트워크로 송신함으로써, 고속의 블록 생성이 가능할 수 있다.
이하에서는 오프체인에서의 스마트 컨트랙트 채널 서비스 제공 시스템을 이용한 채널 서비스 제공 방법을 설명하겠다.
도 3은 본 발명의 실시예에 따른 오프체인에서의 스마트 컨트랙트 채널 서비스 제공 방법의 순서도이다.
도 3을 참조하면, 제1 채널 서비스 제공 장치(1000A)의 제1 프로세서(1500)는 스마트 컨트랙트 채널 서비스 제공 장치의 프로세서(1500)는 적어도 한명의 클라이언트로부터 사전에 스마트 컨트랙트 채널 이용을 위한 토큰을 예치받을 수 있다(S1000).
상기 제1 프로세서(1500)는 오프체인(Off-Chain)인 프라이빗 블록체인(Private Blockchain) 네트워크에서의 스마트 컨트랙트를 위한 채널을 생성할 수 있다(S2000).
컨트랙트에서 요구하는 클라이언트 수가 확보될 경우, 상기 제1 프로세서(1500)는 퍼블릭 블록체인(Public Blockchain) 네트워크 내에서의 제1 컨트랙트의 트랜잭션 처리를 중단할 수 있다(S3000).
이후, 상기 제1 프로세서(1500)는 퍼블릭 블록체인(Public Blockchain) 네트워크 내에서 중단된 제1 컨트랙트의 상태 정보를 동기화 장치(5000)에 의해 오프체인(Off-Chain)인 프라이빗 블록체인(Private Blockchain) 네트워크로 전달할 수 있다(S4000). 이에 따라, 프라이빗 블록체인(Private Blockchain) 네트워크에서의 제2 채널 서비스 제공 장치(1000B)의 제2 프로세서(1500)가 상태 정보가 이전된 제2 컨트랙트의 트랜잭션을 수행할 수 있다(S5000).
도 4는 본 발명의 실시예에 따른 오프체인에서의 스마트 컨트랙트 채널 서비스 제공 방법 중 제2 채널 서비스 제공 장치가 제2 컨트랙트 트랜잭션을 수행하는 단계를 설명하기 위한 순서도이다.
도 4를 참조하면, 제2 채널 서비스 제공 장치(1000B)의 제2 프로세서(1500)는 퍼블릭 블록체인(Public Blockchain) 네트워크로부터 전달된 제1 컨트랙트 상태 정보를 제2 컨트랙트에 반영하여, 제2 컨트랙트의 트랜잭션 처리를 시작할 수 있다(S5100). 다시 말하면, 상기 제2 프로세서(1500)는 스마트 컨트랙트 트랜잭션 서비스를 시작할 수 있다. 여기서, 제2 컨트랙트는 퍼블릭 블록체인(Public Blockchain) 네트워크에서 프라이빗 블록체인(Private Blockchain) 네트워크로 이전된 상태 정보가 반영되어, 중단된 제1 컨트랙트의 트랜잭션 상태에 이어서 동일하게 동작할 수 있다.
상기 제2 프로세서(1500)는 클라이언트들이 컨트랙트 서비스를 요청할 경우, 프라이빗 블록체인(Private Blockchain) 네트워크 내 제2 컨트랙트의 트랜잭션을 수행할 수 있다(S5300). 이때, 상기 제2 프로세서(1500)는 트랜잭션이 수행되는 제2 컨트랙트의 상태 정보를 기록할 수 있다(S5500).
다시 도 3을 참조하면, 제2 프로세서(1500)는 외부 신호에 의해 오프체인(Off-Chain)인 프라이빗 블록체인(Private Blockchain) 네트워크에서 제2 컨트랙트의 트랜잭션 처리를 중단할 수 있다(S6000). 다시 말하면, 상기 제2 프로세서(1500)는 스마트 컨트랙트 트랜잭션 서비스를 종료할 수 있다.
일 실시예에 따라 보다 구체적으로 설명하면, 상기 제2 프로세서(1500)는 클라이언트의 서비스 종료 요청에 의해 오프체인(Off-Chain)인 프라이빗 블록체인(Private Blockchain) 네트워크에서의 컨트랙트 트랜잭션 서비스를 종료할 수 있다.
다른 실시예에 따라 보다 구체적으로 설명하면, 상기 제2 프로세서(1500)는 사전 설정된 컨트랙트 트랜잭션 서비스의 제공 시간이 만료될 경우, 프라이빗 블록체인(Private Blockchain) 네트워크에서의 컨트랙트 트랜잭션 서비스를 종료할 수 있다.
제2 프로세서(1500)는 생성된 채널이 모두 닫힐 경우, 프라이빗 블록체인(Private Blockchain) 네트워크 내에서의 제2 컨트랙트의 최종 트랜잭션 정보가 저장된 상태 정보를 퍼블릭 블록체인(Public Blockchain) 네트워크로 전달할 수 있다(S7000).
제2 컨트랙트의 상태 정보를 전달 받은 제1 프로세서(1500)는 상기 상태 정보를 제1 컨트랙트에 반영할 수 있다(S8000). 이에 따라, 본 발명의 실시예에 따른 스마트 컨트랙트 채널 서비스 제공 시스템은 프라이빗 블록체인(Private Blockchain) 네트워크에서 수행된 제2 컨트랙트의 트랜잭션 중 최종 트랜잭션 정보만을 제1 컨트랙트에 반영함으로써, 블록체인 네트워크에 참여하는 노드들의 저장 용량 및 마이너들의 트랜잭션 처리율을 감소시킬 수 있다.
이후, 제1 프로세서(1500)는 오프체인(Off-Chain)에서의 스마트 컨트랙트 채널 서비스 제공 비용을 정산할 수 있다(S9000). 실시예에 따르면, 제1 프로세서(1500)는 제2 저징부(1150)에 사전 예치된 토큰으로 오프체인(Off-Chain)에서의 스마트 컨트랙트 채널 서비스 제공 비용을 정산할 수 있다.
이후, 제1 프로세서(1500)는 클라이언트들의 요청에 따라, 퍼블릭 블록체인(Public Blockchain) 네트워크에서의 컨트랙트 서비스를 시작할 수 있다.
이상, 본 발명의 실시예에 따른 오프체인에서의 스마트 컨트랙트 채널 서비스 제공 장치 및 방법, 그리고 이를 포함하는 시스템을 설명하였다.
본 발명의 실시예에 따른 오프체인에서의 스마트 컨트랙트 채널 서비스 제공 장치 및 방법, 그리고 이를 포함하는 시스템은 퍼블릭 블록체인 네트워크에서의 적어도 한명의 클라이언트의 컨트랙션을 프라이빗 블록체인 네트워크에 이전하여 수행하고, 최종 컨트랙트 거래 내역만을 퍼블릭 블록체인 네트워크에 반영함으로써, 블록체인 네트워크에 참여하는 노드들의 저장 용량 및 마이너들의 트랜잭션 처리율을 감소시키고, 트랜잭션 처리 시간이 축소되며, 확장성이 증가된 오프체인에서의 스마트 컨트랙트 채널 서비스 제공 장치 및 방법, 그리고 이를 포함하는 시스템을 제공할 수 있다.
본 발명의 실시예에 따른 방법의 동작은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 프로그램 또는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산 방식으로 컴퓨터로 읽을 수 있는 프로그램 또는 코드가 저장되고 실행될 수 있다.
또한, 컴퓨터가 읽을 수 있는 기록매체는 롬(rom), 램(ram), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다. 프로그램 명령은 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
본 발명의 일부 측면들은 장치의 문맥에서 설명되었으나, 그것은 상응하는 방법에 따른 설명 또한 나타낼 수 있고, 여기서 블록 또는 장치는 방법 단계 또는 방법 단계의 특징에 상응한다. 유사하게, 방법의 문맥에서 설명된 측면들은 또한 상응하는 블록 또는 아이템 또는 상응하는 장치의 특징으로 나타낼 수 있다. 방법 단계들의 몇몇 또는 전부는 예를 들어, 마이크로프로세서, 프로그램 가능한 컴퓨터 또는 전자 회로와 같은 하드웨어 장치에 의해(또는 이용하여) 수행될 수 있다. 몇몇의 실시예에서, 가장 중요한 방법 단계들의 하나 이상은 이와 같은 장치에 의해 수행될 수 있다.
실시예들에서, 프로그램 가능한 로직 장치(예를 들어, 필드 프로그머블 게이트 어레이)가 여기서 설명된 방법들의 기능의 일부 또는 전부를 수행하기 위해 사용될 수 있다. 실시예들에서, 필드 프로그머블 게이트 어레이는 여기서 설명된 방법들 중 하나를 수행하기 위한 마이크로프로세서와 함께 작동할 수 있다. 일반적으로, 방법들은 어떤 하드웨어 장치에 의해 수행되는 것이 바람직하다.
이상 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
1000; 스마트 컨트랙트 채널 서비스 제공 장치
1000A: 제1 채널 서비스 제공 장치
1000B: 제1 채널 서비스 제공 장치
1100: 저장부 1110: 제1 저장부
1150: 제2 저장부 1300: 메모리
1500: 프로세서 5000: 동기화 장치

Claims (1)

  1. 오프체인(Off-Chain)에서의 컨트랙트 트랜잭션(Contract Transaction) 서비스를 제공하는 스마트 컨트랙트(Smart Contract) 채널 서비스 제공 방법에 관한 것으로,
    이종의 블록체인 네트워크 간에 채널(Channel)을 형성하는 단계;
    제1 블록체인 네트워크에서 동작하는 제1 컨트랙트의 트랜잭션 처리를 중단시키는 단계;
    상기 채널을 통해, 상기 제1 컨트랙트의 트랜잭션 정보가 기록된 제1 상태 정보를 오프체인인 제2 블록체인 네트워크로 전달하는 단계;
    상기 전달된 제1 상태 정보를 상기 제2 블록체인 네트워크 내 제2 컨트랙트에 반영하여, 상기 제2 컨트랙트의 트랜잭션을 수행하는 단계;
    상기 제2 컨트랙트의 트랜잭션을 중단시키는 단계; 및
    상기 채널을 통해, 상기 제2 컨트랙트의 트랜잭션 정보가 기록된 제2 상태 정보를 상기 제1 블록체인 네트워크로 전달하는 단계를 포함하는 스마트 컨트랙트 채널 서비스 제공 방법.
KR1020180160355A 2017-12-13 2018-12-12 오프체인에서의 스마트 컨트랙트 채널 서비스 제공 장치 및 방법, 그리고 이를 포함하는 시스템 KR20190070888A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020170171345 2017-12-13
KR20170171345 2017-12-13

Publications (1)

Publication Number Publication Date
KR20190070888A true KR20190070888A (ko) 2019-06-21

Family

ID=67056839

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180160355A KR20190070888A (ko) 2017-12-13 2018-12-12 오프체인에서의 스마트 컨트랙트 채널 서비스 제공 장치 및 방법, 그리고 이를 포함하는 시스템

Country Status (1)

Country Link
KR (1) KR20190070888A (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102121245B1 (ko) * 2019-11-19 2020-06-10 주식회사 마크애니 복수의 블록체인망들 간의 데이터 공유 시스템 및 방법
WO2021015463A3 (ko) * 2019-07-19 2021-03-18 주식회사 카사코리아 블록체인을 기반으로 한 대출 서비스 방법 및 이러한 방법을 사용하는 장치
CN113032478A (zh) * 2019-12-24 2021-06-25 航天信息股份有限公司 区块链系统及数据上链方法、装置、设备和介质
KR20220116655A (ko) * 2021-02-15 2022-08-23 포항공과대학교 산학협력단 블록체인 확장성을 위한 예측적 트랜잭션 처리 시스템 및 방법

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021015463A3 (ko) * 2019-07-19 2021-03-18 주식회사 카사코리아 블록체인을 기반으로 한 대출 서비스 방법 및 이러한 방법을 사용하는 장치
KR102121245B1 (ko) * 2019-11-19 2020-06-10 주식회사 마크애니 복수의 블록체인망들 간의 데이터 공유 시스템 및 방법
CN113032478A (zh) * 2019-12-24 2021-06-25 航天信息股份有限公司 区块链系统及数据上链方法、装置、设备和介质
CN113032478B (zh) * 2019-12-24 2023-10-31 航天信息股份有限公司 区块链系统及数据上链方法、装置、设备和介质
KR20220116655A (ko) * 2021-02-15 2022-08-23 포항공과대학교 산학협력단 블록체인 확장성을 위한 예측적 트랜잭션 처리 시스템 및 방법

Similar Documents

Publication Publication Date Title
KR20190070888A (ko) 오프체인에서의 스마트 컨트랙트 채널 서비스 제공 장치 및 방법, 그리고 이를 포함하는 시스템
RU2649788C1 (ru) Способ и система для обработки запроса на транзакцию в распределенных системах обработки данных
US20200183757A1 (en) Blockchain-based resource allocation method and apparatus
CN109522362A (zh) 基于区块链数据的非完全数据同步方法、系统及设备
WO2020211460A1 (zh) 一种区块链节点的逻辑分片方法及其系统
WO2020001370A1 (zh) 一种多链并发交易方法
KR101932277B1 (ko) 블록체인 기반의 사용자 정보 공유를 위한 분산 원장 장치 및 분산 원장 방법
KR101827373B1 (ko) 채굴 제한을 위한 합의 알고리즘을 포함하는 블록윈도우 모듈 및 관리 서버 그리고 가상화폐 거래 시스템 및 방법
WO2020059865A1 (ja) 決済システム、決済方法、利用者装置、決済プログラム
CN113570466B (zh) 一种交易数据处理方法、装置以及可读存储介质
US9594696B1 (en) Systems and methods for automatic generation of parallel data processing code
CN105808736B (zh) 一种榜单数据更新方法、装置及系统
KR20190068799A (ko) 서비스 존 기반의 계층적 합의 방법 및 장치
CN113395359B (zh) 基于远程直接内存访问的文件币集群数据传输方法、系统
US9690713B1 (en) Systems and methods for effectively interacting with a flash memory
US20220006860A1 (en) Intelligent, decentralized and autonomous marketplace for distributed computing and storage
WO2020210979A1 (zh) 基于区块链网络的联合学习方法和联合学习设备
US9594688B1 (en) Systems and methods for executing actions using cached data
CN109857810B (zh) 基于区块链的数据同步装置及方法
WO2021190179A1 (zh) 一种同步处理方法和相关装置
CN110505311A (zh) 一种同构区块链跨链交互方法和系统
CN111966503B (zh) 智能合约账户的存储空间管理方法和装置
CN110458541B (zh) 基于区块链的对象置换方法及装置
Creer et al. Proving Ethereum for the clearing use case
CN110599343A (zh) 合约数据处理方法、相关设备及介质

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E601 Decision to refuse application