KR102080497B1 - Method for Exchanging Data between Channels of System based on Multi-Channel Blockchain and System thereof - Google Patents

Method for Exchanging Data between Channels of System based on Multi-Channel Blockchain and System thereof Download PDF

Info

Publication number
KR102080497B1
KR102080497B1 KR1020170143243A KR20170143243A KR102080497B1 KR 102080497 B1 KR102080497 B1 KR 102080497B1 KR 1020170143243 A KR1020170143243 A KR 1020170143243A KR 20170143243 A KR20170143243 A KR 20170143243A KR 102080497 B1 KR102080497 B1 KR 102080497B1
Authority
KR
South Korea
Prior art keywords
channel
data
channels
interworking
smart contract
Prior art date
Application number
KR1020170143243A
Other languages
Korean (ko)
Other versions
KR20190048349A (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 KR1020170143243A priority Critical patent/KR102080497B1/en
Publication of KR20190048349A publication Critical patent/KR20190048349A/en
Application granted granted Critical
Publication of KR102080497B1 publication Critical patent/KR102080497B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/14Multichannel or multilink protocols
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/18Network architectures or network communication protocols for network security using different networks or channels, e.g. using out of band channels
    • 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
    • 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/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1065Discovery involving distributed pre-established resource-based relationships among peers, e.g. based on distributed hash tables [DHT] 

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

멀티 채널 블록 체인 기반의 시스템에서 채널 간에 데이터를 교환하는 방법 및 그 시스템이 제공 된다. 본 발명의 일 실시예에 따른 채널간 데이터 교환 방법은 제1 채널이 수신한 제1 서명 요청(Endorsement Request)을 상기 제1 채널의 스마트 컨트랙트(Smart Contract)에 전달하는 단계, 상기 스마트 컨트랙트가 상기 제1 서명 요청에 기초하여 데이터 교환의 수행 여부를 판단하고, 채널 연동 정보를 조회하는 단계, 상기 제1 서명 요청에 상응하는 제1 쓰기 데이터를 상기 제1 채널의 블록에 반영하는 단계, 상기 채널 연동 정보를 채널 연동 처리부에 전달하는 단계 및 상기 채널 연동 처리부가 상기 채널 연동 정보에 기초하여 제2 서명 요청을 제2 채널에 전달하는 단계를 포함한다.Provided are a method and system for exchanging data between channels in a multi-channel blockchain based system. In a method of exchanging data between channels according to an embodiment of the present invention, transmitting a first endorsement request received by a first channel to a smart contract of the first channel, wherein the smart contract is Determining whether to perform data exchange based on a first signature request, inquiring channel interworking information, reflecting first write data corresponding to the first signature request to the block of the first channel, the channel And transmitting the interworking information to the channel interworking processor, and transmitting the second signature request to the second channel based on the channel interworking information.

Description

멀티 채널 블록 체인 기반 시스템의 채널간 데이터 교환 방법 및 그 시스템{Method for Exchanging Data between Channels of System based on Multi-Channel Blockchain and System thereof}Method for Exchanging Data between Channels of System based on Multi-Channel Blockchain and System

본 발명은 멀티 채널 블록 체인 기반의 시스템에서 채널 간에 데이터를 교환하는 방법 및 그 시스템에 관한 것이다. 보다 자세하게는, 서로 다른 구성을 가지는 채널 간에도 데이터를 교환할 수 있도록 함으로써 복수의 채널을 연동시킬 수 있는 복수의 채널을 가지는 블록 체인 기반 시스템과 그 시스템의 데이터 교환 방법에 관한 것이다.The present invention relates to a method and system for exchanging data between channels in a multi-channel blockchain based system. More specifically, the present invention relates to a blockchain-based system having a plurality of channels capable of interworking a plurality of channels by allowing data to be exchanged between channels having different configurations, and a method of exchanging data of the system.

블록 체인(Blockchain)은 공공 거래 장부라고도 불리우며, 기존에는 중앙 집중형 서버에 거래 기록 등을 보관하였으나, 블록 체인의 경우 거래에 참여하는 모든 사용자에게 거래 내역을 보내 주며 거래 때마다 이를 대조하도록 함으로써 데이터 위조를 막는 기술이다. 블록 체인이 적용된 대표적인 예로는 비트코인을 들 수 있다. 비트코인은 누구나 열람할 수 있는 장부에 거래 내역을 기록하며, 비트코인을 사용하는 다수의 컴퓨터가 주기적으로 기록을 검증하여 해킹을 방지한다. 리눅스 재단이 운영하고 있는 오픈소스 프로젝트인 HYPERLEDGER에서 IBM이 주도하고 있는 HYPERLEDGER FABRIC에서는 최근 HYPERLEDGER FABRIC 1.0을 출시하기도 하였다.Blockchain is also called a public transaction book, and in the past, transaction records were stored in a centralized server, but in the case of blockchain, the data is sent to all users participating in the transaction, and the data is checked for each transaction. It is a technique to prevent forgery. Bitcoin is a representative example of the blockchain. Bitcoin records transaction details in a book that anyone can read, and many computers using Bitcoin periodically verify records to prevent hacking. HYPERLEDGER FABRIC, led by IBM in the open source project HYPERLEDGER, run by the Linux Foundation, recently released HYPERLEDGER FABRIC 1.0.

블록 체인 기반 시스템의 주요한 특징 중의 하나는 시스템에 포함된 모든 사용자들은 정상적인 상태에서 모두 동일한 장부(동일 블록)를 유지하는 것이다. 그러나 금융거래 채널과 같은 데이터를 관리할 채널이 다면화되면서, 서로 다른 장부를 가지는 채널들을 운영할 필요성이 증가하였다. 또한 서로 다른 채널들 사이에 데이터를 교환할 필요성이 증가하였다. 예를 들어, 제1 금융 기관에서 사용자의 거래 내역을 가지고 있는 경우, 제2 금융 기관에서도 금융 거래를 위하여 해당 사용자의 거래 내역을 필요로 하는 경우가 있다. 그러나 제1 금융 기관의 채널에 속한 사용자와 제2 금융 기관의 채널에 속한 사용자는 동일하지 않으므로, 각 채널이 서로 별개의 장부를 유지하면서도 데이터를 교환할 필요가 있다.One of the main features of a blockchain-based system is that all users in the system maintain the same book (same block) under normal conditions. However, as the channels for managing data, such as financial trading channels, become more diversified, the need to operate channels with different books increases. In addition, the need to exchange data between different channels has increased. For example, when the first financial institution has a transaction history of the user, the second financial institution may need the transaction history of the user for financial transactions. However, since the users belonging to the channels of the first financial institution and the users belonging to the channels of the second financial institution are not the same, each channel needs to exchange data while maintaining separate books.

미국 공개특허공보 2017/0279774 A1United States Patent Application Publication No. 2017/0279774 A1

본 발명의 일 실시 예가 해결하고자 하는 기술적 과제는, 복수 개의 채널을 가지는 블록 체인 시스템에서 각 채널들이 데이터를 교환할 수 있도록 하는 방법 및 그 시스템을 제공하는 것이다.An object of the present invention is to provide a method and system for enabling each channel to exchange data in a blockchain system having a plurality of channels.

또한, 본 발명의 일 실시 예가 해결하고자 하는 다른 기술적 과제는, 채널 간에 데이터를 교환함에 있어서 한 채널이 다른 채널로 데이터를 제공할 때 데이터의 형식이 다른 경우에도 적절한 데이터를 제공할 수 있도록 하는 방법 및 그 시스템을 제공하는 것이다.In addition, another technical problem to be solved by an embodiment of the present invention, when exchanging data between channels when one channel to provide data to another channel when the data format is different so that it is possible to provide appropriate data And the system.

본 발명의 일 실시 예가 해결하고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명의 기술분야에서의 통상의 기술자에게 명확하게 이해 될 수 있을 것이다.Technical problems to be solved by one embodiment of the present invention are not limited to the technical problems mentioned above, and other technical problems not mentioned above are clearly understood by those skilled in the art from the following description. Could be.

상기 기술적 과제를 해결하기 위한, 본 발명의 일 실시예에 따라 제1 채널 및 제2 채널을 포함하는 복수의 채널을 가진 블록 체인을 기반으로 한 데이터 관리 시스템이 상기 복수의 채널 간에 데이터를 교환하는 방법은, 상기 제1 채널이 수신한 제1 서명 요청(Endorsement Request)을 상기 제1 채널의 스마트 컨트랙트(Smart Contract)에 전달하는 단계, 상기 스마트 컨트랙트가 상기 제1 서명 요청에 기초하여 데이터 교환의 수행 여부를 판단하고, 채널 연동 정보를 조회하는 단계, 상기 제1 서명 요청에 상응하는 제1 쓰기 데이터를 상기 제1 채널의 블록에 반영하는 단계, 상기 채널 연동 정보를 채널 연동 처리부에 전달하는 단계 및 상기 채널 연동 처리부가 상기 채널 연동 정보에 기초하여 제2 서명 요청을 제2 채널에 전달하는 단계를 포함할 수 있다.In order to solve the above technical problem, according to an embodiment of the present invention, a data management system based on a block chain having a plurality of channels including a first channel and a second channel exchanges data between the plurality of channels. The method may include forwarding a first endorsement request received by the first channel to a smart contract of the first channel, wherein the smart contract is configured to exchange data based on the first signing request. Determining whether to perform the operation, inquiring channel interworking information, reflecting first write data corresponding to the first signature request to the block of the first channel, and transmitting the channel interworking information to a channel interworking processor. And transmitting, by the channel interworking processor, a second signature request to a second channel based on the channel interworking information.

또한, 다른 일 실시 예에 따른 채널간 데이터 교환 방법은, 상기 채널 연동 처리부가 상기 제2 채널에 저장될 제2 쓰기 데이터를 조합하는 단계 및 상기 제2 쓰기 데이터에 기초하여 상기 제2 서명 요청을 생성하는 단계를 더 포함할 수 있다.According to another exemplary embodiment, a method of exchanging data between channels may include: combining, by the channel interworking processor, second write data to be stored in the second channel, and performing the second signature request based on the second write data. The method may further include generating.

또한, 또 다른 일 실시 예에 따르면, 상기 복수의 채널은 제3 채널을 더 포함하고, 상기 조합하는 단계는 상기 제1 쓰기 데이터의 필드 중에서 상기 제2 쓰기 데이터의 제1 필드와 대응되는 필드가 부존재하는 경우, 상기 제3 채널로부터 상기 제3채널로부터 읽은 데이터로 상기 제1 필드를 구성하는 것을 특징으로 할 수 있다.According to another embodiment, the plurality of channels may further include a third channel, and the combining may include a field corresponding to the first field of the second write data among the fields of the first write data. If not present, the first field may be configured using data read from the third channel.

또한, 또 다른 일 실시 예에 따르면, 상기 조합하는 단계는 상기 채널 연동 정보 내에 정의된 정보에 기초하여 상기 조합하는 단계의 수행 여부 및 상기 제3 채널을 결정하는 단계, 상기 조합하는 단계를 수행하는 것으로 결정된 경우, 상기 제3 채널에 필요한 데이터를 요청하는 단계, 상기 제3 채널로부터 수신된 데이터에 기초하여 상기 제2 쓰기 데이터를 조합하는 단계를 포함할 수 있다.According to another embodiment, the combining may include determining whether to perform the combining and the third channel based on the information defined in the channel interworking information, and performing the combining. And determining that the data is needed for the third channel, and combining the second write data based on the data received from the third channel.

또한, 또 다른 일 실시 예에 따르면, 상기 채널 연동 정보는 상기 제2 쓰기 데이터의 데이터 저장 형식에 대한 정보를 포함하고, 상기 조합하는 단계는 상기 데이터 저장 형식에 기초하여 상기 제2 쓰기 데이터를 조합하는 것을 특징으로 할 수 있다.According to another embodiment, the channel interworking information includes information on a data storage format of the second write data, and the combining may include combining the second write data based on the data storage format. It can be characterized by.

또한, 또 다른 일 실시 예에 따르면, 상기 스마트 컨트랙트는 상기 제1 채널에 종속되는 것을 특징으로 할 수 있다.According to another embodiment, the smart contract may be dependent on the first channel.

또한, 또 다른 일 실시 예에 따른 채널간 데이터 교환 방법은, 상기 스마트 컨트랙트가 상기 제1 서명 요청을 수신함에 따라 트랜잭션 데이터의 읽기/쓰기 처리를 수행하는 단계를 더 포함하는 것을 특징으로 할 수 있다.The method of exchanging data between channels according to another embodiment may further include performing read / write processing of transaction data when the smart contract receives the first signature request. .

또한, 또 다른 일 실시 예에 따르면, 상기 채널 연동 정보를 전달하는 단계는 상기 스마트 컨트랙트가 상기 서명 요청에 대한 응답으로 제1 쓰기 데이터, 채널 연동 정보 및 서명응답을 상기 제1 채널에 전달하는 단계 및 상기 제1 채널이 상기 제1 조직의 채널 연동 처리부에 상기 채널 연동 정보 및 쓰기 데이터를 전송하는 단계를 포함할 수 있다.Also, according to another embodiment, the transmitting of the channel interworking information may include: transmitting, by the smart contract, first write data, channel interworking information, and a signature response to the first channel in response to the signature request. And transmitting, by the first channel, the channel interworking information and the write data to the channel interworking processor of the first organization.

또한, 또 다른 일 실시 예에 따르면, 상기 제2 서명 요청을 상기 제2 채널에 전송하는 단계는 상기 제2 서명 요청을 전송한 클러스터에 상기 제2 채널이 존재하지 않는 경우에는 서명 실패(Endorsement fail) 처리하고, 상기 제2 채널이 존재하는 경우에는 상기 제2 채널에 대한 트랜잭션 데이터의 읽기/쓰기 처리를 수행하는 단계를 포함할 수 있다.According to yet another embodiment, the step of transmitting the second signature request to the second channel may be performed if the second channel does not exist in the cluster that transmitted the second signature request. Processing and reading / writing of transaction data for the second channel when the second channel exists.

또한, 또 다른 일 실시 예에 따르면, 상기 채널 연동 정보는 상기 채널 간에 데이터 교환을 수행하는 데이터 연동 조건, 데이터 교환의 대상이 되는 상기 제2 채널 및 상기 제2 채널에 제공될 데이터의 저장 형식을 정의하는 정보를 포함하는 것을 특징으로 할 수 있다.According to another embodiment, the channel interworking information may include data interworking conditions for exchanging data between the channels, a storage format of data to be provided to the second channel and the second channel to be exchanged. It may be characterized by including the information to define.

상기 기술적 과제를 해결하기 위한, 본 발명의 일 실시예에 따른 제1 채널 및 제2 채널을 포함하는 복수의 채널을 가진 블록 체인을 기반으로 한 데이터 관리 시스템은, 상기 제1 채널에 포함된 스마트 컨트랙트 및 상기 제1 채널 및 상기 제2 채널 간의 데이터 교환을 수행하는 채널 연동 처리부를 포함하며, 상기 채널 연동 처리부는 상기 스마트 컨트랙트로부터 채널 연동 정보 및 제1 쓰기 데이터를 수신하는 응답부, 상기 채널 연동 정보에 기초하여 상기 제2 채널에 쓰기 처리될 제2 쓰기 데이터를 조합하는 데이터 조합부 및 상기 제2 채널에 상기 제2 쓰기 데이터를 저장할 것을 요청하는 채널 저장 수행부를 포함할 수 있다.In order to solve the above technical problem, a data management system based on a block chain having a plurality of channels including a first channel and a second channel according to an embodiment of the present invention is a smart device included in the first channel. And a channel interworking processor configured to exchange data between the contract and the first channel and the second channel, wherein the channel interworking processor is configured to receive channel interworking information and first write data from the smart contract, and the channel interworking process. And a data combination unit for combining the second write data to be write-processed to the second channel based on the information, and a channel storage performing unit to request to store the second write data in the second channel.

또한, 다른 일 실시 예에 따르면, 상기 채널 연동 정보는 상기 스마트 컨트랙트에 포함된 저장부에 저장된 것을 특징으로 할 수 있다.In addition, according to another embodiment, the channel interworking information may be stored in a storage unit included in the smart contract.

또한, 또 다른 일 실시 예에 따르면, 상기 스마트 컨트랙트는 제1 서명 요청이 수신됨에 따라 데이터를 저장하고, 저장된 데이터가 상기 제2 채널과 데이터 교환이 필요한 정보인지 판단하는 것을 특징으로 할 수 있다.According to another embodiment, the smart contract may store data as the first signature request is received and determine whether the stored data is information requiring data exchange with the second channel.

도 1은 복수의 채널을 가지는 블록체인 기반의 데이터 관리 시스템의 구성을 설명하기 위한 예시도이다.
도 2는 동일한 조직을 가지는 채널 간에 데이터를 교환하는 구조를 설명하기 위한 도면이다.
도 3은 서로 다른 조직을 가지는 채널 간에 데이터 교환을 시도하는 경우를 설명하기 위한 도면이다.
도 4는 일 실시 예에 따라 제1 채널과 제2 채널 간에 데이터를 교환하는 프로세스를 도시한 도면이다.
도 5는 일 실시 예에 따라 채널 연동 처리부가 제1 채널과 제2 채널 간에 데이터를 교환하는 구조를 설명하기 위한 도면이다.
도 6은 일 실시 예에 따른 스마트 컨트랙트의 구조를 설명하기 위한 도면이다.
도 7은 일 실시 예에 따른 채널 연동 처리부의 구조를 설명하기 위한 도면이다.
도 8은 일 실시 예에 따라 제1 조직의 제1 채널에 데이터가 저장되는 경우, 제2 채널로 데이터를 제공하도록 채널 연동 정보가 설정된 경우에 블록 체인 시스템이 동작하는 프로세스를 설명하기 위한 도면이다.
도 9는 일 실시예에 따라 제2 조직의 제2 채널에 데이터가 저장되는 프로세스를 설명하기 위한 도면이다.
도 10은 일 실시 예에 따른 채널 연동부의 부트스트랩(Bootstrap) 프로세스를 설명하기 위한 도면이다.
1 is an exemplary view for explaining the configuration of a blockchain-based data management system having a plurality of channels.
2 is a diagram for explaining a structure of exchanging data between channels having the same organization.
3 is a diagram illustrating a case of attempting data exchange between channels having different organizations.
4 is a diagram illustrating a process of exchanging data between a first channel and a second channel according to an embodiment.
5 is a diagram for describing a structure in which a channel interworking processor exchanges data between a first channel and a second channel, according to an exemplary embodiment.
6 is a view for explaining the structure of a smart contract according to an embodiment.
7 is a diagram illustrating a structure of a channel interworking processor according to an exemplary embodiment.
FIG. 8 is a diagram for describing a process of operating a blockchain system when channel interworking information is set to provide data to a second channel when data is stored in a first channel of a first organization, according to an embodiment. .
9 is a diagram for describing a process of storing data in a second channel of a second tissue, according to an embodiment.
10 is a diagram illustrating a bootstrap process of a channel interworking unit according to an exemplary embodiment.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 게시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 게시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. Advantages and features of the present invention, and methods for achieving them will be apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but can be implemented in various forms, and only the embodiments are intended to complete the disclosure of the present invention, and the general knowledge in the art to which the present invention pertains. It is provided to fully convey the scope of the invention to those skilled in the art, and the present invention is defined only by the scope of the claims. Like reference numerals refer to like elements throughout.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.Unless otherwise defined, all terms used in the present specification (including technical and scientific terms) may be used as meanings that can be commonly understood by those skilled in the art. In addition, terms that are defined in a commonly used dictionary are not ideally or excessively interpreted unless they are specifically defined clearly. The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. In this specification, the singular also includes the plural unless specifically stated otherwise in the phrase.

본 명세서 전체에서, '교환'의 의미는 양방향으로 데이터를 제공하고 수신하는 경우로 한정되는 것이 아니며, 일방으로 데이터를 제공하거나 수신하는 경우를 포함한다.Throughout this specification, the meaning of "exchange" is not limited to the case of providing and receiving data in both directions, and includes the case of providing or receiving data in one direction.

본 명세서 전체에서, '조직(Organization)'이라 함은 블록 체인을 구성하는 구성요소를 의미할 수 있다. 조직은 하나 이상의 하드웨어 피어(peer)를 가지는 클러스터로 구성될 수 있으나, 이에 한정되지 아니한다.Throughout this specification, "organization" may refer to a component constituting the blockchain. An organization may be configured as a cluster having one or more hardware peers, but is not limited thereto.

이하, 도면들을 참조하여 본 발명의 몇몇 실시예들을 설명한다.Hereinafter, some embodiments of the present invention will be described with reference to the drawings.

도 1은 복수의 채널을 가지는 블록체인 기반의 데이터 관리 시스템의 구성을 설명하기 위한 예시도이다.1 is an exemplary view for explaining the configuration of a blockchain-based data management system having a plurality of channels.

본 발명의 일 실시 예에 따른 멀티 채널 블록 체인 기반 시스템은 복수의 채널들(100-1, 100-2, 100-3)을 포함할 수 있다. 각 채널들(100-1, 100-2, 100-3)은 복수의 조직들로 구성될 수 있다. 도 1에 도시된 예에 따르면, 조직들(110-1, 110-3, 110-4, 110-5)은 채널 A(100-1), 채널 B(100-2), 및 채널 C(100-3)를 가진다. 또한, 조직(110-2)은 채널 A(100-1) 및 채널 B(100?2)를 가진다. 또한, 조직(110-6)은 채널 A(100-1) 및 채널 C(100-3)를 가진다. 따라서, 채널 A(100-1)는 조직들 (110-1, 110-2, 110-3, 110-4, 110-5, 110-6)로 구성되고, 채널 B(100-2)는 조직들 (110-1, 110-2, 110-3, 110-4)로 구성되고, 채널 C(100-3)은 조직들 (110-1, 110-3, 110-4, 110-5, 110-6)로 구성된다.A multi-channel block chain based system according to an embodiment of the present invention may include a plurality of channels 100-1, 100-2, and 100-3. Each channel 100-1, 100-2, 100-3 may be composed of a plurality of organizations. According to the example shown in FIG. 1, organizations 110-1, 110-3, 110-4, and 110-5 are channel A 100-1, channel B 100-2, and channel C 100. -3) In addition, tissue 110-2 has channel A 100-1 and channel B 100-2. In addition, tissue 110-6 has channel A 100-1 and channel C 100-3. Thus, channel A 100-1 is composed of organizations 110-1, 110-2, 110-3, 110-4, 110-5, 110-6, and channel B 100-2 is organized Fields 110-1, 110-2, 110-3, 110-4, and channel C 100-3 is organized into organizations 110-1, 110-3, 110-4, 110-5, 110. -6).

여기서, 각 채널들(100-1, 100-2, 100-3)은 각각 1개의 장부(Ledger)를 가진다. 각 장부들은 서로 독립적으로 분리된다. 각 채널(100-1, 100-2, 100-3)의 블록 체인에 대한 블록은 조직들(110-1, 110-2, 110-3, 110-4, 110-5, 110-6) 중 채널이 설정된 조직들 간에만 동일한 블록을 유지한다.Here, each of the channels 100-1, 100-2, and 100-3 has one ledger each. The books are separated independently from each other. The block for the blockchain of each channel 100-1, 100-2, 100-3 is one of the organizations 110-1, 110-2, 110-3, 110-4, 110-5, 110-6. Maintain the same block only between organizations where channels are established.

그러나, 도 1에 도시된 바와 같이, 블록 체인 시스템이 복수의 채널을 가지도록 구성된 경우에, 한 채널에 데이터가 저장되는 경우 다른 채널에도 저장된 데이터와 관련된 데이터가 저장되어야 하는 경우가 있다. 예를 들어, 채널 A(100-1)가 제2 금융 기관의 거래 내역에 대한 블록 체인의 채널이고, 채널 B(100-2)가 제1 금융 기관의 거래 내역에 대한 블록 체인의 채널인 경우를 들 수 있다. 여기서, 제2 금융 기관의 거래 내역이 발생하는 경우, 제2 금융 기관의 거래 내역 중 적어도 일부가 제1 금융 기관의 거래 내역에 저장되어야 할 필요가 있는 경우가 존재한다. 본 명세서에서, 이와 같이 한 채널에 데이터가 저장되는 경우 다른 채널에 관련된 데이터가 저장되도록 설정된 것을 두 채널이 '연동되었다'라고 언급될 수 있다. 또한, 본 명세서에서는 한 채널에 데이터가 저장됨에 따라 다른 채널에 관련된 데이터가 저장되는 것을 두 채널 간에 '데이터를 교환한다'고 언급할 수 있다.However, as shown in FIG. 1, when the blockchain system is configured to have a plurality of channels, when data is stored in one channel, data related to the stored data may be stored in another channel. For example, if channel A 100-1 is a channel of the blockchain for the transaction history of the second financial institution, and channel B 100-2 is a channel of the blockchain for the transaction history of the first financial institution. Can be mentioned. Here, when the transaction details of the second financial institution occurs, there is a case where at least some of the transaction details of the second financial institution need to be stored in the transaction details of the first financial institution. In this specification, when data is stored in one channel as described above, two channels may be referred to as 'interlocked' when data related to another channel is set to be stored. In addition, in the present specification, as data is stored in one channel, data related to another channel may be referred to as 'exchanging data' between two channels.

도 2는 동일한 조직을 가지는 채널 간에 데이터를 교환하는 구조를 설명하기 위한 도면이다.2 is a diagram for explaining a structure of exchanging data between channels having the same organization.

도 2에 도시된 예시에 따르면, 제1 조직(221), 제2 조직(222) 및 제3 조직(223)은 모두 제1 채널(211) 및 제2 채널(212)을 가진다. 또한, 조직들(221, 222, 223)이 가지는 채널들(211, 212)에 대해 각각 제1 스마트 컨트랙트(231, 233, 245)와 제2 스마트 컨트랙트(232, 234, 236)가 생성될 수 있다.According to the example shown in FIG. 2, the first tissue 221, the second tissue 222, and the third tissue 223 all have a first channel 211 and a second channel 212. In addition, first smart contracts 231, 233, and 245 and second smart contracts 232, 234, and 236 may be generated for the channels 211 and 212 of the organizations 221, 222, and 223, respectively. have.

스마트 컨트랙트(Smart Contract)는 조직에 대한 입력, 출력 및 컴퓨팅을 수행할 수 있다. 즉, 한 채널의 조직에 대해 읽기 및/또는 쓰기를 수행하고자 하는 경우 스마트 컨트랙트에 데이터의 읽기/쓰기를 요청할 수 있다. 또한, 스마트 컨트랙트는 블록 체인이 동작하는 과정에서 수행되는 합의(Consensus) 알고리즘의 첫 번째 과정인 서명(Endorsement) 과정을 수행한다.Smart Contracts can perform input, output, and computing for organizations. That is, when a read and / or write is performed for an organization of one channel, a smart contract may be requested to read / write data. In addition, the smart contract performs an endorsement process, which is the first process of the consensus algorithm performed during the operation of the blockchain.

사용자 단말(10)이 제1 채널(211)에 데이터를 저장하고자 하는 경우, 사용자 단말(10)은 정책에 따라 제1 채널(211)의 제1 스마트 컨트랙트(231, 233, 235)에 각각 서명 요청(Endorsement Request)를 전달한다. 도 2의 예시에서, 제1 스마트 컨트랙트들(231, 233, 235)은 제1 채널(211)에 데이터를 저장할 경우 제2 채널(212)에도 데이터를 저장하도록 설정되어 있다. 따라서, 제1 스마트 컨트랙트들(231, 233, 235) 각각은 제2 채널(212)에 데이터를 저장하기 위하여 제2 스마트 컨트랙트들(232, 234, 236)에 서명 요청을 전송하게 된다.When the user terminal 10 intends to store data in the first channel 211, the user terminal 10 signs the first smart contracts 231, 233, and 235 of the first channel 211 according to a policy, respectively. Deliver request (Endorsement Request). In the example of FIG. 2, the first smart contracts 231, 233, and 235 are configured to store data in the second channel 212 when data is stored in the first channel 211. Accordingly, each of the first smart contracts 231, 233, and 235 transmits a signature request to the second smart contracts 232, 234, and 236 in order to store data in the second channel 212.

이후, 제1 스마트 컨트랙트들(231, 233, 235) 각각이 제2 스마트 컨트랙트들(232, 234, 236)로부터 서명 응답을 수신하고, 이에 따라 제1 스마트 컨트랙트들(231, 233, 235)이 사용자 단말(10)에 서명 응답을 전달함으로써 서명이 완료될 수 있다. 따라서, 제1 채널(211) 및 제2 채널(212)에 데이터가 성공적으로 저장될 수 있다.Thereafter, each of the first smart contracts 231, 233, 235 receives a signature response from the second smart contracts 232, 234, 236, whereby the first smart contracts 231, 233, 235 The signature can be completed by passing the signature response to the user terminal 10. Thus, data may be successfully stored in the first channel 211 and the second channel 212.

다만, 도 2에 도시된 바와 같이 제1 채널(211) 및 제2 채널(212)을 구성하는 조직이 모두 동일한 경우에는 제1 채널(211) 및 제2 채널(212)을 별도로 구성할 필요성이 낮다.However, as shown in FIG. 2, when the organizations constituting the first channel 211 and the second channel 212 are the same, it is necessary to separately configure the first channel 211 and the second channel 212. low.

도 3은 서로 다른 조직을 가지는 채널 간에 데이터 교환을 시도하는 경우를 설명하기 위한 도면이다.3 is a diagram illustrating a case of attempting data exchange between channels having different organizations.

도 2에 도시된 예시와 다르게, 도 3에 도시된 예시에 따르면 제1 조직(221)은 제2 채널(212)을 가지지 않는다. 이 경우, 제1 채널(211)의 스마트 컨트랙트들이 제1 조직(221)의 제2 채널(212)에 대해 서명 요청을 전달하고자 할 때, 제1 조직(221)에는 제2 채널(212)이 존재하지 않으므로 제1 채널(211)의 제1 조직(221)의 제2 채널(212)에 대한 서명 실패(Endorsement Fail)(310)이 발생하게 된다. 이 경우, 서명 실패(310)로 인하여 제1 채널(211)에 대한 서명 요청에 대해서도 서명 실패(320)가 발생하므로, 제1 채널(211) 및 제2 채널(212)에 데이터를 저장할 수 없게 되는 문제가 발생한다.Unlike the example shown in FIG. 2, according to the example shown in FIG. 3, the first tissue 221 does not have a second channel 212. In this case, when the smart contracts of the first channel 211 want to deliver a signature request for the second channel 212 of the first organization 221, the second channel 212 is connected to the first organization 221. Since it does not exist, a signature failure 310 for the second channel 212 of the first organization 221 of the first channel 211 occurs. In this case, since the signature failure 320 occurs for the signature request for the first channel 211 due to the signature failure 310, data cannot be stored in the first channel 211 and the second channel 212. Problem occurs.

도 4는 일 실시 예에 따라 제1 채널과 제2 채널 간에 데이터를 교환하는 프로세스를 도시한 도면이다.4 is a diagram illustrating a process of exchanging data between a first channel and a second channel according to an embodiment.

먼저, 제1 채널이 수신한 제1 서명 요청을 제1 채널의 제1 스마트 컨트랙트에 전달할 수 있다. 여기서, 제1 스마트 컨트랙트는 제1 채널에 종속된 스마트 컨트랙트를 의미한다. 제1 서명 요청은 사용자 단말이 제1 채널에 데이터를 저장하기 위한 서명을 요청하는 정보를 포함할 수 있다.First, the first signature request received by the first channel may be delivered to the first smart contract of the first channel. Here, the first smart contract refers to a smart contract dependent on the first channel. The first signature request may include information for requesting a signature for the user terminal to store data in the first channel.

이후, 제1 스마트 컨트랙트는 저장할 데이터에 대하여 데이터 교환을 수행할 지 여부를 판단할 수 있다. 예를 들어, 제1 조직의 제1 채널에 데이터를 저장할 경우 제2 채널에 데이터를 저장하도록 하는 채널 연동 정보가 제1 스마트 컨트랙트에 포함되어 있는 경우, 제1 스마트 컨트랙트는 제2 채널에 대해 데이터 교환을 수행하는 것으로 판단할 수 있다. 반대로, 제1 조직의 제1 채널에 데이터를 저장하는 것에 대하여, 채널 연동 정보가 존재하지 않는 경우 제1 스마트 컨트랙트는 데이터 교환을 수행하지 않는 것으로 판단할 수 있다.Thereafter, the first smart contract may determine whether to exchange data with respect to the data to be stored. For example, when storing data in the first channel of the first organization, if the first smart contract includes channel interworking information for storing the data in the second channel, the first smart contract includes data for the second channel. It can be determined that the exchange is performed. On the contrary, for storing data in the first channel of the first organization, when the channel interworking information does not exist, the first smart contract may determine that the data exchange is not performed.

단계 S420에서 데이터 교환을 수행하는 것으로 판단한 경우, 제1 스마트 컨트랙트는 단계 S430에서 채널 연동 정보를 조회할 수 있다. 여기서, 채널 연동 정보는 한 채널이 다른 채널에 데이터를 제공하도록 하는 프로세스에 대한 룰 세트를 포함할 수 있다. 예를 들어, 채널 연동 정보는 데이터 연동 조건, 데이터 교환 대상 채널 및 교환 대상 채널에 저장될 데이터의 저장 형식을 정의하는 정보를 포함할 수 있다. 여기서, 데이터 연동 조건은 채널 간에 데이터를 교환함으로써 채널이 연동되도록 하는 동작을 수행하도록 하는 조건을 의미한다. 즉, 데이터 연동 조건이 만족되는 경우에 데이터 관리 시스템은 룰 세트를 동작시팀으로써 채널 간의 데이터 교환을 실행할 수 있다. 데이터 교환 대상 채널은, 스마트 컨트랙트가 속한 채널에 데이터가 저장된 경우, 데이터가 저장된 채널과 연동되어 데이터를 저장할 교환 대상 채널을 정의하는 정보일 수 있다. 예를 들어, 제1 조직의 제1 채널에 데이터를 저장할 경우, 제2 채널에 데이터를 저장하도록 설정된 경우, 데이터 교환 대상 채널은 제2 채널을 지정할 수 있다. 교환 대상 채널에 저장될 데이터의 저장 형식은 교환 대상 채널에 저장될 데이터의 필드를 정의하는 정보를 포함할 수 있다. 또한, 일 실시 예에 따르면, 제1 스마트 컨트랙트는 제1 서명 요청에 상응하는 트랜잭션 데이터의 읽기/쓰기 처리를 수행할 수 있다. 이후, 단계 S440에서 제1 스마트 컨트랙트는 제1 쓰기 데이터를 제1 채널의 블록에 반영할 수 있다.If it is determined in step S420 to perform data exchange, the first smart contract may inquire channel interworking information in step S430. Here, the channel interworking information may include a rule set for a process for allowing one channel to provide data to another channel. For example, the channel interworking information may include information defining a data interworking condition, a data exchange target channel, and a storage format of data to be stored in the exchange target channel. Here, the data interworking condition means a condition for performing an operation for interlocking channels by exchanging data between channels. That is, when the data interworking condition is satisfied, the data management system can execute data exchange between channels by operating the rule set. When data is stored in a channel to which a smart contract belongs, the data exchange target channel may be information defining an exchange target channel to store data in association with a channel in which the data is stored. For example, when data is stored in the first channel of the first organization, and when data is set to be stored in the second channel, the data exchange target channel may designate the second channel. The storage format of the data to be stored in the exchange target channel may include information defining a field of data to be stored in the exchange target channel. According to an embodiment of the present disclosure, the first smart contract may perform read / write processing of transaction data corresponding to the first signature request. Thereafter, in operation S440, the first smart contract may reflect the first write data to the block of the first channel.

이후, 단계 S450에서 제1 스마트 컨트랙트는 채널 연동 정보를 연동 처리부에 전달할 수 있다. 일부 실시 예에 따르면, 제1 스마트 컨트랙트는 채널 연동 정보와 함께 제1 쓰기 데이터를 연동 처리부에 함께 전달할 수 있다.Thereafter, in operation S450, the first smart contract may transmit channel interworking information to the interworking processor. According to some embodiments, the first smart contract may transmit the first write data together with the channel interworking information to the interworking processor.

이후, 단계 S460에서, 채널 연동 정보를 수신한 채널 연동 처리부는 제2 서명 요청을 제2 채널에 전달할 수 있다. 제2 서명 요청을 제2 채널에 전달함으로써, 단계 S470에서 제2 채널의 제2 스마트 컨트랙트의 동작에 의해 제2 쓰기 데이터가 제2 채널의 블록에 반영될 수 있다.Thereafter, in operation S460, the channel interworking processor that has received the channel interworking information may transmit the second signature request to the second channel. By transmitting the second signature request to the second channel, in operation S470, the second write data may be reflected in the block of the second channel by the operation of the second smart contract of the second channel.

일 예에 따르면, 제1 채널에 저장된 데이터의 저장 형식과 채널 연동 정보에 포함된 데이터의 저장 형식이 동일한 경우, 채널 연동 처리부는 제1 채널에 저장된 데이터와 동일한 데이터를 교환 대상 채널(예를 들어, 제2 채널)에 저장할 수 있다. 또는, 채널 연동 정보에 데이터의 저장 형식에 대한 정보가 포함되어 있지 않은 경우에도 채널 연동 처리부는 제1 채널에 저장된 데이터와 동일한 데이터를 교환 대상 채널(예를 들어, 제2 채널)에 저장할 수 있다. 제1 채널에 저장된 데이터의 저장 형식과 채널 연동 정보에 포함된 데이터의 저장 형식이 동일하지 않은 경우, 채널 연동 처리부는 채널 연동 정보에 포함된 데이터의 저장 형식에 기초하여 제2 쓰기 데이터를 조합하는 프로세스를 수행할 수 있다. 채널 연동 처리부는 제2 쓰기 데이터를 제2 채널에 저장하기 위한 제2 서명 요청을 생성하고 제2 채널에 전달할 수 있다. 즉, 제1 채널에 저장된 제1 쓰기 데이터의 필드 중에서 제2 채널에 저장될 제2 쓰기 데이터의 제1 필드와 대응되는 정보가 부존재하는 경우, 채널 연동 처리부는 제1 필드를 구성하기 위한 정보를 제3 채널에 요청할 수 있다. 채널 연동 처리부는 제3 채널로부터 제1 필드를 구성하는 정보를 읽어들여 제1 필드를 구성함으로써 제2 쓰기 데이터를 조합할 수 있다. 예를 들어, 제1 채널에 저장되는 쓰기 데이터가 doctype, docdate 및 Data 세 개의 필드로 구성되는 {doctype: D1, docdate: D2, data1: D3}일 수 있다. 여기서, 채널 연동 정보에 포함된 데이터의 저장 형식은 doctype, docdate 및 Aaa 세 개의 필드로 구성되는 경우, 제2 채널에는 doctype, docdate의 값은 D1 및 D2의 값이 설정되고, data1 필드는 버려지고, Aaa 필드는 제3 채널로부터 데이터를 읽어온 데이터로 구성될 수 있다.According to an example, when the storage format of the data stored in the first channel and the storage format of the data included in the channel interworking information are the same, the channel interworking processor may exchange the same data as the data stored in the first channel (eg , Second channel). Alternatively, even when the channel interworking information does not include information on the data storage format, the channel interworking processor may store the same data as the data stored in the first channel in the exchange target channel (eg, the second channel). . If the storage format of the data stored in the first channel and the storage format of the data included in the channel interworking information are not the same, the channel interworking processor combines the second write data based on the storage format of the data included in the channel interlocking information. The process can be performed. The channel interworking processor may generate a second signature request for storing the second write data in the second channel and transmit the second signature request to the second channel. That is, when there is no information corresponding to the first field of the second write data to be stored in the second channel among the fields of the first write data stored in the first channel, the channel interworking processor may provide information for configuring the first field. May make a request to the third channel. The channel interworking processor may combine the second write data by reading information constituting the first field from the third channel and configuring the first field. For example, the write data stored in the first channel may be {doctype: D1, docdate: D2, data1: D3} including three fields doctype, docdate, and Data. Here, when the storage format of the data included in the channel interworking information is composed of three fields, doctype, docdate, and Aaa, doctype and docdate are set to D1 and D2 for the second channel, and the data1 field is discarded. The Aaa field may be composed of data read from a third channel.

또한, 단계 S420에서 데이터 교환을 수행하지 않는 것으로 판단한 경우, 제1 스마트 컨트랙트는 단계 S445에서 제1 서명 요청에 상응하는 데이터를 제1 채널의 블록체인의 블록에만 반영할 수 있다.In addition, when it is determined in step S420 that data exchange is not performed, the first smart contract may reflect data corresponding to the first signature request only in the block of the blockchain of the first channel in step S445.

도 5는 일 실시 예에 따라 채널 연동 처리부가 제1 채널과 제2 채널 간에 데이터를 교환하는 구조를 설명하기 위한 도면이다.5 is a diagram for describing a structure in which a channel interworking processor exchanges data between a first channel and a second channel, according to an exemplary embodiment.

도 5를 참조하면, 사용자 단말(10)로부터 제1 채널(211)의 제1 스마트 컨트랙트(231)에 제1 서명 요청이 전달된 경우, 제1 스마트 컨트랙트(231)는 제1 채널에 제1 서명 요청에 상응하는 데이터를 저장하고, 채널 연동 처리부(500)에 채널 연동 정보 및 제1 쓰기 데이터를 전달할 수 있다.Referring to FIG. 5, when the first signature request is transmitted from the user terminal 10 to the first smart contract 231 of the first channel 211, the first smart contract 231 may be configured to have a first channel in the first channel. Data corresponding to the signature request may be stored, and the channel interworking information and the first write data may be transmitted to the channel interworking processor 500.

채널 연동 정보를 수신한 채널 연동 처리부는 채널 연동 정보에 기초하여 제2 채널에 제2 서명 요청을 전달할 수 있다. 여기서, 제2 조직(222) 및 제3 조직(223)은 제2 채널(212)을 가지지만, 제1 조직(221)은 제2 채널(212)을 가지지 않으므로 제1 조직에 대해서는 서명 실패(310)가 발생할 수 있다.The channel interworking processor that receives the channel interworking information may transmit a second signature request to the second channel based on the channel interworking information. Here, the second organization 222 and the third organization 223 have a second channel 212, but since the first organization 221 does not have a second channel 212, the signing failure for the first organization ( 310 may occur.

그러나, 채널 연동 처리부(500)가 존재함으로써 이미 제1 채널에는 데이터가 저장된 이후이며, 채널 연동 처리부(500)의 동작으로 인해 제2 조직(222) 및 제3 조직(223)의 제2 채널(212)에도 데이터가 저장될 수 있다.However, since the channel interworking processing unit 500 exists, data has already been stored in the first channel, and the second channel (2) of the second organization 222 and the third organization 223 due to the operation of the channel interworking processing unit 500. Data may also be stored at 212).

도 6은 일 실시 예에 따른 스마트 컨트랙트의 구조를 설명하기 위한 도면이다.6 is a view for explaining the structure of a smart contract according to an embodiment.

일 실시 예에 따른 스마트 컨트랙트(600)는 저장부(610), 조건 판단부(620) 및 교환 요청부(630)를 포함할 수 있다. 저장부(610)는 채널 연동 정보를 저장할 수 있다. 스마트 컨트랙트(600)가 데이터 저장에 대한 요청을 수신하는 경우, 조건 판단부(620)는 요청 받은 데이터를 저장하고, 다른 채널과 교환되어야 할 데이터인지 여부를 저장부(610)에 저장된 채널 연동 정보에 기초하여 판단할 수 있다.The smart contract 600 according to an embodiment may include a storage unit 610, a condition determination unit 620, and an exchange request unit 630. The storage unit 610 may store channel interworking information. When the smart contract 600 receives a request for data storage, the condition determiner 620 stores the requested data and determines whether the smart contract 600 stores the requested data and whether the data is to be exchanged with another channel. Judgment can be made based on.

조건 판단부(620)가 채널 연동 조건을 만족한다고 판단한 경우, 교환 요청부(630)는 채널 연동 정보 및 쓰기 데이터를 채널 연동 처리부에 전달할 수 있다.When the condition determining unit 620 determines that the channel interworking condition is satisfied, the exchange requesting unit 630 may transmit the channel interworking information and the write data to the channel interworking processor.

도 7은 일 실시 예에 따른 채널 연동 처리부의 구조를 설명하기 위한 도면이다.7 is a diagram illustrating a structure of a channel interworking processor according to an exemplary embodiment.

일 실시 예에 따른 채널 연동 처리부(500)는 응답부(710), 데이터 조합부(720) 및 채널 저장 수행부(730)를 포함할 수 있다. 여기서, 응답부(710)는 제1 채널의 제1 스마트 컨트랙트로부터 채널 연동 정보 및 쓰기 데이터를 수신할 수 있다. 채널 연동 처리부(500)가 부트스트랩(Bootstrap)되면서부터 응답부(710)는 미리 정의된 값으로 대기할 수 있다. 응답부(710)가 미리 정의된 값으로 대기함으로써 응답부(710)는 스마트 컨트랙트로부터 데이터를 수신할 수 있다.The channel interworking processor 500 according to an embodiment may include a response unit 710, a data combiner 720, and a channel storage performer 730. Here, the response unit 710 may receive channel interworking information and write data from the first smart contract of the first channel. Since the channel interworking unit 500 bootstrap, the response unit 710 may wait at a predefined value. The response unit 710 may receive data from the smart contract by waiting for the response unit 710 to a predefined value.

데이터 조합부(720)는 채널 연동 정보에 기초하여 제2 채널에 저장될 제2 쓰기 데이터를 조합할 수 있다. 여기서, 데이터 조합부(720)는 제2 쓰기 데이터를 조합하기 위해 필요한 정보가 부족한 경우, 채널 연동 정보에 정의된 제3 채널의 제3 스마트 컨트랙트에 데이터를 요청할 수 있다. 데이터 조합부(720)는 채널 연동 정보에 포함된 데이터의 저장 형식에 따라서 제1 쓰기 데이터와 제3 채널로부터 읽어들인 정보를 조합함으로써 제2 쓰기 데이터를 조합할 수 있다.The data combiner 720 may combine the second write data to be stored in the second channel based on the channel interworking information. Here, when the information necessary for combining the second write data is insufficient, the data combiner 720 may request data from the third smart contract of the third channel defined in the channel interworking information. The data combination unit 720 may combine the second write data by combining the first write data and the information read from the third channel according to the storage format of the data included in the channel interworking information.

채널 저장 수행부(730)는 데이터 조합부(720)에 의해 조합된 제2 쓰기 데이터를 저장할 것을 제2 채널에 요청할 수 있다.The channel storing performer 730 may request the second channel to store the second write data combined by the data combiner 720.

도 8은 일 실시 예에 따라 제1 조직의 제1 채널에 데이터가 저장되는 경우, 제2 채널로 데이터를 제공하도록 채널 연동 정보가 설정된 경우에 블록 체인 시스템이 동작하는 프로세스를 설명하기 위한 도면이다. 여기서, 제1 조직에는 제2 채널이 존재하지 않는 경우를 기준으로 블록 체인 시스템의 동작 프로세스를 설명한다.FIG. 8 is a diagram for describing a process of operating a blockchain system when channel interworking information is set to provide data to a second channel when data is stored in a first channel of a first organization, according to an embodiment. . Here, an operation process of the blockchain system will be described based on the case where the second channel does not exist in the first organization.

먼저, 단계 S801에서 사용자 단말(10)이 제1 조직의 제1 채널(211)로 제1 서명 요청을 전송할 수 있다. 제1 서명 요청을 수신한 제1 채널(211)은 단계 S802에서 제1 스마트 컨트랙트(231)로 제1 서명 요청을 전달할 수 있다.First, in operation S801, the user terminal 10 may transmit a first signature request to the first channel 211 of the first organization. The first channel 211 that receives the first signature request may transmit the first signature request to the first smart contract 231 in step S802.

이후, 단계 S803에서, 제1 서명 요청을 수신한 제1 스마트 컨트랙트(231)는 제1 서명 요청에 상응하는 트랜잭션 데이터를 읽기/쓰기 처리할 수 있다. 또한, 단계 S804에서, 제1 스마트 컨트랙트(231)는 제1 서명 요청이 수신됨에 따라 저장부(610)에 저장된 채널 연동 정보를 조회할 수 있다.Thereafter, in step S803, the first smart contract 231 that receives the first signature request may read / write transaction data corresponding to the first signature request. In operation S804, the first smart contract 231 may inquire channel interworking information stored in the storage 610 as a first signature request is received.

이후, 단계 S805에서, 제1 스마트 컨트랙트(231)는 저장부(610)에 채널 연동 정보가 존재하는지 판단할 수 있다. 채널 연동 정보가 존재하지 않는 경우, 단계 S806에서 교환 요청부(630)는 채널 연동 정보를 포함하지 않은 서명 응답을 제1 채널(211)에 전달할 수 있다.Thereafter, in step S805, the first smart contract 231 may determine whether channel interworking information exists in the storage 610. If the channel interworking information does not exist, in step S806, the exchange request unit 630 may transmit a signature response not including the channel interworking information to the first channel 211.

채널 연동 정보가 존재하는 경우, 단계 S807에서, 조건 판단부(620)는 채널 연동 정보에 기초하여 데이터 연동 조건이 만족되는지 여부를 판단할 수 있다. 단계 S808에서 데이터 연동 조건과 데이터가 일치하지 않는다고 판단한 경우, 교환 요청부(630)는 단계 S809에서 채널 연동 정보를 포함하지 않은 서명 응답을 제1 채널(211)에 전달할 수 있다.If the channel interworking information exists, in step S807, the condition determining unit 620 may determine whether the data interworking condition is satisfied based on the channel interworking information. If it is determined in step S808 that the data interworking conditions and data do not match, the exchange request unit 630 may transmit a signature response not including the channel interworking information to the first channel 211 in step S809.

단계 S808에서 조건 판단부(620)가 데이터 연동 조건이 만족되었다고 판단한 경우, 교환 요청부(630)는 단계 S810에서 제1 채널(211)에 채널 연동 정보, 제1 쓰기 데이터 및 서명 응답을 전달할 수 있다. 이후, 단계 S811에서 제1 채널(211)은 전달 받은 서명 응답을 사용자 단말(10)에 전송하고, 단계 S812에서 저장된 데이터를 제1 채널(211)의 블록체인의 블록에 반영함으로써 제1 채널에 데이터를 저장할 수 있다.When the condition determining unit 620 determines that the data interworking condition is satisfied in step S808, the exchange requesting unit 630 may deliver channel interworking information, first write data, and a signature response to the first channel 211 in step S810. have. Thereafter, in step S811, the first channel 211 transmits the received signature response to the user terminal 10, and reflects the data stored in step S812 to the block of the blockchain of the first channel 211 to the first channel. Data can be saved.

이후, 단계 S813에서 제1 채널(211)은 전달 받은 채널 연동 정보 및 제1 쓰기 데이터를 채널 연동 처리부(500)에 전달할 수 있다. 채널 연동 처리부(500)의 응답부(710)는 제1 채널(211)로부터 데이터를 수신하고 수신된 데이터에 대해 응답할 수 있다. 이후, 채널 연동 처리부(500)의 조합부(720)는 단계 S814에서 채널 연동 정보에 기초하여 제2 쓰기 데이터를 조합하고 제1 조직의 제2 채널에 통신을 시도할 수 있다. 그러나, 제1 조직은 제2 채널을 가지지 않으므로, 서명 실패가 발생하게 된다.Thereafter, in operation S813, the first channel 211 may transmit the received channel interworking information and the first write data to the channel interworking processor 500. The response unit 710 of the channel interworking processor 500 may receive data from the first channel 211 and respond to the received data. Thereafter, the combining unit 720 of the channel interworking processor 500 may combine the second write data based on the channel interworking information in step S814 and attempt to communicate with the second channel of the first organization. However, since the first organization does not have a second channel, a signature failure occurs.

도 9는 일 실시예에 따라 제2 조직의 제2 채널에 데이터가 저장되는 프로세스를 설명하기 위한 도면이다. 여기서, 도 8의 경우와는 상이하게, 제2 조직에는 제1 채널 및 제2 채널이 모두 존재한다. 따라서, 제2 조직의 제1 채널에 데이터가 저장되면 제2 채널로 데이터를 제공하도록 제1 채널의 스마트 컨트랙트에 채널 연동 정보가 설정되어 있는 경우, 제2 조직의 제2 채널은 제1 채널로부터 데이터를 제공 받고, 제공 받은 데이터에 기초하여 채널 연동 정보에 상응하는 데이터를 저장하여야 한다.9 is a diagram for describing a process of storing data in a second channel of a second tissue, according to an embodiment. Here, unlike the case of FIG. 8, both the first channel and the second channel exist in the second tissue. Therefore, when data is stored in the first channel of the second organization and the channel interworking information is set in the smart contract of the first channel to provide data to the second channel, the second channel of the second organization is determined from the first channel. After receiving the data, the data corresponding to the channel interworking information should be stored based on the provided data.

도 9에 도시된 프로세스가 수행되기에 앞서, 제2 조직의 제1 채널(211), 제1 스마트 컨트랙트(233) 및 채널 연동 처리부(500)에 의해 단계 S801 내지 단계 S814에 상응하는 동작들이 수행될 수 있다. 이후, 단계 S901에서 채널 연동 처리부(500)는 제2 조직의 제2 채널과 통신을 시도할 수 있다. 채널 연동 처리부의 채널 저장 수행부(730)는 단계 S902에서 데이터 조합부(720)에 의해 조합된 데이터에 기초하여 제2 조직의 제2 채널(212)에 제2 서명 요청을 상기 통신을 통해서 전달할 수 있다. 이후, 단계 S903에서 제2 채널(212)이 제2 채널이 제2 스마트 컨트랙트(234)에 제2 서명 요청을 전달할 수 있다.Before the process illustrated in FIG. 9 is performed, operations corresponding to steps S801 to S814 are performed by the first channel 211, the first smart contract 233, and the channel interworking processor 500 of the second organization. Can be. Thereafter, in operation S901, the channel interworking processor 500 may attempt to communicate with a second channel of the second organization. The channel storage execution unit 730 of the channel interworking processor transmits the second signature request to the second channel 212 of the second organization through the communication based on the data combined by the data combiner 720 in step S902. Can be. Thereafter, in operation S903, the second channel 212 may transmit the second signature request to the second smart contract 234.

제2 스마트 컨트랙트(234)가 제2 서명 요청이 수신됨에 따라서 단계 S904에서 트랜잭션 데이터의 읽기/쓰기 처리를 수행하고, 제2 채널(212)에 서명 응답을 전송함으로써 제2 채널에 데이터가 저장될 수 있다.As the second smart contract 234 receives the second signature request, the second smart contract 234 performs the read / write process of the transaction data in step S904 and transmits the signature response to the second channel 212 to store the data in the second channel. Can be.

도 10은 일 실시 예에 따른 채널 연동부의 부트스트랩(Bootstrap) 프로세스를 설명하기 위한 도면이다.10 is a diagram illustrating a bootstrap process of a channel interworking unit according to an exemplary embodiment.

먼저, 채널 연동 처리부를 실행하기 위하여, 채널 연동 처리부는 조직에 조직의 채널 목록 및 각 채널별 스마트 컨트랙트 목록을 요청할 수 있다. 채널 연동 처리부는 단계 S1010에서 요청에 대한 응답으로 채널 목록 및 각 채널별 스마트 컨트랙트 목록을 획득할 수 있다.First, in order to execute the channel interworking processor, the channel interworking processor may request the organization's channel list and smart contract list for each channel. The channel interworking processor may acquire a channel list and a smart contract list for each channel in response to the request in step S1010.

이후, 단계 S1020에서 채널 연동 처리부는 스마트 컨트랙트에 채널 연동 정보를 요청할 수 있다. 여기서, 채널 연동 정보는 스마트 컨트랙트에 미리 정의된 정보일 수 있다. 채널 연동 처리부는 스마트 컨트랙트에 전달한 요청에 대한 응답으로 채널 연동 정보를 획득할 수 있다. 이후, 채널 연동 저리부는 획득한 채널 연동 정보에 기초하여 데이터 조합부(720) 및 채널 저장 수행부(730)를 실행할 수 있다.Thereafter, in step S1020, the channel interworking processor may request channel interworking information from the smart contract. Here, the channel interworking information may be information predefined in the smart contract. The channel interworking processor may acquire channel interworking information in response to the request transmitted to the smart contract. Subsequently, the channel interlocking operation may execute the data combination unit 720 and the channel storage execution unit 730 based on the acquired channel interworking information.

이후, 단계 S1030에서 채널 연동 처리부는 채널별 스마트 컨트랙트 목록에 따라서 응답부(710)를 실행할 수 있다. 예를 들어, 채널별 스마트 컨트랙트 목록이 "A 채널 ? 스마트 컨트랙트 A1", "A 채널 ? 스마트 컨트랙트 A2", "B 채널 ? 스마트 컨트랙트 B1"인 경우, 채널 연동 처리부는 세 개의 응답부(710)를 실행할 수 있다.Thereafter, in operation S1030, the channel interworking processor may execute the response unit 710 according to the smart contract list for each channel. For example, when the smart contract list for each channel is "A channel-smart contract A1", "A channel-smart contract A2", "B channel-smart contract B1", the channel interworking processing unit has three response units 710. You can run

지금까지 설명된 본 발명의 실시예에 따른 방법들은 컴퓨터가 읽을 수 있는 코드로 구현된 컴퓨터프로그램의 실행에 의하여 수행될 수 있다. 상기 컴퓨터프로그램은 인터넷 등의 네트워크를 통하여 제1 컴퓨팅 장치로부터 제2 컴퓨팅 장치에 전송되어 상기 제2 컴퓨팅 장치에 설치될 수 있고, 이로써 상기 제2 컴퓨팅 장치에서 사용될 수 있다. 상기 제1 컴퓨팅 장치 및 상기 제2 컴퓨팅 장치는, 서버 장치, 클라우드 서비스를 위한 서버 풀에 속한 물리 서버, 데스크탑 피씨와 같은 고정식 컴퓨팅 장치를 모두 포함한다.The methods according to the embodiments of the present invention described so far may be performed by execution of a computer program implemented in computer readable code. The computer program may be transmitted from the first computing device to the second computing device via a network such as the Internet and installed in the second computing device, thereby being used in the second computing device. The first computing device and the second computing device include both a server device, a physical server belonging to a server pool for cloud services, and a stationary computing device such as a desktop PC.

상기 컴퓨터프로그램은 DVD-ROM, 플래시 메모리 장치 등의 기록매체에 저장된 것일 수도 있다.The computer program may be stored in a recording medium such as a DVD-ROM or a flash memory device.

이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다.Although the embodiments of the present invention have been described above with reference to the accompanying drawings, those skilled in the art to which the present invention pertains may implement the present invention in other specific forms without changing the technical spirit or essential features thereof. I can understand that. Therefore, it is to be understood that the embodiments described above are exemplary in all respects and not restrictive.

Claims (13)

제1 채널 및 제2 채널을 포함하는 복수의 채널을 가진 블록 체인을 기반으로 한 데이터 관리 시스템이 상기 복수의 채널 간에 데이터를 교환하는 방법에 있어서,
상기 제1 채널이 수신한 제1 서명 요청(Endorsement Request)을 상기 제1 채널의 스마트 컨트랙트(Smart Contract)에 전달하는 단계;
상기 스마트 컨트랙트가 상기 제1 서명 요청에 기초하여 데이터 교환의 수행 여부를 판단하고, 채널 연동 정보를 조회하는 단계;
상기 제1 서명 요청에 상응하는 제1 쓰기 데이터를 상기 제1 채널의 블록에 반영하는 단계;
상기 채널 연동 정보를 채널 연동 처리부에 전달하는 단계; 및
상기 채널 연동 처리부가 상기 채널 연동 정보에 기초하여 제2 서명 요청을 제2 채널에 전달하는 단계를 포함하는,
데이터 관리 시스템의 채널간 데이터 교환 방법.
A method of exchanging data between a plurality of channels by a data management system based on a blockchain having a plurality of channels including a first channel and a second channel, the method comprising:
Transmitting a first signature request received by the first channel to a smart contract of the first channel;
Determining, by the smart contract, whether to perform data exchange based on the first signature request, and inquiring channel interworking information;
Reflecting first write data corresponding to the first signature request in the block of the first channel;
Transmitting the channel interworking information to a channel interworking processor; And
And transmitting, by the channel interworking processor, a second signature request to a second channel based on the channel interworking information.
Method of data exchange between channels in data management system.
제1항에 있어서,
상기 채널간 데이터 교환 방법은,
상기 채널 연동 처리부가 상기 제2 채널에 저장될 제2 쓰기 데이터를 조합하는 단계; 및
상기 제2 쓰기 데이터에 기초하여 상기 제2 서명 요청을 생성하는 단계를 더 포함하는,
데이터 관리 시스템의 채널간 데이터 교환 방법.
The method of claim 1,
The data exchange method between channels,
Combining, by the channel interworking processor, second write data to be stored in the second channel; And
Generating the second signature request based on the second write data;
Method of data exchange between channels in data management system.
제2항에 있어서,
상기 복수의 채널은 제3 채널을 더 포함하고,
상기 조합하는 단계는,
상기 제1 쓰기 데이터의 필드 중에서 상기 제2 쓰기 데이터의 제1 필드와 대응되는 필드가 부존재하는 경우, 상기 제3 채널로부터 상기 제3채널로부터 읽은 데이터로 상기 제1 필드를 구성하는 것을 특징으로 하는,
데이터 관리 시스템의 채널간 데이터 교환 방법.
The method of claim 2,
The plurality of channels further comprises a third channel,
The combining step,
When the field corresponding to the first field of the second write data does not exist among the field of the first write data, the first field is configured with data read from the third channel from the third channel. ,
Method of data exchange between channels in data management system.
제3항에 있어서,
상기 조합하는 단계는,
상기 채널 연동 정보 내에 정의된 정보에 기초하여 상기 조합하는 단계의 수행 여부 및 상기 제3 채널을 결정하는 단계;
상기 조합하는 단계를 수행하는 것으로 결정된 경우, 상기 제3 채널에 필요한 데이터를 요청하는 단계;
상기 제3 채널로부터 수신된 데이터에 기초하여 상기 제2 쓰기 데이터를 조합하는 단계를 포함하는,
데이터 관리 시스템의 채널간 데이터 교환 방법.
The method of claim 3,
The combining step,
Determining whether to perform the combining step and the third channel based on the information defined in the channel interworking information;
If it is determined to perform the combining step, requesting data required for the third channel;
Combining the second write data based on data received from the third channel;
Method of data exchange between channels in data management system.
제2항에 있어서,
상기 채널 연동 정보는 상기 제2 쓰기 데이터의 데이터 저장 형식에 대한 정보를 포함하고,
상기 조합하는 단계는,
상기 데이터 저장 형식에 기초하여 상기 제2 쓰기 데이터를 조합하는 것을 특징으로 하는,
데이터 관리 시스템의 채널간 데이터 교환 방법.
The method of claim 2,
The channel interworking information includes information on a data storage format of the second write data,
The combining step,
And combining the second write data based on the data storage format.
Method of data exchange between channels in data management system.
제1항에 있어서,
상기 스마트 컨트랙트는,
상기 제1 채널에 종속되는 것을 특징으로 하는,
데이터 관리 시스템의 채널간 데이터 교환 방법.
The method of claim 1,
The smart contract,
Characterized in that dependent on the first channel,
Method of data exchange between channels in data management system.
제1항에 있어서,
상기 채널간 데이터 교환 방법은,
상기 스마트 컨트랙트가 상기 제1 서명 요청을 수신함에 따라 트랜잭션 데이터의 읽기/쓰기 처리를 수행하는 단계를 더 포함하는 것을 특징으로 하는,
데이터 관리 시스템의 채널간 데이터 교환 방법.
The method of claim 1,
The data exchange method between channels,
And performing read / write processing of transaction data as the smart contract receives the first signature request.
Method of data exchange between channels in data management system.
제1항에 있어서,
상기 채널 연동 정보를 전달하는 단계는
상기 스마트 컨트랙트가 상기 서명 요청에 대한 응답으로 제1 쓰기 데이터, 채널 연동 정보 및 서명응답을 상기 제1 채널에 전달하는 단계; 및
상기 제1 채널이 제1 조직의 채널 연동 처리부에 상기 채널 연동 정보 및 쓰기 데이터를 전송하는 단계;를 포함하는,
데이터 관리 시스템의 채널간 데이터 교환 방법.
The method of claim 1,
Delivering the channel interworking information
The smart contract delivering first write data, channel interworking information, and a signature response to the first channel in response to the signature request; And
And transmitting, by the first channel, the channel interworking information and the write data to the channel interworking processor of the first organization.
Method of data exchange between channels in data management system.
제1항에 있어서,
상기 제2 서명 요청을 상기 제2 채널에 전달하는 단계는,
상기 제2 서명 요청을 전송한 클러스터에 상기 제2 채널이 존재하지 않는 경우에는 서명 실패(Endorsement fail) 처리하고, 상기 제2 채널이 존재하는 경우에는 상기 제2 채널에 대한 트랜잭션 데이터의 읽기/쓰기 처리를 수행하는 단계를 포함하는,
데이터 관리 시스템의 채널간 데이터 교환 방법.
The method of claim 1,
Delivering the second signature request to the second channel,
If the second channel does not exist in the cluster that transmitted the second signature request, a signature failure is processed. If the second channel exists, read / write of transaction data for the second channel is performed. Performing the processing,
Method of data exchange between channels in data management system.
제1항에 있어서,
상기 채널 연동 정보는,
상기 채널 간에 데이터 교환을 수행하는 데이터 연동 조건, 데이터 교환의 대상이 되는 상기 제2 채널 및 상기 제2 채널에 제공될 데이터의 저장 형식을 정의하는 정보를 포함하는 것을 특징으로 하는,
데이터 관리 시스템의 채널간 데이터 교환 방법.
The method of claim 1,
The channel interworking information,
And information defining a data interworking condition for performing data exchange between the channels, the second channel to be exchanged with data, and a storage format of data to be provided to the second channel.
Method of data exchange between channels in data management system.
제1 채널 및 제2 채널을 포함하는 복수의 채널을 가진 블록 체인을 기반으로 한 데이터 관리 시스템에 있어서,
상기 제1 채널에 포함된 스마트 컨트랙트; 및
상기 제1 채널 및 상기 제2 채널 간의 데이터 교환을 수행하는 채널 연동 처리부를 포함하며,
상기 채널 연동 처리부는,
상기 스마트 컨트랙트로부터 채널 연동 정보 및 제1 쓰기 데이터를 수신하는 응답부;
상기 채널 연동 정보에 기초하여 상기 제2 채널에 쓰기 처리될 제2 쓰기 데이터를 조합하는 데이터 조합부; 및
상기 제2 채널에 상기 제2 쓰기 데이터를 저장할 것을 요청하는 채널 저장 수행부;를 포함하는,
데이터 관리 시스템.
A data management system based on a blockchain having a plurality of channels including a first channel and a second channel,
A smart contract included in the first channel; And
And a channel interworking processor configured to exchange data between the first channel and the second channel.
The channel interworking processing unit,
A response unit receiving channel interworking information and first write data from the smart contract;
A data combiner configured to combine second write data to be written to the second channel based on the channel interworking information; And
And a channel storage performing unit requesting to store the second write data in the second channel.
Data management system.
제11항에 있어서,
상기 채널 연동 정보는,
상기 스마트 컨트랙트에 포함된 저장부에 저장된 것을 특징으로 하는,
데이터 관리 시스템.
The method of claim 11,
The channel interworking information,
Characterized in that stored in the storage unit included in the smart contract,
Data management system.
제11항에 있어서,
상기 스마트 컨트랙트는,
제1 서명 요청이 수신됨에 따라 데이터를 저장하고, 저장된 데이터가 상기 제2 채널과 데이터 교환이 필요한 정보인지 판단하는 것을 특징으로 하는,
데이터 관리 시스템.
The method of claim 11,
The smart contract,
And storing data as the first signature request is received, and determining whether the stored data is information requiring data exchange with the second channel.
Data management system.
KR1020170143243A 2017-10-31 2017-10-31 Method for Exchanging Data between Channels of System based on Multi-Channel Blockchain and System thereof KR102080497B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170143243A KR102080497B1 (en) 2017-10-31 2017-10-31 Method for Exchanging Data between Channels of System based on Multi-Channel Blockchain and System thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170143243A KR102080497B1 (en) 2017-10-31 2017-10-31 Method for Exchanging Data between Channels of System based on Multi-Channel Blockchain and System thereof

Publications (2)

Publication Number Publication Date
KR20190048349A KR20190048349A (en) 2019-05-09
KR102080497B1 true KR102080497B1 (en) 2020-02-24

Family

ID=66545532

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170143243A KR102080497B1 (en) 2017-10-31 2017-10-31 Method for Exchanging Data between Channels of System based on Multi-Channel Blockchain and System thereof

Country Status (1)

Country Link
KR (1) KR102080497B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102428950B1 (en) * 2019-10-23 2022-08-03 포항공과대학교 산학협력단 Method and system for off-chain payment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101457355B1 (en) 2009-12-22 2014-11-04 인텔 코포레이션 Method and apparatus to provide secure application execution
US20170279774A1 (en) 2016-03-28 2017-09-28 International Business Machines Corporation Decentralized Autonomous Edge Compute Coordinated by Smart Contract On A Blockchain
WO2017163069A1 (en) 2016-03-22 2017-09-28 Novus4 Limited A method and system for controlling data transmission
JP2017187777A (en) 2016-04-06 2017-10-12 アバイア インコーポレーテッド Smartphone fraud-proof authorization and authentication for secure interactions

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101457355B1 (en) 2009-12-22 2014-11-04 인텔 코포레이션 Method and apparatus to provide secure application execution
WO2017163069A1 (en) 2016-03-22 2017-09-28 Novus4 Limited A method and system for controlling data transmission
US20170279774A1 (en) 2016-03-28 2017-09-28 International Business Machines Corporation Decentralized Autonomous Edge Compute Coordinated by Smart Contract On A Blockchain
JP2017187777A (en) 2016-04-06 2017-10-12 アバイア インコーポレーテッド Smartphone fraud-proof authorization and authentication for secure interactions

Also Published As

Publication number Publication date
KR20190048349A (en) 2019-05-09

Similar Documents

Publication Publication Date Title
US11030681B2 (en) Intermediate blockchain system for managing transactions
US11153069B2 (en) Data authentication using a blockchain approach
WO2020143853A2 (en) Distributed blockchain data storage under account model
WO2020143852A2 (en) Distributed blockchain data storage under account model
Sabry et al. The road to the blockchain technology: Concept and types
US20190251199A1 (en) Transactions Across Blockchain Networks
KR101936756B1 (en) Apparatus for Supporting Sharing Economy using Blockchain
JP7165148B6 (en) Method and system for consistent distributed memory pool in blockchain network
EP3739538A1 (en) System and method of supporting reflection of transactions between blockchain networks
KR101986081B1 (en) Method for sharing and verifing a block between specific nodes in a blockchain
JP2021515293A (en) Computer implementation of service management for blockchain network infrastructure, systems, computer programs, and blockchain networks
US8479210B2 (en) Evenly distributing workload and providing a predictable failover scenario in a data replication system
US8732381B2 (en) SAS expander for communication between drivers
JP2023532959A (en) A privacy-preserving architecture for permissioned blockchains
EP3788757B1 (en) Controlling transactions on a network
JP7146093B2 (en) How to share and verify blocks and electronic documents between nodes on blockchain
JP2020161092A (en) Inter-system cooperation method and node
US20170070448A1 (en) Reducing internodal communications in a clustered system
KR102080497B1 (en) Method for Exchanging Data between Channels of System based on Multi-Channel Blockchain and System thereof
JP2012507076A (en) Bootstrap to gather federation
US9930143B2 (en) Client system communication with a member of a cluster of server systems
KR20190086301A (en) System and method for distributed database using block chain
KR102365914B1 (en) Method and system for distributing an electronic document including personal information using a smart contract a in based on a blockchain
KR102439351B1 (en) Non-mining blockchain network system for ESG and method of operating of server node participating in the system
KR102332814B1 (en) The block chain system including a block chain structure for data self-sovereign identity

Legal Events

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