KR20210086074A - 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템 - Google Patents

블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템 Download PDF

Info

Publication number
KR20210086074A
KR20210086074A KR1020190179757A KR20190179757A KR20210086074A KR 20210086074 A KR20210086074 A KR 20210086074A KR 1020190179757 A KR1020190179757 A KR 1020190179757A KR 20190179757 A KR20190179757 A KR 20190179757A KR 20210086074 A KR20210086074 A KR 20210086074A
Authority
KR
South Korea
Prior art keywords
node
block chain
information
network
organization
Prior art date
Application number
KR1020190179757A
Other languages
English (en)
Other versions
KR102294569B1 (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 KR1020190179757A priority Critical patent/KR102294569B1/ko
Publication of KR20210086074A publication Critical patent/KR20210086074A/ko
Application granted granted Critical
Publication of KR102294569B1 publication Critical patent/KR102294569B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • 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/1044Group management mechanisms 
    • H04L67/1048Departure or maintenance mechanisms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

사용자에게 블록체인 네트워크를 설정할 수 있는 페이지를 제공할 수 있는 본 발명의 일 측면에 따른 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템은 미리 등록된 서버 중 어느 하나의 서버로부터 노드 등록페이지에 입력되는 노드정보에 따라 블록체인 네트워크 플랫폼에 상기 블록체인 네트워크를 구성하는 노드를 상기 서버에 등록하는 노드 등록부; 상기 등록된 서버 중 어느 하나의 서버로부터 조직생성 페이지에 입력되는 조직정보에 따라 상기 노드를 포함하는 조직을 등록하는 조직 등록부; 상기 등록된 서버 중 어느 하나의 서버로부터 채널생성 페이지에 입력되는 채널정보에 따라 블록체인을 공유하는 채널을 등록하는 채널 등록부; 및 블록체인 네트워크 플랫폼를 이용하여 상기 등록된 노드, 조직, 및 채널로 블록체인 네트워크를 구축하는 네트워크 환경 구성부를 포함하는 것을 특징으로 한다.

Description

블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템{Block Chain Management System To Build Block Chain Network}
본 발명은 블록체인 네트워크에 관한 것이다.
분산 원장(Distributed Ledger) 기술이라고도 불리우는 블록체인 기술은 탈중앙화, 투명성, 변조방지, 및 신뢰성을 특징으로 하는 탈중앙화 분산형 데이터베이스 기술이다. 블록체인 기술은 일반적으로 공용(Pulbic) 또는 사설(Private) 피어 투 피어 네트워크에서 트랜잭션(Transaction)을 기록하는데 사용되며, 네트워크 내의 피어노드들 간에 발생하는 자산 트랜잭션의 모든 이력 데이터 기록을 블록에 영구적으로 기록할 수 있다.
여기서 사설 피어 투 피어 네트워크인 블록체인 네트워크는 허가형(Permissioned) 블록체인 플랫폼을 이용하여 구축된다. 허가형 블록체인 플랫폼은 기업들의 다양한 비즈니스 영역에서 이용되고 있는데, 허가형 블록체인 플랫폼의 특성 상 블록체인 네트워크에는 허가된 사용자만이 참가할 수 있어 공용 피어 투 피어 네트워크에 비해 구축하기 어렵다.
따라서, 블록체인에 대한 배경지식 없이는 블록체인 네트워크 구축이 어렵고, 블록체인에 대한 전문가일지라도 절차가 복잡하고 까다롭기 때문에, 블록체인 네트워크를 구축하는데 있어 시간이 많이 소요된다.
본 발명은 상술한 문제점을 해결하기 위한 것으로서, 사용자에게 블록체인 네트워크를 설정할 수 있는 페이지를 제공할 수 있는 블록체인 네트워크를 구축할 수 있는 블록체인 관리 시스템을 제공하는 것을 그 기술적 과제로 한다.
또한, 본 발명은 블록체인 네트워크 플랫폼과 연동하여 블록체인 네트워크를 자동으로 구축할 수 있는 블록체인 관리시스템을 제공하는 것을 그 기술적 과제로 한다.
또한, 본 발명은 사용자가 등록한 노드, 조직, 및 채널을 블록체인 네트워크 플랫폼에 적용함으로써 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템을 제공하는 것을 그 기술적 과제로 한다.
상술한 목적을 달성하기 위해서 본 발명의 일 측면에 따른 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템은 미리 등록된 서버 중 어느 하나의 서버로부터 노드 등록페이지에 입력되는 노드정보에 따라 블록체인 네트워크 플랫폼에 상기 블록체인 네트워크를 구성하는 노드를 상기 서버에 등록하는 노드 등록부; 상기 등록된 서버 중 어느 하나의 서버로부터 조직생성 페이지에 입력되는 조직정보에 따라 상기 노드를 포함하는 조직을 등록하는 조직 등록부; 상기 등록된 서버 중 어느 하나의 서버로부터 채널생성 페이지에 입력되는 채널정보에 따라 블록체인을 공유하는 채널을 등록하는 채널 등록부; 및 블록체인 네트워크 플랫폼를 이용하여 상기 등록된 노드, 조직, 및 채널로 블록체인 네트워크를 구축하는 네트워크 환경 구성부를 포함하는 것을 특징으로 한다.
본 발명에 따르면 사용자에게 블록체인 네트워크를 설정할 수 있는 페이지를 제공할 수 있어 배경지식이 없는 초보자일지라도 쉽게 블록체인 네트워크를 구축할 수 있다는 효과가 있다.
또한, 본 발명은 블록체인 네트워크 플랫폼과 연동하여 블록체인 네트워크를 자동으로 구축할 수 있기 때문에, 일일이 수작업으로 블록체인 네트워크를 구축하는 것에 비해 신속하게 블록체인 네트워크를 구축할 수 있어 사용자의 편의성 및 효율성이 향상된다는 효과가 있다.
또한, 본 발명은 사용자가 등록한 노드, 조직, 및 채널을 블록체인 네트워크 플랫폼에 적용함으로써 사용자의 설정에 최적화된 블록체인 네트워크를 구축할 수 있다는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템을 보여주는 도면이다.
도 2는 서버 등록부가 제공하는 서버 등록페이지의 일 예를 보여주는 도면이다.
도 3은 노드 등록부가 제공하는 노드 등록페이지의 일 예를 보여주는 도면이다.
도 4는 노드 등록부가 제공하는 노드 조회페이지의 일 예를 보여주는 도면이다.
도 5는 조직 등록부가 제공하는 조직 등록페이지의 일예를 보여주는 도면이다.
도 6은 채널 등록부가 채널을 생성하는 것을 보여주는 도면이다.
도 7은 채널등록부가 제공하는 채널 조회페이지의 일 예를 보여주는 도면이다.
도 8은 네트워크 환경구성부가 제공하는 네트워크 환경구성 페이지의 일 예를 보여주는 도면이다.
도 9는 종합현황 페이지의 일 예를 보여주는 도면이다.
도 10은 인증서 API에 의해 개발된 인증센터 dApp와 문서위변조 검증 API에 의해 개발된 문서위변조 검증 dApp의 일예를 보여주는 도면이다.
본 명세서에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 정의하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다.
"포함하다" 또는 "가지다" 등의 용어는 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
"적어도 하나"의 용어는 하나 이상의 관련 항목으로부터 제시 가능한 모든 조합을 포함하는 것으로 이해되어야 한다. 예를 들어, "제1 항목, 제2 항목 및 제 3항목 중에서 적어도 하나"의 의미는 제1 항목, 제2 항목 또는 제3 항목 각각 뿐만 아니라 제1 항목, 제2 항목 및 제3 항목 중에서 2개 이상으로부터 제시될 수 있는 모든 항목의 조합을 의미한다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예에 대해 구체적으로 설명한다.
도 1은 본 발명의 일 실시예에 따른 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템을 보여주는 도면이다.
본 발명에 따른 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템(이하 '블록체인 관리시스템' 이라 함, 100)은 블록체인 네트워크를 사용자가 쉽게 구축할 수 있도록 한다. 이를 위해 본 발명에 따른 블록체인 관리시스템(100)은 도 1에 도시된 바와 같이 블록체인 관리 에이전트(200), 블록체인 네트워크 플랫폼(300)을 포함한다.
블록체인 관리 에이전트(200)는 블록체인 네트워크 구성에 필요한 정보를 입력받아 블로체인 네트워크 플랫폼(300)에 입력하여 블록체인 네트워크를 구축한다. 구체적으로, 블록체인 관리 에이전트(200)는 사용자로부터 블록체인 네트워크 구성에 필요한 정보를 입력받고, 이에 따라 블록체인 네트워크 구성을 위한 파일을 생성한다. 블록체인 관리 에이전트(200)는 해당 파일과 제어명령을 블록체인 네트워크 플랫폼(300)에 입력하여 블록체인 네트워크가 구축되게 한다.
이를 위해, 블록체인 관리 에이전트(200)는 서버등록부(210), 노드등록부(220), 조직생성부(230), 및 채널등록부(240)를 포함한다.
서버 등록부(210)는 서버 등록페이지에 입력되는 서버정보에 따라 블록체인 네트워크에 참가하는 서버를 등록한다. 구체적으로, 서버 등록부(210)는 사용자가 서버 등록페이지에 서버 정보를 입력하고, 이를 수신하여 서버정보에 따라 블록체인 네트워크에 참가하는 서버를 등록한다. 이때, 서버정보는 서버 명, 서버에 대한 설명, IP 주소, 호스트, CPU 정보, OS 정보, RAM 정보 등을 포함할 수 있다.
예컨대, 서버 등록부(210)는 도 2에 도시된 바와 같이 서버 등록페이지를 제공할 수 있다. 사용자는 서버 등록페이지에 서버정보를 입력할 수 있다. 사용자가 서버 정보 조회 아이콘(410)을 선택하면, 서버 등록부(210)는 해당 서버의 스펙을 추출하여, 서버 등록페이지를 통해 사용자에게 제공할 수 있다. 사용자가 서버정보를 입력하고 확인 아이콘(420)을 선택하면, 서버 등록부(210)는 입력된 서버정보에 따라 해당 사용자의 서버를 등록한다.
서버 등록부(210)는 서버를 서버 데이터베이스(미도시)에 저장된 서버 테이블에 등록할 수 있다.
노드 등록부(220)는 서버 등록부(210)에 의해 등록된 서버 중 어느 하나의 서버로부터 노드 등록페이지에 입력되는 노드정보에 따라 블록체인 네트워크를 구성하는 노드를 등록할 수 있다. 구체적으로 노드 등록부(220)는 등록된 서버 중 어느 하나의 서버로부터 노드 등록페이지에 입력되는 노드정보에 따라 해당 서버에 노드를 등록할 수 있다. 이때, 노드정보는 노드의 유형, 포트정보, 도커(Docker) 이미지, 도커(Docker) 이미지버전 등을 포함할 수 있다.
예컨대, 노드 등록부(220)는 도 3에 도시된 바와 같이 사용자에게 노드 등록페이지를 제공하면, 사용자가 노드등록페이지에 노드정보를 입력할 수 있다. 사용자가 노드의 유형 중 어느 하나를 선택하면, 노드 등록부(220)는 해당 유형에 매칭되는 포트 정보, 도커 이미지, 도커 이미지버전을 추출하여 사용자에게 제공할 수 있다. 사용자가 확인 아이콘(510)을 선택하면, 노드 등록부(220)는 노드 정보에 따라 해당 서버에 노드를 등록할 수 있다. 이때, 서버에 등록되는 노드는 노드 유형 중 사용자가 선택한 노드일 수 있다. 예컨대, 사용자가 피어(Peer) 노드를 선택하면, 노드 등록부(220)는 해당 서버에 피어를 등록한다.
일 실시예에 있어서, 노드는 인증기관(Certificate Authority, CA) 노드, 피어(Peer) 노드, 오더러(Orderer) 노드, 카프카(Kafka) 노드, 주키퍼(Zookeeper) 노드, 카우치DB(CouchDB) 노드 등을 포함할 수 있다. 여기서 인증기관 노드는 노드들간 인증 및 통신을 수행한다. 피어 노드는 원장 데이터를 관리한다. 오더러 노드는 트랜잭션을 정렬하고 블록 생성과 전파를 수행한다. 카프카 노드는 트랜잭션을 순서대로 큐에 저장하고 소비한다. 주키퍼 노드는 클러스터로 구성된 카프카 노드를 분산 처리시키고, 각 카프카 노드를 동기화시켜준다. 카우치DB 노드는 트랜잭션에서 키-밸류(key-value) 형태의 최신 데이터를 저장한다.
이하에서 인증기관 노드는 제1 노드로, 피어 노드는 제2 노드로, 오더러 노드는 제3 노드로, 카프카 노드는 제4 노드로, 주키퍼 노드는 제5 노드로, 카우치DB 노드는 제6 노드로 기재할 수도 있다.
일 실시예에 있어서, 노드 등록부(220)는 노드가 등록되는 서버에 가상의 공간을 생성하여 해당 공간에 노드를 등록할 수 있다. 이러한 실시예를 따르는 경우, 각 노드 별로 서버의 독립적인 공간에 등록될 수 있어 노드들이 다른 노드의 오류유무와 관계없이 독립적으로 동작할 수 있다는 효과가 있다.
예컨대, 노드 등록부(220)는 사용자가 선택한 노드가 피어 노드인 경우, 서버에 가상의 공간을 생성하고, 해당 공간에 노드를 등록할 수 있다. 또한, 노드 등록부(220)는 사용자가 선택한 노드가 오더러 노드인 경우, 서버에 가상의 공간을 생성하고, 해당 공간에 오더러 노드를 등록할 수 있다. 이러한 경우, 피어 노드와 오더러 노드는 독립적으로 동작할 수 있다.
노드 등록부(220)는 등록된 노드들을 실시간으로 확인할 수 있는 노드 조회페이지를 제공할 수 있다. 예컨대, 도 4에 도시된 바와 같이 노드 등록부는 노드 조회페이지를 제공할 수 있다.
조직 등록부(230)는 등록된 서버 중 어느 하나의 서버로부터 조직등록 페이지에 입력되는 조직정보에 따라 조직을 생성할 수 있다. 조직은 구성원들의 논리적인 그룹단위를 의미한다. 이때, 조직정보는 서버정보, 네트워크 정보, 조직 ID, 조직명, 참여 피어 정보, 앵커피어 노드 정보를 포함할 수 있다. 참여 피어 정보는 조직에 참여할 피어를 의미한다. 앵커피어 노드 정보는 조직 내 리더 피어 노드를 의미한다.
예컨대, 조직 등록부(230)는 도 5에 도시된 바와 같이 조직 등록페이지를 제공하고, 사용자는 조직 등록페이지에서 서버정보, 및 네트워크 정보를 선택한다. 또한, 사용자는 조직 등록페이지에서 조직명을 설정한다. 또한, 사용자는 조직 등록페이지에서 참여 피어를 선택한다. 이러한 경우, 조직 등록부(230)는 조직 ID를 생성하여 사용자에게 제공할 수 있다. 사용자는 앵커피어 노드를 선택할 수 있다. 사용자가 확인 아이콘(610)을 선택하면, 조직 등록부(230)는 조직정보에 따라 조직을 생성하게 된다.
채널 생성부(240)는 등록된 서버 중 어느 하나의 서버로부터 채널생성 페이지에 입력되는 채널정보에 따라 채널을 생성한다. 구체적으로 채널 생성부(240)는 조직이 생성된 서버로부터 채널생성페이지에 입력되는 채널정보에 따라 채널을 생성한다. 채널정보는 서버정보, 네트워크 정보, 채널명, 권한정보, 참여할 조직정보, 참여할 피어정보를 포함할 수 있다. 이때, 조직에 등록된 피어만이 채널에 참가할 수 있다.
예컨대, 채널 등록부(240)는 도 6a에 도시된 바와 같이 사용자에게 채널 생성페이지를 제공한다. 사용자는 채널 생성페이지에서 채널명을 입력하고, 참여할 조직 및 권한을 선택하고 다음 아이콘(710)을 선택하면, 도 6b에 도시된 바와 같이 피어참여 페이지가 제공된다. 사용자는 피어참여 페이지에서 참여할 피어를 선택하고 확인 아이콘(720)을 선택하면, 채널 등록부(240)는 채널정보에 따라 채널을 생성한다.
채널 등록부(240)는 생성된 채널을 조회할 수 있는 채널 조회페이지를 제공할 수 있다. 예컨대, 도 7에 도시된 바와 같이 채널 등록부(240)는 채널 조회페이지를 제공할 수 있다.
네트워크 환경 구성부(250)는 블록체인 네트워크 플랫폼(300)을 이용하여 등록된 노드, 조직, 및 채널로 블록체인 네트워크를 구축한다.
네트워크 환경 구성부(250)는 서버정보, 노드정보, 조직정보, 및 채널정보를 이용하여 블록체인 네트워크 환경을 구성한다. 예컨대, 네트워크 환경 구성부는 도 8에 도시된 바와 같이 사용자에게 네트워크 환경구성 페이지를 제공하고, 사용자가 시작하기 아이콘(810)을 선택하면, 각 정보들을 이용하여 네트워크 환경을 구성한다.
네트워크 환경 구성부(250)는 조직파일을 생성한다. 구체적으로 네트워크 환경 구성부(250)는 조직정보를 기초로 조직파일을 생성한다. 네트워크 환경 구성부(250)는 조직파일이 생성되면, 블록체인 네트워크 플랫폼(300)에 미리 정해진 명령을 입력하여 멤버쉽 서비스 제공기관(Membership Service Provider)을 생성되게 하고 블록체인 네트워크 플랫폼(300)에 조직파일을 로딩하여 조직을 등록한다. 이때, 조직에 포함된 노드들이 멤버쉽 서비스 제공기관에 등록되게 된다.
예컨대, 네트워크 환경 구성부(250)는 조직에 포함된 피어 노드와 오더러 노드의 조직명, 조직에 참여한 구성원수, 도메인정보를 기반으로 crypto-config.yaml 파일을 생성한다. 네트워크 환경 구성부(250)는 블록체인 네트워크 플랫폼(300)에 crytogen generate 명령어를 입력하여 멤버쉽 서비스 제공기관이 생성되고 하고, crypto-config.yaml 파일을 리드시켜 멤버쉽 서비스에 등록되게 한다.
네트워크 환경 구성부(250)는 채널파일을 생성한다. 구체적으로 네트워크 환경 구성부(250)는 채널정보를 기초로 채널파일을 생성한다. 네트워크 환경 구성부(250)는 채널파일이 생성되면, 블록체인 네트워크 플랫폼(300)에 채널파일을 로딩하여 채널 구성을 위한 정보를 등록한다.
예컨대, 네트워크 환경 구성부(250)는 멤버쉽 서비스 제공기관 정보를 설정하고, 노드들 중 앵커 피어 노드를 설정하고, 오더러의 타입을 카프카 노드로 설정하고, 카프카 노드에 대한 브로커(Brokers)를 카프카-주키퍼 노드로 설정하고, BatchTimeout, BatchSzie를 통해 블록생성 주기 및 트랜잭션 사이즈를 설정하며. 프로파일(Profile) 항목을 추가하여 컨소시엄(Consortium)과 피어 노드의 조직에 대한 정보가 포함된 configtx.yaml 파일을 생성한다. 네트워크 환경 구성부(250)는 블록체인 네트워크 플랫폼(300)에 configtxgen 명령어를 입력하여 configtx.yaml 파일이 실행되게 한다. 이에 따라, 블록체인 네트워크 플랫폼(300)은 피어 노드, 오더러 노드, 카프카 노드, 주키퍼 노드와의 연결 및 통신을 위한 제네시스 블록(Genesis Block)을 생성하고 이와 동시에 채널 트랜잭션 및 앵커 피어 노드 설정 트랜잭션을 생성함으로써 채널 생성을 위한 정보가 등록되게 된다.
네트워크 환경 구성부(250)는 노드파일을 생성한다. 구체적으로 네트워크 환경 구성부(250)는 노드정보를 기초로 노드의 포트정보 및 도메인 정보가 포함된 노드파일을 생성한다. 네트워크 환경 구성부(250)는 등록된 서버로 노드파일을 전파하게 된다. 이에 따라 각 서버는 노드 환경이 동기화되게 된다.
예컨대, 네트워크 환경 구성부(250)는 노드정보로 도메인 정보 및 포트정보를 인식할 수 있는 env 파일을 생성한다. 네트워크 환경 구성부(250)는 env 파일을 등록된 서버로 전파하여 각 서버의 환경을 동일하게 설정되게 한다.
네트워크 환경 구성부(250)는 노드를 구동하는 구동파일을 생성하고, 각 서버로 구동파일을 전달한다. 네트워크 환경 구성부(250)는 각 서버의 구동파일이 실행되게 한다.
예컨대, 네트워크 환경 구성부(250)는 docker-compose-zookeeper.yaml, docker-compose-kafka.yaml, docker-compose.yaml 파일을 생성한다. 네트워크 환경 구성부(250)는 각 서버로 docker-compose 명령어를 통해 구동시킨다. 이때, 네트워크 환경 구성부(250)는 docker-compose-zookeeper.yaml, docker-compose-kafka.yaml, docker-compose.yaml 순서로 구동시킬 수 있다.
네트워크 환경 구성부(250)는 블록체인 네트워크 플랫폼(300)에 미리 정해진 노드 설정명령을 입력하여 노드 중에서 마스터 노드를 설정한다. 네트워크 환경 구성부(250)는 블록체인 네트워크 플랫폼(300)에 미리 정해진 노드 설정명령을 입력하여 마스터 노드에 각 노드들을 참여시킨다. 이때, 참여하는 각 노드들은 슬래이브 노드일 수 있다. 이에 따라 각 노드들은 클러스터링으로 구성되게 된다. 이에 따라 블록체인 네트워크가 구축되게 된다.
한편, 본 발명에 따른 블록체인 관리 에이전트(200)는 모니터링부(260)를 더 포함할 수 있다.
모니터링부(260)는 블록체인과 관련된 종합정보를 제공할 수 있다. 구체적으로 모니터링부(260)는 서버, 트랜잭션, 로그, 네트워크 상태, 실시간 차트 정보, 검색기능을 제공할 수 있다.
예컨대, 모니터링부(260)는 도 9a에 도시된 바와 같이 각종 정보를 모니터링할 수 있는 제1 종합현황 페이지를 제공할 수 있다.
또한, 모니터링부(260)는 서버에 대한 시스템 부하, CPU, 메모리, 네트워크, 디스크 상태등을 모니터링 할 수 있을 뿐만 아니라, 트랜잭션 정보와 노드에서 발생하는 로그등의 정보를 모니터링 할 수 있다.
예컨대, 도 9b에 도시된 바와 같이 각종 정보를 모니터링할 수 있는 제2 종합현황 페이지를 제공할 수 있다.
본 발명에 따른 블록체인 관리 에이전트(200)는 API 제공부(270)를 더 포함할 수 있다.
API 제공부(270)는 인증서 API(Application Programming Interface) 및 문서위변조 검증 API를 제공한다. 구체적으로 API 제공부(260)는 디앱(Decentralised Application, DApp)을 개발하기 위한 서버로 인증서 API 또는 문서위변조 검증 API를 제공할 수 있다.
API 제공부(270)가 제공하는 인증서 API는 공개키 기반의 인증기술(PKI)을 이용한 인증서 발급, 재발급, 갱신, 폐기를 수행할 수 있다. 이에 따라 인증서 API를 활용하여 인증센터 dApp이 개발될 수 있다. 인증서 API는 블록체인 네트워크에서 인증서를 통한 인증 관리가 가능함에 따라 인증이 필요한 다양한 분야에 활용 및 적용될 수 있다.
예컨대, 인증서 API에 의해 개발된 인증센터 dApp는 도 10a에 도시된 바와 같이 개발될 수 있다. 이하, 인증센터 dApp의 인증서 발급 순서는 다음과 같다.
인증서를 수신하는 클라이언트는 랜덤 문자열, 서버 전자서명과 타임 스탬프(Time Stamp) 정보를 포함하는 챌린지(Challenge) 정보를 서버에 요청한다. 이에 따라 서버는 챌린지를 생성하여 클라이언트로 전달하고 클라이언트는 서버 전자서명검증을 수행한다. 서버 전자서명검증이란 서버로부터 전달받은 서버전자서명을 서버의 공개키(public key)를 사용하여 유효한 값인지 확인하는 절차를 의미한다. 이때, ECDSA 알고리즘이 이용될 수 있다.
서버 전자서명검증이 완료되면 클라이언트는 암호키(private key) 및 공개 키(public key)를 생성한 후 클라이언트 전자 서명을 하게 된다. 클라이언트 전자 서명이란 서버로부터 전달받은 챌린지의 값을 클라이언트의 암호키를 사용하여 클라이언트의 전자 서명 생성하는 것을 말한다. 이때, ECDSA 알고리즘이 이용될 수 있다.
클라이언트는 클라이언트 전자서명, 클라이언트 공개키, 타임 스탬프, 및 챌린지 값을 포함하는 리스폰스(Response)를 서버에 전달한다. 서버는 클라이언트로부터 받은 리스폰스의 클라이언트 전자서명을 클라이언트 공개 키를 사용하여 유효한 값인지 확인하는 클라이언트 전자서명 검증을 한다. 이때, ECDSA 알고리즘이 이용될 수 있다. 클라이언트는 인증서 관리 체인코드에 트랜잭션 기록 요청을 하고 체인코드는 유효성 검증을 한 후 클라이언트의 인증서 발급 트랜잭션을 기록하게 된다. 체인코드에서 정상적으로 처리된 값을 받은 서버는 클라이언트에게 알려주고 클라이언트는 암호키 정보를 포함하는 인증서를 발급받게 된다.
API 제공부(270)가 제공하는 문서위변조 검증 API는 문서위변조 검증에 필요한 문서 해시 추출, 블록체인 네트워크에 문서 정보 등록 및 조회를 수행할 수 있다. 문서위변조 검증 API를 활용하여 개발된 문서위변조 검증 dApp이 개발될 수 있다.
예컨대, 문서위변조 검증 API에 의해 개발된 문서위변조 검증 dApp는 도 10b에 도시된 바와 같이 개발될 수 있다 이하, 문서위변조 검증 dApp의 문서위변조 검증 절차는 다음과 같다. 먼저 문서를 등록하게 되는데 이때 문서위변조 검증 dApp은 문서의 정보를 해시로 추출한다. 문서위변조 검증 dApp은 추출된 정보의 문서명과 추출된 해시의 정보를 이용하여 키값으로 하고 문서의 해시 정보를 밸류값으로 맵핑한다. 문서위변조 검증 dApp은 문서 위변조 관리 체인코드에 키-밸류를 저장하는 함수를 호출하여 저장을 한다. 이후 문서위변조 검증 dApp은 문서 위변조 검증을 수행하는 경우 등록된 문서를 첨부하게 되면 문서명과 문서를 해시하여 키-밸류를 만들고 기존에 저장된 키-밸류를 비교 한다. 이 값이 동일한 경우 문서위변조 검증 dApp은 해당 문서가 위변조가 되지 않은 것으로 판단하고 다를 경우 문서위변조 검증 dApp은 해당 문서가 위변조된 것으로 판단한다.
블록체인 네트워크 플랫폼(300)은 블록체인 네트워크를 구축한다. 구체적으로 블록체인 네트워크 플랫폼(300)은 블록체인 관리에이전트(200)에 의해 블록체인 네트워크를 구축하게 된다.
블록체인 네트워크 플랫폼(300)은 프라이빗(Private) 블록체인 네트워크 플랫폼일 수 있다. 여기서 프라이빗(Private) 블록체인 네트워크 플랫폼은 허가된 사용자만이 참가할 수 있는 프라이빗 블록체인 네트워크를 구축한다.
이에 따라 다수의 사용자들이 참가할 수 있는 퍼블릭(Public) 블록체인 네트워크와 달리 프라이빗 블록체인 네트워크는 멤버쉽 서비스 제공기관에 의해 허가된 사용자만이 참가할 수 있고, 허가된 사용자들간에 블록체인을 생성하게 된다.
예컨대, 본 발명에 따른 조직이 멤버쉽 서비스 제공기관에 등록되면 해당 조직만이 블록체인 네트워크를 이용할 수 있고, 멤버쉽 서비스 제공기관에 등록되지 않은 조직은 블록체인 네트워크를 이용할 수 없다.
이에 따라 프라이빗 블록체인 네트워크 플랫폼은 허가받은 조직만이 블록체인 네트워크에 참가할 수 있게 하기 때문에, 기밀성이 강화될 뿐만 아니라, 트랜잭션 생성 속도 또한 상승될 수 있다.
일 실시예에 있어서, 블록체인 네트워크 플랫폼(300)은 하이퍼 레저 페브릭 아키텍쳐일 수 있다.
본 발명이 속하는 기술분야의 당업자는 상술한 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다.
그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100: 블록체인 관리시스템 200: 블록체인 관리에이전트
210: 서버 등록부 220: 노드 등록부
230: 조직 등록부 240: 채널등록부
250: 네트워크 환경 구성부 260: 모니터링부
270: API 제공부 300: 블록체인 네트워크 플랫폼

Claims (13)

  1. 미리 등록된 서버 중 어느 하나의 서버로부터 노드 등록페이지에 입력되는 노드정보에 따라 블록체인 네트워크 플랫폼에 상기 블록체인 네트워크를 구성하는 노드를 상기 서버에 등록하는 노드 등록부;
    상기 등록된 서버 중 어느 하나의 서버로부터 조직생성 페이지에 입력되는 조직정보에 따라 상기 노드를 포함하는 조직을 등록하는 조직 등록부;
    상기 등록된 서버 중 어느 하나의 서버로부터 채널생성 페이지에 입력되는 채널정보에 따라 블록체인을 공유하는 채널을 등록하는 채널 등록부; 및
    블록체인 네트워크 플랫폼를 이용하여 상기 등록된 노드, 조직, 및 채널로 블록체인 네트워크를 구축하는 네트워크 환경 구성부를 포함하는 것을 특징으로 하는 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템.
  2. 제1항에 있어서,
    상기 네트워크 환경 구성부는,
    상기 블록체인 네트워크 플랫폼에 미리 정해진 명령을 입력하여 멤버쉽 서비스 제공기관(Membership Service Provider)을 생성되게 하는 것을 특징으로 하는 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템.
  3. 제2항에 있어서,
    상기 네트워크 환경 구성부는,
    상기 조직정보를 기초로 조직파일을 생성하고, 상기 멤버쉽 서비스 제공기관에 상기 조직파일을 로딩시켜 상기 조직을 등록하는 것을 특징으로 하는 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템.
  4. 제1항에 있어서,
    상기 네트워크 환경 구성부는,
    상기 채널정보를 기초로 채널파일을 생성하고, 상기 블록체인 네트워크 플랫폼에 상기 채널파일을 로딩하여 채널 구성을 위한 정보를 등록하는 것을 특징으로 하는 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템.
  5. 제1항에 있어서,
    상기 네트워크 환경 구성부는,
    상기 노드정보를 기초로 노드파일을 생성하고 상기 등록된 서버로 상기 노드파일을 전파하여 상기 서버의 노드 환경을 동기화시키는 것을 특징으로 하는 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템.
  6. 제1항에 있어서,
    상기 네트워크 환경 구성부는,
    상기 블록체인 네트워크 플랫폼에 미리 정해진 노드 설정명령을 입력하여 마스터 노드 및 슬래이브 노드를 설정하여 블록체인 네트워크가 구축되게 하는 것을 특징으로 하는 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템.
  7. 제1항에 있어서,
    상기 노드 등록부는,
    상기 서버에 가상의 공간을 생성하여 상기 공간에 상기 노드를 등록하는 것을 특징으로 하는 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템.
  8. 제1항에 있어서,
    서버 등록페이지에 입력되는 서버정보에 따라 블록체인 네트워크에 참가하는 서버를 등록하는 서버 등록부를 더 포함하는 것을 특징으로 하는 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템.
  9. 제1항에 있어서,
    상기 조직정보는,
    상기 등록된 서버 중 어느 하나의 서버명칭, 네트워크 정보, 조직 ID, 조직명, 해당 조직에 참가하는 피어(Peer) 노드 정보, 및 조직 내 피어 노드 중 피어간의 정보 교환을 대리할 수 있는 앵커 피어 노드 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템.
  10. 제1항에 있어서,
    상기 노드정보는 노드의 유형 중 선택된 어느 하나의 노드, 포트정보, 도커 이미지, 및 도커 이미지버전 중 적어도 하나를 포함하는 것을 특징으로 하는 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템.
  11. 제1항에 있어서,
    상기 노드는,
    노드들간 인증 및 통신을 수행하기 위한 제1 노드, 원장데이터를 관리하는 제2 노드, 트랜잭션을 정렬하고 블록 생성 및 전파를 수행하는 제3 노드, 트랜잭션을 순서대로 큐에 저장 및 소비하는 제4 노드, 클러스터로 구성된 상기 제4 노드를 분산처리하는 제5 노드, 및 트랜잭션에서 키-밸류 형태의 최신데이터를 저장하는 제6 노드 중 적어도 하나를 포함하는 것을 특징으로 하는 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템.
  12. 제1항에 있어서,
    상기 채널정보는
    서버정보, 네트워크 정보, 채널명, 권한정보, 참여할 조직정보, 참여할 피어정보 중 적어도 하나를 포함하는 것을 특징으로 하는 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템.
  13. 제1항에 있어서,
    상기 블록체인 네트워크 플랫폼은 프라이빗(Private) 블록체인 네트워크 플랫폼인 것을 특징으로 하는 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템.
KR1020190179757A 2019-12-31 2019-12-31 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템 KR102294569B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190179757A KR102294569B1 (ko) 2019-12-31 2019-12-31 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190179757A KR102294569B1 (ko) 2019-12-31 2019-12-31 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템

Publications (2)

Publication Number Publication Date
KR20210086074A true KR20210086074A (ko) 2021-07-08
KR102294569B1 KR102294569B1 (ko) 2021-08-26

Family

ID=76894366

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190179757A KR102294569B1 (ko) 2019-12-31 2019-12-31 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템

Country Status (1)

Country Link
KR (1) KR102294569B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230060363A (ko) * 2021-10-27 2023-05-04 한국전력공사 외부자의 참여가 가능한 폐쇄망 블록체인 시스템 및 폐쇄망 블록체인 시스템에서 외부 참여인의 업무 처리 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190097623A (ko) * 2018-02-12 2019-08-21 박성배 블록 체인에 기반한 노드 장치, 노드 장치의 동작 방법 및 데이터 처리 시스템
KR20190110082A (ko) * 2017-01-19 2019-09-27 주식회사 케이티 블록 체인을 이용하여 데이터를 관리하는 장치 및 방법
KR20190120563A (ko) * 2018-04-16 2019-10-24 주식회사 스마트엠투엠 이종 네트워크 간 데이터 동기화를 위한 블록체인 시스템 및 이의 제어 방법
KR20190122149A (ko) * 2018-04-19 2019-10-29 한국전자통신연구원 난스를 이용한 합의 노드 선택 방법 및 그것을 이용한 블록체인 생성 방법 및 장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190110082A (ko) * 2017-01-19 2019-09-27 주식회사 케이티 블록 체인을 이용하여 데이터를 관리하는 장치 및 방법
KR20190097623A (ko) * 2018-02-12 2019-08-21 박성배 블록 체인에 기반한 노드 장치, 노드 장치의 동작 방법 및 데이터 처리 시스템
KR20190120563A (ko) * 2018-04-16 2019-10-24 주식회사 스마트엠투엠 이종 네트워크 간 데이터 동기화를 위한 블록체인 시스템 및 이의 제어 방법
KR20190122149A (ko) * 2018-04-19 2019-10-29 한국전자통신연구원 난스를 이용한 합의 노드 선택 방법 및 그것을 이용한 블록체인 생성 방법 및 장치

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
인터넷 게시 영상(SK C&C. "블록체인 개발 플랫폼 Chain Z-Enterprise Platform"). 2019.04.10. <url: https://www.youtube.com/watch?v=rJ4NPLDAXp8>* *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230060363A (ko) * 2021-10-27 2023-05-04 한국전력공사 외부자의 참여가 가능한 폐쇄망 블록체인 시스템 및 폐쇄망 블록체인 시스템에서 외부 참여인의 업무 처리 방법

Also Published As

Publication number Publication date
KR102294569B1 (ko) 2021-08-26

Similar Documents

Publication Publication Date Title
EP3731494B1 (en) Blockchain maintaining method and apparatus, server, and computer-readable storage medium
CN110620810B (zh) 在区块链上的连续资产转移的非链接所有权
US10965472B2 (en) Secure bootstrap for a blockchain network
CN102170440B (zh) 适用于存储云间数据安全迁移的方法
CN110769035B (zh) 一种区块链资产发行方法、平台、业务节点及存储介质
CN110288480B (zh) 一种区块链的私密交易方法及装置
Khovratovich et al. Sovrin: digital identities in the blockchain era
EP3732857A2 (en) System and method for decentralized-identifier creation
KR101986081B1 (ko) 블록체인에서 특정 노드들간 블록을 공유 및 검증하는 방법
JP6756041B2 (ja) 情報保護用のシステム及び方法
CN109377198A (zh) 一种基于联盟链多方共识的签约系统
US11403417B2 (en) Managing group authority and access to a secured file system in a decentralized environment
US20230316273A1 (en) Data processing method and apparatus, computer device, and storage medium
CN112835612A (zh) 一种基于区块链的电子文档版本管理方法及装置
CN111753014B (zh) 基于区块链的身份认证方法及装置
CN111327426B (zh) 数据共享方法及相关装置、设备及系统
CN111523152B (zh) 基于区块链的电子证件管理方法、管理网络及电子设备
CN112527912A (zh) 基于区块链网络的数据处理方法、装置及计算机设备
CN110334484B (zh) 一种版权验证方法、装置、计算机设备和存储介质
CN110910110A (zh) 一种数据处理方法、装置及计算机存储介质
Kumar et al. Front-End IoT application for the bitcoin based on proof of elapsed time (PoET)
JP2020204898A (ja) 分散台帳システムの運用管理方法、分散台帳システムの運用管理システム、および分散台帳システムの運用管理プログラム
KR102294569B1 (ko) 블록체인 네트워크를 구축할 수 있는 블록체인 관리시스템
Truong et al. Authenticating operation-based history in collaborative systems
JP2022151190A (ja) 業務監査支援システム及び業務監査支援方法

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant