KR20200092210A - 계층화된 스마트 컨트랙트를 포함하는 블록체인 노드 및 그 블록체인 노드의 동작 방법 - Google Patents

계층화된 스마트 컨트랙트를 포함하는 블록체인 노드 및 그 블록체인 노드의 동작 방법 Download PDF

Info

Publication number
KR20200092210A
KR20200092210A KR1020190009484A KR20190009484A KR20200092210A KR 20200092210 A KR20200092210 A KR 20200092210A KR 1020190009484 A KR1020190009484 A KR 1020190009484A KR 20190009484 A KR20190009484 A KR 20190009484A KR 20200092210 A KR20200092210 A KR 20200092210A
Authority
KR
South Korea
Prior art keywords
smart contract
layer
application layer
information
blockchain
Prior art date
Application number
KR1020190009484A
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 주식회사 케이티
Priority to KR1020190009484A priority Critical patent/KR20200092210A/ko
Publication of KR20200092210A publication Critical patent/KR20200092210A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1087Peer-to-peer [P2P] networks using cross-functional networking aspects
    • H04L67/1089Hierarchical topologies
    • 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/22Payment schemes or models
    • G06Q20/223Payment schemes or models based on the use of peer-to-peer networks
    • 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
    • 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] 

Abstract

프로그래머가 아닌 일반 사용자들이나 비전문 개발자들이 스마트 컨트랙트를 손쉽게 생성하고 수정할 수 있도록 하는 블록체인 기반의 스마트 컨트랙트를 포함하는 블록체인 노드 및 그 블록체인 노드의 동작 방법이 개시된다. 일 측면에 따른, 블록체인 네트워크를 구성하는 블록체인 노드는, 외부 연동 인터페이스를 통해 연동하는 외부 서비스 제공자에 의해 개발되어 배포된 응용 계층의 스마트 컨트랙트; 특정 비즈니스에 요구되는 기능을 실행하는 공통 계층의 스마트 컨트랙트; 블록체인 서비스를 위한 필수적 기능을 실행하는 코어 계층의 스마트 컨트랙트; 상기 응용 계층의 스마트 컨트랙트의 권한 정보를 저장하는 권한 정보 저장소; 및 상기 응용 계층의 스마트 컨트랙트로부터 상기 공통 계층 또는 상기 코어 계층의 스마트 컨트랙트의 실행을 위한 호출 명령의 수신시, 상기 권한 정보 저장소에서 해당 응용 계층의 스마트 컨트랙트의 권한 정보를 확인하고, 상기 공통 계층 또는 상기 코어 계층의 스마트 컨트랙트의 실행 권한이 있으면, 상기 호출 명령을 상기 공통 계층 또는 상기 코어 계층의 스마트 컨트랙트로 전송하고, 실행 권한이 없으면 이에 관한 응답을 해당 응용 계층의 스마트 컨트랙트로 회신하는 권한 관리 스마트 컨트랙트를 포함한다.

Description

계층화된 스마트 컨트랙트를 포함하는 블록체인 노드 및 그 블록체인 노드의 동작 방법{BLOCK-CHAIN NODE COMPRISING A LAYERED SMART CONTRACT AND OPERATING METHOD THEREOF}
본 발명은 분산 원장 기술인 블록체인 기술에 관한 것으로서, 보다 구체적으로 스마트 컨트랙트를 계층화한 블록체인 노드 및 그 블록체인 노드의 동작 방법에 관한 것이다.
일반적으로 전자 계약(electronic contract)은 통신 네트워크를 통한 전자적 의사 표시의 합의로 성립되는 계약을 말한다. 최근, 통신 기술의 발전과 개인 통신 장치의 보급에 따라 전자 계약 기술은 금융, 보험, 통신 서비스 등 당사자들 간의 계약을 요하는 다양한 산업 분야에 적용되고 있다. 특히, 블록체인(Blockchain) 기반의 전자 계약이 이용되고 있다. 블록체인 기반의 전자 계약의 기반 기술을 스마트 컨트랙트(Smart Contract)라고 한다.
스마트 컨트랙트는 중개자 없이 P2P(Peer to Peer)로 쉽고 편리하게 계약을 체결하고 이행할 수 있는 기술이다. 이 기술은 블록체인의 분산원장기술(DLT, Distributed Ledger Technology)이라는 특성을 이용해 금융거래, 부동산 계약, 공증 등 다양한 형태의 계약을 이해 당사자 간의 공유 네트워크를 통해 자동으로 처리한다. 더 나아가 스마트 컨트랙트는 블록체인 네트워크 내에서의 다양한 형태의 조건부 거래(transaction)를 지원한다. 예를 들어, 블록체인 네트워크 참여자들 간에 포인트, 상품권, 지역화폐 등 모든 형태의 토큰을 발행하여 유통할 수 있는 환경을 제공한다. 토큰은 상점에서 결제 수단으로 사용될 수 있고, 사용자 간의 상호 교환과 상품과의 물물 교환의 수단 등 모든 형태의 토큰 기반 경제 활동으로 활용될 수 있다. 경제 활동에서는 토큰의 발행, 유통, 소비 등 라이프 사이클과 라이프 사이클 내의 토큰의 상태 및 상태의 변이 조건 등이 스마트 컨트랙트로 정의될 수 있다. 또는 스마트 컨트랙트는 이동통신 로밍 서비스에서 홈망 사업자와 방문망 사업자 간에 로밍 요금을 정산하는 데도 사용된다. 이외에도 특정 조건을 만족시에 특정 기능을 실행해야 하는 다양한 분야에서 스마트 컨트랙트가 활용된다.
스마트 컨트랙트를 블록체인 네트워크에서 사용하기 위해서는 블록체인 네트워크에서 지원하는 독립적인 프로그래밍 언어를 알아야 하기 때문에 프로그래머가 아닌 일반 사용자들이 직접 스마트 컨트랙트의 조건과 내용을 코딩하기는 어렵다. 또한, 한번 스마트 컨트랙트가 생성되어 블록체인 네트워크로 배포되고 난 후 스마트 컨트랙트의 조건과 내용을 수정하는 것이 사실상 불가능하고, 새로운 스마트 컨트랙트를 생성하여 배포해야 한다. 또한 스마트 컨트랙트는 개발시 개별 패키지로 개발되어 재활용되기 어렵다. 또한, 특정 서비스를 위한 스마트 컨트랙트를 개발할 때 비즈니스별로 특화된 로직을 이해하고 구현해야 한다. 보통 이 같은 로직을 이해하고 이에 맞는 스마트 컨트랙트를 개발하는데 많은 시간과 노력이 든다. 이는 스마트 컨트랙트 개발 경험이 부족한 개발자가 완성도 있는 서비스를 만드는 것을 어렵게 한다.
본 발명은 상술한 문제점을 해결하기 위해 제안된 것으로서, 프로그래머가 아닌 일반 사용자들이나 비전문 개발자들이 스마트 컨트랙트를 손쉽게 생성하고 수정할 수 있도록 하는 블록체인 기반의 스마트 컨트랙트를 포함하는 블록체인 노드 및 그 블록체인 노드의 동작 방법을 제공하는 데 목적이 있다.
일 측면에 따른, 블록체인 네트워크를 구성하는 블록체인 노드는, 외부 연동 인터페이스를 통해 연동하는 외부 서비스 제공자에 의해 개발되어 배포된 응용 계층의 스마트 컨트랙트; 특정 비즈니스에 요구되는 기능을 실행하는 공통 계층의 스마트 컨트랙트; 블록체인 서비스를 위한 필수적 기능을 실행하는 코어 계층의 스마트 컨트랙트; 상기 응용 계층의 스마트 컨트랙트의 권한 정보를 저장하는 권한 정보 저장소; 및 상기 응용 계층의 스마트 컨트랙트로부터 상기 공통 계층 또는 상기 코어 계층의 스마트 컨트랙트의 실행을 위한 호출 명령의 수신시, 상기 권한 정보 저장소에서 해당 응용 계층의 스마트 컨트랙트의 권한 정보를 확인하고, 상기 공통 계층 또는 상기 코어 계층의 스마트 컨트랙트의 실행 권한이 있으면, 상기 호출 명령을 상기 공통 계층 또는 상기 코어 계층의 스마트 컨트랙트로 전송하고, 실행 권한이 없으면 이에 관한 응답을 해당 응용 계층의 스마트 컨트랙트로 회신하는 권한 관리 스마트 컨트랙트를 포함한다.
상기 블록체인 노드는, 관리자로부터 상기 권한 정보 및 상기 응용 계층의 스마트 컨트랙트의 설치 파일을 포함하는 패키지를 수신하고, 상기 설치 파일을 이용하여 상기 응용 계층의 스마트 컨트랙트를 설치하며 상기 관리자로부터 수신된 권한 정보를 상기 권한 정보 저장소에 저장하는 관리 에이전트를 더 포함할 수 있다.
상기 관리 에이전트는, 상기 관리자로부터 변경 권한 정보를 수신하고 상기 권한 정보 저장소에 저장된 권한 정보를 상기 변경 권한 정보로 업데이트할 수 있다.
상기 외부 서비스 제공자로부터 전송되어 상기 외부 연동 인터페이스를 통해 상기 공통 계층의 스마트 컨트랙트로 직접 수신되는 호출 명령은, 상기 외부 연동 인터페이스에서 권한 검증에 성공한 것일 수 있다.
상기 코어 계층의 스마트 컨트랙트는, 계층별 스마트 컨트랙트의 사용 내역을 통계내어 과금하는 기능을 제공할 수 있다.
다른 측면에 따른 블록체인 네트워크를 구성하는 블록체인 노드의 동작 방법은, 외부 연동 인터페이스를 통해 연동하는 외부 서비스 제공자에 의해 개발되어 배포된 응용 계층의 스마트 컨트랙트가 상기 외부 연동 인터페이스로부터 호출 명령을 수신하는 단계; 상기 응용 계층의 스마트 컨트랙트가 상기 호출 명령을 권한 관리 스마트 컨트랙트로 전송하는 단계; 상기 권한 관리 스마트 컨트랙트가 권한 정보 저장소에서 상기 응용 계층의 스마트 컨트랙트의 권한 정보를 확인하여 공통 계층 또는 코어 계층의 스마트 컨트랙트의 실행 권한이 있는지 확인하는 단계; 실행 권한이 있으면, 상기 호출 명령을 상기 공통 계층 또는 상기 코어 계층의 스마트 컨트랙트로 전송하는 단계; 및 실행 권한이 없으면 이에 관한 응답을 상기 응용 계층의 스마트 컨트랙트로 회신하는 단계를 포함한다.
상기 동작 방법은, 관리 에이전트가, 관리자로부터 상기 권한 정보 및 상기 응용 계층의 스마트 컨트랙트의 설치 파일을 포함하는 패키지를 수신하고, 상기 설치 파일을 이용하여 상기 응용 계층의 스마트 컨트랙트를 설치하며 상기 관리자로부터 수신된 권한 정보를 상기 권한 정보 저장소에 저장하는 단계를 더 포함할 수 있다.
상기 동작 방법은, 상기 관리 에이전트가, 상기 관리자로부터 변경 권한 정보를 수신하고 상기 권한 정보 저장소에 저장된 권한 정보를 상기 변경 권한 정보로 업데이트하는 단계를 더 포함할 수 있다.
상기 동작 방법은, 상기 공통 계층의 스마트 컨트랙트가, 상기 외부 서비스 제공자로부터 전송되어 상기 외부 연동 인터페이스를 통해 직접 호출 명령을 수신하는 단계를 더 포함하되, 그 호출 명령은, 상기 외부 연동 인터페이스에서 권한 검증에 성공한 것일 수 있다.
상기 동작 방법은, 상기 코어 계층의 스마트 컨트랙트가, 계층별 스마트 컨트랙트의 사용 내역을 통계내어 과금하는 단계를 더 포함할 수 있다.
본 발명의 일 측면에 따르면, 블록체인을 이용한 서비스를 개발하는 서비스 개발자들은 블록체인 개발자 수준에서 스마트 컨트랙트를 개발할 필요 없이 응용 계층의 스마트 컨트랙트만을 개발하면 되므로, 비용과 시간을 절약할 수 있다.
본 발명의 일 측면에 따르면, 응용 계층의 스마트 컨트랙트에서 공통 계층의 스마트 컨트랙트 또는 코어 계층의 스마트 컨트랙트를 호출할 때 권한을 검증함으로써 블록에 악의적인 데이터가 기록되는 등의 부작용을 최소화할 수 있다.
본 발명의 일 측면에 따르면, 코어 계층의 스마트 컨트랙트는 계층별 스마트 컨트랙트의 사용 내역을 통계내어 과금함으로써 Baas(Blockchain as a service)를 가능하게 한다.
도 1은 본 발명의 일 실시예에 따른 시스템을 나타낸 도면이다.
도 2는 도 1의 스마트 컨트랙트의 구성을 나타낸 일 실시예의 도면이다.
도 3은 본 발명의 일 실시예에 따른 응용 계층의 스마트 컨트랙트를 설치하는 과정을 설명하는 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 블록체인 노드에서 스마트 컨트랙트를 실행하는 방법을 설명하는 흐름도이다.
도 5는 본 발명의 다른 실시예에 따른 블록체인 노드에서 스마트 컨트랙트를 실행하는 방법을 설명하는 흐름도이다.
도 6은 본 발명의 또 다른 실시예에 따른 블록체인 노드에서 스마트 컨트랙트를 실행하는 방법을 설명하는 흐름도이다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일 실시예를 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 시스템을 나타낸 도면이다. 도 1을 참조하면, 본 실시예에 따른 시스템은, 외부 서비스 서버(110), 외부 연동 인터페이스(130), 복수의 블록체인 노드(141)들로 구성되는 블록체인 네트워크(140)를 포함한다. 이들은 통신망(120)을 통해 연결될 수 있다.
외부 서비스 서버(110)는, 블록체인 네트워크(140)를 통해 부가 서비스를 제공하는 서비스 제공자의 장치이다. 예를 들어, 외부 서비스 서버(110)는 게임 서버일 수 있고, 또는 지역 화폐 서비스 서버일 수도 있으며, 상품권 발행 서비스 서버, 또는 물류 관리 서버일 수도 있다. 외부 서비스 서버(110)는, 블록체인 네트워크(140)의 스마트 컨트랙트(220)를 이용할 때 호출 명령을 외부 연동 인터페이스(130)를 통해 블록체인 네트워크(140)로 전송한다. 바람직하게, 외부 서비스 서버(110)는, REST 방식으로 스마트 컨트랙트(220)를 호출할 수 있다. 실시예에서는, 블록체인 네트워크(140)를 이용하는 장치로서 외부 서비스 서버(110)를 예로 들지만 여기에 제한되는 것은 아니며 스마트폰이나 PC 등의 클라이언트 장치일 수도 있다.
외부 연동 인터페이스(130)는, 외부 서비스 서버(110)와 블록체인 네트워크(140) 간의 통신을 중계한다. 바람직하게, 외부 연동 인터페이스(130)는, API(Application Programming Interface) 서버일 수 있다. 외부 연동 인터페이스(130)는 외부 서비스 서버(110)로부터 수신된 호출 명령을 블록체인 네트워크(140) 내의 블록체인 노드(141)들의 스마트 컨트랙트(220)로 전송하고, 또한 스마트 컨트랙트(220)로부터 실행 결과를 수신하여 외부 서비스 서버(110)로 전송한다. 외부 연동 인터페이스(130)는 저장소에 블록체인 노드(141)의 스마트 컨트랙트(220)를 구성하는 계층 중 공통 계층의 스마트 컨트랙트를 이용할 수 있는 서비스 제공자의 정보를 저장한다. 외부 연동 인터페이스(130)는, 외부 서비스 서버(110)로부터 상기 공통 계층의 스마트 컨트랙트에 대한 호출 명령이 수신되면, 상기 저장소에 저장된 정보에 기초하여 호출한 자가 해당 공통 계층의 스마트 컨트랙트를 이용할 수 있는 권한이 있는지 체크하여, 권한이 있는 경우에만 호출 명령을 스마트 컨트랙트(220)로 전송한다.
블록체인 네트워크(140)는, 각각 블록체인을 저장 수단에 저장하며 블록체인 네트워크를 구성하는 복수의 블록체인 노드(141)를 포함할 수 있다. 블록체인 노드(141)들은, 블록체인 서비스를 이용하는 사용자들의 가입을 처리하고 가입 정보를 관리한다. 또한 블록체인 노드(141)들은 서로 동기화되는 블록체인을 저장하고 거래 정보를 블록체인에 저장한다. 블록체인 노드(141)들은, 지분 증명(Proof-of-Stake)이나 작업 증명(Proof-of-Work)에 의해 블록을 생성하여 거래 정보를 저장하고, 생성된 블록들을 다른 블록체인 노드들과 동기화한다. 블록체인 네트워크(140)는 퍼블릭 블록체인 네트워크이거나 프라이빗 블록체인 네트워크일 수 있다.
블록체인 노드(141)들은, 서버나 PC 등과 같은 컴퓨터 시스템으로 구성될 수 있으며, 메모리, 하나 이상의 프로세서(CPU), 주변 인터페이스, 입출력(I/O) 서브시스템, 디스플레이 장치, 입력 장치 및 통신 회로를 포함할 수 있다. 이러한 구성요소는 하나 이상의 통신 버스 또는 신호선을 통하여 통신한다. 여러 구성요소는 하나 이상의 신호 처리 및/또는 애플리케이션 전용 집적 회로(application specific integrated circuit)를 포함하여, 하드웨어, 소프트웨어 또는 하드웨어와 소프트웨어 둘의 조합으로 구현될 수 있다. 메모리는 고속 랜덤 액세스 메모리를 포함할 수 있고, 또한 하나 이상의 자기 디스크 저장 장치, 플래시 메모리 장치와 같은 불휘발성 메모리, 또는 다른 불휘발성 반도체 메모리 장치를 포함할 수 있고, 네트워크 부착형(attached) 저장 장치를 더 포함할 수 있다. 주변 인터페이스는 입출력 주변 장치를 프로세서 및 메모리와 연결한다. 하나 이상의 프로세서는 다양한 소프트웨어 프로그램 및/또는 메모리에 저장되어 있는 명령어 세트를 실행하여 블록체인 노드(141)를 위한 여러 기능을 수행하고 데이터를 처리한다. I/O 서브시스템은 디스플레이 장치, 입력 장치와 같은 블록체인 노드(141)의 입출력 주변장치와 주변 인터페이스 사이에 인터페이스를 제공한다. 디스플레이 장치는 LCD(liquid crystal display) 등이 사용할 수 있고, 이러한 디스플레이 장치는 용량형, 저항형, 적외선형 등의 터치 디스플레이일 수 있다. 프로세서는 블록체인 노드(141)들에 연관된 동작을 수행하고 명령어들을 수행하도록 구성된 프로세서로서, 예를 들어, 메모리로부터 검색된 명령어들을 이용하여, 블록체인 노드(141)들의 컴포넌트 간의 입력 및 출력 데이터의 수신과 조작을 제어할 수 있다. 소프트웨어 구성요소로서 운영 체제, 그래픽 모듈(명령어 세트) 및 블록체인 서비스를 위한 프로그램(명령어 세트)이 메모리에 탑재(설치)된다. 운영 체제는, 예를 들어, 다윈(Darwin), RTXC, LINUX, UNIX, OS X, WINDOWS 또는 VxWorks, 안드로이드 등과 같은 내장 운영체제일 수 있고, 일반적인 시스템 태스크(task)(예를 들어, 메모리 관리, 저장 장치 제어, 전력 관리 등)를 제어 및 관리하는 다양한 소프트웨어 구성요소 및/또는 장치를 포함하고, 다양한 하드웨어와 소프트웨어 구성요소 사이의 통신을 촉진시킨다. 그래픽 모듈은 디스플레이 장치 상에 그래픽을 제공하고 표시하기 위한 주지의 여러 소프트웨어 구성요소를 포함한다. 통신 회로는 무선 또는 유선 통신을 수행할 수 있다. 통신 회로는 전기 신호를 전자파로 또는 그 반대로 변환하며 이 전자파를 통하여 통신 네트워크, 다른 이동형 게이트웨이 및 통신 장치와 통신할 수 있다. 통신 회로는 예를 들어 안테나 시스템, RF 트랜시버, 하나 이상의 증폭기, 튜너, 하나 이상의 오실레이터, 디지털 신호 처리기, CODEC 칩셋, 가입자 식별 모듈(subscriber identity module, SIM) 카드, 메모리 등을 포함하지만 이에 한정되지 않는 이러한 기능을 수행하기 위한 주지의 회로를 포함할 수 있다. 통신 회로는 월드 와이드 웹(World Wide Web, WWW)으로 불리는 인터넷, 인트라넷과 네트워크 및/또는, 셀룰러 전화 네트워크, 무선 LAN 및/또는 MAN(metropolitan area network)와 같은 무선 네트워크, 그리고 근거리 무선 통신에 의하여 다른 장치와 통신할 수 있다.
블록체인 노드(141)는, 도 1에 도시된 바와 같이, 관리 에이전트(210)와 스마트 컨트랙트(220)를 포함한다. 관리 에이전트(210)는, 관리자의 입력에 따라 스마트 컨트랙트(220)를 블록체인 노드(141)에 설치 및 삭제하고, 또한 설치 및 삭제되는 스마트 컨트랙트(220)의 권한 정보를 권한 정보 저장소(230)에 저장하고 갱신한다. 바람직하게, 관리 에이전트(210)는, 관리자 단말로부터 권한 정보 및 스마트 컨트랙트(220)의 설치 파일을 포함하는 패키지를 수신하여 스마트 컨트랙트(220)를 설치하고 권한 정보를 권한 관리 스마트 컨트랙트(도 2의 224)를 통해 권한 정보 저장소(230)에 저장할 수 있으며, 또한 관리자 단말로부터 특정 스마트 컨트랙트(220)의 삭제 명령 수신시 해당하는 스마트 컨트랙트(220)를 삭제하고 권한 관리 스마트 컨트랙트(도 2의 224)를 통해 권한 정보 저장소(230)에서 권한 정보를 삭제할 수 있다. 또한 관리 에이전트(210)는, 관리자 단말로부터 특정 스마트 컨트랙트(220)의 권한 정보 변경 요청을 수신할 수 있고, 권한 관리 스마트 컨트랙트(도 2의 224)를 통해 권한 정보 저장소(230)에서 해당 권한 정보를 변경할 수 있다. 권한 정보는 응용 계층의 스마트 컨트랙트별로 실행 가능한 공통 계층 또는 코어 계층의 스마트 컨트랙트 목록을 포함한다. 스마트 컨트랙트(220)는, 블록체인 엔진에 설치된다. 예를 들어, 스마트 컨트랙트(220)는, 스마트 컨트랙트를 실행하기 위한 환경, 예를 들어 가상 머신(VM : Virtual Machine)에 설치된다. 스마트 컨트랙트(220)는, 외부 연동 인터페이스(130)를 통해 수신되는 외부 서비스 서버(110)의 호출 명령에 따라 실행된다.
도 2는 도 1의 스마트 컨트랙트(220)의 구성을 나타낸 일 실시예의 도면이다. 도 2를 참조하면, 스마트 컨트랙트(220)는, 응용(application, 어플리케이션) 계층의 스마트 컨트랙트(221), 공통 계층의 스마트 컨트랙트(222), 코어 계층의 스마트 컨트랙트(223) 및 권한 관리 스마트 컨트랙트(224)를 포함한다.
응용 계층의 스마트 컨트랙트(221)는, 외부 서비스 서버(110)를 운영하는 서비스 제공자가 개발하여 배포한 스마트 컨트랙트로서, 예를 들어, 도 2에 도시된 바와 같이, 금융 거래 서비스를 위한 스마트 컨트랙트 또는 사용자 인증 서비스를 위한 스마트 컨트랙트 등을 포함한다. 서비스 제공자는, 공통 계층 및 코어 계층의 스마트 컨트랙트(222, 223)를 개발할 필요 없이, 제공 서비스를 위한 스마트 컨트랙트 기능을 설계한 후, 제공 서비스에 적용할 공통 계층 또는 코어 계층의 스마트 컨트랙트(222, 223)를 활용하는 응용 계층의 스마트 컨트랙트(221)만을 개발한다. 응용 계층의 스마트 컨트랙트(221)는, 공통 계층 또는 코어 계층의 스마트 컨트랙트(222, 223)와 연동할 수 있는 API(Application Programming Interface)를 포함하고, 공통 계층 또는 코어 계층의 스마트 컨트랙트(222, 223)를 호출한다. 응용 계층의 스마트 컨트랙트(221)는, 관리자에 의해 블록체인 노드(141)에 배포되어 관리 에이전트(210)에 의해 설치되고, 이때 관리 에이전트(210)는 관리자에 의해 지정된 해당 응용 계층의 스마트 컨트랙트(2210)의 권한 정보를 권한 정보 저장소(230)에 저장한다.
공통 계층의 스마트 컨트랙트(222)는, 특정 비즈니스에 주로 요구되는 기능들을 모아서 비즈니스별 집합 형태로 특정 기능을 제공한다. 예를 들어, 도 2에 도시된 바와 같이, 금융 비즈니스를 위해 요구되는 발행, 거래, 정산 및 결제 등의 기능을 모아 금융 스마트 컨트랙트가 제공된다. 공통 계층의 스마트 컨트랙트(222)는, 응용 계층의 스마트 컨트랙트(221)에 의해 호출될 수 있고, 또는 외부 연동 인터페이스(130)를 통해서 외부 서비스 서버(110)로부터 직접 호출될 수도 있다.
코어 계층의 스마트 컨트랙트(223)는, 블록에 데이터를 기록하는 등의 모든 서비스에 필수적으로 사용되는 기능을 제공한다. 코어 계층의 스마트 컨트랙트(223)는, 도 2에 도시된 바와 같이, 예를 들어, 통계 관리, 감사 관리, 데이터 제어, 리소스 관리, 이벤트 처리, 암복호화, 외부 연결 등의 기능을 제공한다. 통계 관리는, 스마트 컨트랙트의 트랜잭션 내역을 관리 및 조회할 수 있는 기능을 제공한다. 예컨대, 통계 관리는, 계층별 스마트 컨트랙트의 사용 내역을 실시간으로 통계내어 과금을 할 수 있다. 감사 관리는 스마트 컨트랙트의 트랜잭션 결과물이 블록체인의 정책에 위배되지 않는지 확인하는 기능을 제공한다. 예컨대, 감사 관리는 권한별 스마트 컨트랙트의 실행 결과를 확인하여 권한을 위배하여 스마트 컨트랙트가 실행되었는지 체크할 수 있다. 데이터 제어는 상태(state)의 생성, 읽기, 업데이트, 삭제 등을 처리를 제공하고, 리소스 관리는 블록체인의 쌓인 블록의 크기 등의 리소스를 관리하며, 이벤트 처리는 스마트 컨트랙트의 실행을 위한 조건의 처리나 트랜잭션의 모니터링 또는 이벤트 전달 등의 기능을 제공하고, 암복호화는 데이터를 AES, RSA 등으로 암복호화하는 기능을 제공하며, 외부 연결은 외부 리소스를 연결하는 기능을 제공한다.
권한 관리 스마트 컨트랙트(224)는, 응용 계층의 스마트 컨트랙트(221)와 공통 또는 코어 계층의 스마트 컨트랙트(222) 사이에 위치하고, 관리 에이전트(210)와 통신하여 응용 계층의 스마트 컨트랙트(221)의 권한 정보를 수신하여 권한 정보 저장소(230)에 저장, 삭제, 변경한다. 또한 권한 관리 스마트 컨트랙트(224)는, 응용 계층의 스마트 컨트랙트(221)에서 공통 계층 또는 코어 계층의 스마트 컨트랙트(222, 223)를 이용하고자 할 때, 응용 계층의 스마트 컨트랙트(221)로부터 호출을 수신하고, 권한 정보 저장소(230)에서 해당 응용 계층의 스마트 컨트랙트(221)가 해당 공통 계층 또는 코어 계층의 스마트 컨트랙트(222, 223)를 실행할 수 있는 권한이 있는지 조회한다. 권한 관리 스마트 컨트랙트(224)는, 실행 권한이 없는 경우, 이에 관한 응답을 해당 응용 계층의 스마트 컨트랙트(221)로 회신하고, 실행 권한이 있을 경우, 호출을 해당하는 공통 계층 또는 코어 계층의 스마트 컨트랙트(222, 223)로 전달한다. 바람직하게, 공통 계층의 스마트 컨트랙트(222) 보다는, 코어 계층의 스마트 컨트랙트(223)를 실행하기 위해서는 보다 높은 권한이 필요하다.
도 3은 본 발명의 일 실시예에 따른 응용 계층의 스마트 컨트랙트를 설치하는 과정을 설명하는 흐름도이다.
도 3을 참조하면, 관리자는 응용 계층의 스마트 컨트랙트의 설치 요청을 외부 서비스 제공자로부터 수신한다. 이때 관리자는 외부 서비스 제공자로부터 응용 계층의 스마트 컨트랙트의 설치 파일을 수신한다. 바람직하게, 외부 서비스 제공자는 관리자 단말로 설치 파일을 전송할 수 있다. 관리자는 해당 응용 계층의 스마트 컨트랙트를 검토하여 해당 응용 계층의 스마트 컨트랙트의 권한을 설정한다. 관리자는 상기 설치 파일과 권한 정보를 포함하는 스마트 컨트랙트 패키지를 블록체인 노드(141)의 관리 에이전트(210)로 전송한다(S301). 바람직하게, 관리자는 관리자 단말을 통해 상기 스마트 컨트랙트 패키지를 통신망을 통해 관리 에이전트(210)로전송할 수 있다.
스마트 컨트랙트 패키지를 수신한 관리 에이전트(210)는, 스마트 컨트랙트 패키지에 포함된 스마트 컨트랙트의 설치 파일을 이용하여 블록체인 노드(141)에 응용 계층의 스마트 컨트랙트(221)를 설치한다(S302). 또한 관리 에이전트(210)는 권한 관리 스마트 컨트랙트(224)를 호출하여 상기 스마트 컨트랙트 패키지에 포함된 권한 정보를 전달한다(S303). 권한 정보는, 해당 응용 계층의 스마트 컨트랙트(221)가 실행 가능한 공통 계층 또는 코어 계층의 스마트 컨트랙트의 목록을 포함한다. 권한 관리 스마트 컨트랙트(224)는, 수신된 권한 정보를 권한 정보 저장소(230)에 저장한다(S304).
도 3을 참조한 실시예에서는, 응용 계층의 스마트 컨트랙트(221)를 설치하는 예를 설명하였으나, 관리 에이전트(210)와 권한 관리 스마트 컨트랙트(224)는, 권한 정보 저장소(230)에 저장된 권한 정보를 변경할 수 있다. 관리 에이전트(210)는 관리자로부터 변경된 권한 정보를 포함하는 권한 정보 변경 요청이 수신되면 권한 관리 스마트 컨트랙트(224)를 호출하여 변경된 권한 정보를 전달하고, 권한 관리 스마트 컨트랙트(224)는 권한 정보 저장소(230)에 저장된 권한 정보를 변경된 권한 정보로 변경한다. 또한, 관리 에이전트(210)는 관리자의 요청에 따라 특정 응용 계층의 스마트 컨트랙트를 삭제할 수도 있다. 이때 마찬가지로 관리 에이전트(210)는 권한 관리 스마트 컨트랙트(224)를 호출하며 권한 정보 삭제를 요청하고, 권한 관리 스마트 컨트랙트(224)는 권한 정보 저장소(230)에서 해당하는 권한 정보를 삭제한다.
도 4는 본 발명의 일 실시예에 따른 블록체인 노드에서 스마트 컨트랙트를 실행하는 방법을 설명하는 흐름도이다.
도 4를 참조하면, 응용 계층의 스마트 컨트랙트(SC:Smart Contract)(221)를 설치한 서비스 제공자의 외부 서비스 서버(110)는 스마트 컨트랙트(221)를 실행하기 위한 호출 명령을 외부 연동 인터페이스(130)로 전송한다(S401). 외부 연동 인터페이스(130)는, 그 호출 명령을 응용 계층의 스마트 컨트랙트(221)로 전달한다(S402). 단계 S401에서의 호출 명령과 단계 S402에서의 호출 명령의 타입은 서로 다를 수 있다. 단계 S401에서의 호출 명령은 외부 서비스 서버(110)와 외부 연동 인터페이스(130) 간의 통신 프로토콜에 따른 타입이고, 단계 S402에서의 호출 명령은 외부 연동 인터페이스(130)와 응용 계층의 스마트 컨트랙트(221) 간의 통신 프로토콜에 따른 타입이다.
본 실시예에서 응용 계층의 스마트 컨트랙트(221)가 수신한 호출 명령은 공통 계층의 스마트 컨트랙트(222)를 실행해야 하는 호출 명령이다. 응용 계층의 스마트 컨트랙트(221)는 공통 계층의 스마트 컨트랙트(222)로 호출 명령을 직접 전송하지 않고, 권한 관리 스마트 컨트랙트(224)로 호출 명령을 전달한다(S403). 권한 관리 스마트 컨트랙트(224)는 수신된 호출 명령을 기초로 해당 응용 계층의 스마트 컨트랙트(221)가 호출 대상인 공통 계층의 스마트 컨트랙트(222)를 실행할 권한이 있는지 여부를 권한 정보 저장소(230)에서 조회한다(S404).
권한 관리 스마트 컨트랙트(224)는, 응용 계층의 스마트 컨트랙트(221)가 실행 권한이 없는 경우, 해당 응용 계층의 스마트 컨트랙트(221)로 이에 관한 응답을 회신하고, 반면 실행 권한이 있는 경우, 해당하는 공통 계층의 스마트 컨트랙트(222)로 호출 명령을 전송한다(S405). 공통 계층의 스마트 컨트랙트(222)는 코어 계층의 스마트 컨트랙트(223)로 호출 명령을 전송한다(S406). 공통 계층과 코어 계층의 스마트 컨트랙트(222, 223)는 관리자 측에 의해 개발하여 설치된 것이므로 공통 계층의 스마트 컨트랙트(222)가 코어 계층이 스마트 컨트랙트(223)를 호출하여 실행할 경우에는 권한 조회를 하지 않는다.
도 5는 본 발명의 다른 실시예에 따른 블록체인 노드에서 스마트 컨트랙트를 실행하는 방법을 설명하는 흐름도이다.
도 5를 참조하면, 응용 계층의 스마트 컨트랙트(SC:Smart Contract)(221)를 설치한 서비스 제공자의 외부 서비스 서버(110)는 스마트 컨트랙트(221)를 실행하기 위한 호출 명령을 외부 연동 인터페이스(130)로 전송한다(S501). 외부 연동 인터페이스(130)는, 그 호출 명령을 응용 계층의 스마트 컨트랙트(221)로 전달한다(S502). 본 실시예에서 응용 계층의 스마트 컨트랙트(221)가 수신한 호출 명령은 코어 계층의 스마트 컨트랙트(223)를 실행해야 하는 호출 명령이다. 응용 계층의 스마트 컨트랙트(221)는 코어 계층의 스마트 컨트랙트(223)로 호출 명령을 직접 전송하지 않고, 권한 관리 스마트 컨트랙트(224)로 호출 명령을 전달한다(S503). 권한 관리 스마트 컨트랙트(224)는 수신된 호출 명령을 기초로 해당 응용 계층의 스마트 컨트랙트(221)가 호출 대상인 코어 계층의 스마트 컨트랙트(223)를 실행할 권한이 있는지 여부를 권한 정보 저장소(230)에서 조회한다(S504). 권한 관리 스마트 컨트랙트(224)는, 응용 계층의 스마트 컨트랙트(221)가 실행 권한이 없는 경우, 해당 응용 계층의 스마트 컨트랙트(221)로 이에 관한 응답을 회신하고, 반면 실행 권한이 있는 경우, 해당하는 코어 계층의 스마트 컨트랙트(223)로 호출 명령을 전송한다(S505).
도 6은 본 발명의 또 다른 실시예에 따른 블록체인 노드에서 스마트 컨트랙트를 실행하는 방법을 설명하는 흐름도이다.
도 6을 참조하면, 서비스 제공자의 외부 서비스 서버(110)는 공통 계층의 스마트 컨트랙트(221)를 실행하기 위한 호출 명령을 외부 연동 인터페이스(130)로 전송한다(S601). 외부 연동 인터페이스(130)는, 해당 호출 명령이 응용 계층의 스마트 컨트랙트(221)를 실행하기 위한 호출 명령이 아닌, 공통 계층의 스마트 컨트랙트(222)를 실행하기 위한 호출 명령이므로, 자체 저장하고 있는 권한 정보를 기초로 외부 서비스 서버(110)가 공통 계층의 해당하는 스마트 컨트랙트(222)를 실행할 권한이 있는지 확인한다(S602). 외부 연동 인터페이스(130)는, 외부 서비스 서버(110)가 실행 권한이 없는 경우, 외부 서비스 서버(110)로 이에 관한 응답을 회신하고, 반면 실행 권한이 있는 경우, 해당하는 공통 계층의 스마트 컨트랙트(222)로 호출 명령을 전송한다(S603). 공통 계층의 스마트 컨트랙트(222)는 코어 계층의 스마트 컨트랙트(223)로 호출 명령을 전송한다(S604).
이상의 실시예에 따르면, 블록체인을 이용한 서비스를 개발하는 서비스 개발자들은 블록체인 개발자 수준에서 스마트 컨트랙트를 개발할 필요 없이 응용 계층의 스마트 컨트랙트만을 개발하면 되므로, 비용과 시간을 절약할 수 있다. 또한, 응용 계층의 스마트 컨트랙트에서 공통 계층의 스마트 컨트랙트 또는 코어 계층의 스마트 컨트랙트를 호출할 때 권한을 검증함으로써 블록에 악의적인 데이터가 기록되거나 하는 등의 부작용을 최소화할 수 있다.
또한, 이상의 실시예에 따르면, 블록체인 네트워크를 구축하는 사업자는, 미리 공통 계층 및 코어 계층의 스마트 컨트랙트를 개발해 놓은 다음, 외부 서비스 제공자들이 그 공통 계층 및 코어 계층의 스마트 컨트랙트를 이용하는 응용 게층의 스마트 컨트랙트만을 개발하도록 함으로써, 직접 외부 서비스 제공자들이 블록체인 네트워크를 구축할 필요가 없게 하고, 블록체인 네트워크를 구축한 사업자는 플랫폼 사업이 가능해지고, Baas(Blockchain as a service)를 가능하게 한다.
본 명세서는 많은 특징을 포함하는 반면, 그러한 특징은 본 발명의 범위 또는 특허청구범위를 제한하는 것으로 해석되어서는 안 된다. 또한, 본 명세서에서 개별적인 실시예에서 설명된 특징들은 단일 실시예에서 결합되어 구현될 수 있다. 반대로, 본 명세서에서 단일 실시예에서 설명된 다양한 특징들은 개별적으로 다양한 실시예에서 구현되거나, 적절히 결합되어 구현될 수 있다.
도면에서 동작들이 특정한 순서로 설명되었으나, 그러한 동작들이 도시된 바와 같은 특정한 순서로 수행되는 것으로, 또는 일련의 연속된 순서, 또는 원하는 결과를 얻기 위해 모든 설명된 동작이 수행되는 것으로 이해되어서는 안 된다. 특정 환경에서 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 아울러, 상술한 실시예에서 다양한 시스템 구성요소의 구분은 모든 실시예에서 그러한 구분을 요구하지 않는 것으로 이해되어야 한다. 상술한 프로그램 구성요소 및 시스템은 일반적으로 단일 소프트웨어 제품 또는 멀티플 소프트웨어 제품에 패키지로 구현될 수 있다.
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(시디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. 이러한 과정은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있으므로 더 이상 상세히 설명하지 않기로 한다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.
110 : 외부 서비스 서버
130 : 외부 연동 인터페이스
140 : 블록체인 네트워크
141 : 블록체인 노드
210 : 관리 에이전트
220 : 스마트 컨트랙트
230 : 권한 정보 저장소
221 : 응용 계층의 스마트 컨트랙트
222 : 공통 계층의 스마트 컨트랙트
223 : 코어 계층의 스마트 컨트랙트
224 : 권한 관리 스마트 컨트랙트

Claims (10)

  1. 블록체인 네트워크를 구성하는 블록체인 노드에 있어서,
    외부 연동 인터페이스를 통해 연동하는 외부 서비스 제공자에 의해 개발되어 배포된 응용 계층의 스마트 컨트랙트;
    특정 비즈니스에 요구되는 기능을 실행하는 공통 계층의 스마트 컨트랙트;
    블록체인 서비스를 위한 필수적 기능을 실행하는 코어 계층의 스마트 컨트랙트;
    상기 응용 계층의 스마트 컨트랙트의 권한 정보를 저장하는 권한 정보 저장소; 및
    상기 응용 계층의 스마트 컨트랙트로부터 상기 공통 계층 또는 상기 코어 계층의 스마트 컨트랙트의 실행을 위한 호출 명령의 수신시, 상기 권한 정보 저장소에서 해당 응용 계층의 스마트 컨트랙트의 권한 정보를 확인하고, 상기 공통 계층 또는 상기 코어 계층의 스마트 컨트랙트의 실행 권한이 있으면, 상기 호출 명령을 상기 공통 계층 또는 상기 코어 계층의 스마트 컨트랙트로 전송하고, 실행 권한이 없으면 이에 관한 응답을 해당 응용 계층의 스마트 컨트랙트로 회신하는 권한 관리 스마트 컨트랙트를 포함하는 블록체인 노드.
  2. 제 1 항에 있어서,
    관리자로부터 상기 권한 정보 및 상기 응용 계층의 스마트 컨트랙트의 설치 파일을 포함하는 패키지를 수신하고, 상기 설치 파일을 이용하여 상기 응용 계층의 스마트 컨트랙트를 설치하며 상기 관리자로부터 수신된 권한 정보를 상기 권한 정보 저장소에 저장하는 관리 에이전트를 더 포함하는 블록체인 노드.
  3. 제 2 항에 있어서,
    상기 관리 에이전트는,
    상기 관리자로부터 변경 권한 정보를 수신하고 상기 권한 정보 저장소에 저장된 권한 정보를 상기 변경 권한 정보로 업데이트하는 것을 특징으로 하는 블록체인 노드.
  4. 제 1 항에 있어서,
    상기 외부 서비스 제공자로부터 전송되어 상기 외부 연동 인터페이스를 통해 상기 공통 계층의 스마트 컨트랙트로 직접 수신되는 호출 명령은, 상기 외부 연동 인터페이스에서 권한 검증에 성공한 것을 특징으로 하는 블록체인 노드.
  5. 제 1 항에 있어서,
    상기 코어 계층의 스마트 컨트랙트는,
    계층별 스마트 컨트랙트의 사용 내역을 통계내어 과금하는 기능을 제공하는 것을 특징으로 하는 블록체인 노드.
  6. 블록체인 네트워크를 구성하는 블록체인 노드의 동작 방법에 있어서,
    외부 연동 인터페이스를 통해 연동하는 외부 서비스 제공자에 의해 개발되어 배포된 응용 계층의 스마트 컨트랙트가 상기 외부 연동 인터페이스로부터 호출 명령을 수신하는 단계;
    상기 응용 계층의 스마트 컨트랙트가 상기 호출 명령을 권한 관리 스마트 컨트랙트로 전송하는 단계;
    상기 권한 관리 스마트 컨트랙트가 권한 정보 저장소에서 상기 응용 계층의 스마트 컨트랙트의 권한 정보를 확인하여 공통 계층 또는 코어 계층의 스마트 컨트랙트의 실행 권한이 있는지 확인하는 단계;
    실행 권한이 있으면, 상기 호출 명령을 상기 공통 계층 또는 상기 코어 계층의 스마트 컨트랙트로 전송하는 단계; 및
    실행 권한이 없으면 이에 관한 응답을 상기 응용 계층의 스마트 컨트랙트로 회신하는 단계를 포함하는 동작 방법.
  7. 제 6 항에 있어서,
    관리 에이전트가, 관리자로부터 상기 권한 정보 및 상기 응용 계층의 스마트 컨트랙트의 설치 파일을 포함하는 패키지를 수신하고, 상기 설치 파일을 이용하여 상기 응용 계층의 스마트 컨트랙트를 설치하며 상기 관리자로부터 수신된 권한 정보를 상기 권한 정보 저장소에 저장하는 단계를 더 포함하는 것을 특징으로 하는 동작 방법.
  8. 제 7 항에 있어서,
    상기 관리 에이전트가, 상기 관리자로부터 변경 권한 정보를 수신하고 상기 권한 정보 저장소에 저장된 권한 정보를 상기 변경 권한 정보로 업데이트하는 단계를 더 포함하는 것을 특징으로 하는 동작 방법.
  9. 제 6 항에 있어서,
    상기 공통 계층의 스마트 컨트랙트가, 상기 외부 서비스 제공자로부터 전송되어 상기 외부 연동 인터페이스를 통해 직접 호출 명령을 수신하는 단계를 더 포함하되, 그 호출 명령은, 상기 외부 연동 인터페이스에서 권한 검증에 성공한 것을 특징으로 하는 동작 방법.
  10. 제 6 항에 있어서,
    상기 코어 계층의 스마트 컨트랙트가, 계층별 스마트 컨트랙트의 사용 내역을 통계내어 과금하는 단계를 더 포함하는 것을 특징으로 하는 동작 방법.
KR1020190009484A 2019-01-24 2019-01-24 계층화된 스마트 컨트랙트를 포함하는 블록체인 노드 및 그 블록체인 노드의 동작 방법 KR20200092210A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190009484A KR20200092210A (ko) 2019-01-24 2019-01-24 계층화된 스마트 컨트랙트를 포함하는 블록체인 노드 및 그 블록체인 노드의 동작 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190009484A KR20200092210A (ko) 2019-01-24 2019-01-24 계층화된 스마트 컨트랙트를 포함하는 블록체인 노드 및 그 블록체인 노드의 동작 방법

Publications (1)

Publication Number Publication Date
KR20200092210A true KR20200092210A (ko) 2020-08-03

Family

ID=72042958

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190009484A KR20200092210A (ko) 2019-01-24 2019-01-24 계층화된 스마트 컨트랙트를 포함하는 블록체인 노드 및 그 블록체인 노드의 동작 방법

Country Status (1)

Country Link
KR (1) KR20200092210A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022097608A1 (ja) * 2020-11-04 2022-05-12 東銀リース株式会社 情報管理プラットフォームシステム及び、その処理方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022097608A1 (ja) * 2020-11-04 2022-05-12 東銀リース株式会社 情報管理プラットフォームシステム及び、その処理方法

Similar Documents

Publication Publication Date Title
US10790965B1 (en) Tiered distributed ledger technology (DLT) in a network function virtualization (NFV) core network
CN109981679B (zh) 在区块链网络中执行事务的方法和装置
CN109214197B (zh) 基于区块链来处理隐私数据的方法、装置及存储介质
JP7304117B2 (ja) ブロックチェーン上のプロキシ・エージェントおよびプロキシ台帳
US11388009B2 (en) Token management system and token management method
US11169970B2 (en) Distributed work data management
CA2852059C (en) A multi-tiered secure mobile transactions enabling platform
CN112003858B (zh) 基于区块链的平台对接的方法、电子装置和存储介质
KR20200078556A (ko) 자산 관리 방법 및 장치, 및 전자 디바이스
CN110945850B (zh) 用于使计算机网络之间的安全控制自动化的系统和方法
US20140189880A1 (en) System and method for administrating access control rules on a secure element
EP4102768A1 (en) Blockchain-based transaction methods
CN110597916B (zh) 基于区块链的数据处理方法、装置、存储介质及终端
CN111368330B (zh) 一种基于区块链的以太坊智能合约审计系统及方法
KR102569409B1 (ko) 가상 분산 원장 네트워크를 위한 시스템 및 방법
CN111292174A (zh) 一种纳税信息处理方法、装置及计算机可读存储介质
KR20200095900A (ko) 블록체인 기반 노드 리소스 대여를 이용한 리워드 서비스 제공 방법
KR20200092210A (ko) 계층화된 스마트 컨트랙트를 포함하는 블록체인 노드 및 그 블록체인 노드의 동작 방법
US11736299B2 (en) Data access control for edge devices using a cryptographic hash
CN110580624A (zh) 链码升级方法及装置
JP2019525370A (ja) クラウド基盤のサービス提供方法
US20180069859A1 (en) Mobile terminal and control method thereof
KR102095046B1 (ko) 블록체인 기반의 사용자 정보 공유를 위한 분산 원장 장치 및 분산 원장 방법
CN113298574A (zh) 基于区块链的积分管理方法、装置及存储介质
CN112598394A (zh) 用户权限管理方法、装置、区块链网络节点及存储介质

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E601 Decision to refuse application