KR102610532B1 - A Program for operation of blockchain network system - Google Patents

A Program for operation of blockchain network system Download PDF

Info

Publication number
KR102610532B1
KR102610532B1 KR1020190168434A KR20190168434A KR102610532B1 KR 102610532 B1 KR102610532 B1 KR 102610532B1 KR 1020190168434 A KR1020190168434 A KR 1020190168434A KR 20190168434 A KR20190168434 A KR 20190168434A KR 102610532 B1 KR102610532 B1 KR 102610532B1
Authority
KR
South Korea
Prior art keywords
information
neural block
blockchain
software
node
Prior art date
Application number
KR1020190168434A
Other languages
Korean (ko)
Other versions
KR20210077136A (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 KR1020190168434A priority Critical patent/KR102610532B1/en
Publication of KR20210077136A publication Critical patent/KR20210077136A/en
Application granted granted Critical
Publication of KR102610532B1 publication Critical patent/KR102610532B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0635Risk analysis of enterprise or organisation activities
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0637Strategic management or analysis, e.g. setting a goal or target of an organisation; Planning actions based on goals; Analysis or evaluation of effectiveness of goals
    • G06Q10/06375Prediction of business process outcome or impact based on a proposed change
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0639Performance analysis of employees; Performance analysis of enterprise or organisation operations
    • G06Q10/06393Score-carding, benchmarking or key performance indicator [KPI] analysis
    • 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/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • 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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1034Reaction to server failures by a load balancer
    • 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/1051Group master selection mechanisms

Abstract

본 발명의 실시 예에 따른 블록 체인 네트워크 시스템은, 블록체인 네트워크를 형성하는 노드 단말에, 투표 합의 프로세스에 의해 블록 체인의 블록 생성 권한을 위임받는 마스터 노드를 선정하여 블록 체인 처리를 제어하는 뉴럴 블록 모듈이 구비되는 뉴럴 블록 클러스터 기반 블록체인 시스템에 있어서, 상기 뉴럴 블록 모듈로부터 뉴럴 블록 클러스터 네트워크 및 전체 블록 체인 네트워크로부터 소프트웨어 품질 검증을 위한 검증 정보를 전달받고, 검증정보에 기초한 소프트웨어 가시화, 아키텍쳐 가시화 및 문서 가시화 서비스를 제공하고, 가시화된 정보에 기초한 소프트웨어 검증 및 분석 인터페이스를 관리자 단말로 제공하는 관리 서비스 장치;를 포함한다.The blockchain network system according to an embodiment of the present invention is a neural block that controls blockchain processing by selecting a master node that is delegated authority to create blocks in the blockchain through a voting consensus process at the node terminals forming the blockchain network. In a neural block cluster-based blockchain system equipped with a module, verification information for software quality verification is received from the neural block cluster network and the entire blockchain network from the neural block module, and software visualization, architecture visualization and It includes a management service device that provides document visualization services and provides a software verification and analysis interface based on visualized information to an administrator terminal.

Description

블록 체인 네트워크 시스템의 동작 방법{A Program for operation of blockchain network system}How to operate a blockchain network system {A Program for operation of blockchain network system}

본 발명은 블록 체인 네트워크 동박 프로그램에 관한 것이다. 보다 구체적으로, 본 발명은 뉴럴 블록 클러스터 기반의 안전한 블록 체인 네트워크 시스템의 동작방법에 관한 것이다.The present invention relates to a blockchain network copper program. More specifically, the present invention relates to a method of operating a secure blockchain network system based on a neural block cluster.

일반적으로, 블록체인(blockchain)은 분산 데이터베이스의 하나로 P2P(Peer to Peer) 네트워크를 활용한다. 분산 데이터베이스는 데이터를 물리적으로 분산시켜 다수의 이용자가 대규모의 데이터베이스를 공유하게 만드는 기술이다. 블록체인은 인터넷으로 연결된 가상화폐 사용자들의 P2P 네트워크를 만든다. 이를 통해 가상화폐의 거래 내역(블록, block)이 사용자의 컴퓨터에 저장된다. 그중 사용자 과반수의 데이터와 일치하는 거래 내역은 정상 장부(ledger)로 확인되어 블록으로 묶여 보관한다. 만일 특정 사용자의 장부에서 누락 등의 오류가 발견된다면, 정상 장부를 복제해 대체하는 방식으로 수정한다. 새로운 거래 내역을 담은 블록이 만들어지면 앞의 블록뒤에 덧붙이는 과정이 반복된다. 블록체인이란 이름도 거래 내역(블록, block)을 연결(chain)했다는 뜻이다. 거래할 때는 각 사용자가 가진 거래 내역을 대조한다. 이를 통해 거래 내역의 진위를 파악할 수 있어 데이터 위조가 방지된다. 블록체인의 보안 안정성은 데이터를 공유하는 이용자가 많을 수록 커진다. 블록체인은 비트코인 이외에도 클라우드 컴퓨팅 서비스 등 다양한 온라인 서비스에 활용되고 있다.In general, blockchain is a distributed database that utilizes a P2P (Peer to Peer) network. Distributed database is a technology that physically distributes data and allows multiple users to share a large database. Blockchain creates a P2P network of virtual currency users connected via the Internet. Through this, virtual currency transaction details (blocks) are stored on the user's computer. Among them, transaction details that match the data of the majority of users are confirmed as normal ledgers and stored in blocks. If an error such as an omission is found in a specific user's ledger, it is corrected by duplicating and replacing the normal ledger. When a block containing new transaction details is created, the process of appending it to the previous block is repeated. The name blockchain also means a chain of transaction details (blocks). When making a transaction, the transaction details of each user are compared. Through this, the authenticity of transaction details can be determined and data falsification is prevented. The security stability of blockchain increases as more users share data. In addition to Bitcoin, blockchain is used in various online services such as cloud computing services.

프라이빗(private) 블록체인의 경우, 권한을 부여 받은 일부 노드들의 분산합의에 의해 블록이 유지되고 있다.In the case of a private blockchain, blocks are maintained by distributed consensus of some authorized nodes.

그러나 이러한 권한 위임 기반 기술은 퍼블릭(public) 블록 체인에 비해 많은 거래를 처리 가능하지만, 권한 위임된 노드에 대한 네트워크 접속 문제가 발생되거나, 노드 단말 시스템이 정지되거나, 물리적으로 다운되는 경우, 거래 및 결제 프로세스가 중단 또는 지연되는 문제점이 발생할 수 있다. 이는 블록 체인 데이터의 모순 거래 발생으로 인한 리오그(reorganaization)를 발생시킬 수 있으며, 하드 포크, 소프트포크 등을 이용한 정보의 백업도 잦아지게 된다.However, this authority delegation-based technology can process many transactions compared to public blockchains, but if a network connection problem occurs for the delegated node, the node terminal system is stopped, or is physically down, transactions and Problems may arise where the payment process is interrupted or delayed. This can cause reorganization due to contradictory transactions in blockchain data, and information backup using hard forks, soft forks, etc. becomes more frequent.

한편, 이러한 블록 체인 시스템을 도입하는 기관 시스템은 폭발적으로 늘어나는 추세이나, 상기한 바와 같은 거래 및 결제 프로세스의 문제점들을 분석 검증하기 위한 품질 검증 솔루션은 그 개발이 미비한 실정이다.Meanwhile, the number of institutional systems introducing this blockchain system is increasing explosively, but quality verification solutions for analyzing and verifying problems in the transaction and payment process as described above are insufficiently developed.

특히, 블록 체인 기반의 소프트웨어 솔루션의 경우 분산 소프트웨어의 특성상 정보 수집의 한계로 인해, 상세한 분석 및 평가가 매우 어려운 문제점이 있다.In particular, in the case of blockchain-based software solutions, detailed analysis and evaluation are very difficult due to limitations in information collection due to the nature of distributed software.

본 발명은 상기한 바와 같은 문제점을 해결하고자 안출된 것으로, 권한 위임된 노드의 장애 영향을 최소화하고, 블록의 유지 및 안정성을 보장할 수 있도록 뉴럴 블록 클러스터 기반의 안전한 블록 체인 네트워크 시스템 및 그 동작 방법 및 그 프로그램을 제공하는데 그 목적이 있다.The present invention was conceived to solve the problems described above. A secure blockchain network system based on a neural block cluster and its operating method are designed to minimize the impact of failures on authorized nodes and ensure the maintenance and stability of blocks. The purpose is to provide and provide the program.

또한, 본 발명은 뉴럴 블록 클러스터 기반 내 단말 장치에 블록 체인 모니터링 서비스를 제공 가능한 뉴럴 블록 모듈을 구비시켜, 블록 체인 내 거래 및 결제 프로세스의 문제점 또는 취약점들을 분석 및 검증하여 관련 품질 정보를 제공할 수 있는 관리 장치 및 그 동작 방법 및 그 프로그램과 그 프로그램이 기록된 기록매체를 제공하는 데 그 목적이 있다.In addition, the present invention is equipped with a neural block module capable of providing blockchain monitoring services to terminal devices within the neural block cluster, and can provide related quality information by analyzing and verifying problems or vulnerabilities in transaction and payment processes within the blockchain. The purpose is to provide a management device, its operation method, its program, and a recording medium on which the program is recorded.

상기한 바와 같은 과제를 해결하기 위한 본 발명의 실시 예에 따른 블록 체인 네트워크 시스템은, 블록체인 네트워크를 형성하는 노드 단말에, 투표 합의 프로세스에 의해 블록 체인의 블록 생성 권한을 위임받는 마스터 노드를 선정하여 블록 체인 처리를 제어하는 뉴럴 블록 모듈이 구비되는 뉴럴 블록 클러스터 기반 블록체인 시스템에 있어서, 상기 뉴럴 블록 모듈로부터 뉴럴 블록 클러스터 네트워크 및 전체 블록 체인 네트워크로부터 소프트웨어 품질 검증을 위한 검증 정보를 전달받고, 검증정보에 기초한 소프트웨어 가시화, 아키텍쳐 가시화 및 문서 가시화 서비스를 제공하고, 가시화된 정보에 기초한 소프트웨어 검증 및 분석 인터페이스를 관리자 단말로 제공하는 관리 서비스 장치;를 포함한다.The blockchain network system according to an embodiment of the present invention to solve the problems described above selects a master node that is delegated the authority to create blocks in the blockchain through a voting consensus process at the node terminals forming the blockchain network. In a neural block cluster-based blockchain system equipped with a neural block module that controls blockchain processing, verification information for software quality verification is received from the neural block cluster network and the entire blockchain network from the neural block module, and verification is performed. It includes a management service device that provides software visualization, architecture visualization, and document visualization services based on information, and provides a software verification and analysis interface based on visualized information to an administrator terminal.

본 발명의 실시 예에 따르면, 프라이빗 블록 체인 네트워크를 구성하는 권한 노드들을 뉴럴 블록 클러스터로 구성하고, 뉴럴 블록 클러스터 내 팔로우 노드로부터 마스터 노드로의 권한 위임을 이용한 블록 생성을 처리하되, 상기 마스터 노드에 장애가 발생되는 경우 상기 뉴럴 블록 클러스터 내 다른 팔로워 노드가 마스터 노드로 대체되도록 하는 뉴럴 블록 클러스터 내 선정 합의 프로세스를 수행할 수 있는 뉴럴 블록 모듈들을 구비시킴으로써, 블록 클러스터 기반의 안전한 블록 체인네트워크 시스템을 제공할 수 있다.According to an embodiment of the present invention, the authority nodes constituting the private blockchain network are organized into a neural block cluster, and block generation is processed using authority delegation from the follow node in the neural block cluster to the master node, and the master node is By providing neural block modules that can perform a selection consensus process within the neural block cluster that allows other follower nodes within the neural block cluster to be replaced by the master node in the event of a failure, a secure block chain network system based on the block cluster can be provided. You can.

이에 따라, 본 발명의 실시 예에 따르면 권한 위임된 노드에 대한 네트워크 접속 문제가 발생되거나, 노드 단말 시스템이 정지되거나, 물리적으로 다운되는 경우에도 거래 및 결제 프로세스가 중단 또는 지연되지 않도록 할 수 있으며, 블록 체인 데이터의 모순 거래 발생으로 인한 리오그(reorganaization)를 방지하고, 하드 포크, 소프트포크 등을 이용한 정보의 백업도 최소화할 수 있다.Accordingly, according to an embodiment of the present invention, it is possible to prevent transaction and payment processes from being interrupted or delayed even when a network connection problem occurs for an authorized node, the node terminal system is stopped, or is physically down. Reorganization due to contradictory transactions in blockchain data can be prevented, and information backup using hard forks, soft forks, etc. can be minimized.

또한, 본 발명의 실시 예에 따르면, 상기 뉴럴 블록 모듈은 블록 체인 모니터링 서비스를 제공하여, 관련 모니터링 정보를 관리 장치로 전달하고, 관리 장치는 블록 체인 내 거래 및 결제 프로세스의 문제점 또는 취약점들을 하나 이상의 가시화 알고리즘 프로세스에 따라 분석 및 검증하여 관련 품질 정보를 시각적이고 효과적으로 제공할 수 있는 관리 장치 및 그 동작 방법을 제공할 수 있다.In addition, according to an embodiment of the present invention, the neural block module provides a blockchain monitoring service and transmits related monitoring information to a management device, and the management device detects one or more problems or vulnerabilities in the transaction and payment process within the blockchain. It is possible to provide a management device and its operation method that can visually and effectively provide relevant quality information by analyzing and verifying it according to the visualization algorithm process.

도 1은 본 발명의 실시 예에 따른 전체 시스템을 개략적으로 도시한 도면이뎌, 도 2는 본 발명의 실시 예에 따른 뉴럴 블록 클러스터 및 뉴럴 블록 생성과정을 설명하기 위한 도면이다.
도 3은 본 발명의 실시 예에 따른 뉴럴 블록 모듈을 보다 구체적으로 도시한 블록도이다.
도 4는 본 발명의 실시 예에 따른 뉴럴 블록 모듈의 동작 방법을 설명하기 위한 흐름도이다.
도 5는 본 발명의 실시 예에 따른 관리 서비스 장치를 설명하기 위한 블록도이다.
도 6은 본 발명의 실시 예에 따른 관리 서비스 장치의 동작 방법을 설명하기 위한 흐름도이다.
도 7은 본 발명의 실시 예에 따른 관리 서비스 장치의 블록 체인 기반 소프트웨어 품질 분석 인터페이스를 설명하기 위한 예시도이다.
FIG. 1 is a diagram schematically showing the entire system according to an embodiment of the present invention, and FIG. 2 is a diagram illustrating a neural block cluster and a neural block generation process according to an embodiment of the present invention.
Figure 3 is a block diagram illustrating in more detail a neural block module according to an embodiment of the present invention.
Figure 4 is a flowchart for explaining a method of operating a neural block module according to an embodiment of the present invention.
Figure 5 is a block diagram for explaining a management service device according to an embodiment of the present invention.
Figure 6 is a flowchart for explaining the operation method of the management service device according to an embodiment of the present invention.
Figure 7 is an example diagram illustrating a blockchain-based software quality analysis interface of a management service device according to an embodiment of the present invention.

이하의 내용은 단지 본 발명의 원리를 예시한다. 그러므로 당업자는 비록 본 명세서에 명확히 설명되거나 도시되지 않았지만 본 발명의 원리를 구현하고 본 발명의 개념과 범위에 포함된 다양한 장치를 발명할 수 있는 것이다. 또한, 본 명세서에 열거된 모든 조건부 용어 및 실시예들은 원칙적으로, 본 발명의 개념이 이해되도록 하기 위한 목적으로만 명백히 의도되고, 이와 같이 특별히 열거된 실시예들 및 상태들에 제한적이지 않는 것으로 이해되어야 한다.The following merely illustrates the principles of the invention. Therefore, those skilled in the art will be able to invent various devices that embody the principles of the present invention and are included in the spirit and scope of the present invention, although not explicitly described or shown herein. In addition, it is understood that all conditional terms and embodiments listed herein are, in principle, expressly intended only for the purpose of ensuring that the concept of the invention is understood, and are not limited to the embodiments and conditions specifically listed as such. It has to be.

또한, 본 발명의 원리, 관점 및 실시예들 뿐만 아니라 특정 실시예를 열거하는 모든 상세한 설명은 이러한 사항의 구조적 및 기능적 균등물을 포함하도록 의도되는 것으로 이해되어야 한다. 또한 이러한 균등물들은 현재 공지된 균등물뿐만 아니라 장래에 개발될 균등물 즉 구조와 무관하게 동일한 기능을 수행하도록 발명된 모든 소자를 포함하는 것으로 이해되어야 한다.Additionally, it is to be understood that any detailed description reciting principles, aspects, and embodiments of the invention, as well as specific embodiments, is intended to encompass structural and functional equivalents thereof. In addition, these equivalents should be understood to include not only currently known equivalents but also equivalents developed in the future, that is, all elements invented to perform the same function regardless of structure.

따라서, 예를 들어, 본 명세서의 블록도는 본 발명의 원리를 구체화하는 예시적인 회로의 개념적인 관점을 나타내는 것으로 이해되어야 한다. 이와 유사하게, 모든 흐름도, 상태 변환도, 의사 코드 등은 컴퓨터가 판독 가능한 매체에 실질적으로 나타낼 수 있고 컴퓨터 또는 프로세서가 명백히 도시되었는지 여부를 불문하고 컴퓨터 또는 프로세서에 의해 수행되는 다양한 프로세스를 나타내는 것으로 이해되어야 한다.Accordingly, for example, the block diagrams herein should be understood as representing a conceptual view of an example circuit embodying the principles of the invention. Similarly, all flow diagrams, state transition diagrams, pseudo-code, etc. are understood to represent various processes that can be substantially represented on a computer-readable medium and are performed by a computer or processor, whether or not the computer or processor is explicitly shown. It has to be.

또한 프로세서, 제어 또는 이와 유사한 개념으로 제시되는 용어의 명확한 사용은 소프트웨어를 실행할 능력을 가진 하드웨어를 배타적으로 인용하여 해석되어서는 아니되고, 제한 없이 디지털 신호 프로세서(DSP) 하드웨어, 소프트웨어를 저장하기 위한 롬(ROM), 램(RAM) 및 비 휘발성 메모리를 암시적으로 포함하는 것으로 이해되어야 한다. 주지관용의 다른 하드웨어도 포함될 수 있다.Additionally, the clear use of terms such as processor, control, or similar concepts should not be construed as exclusively referring to hardware capable of executing software, and should not be construed as referring exclusively to hardware capable of executing software, including without limitation digital signal processor (DSP) hardware and ROM for storing software. It should be understood as implicitly including ROM, RAM, and non-volatile memory. Other hardware for public use may also be included.

상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. The above-described purpose, features and advantages will become clearer through the following detailed description in conjunction with the accompanying drawings, and accordingly, those skilled in the art will be able to easily implement the technical idea of the present invention. There will be. Additionally, in describing the present invention, if it is determined that a detailed description of known technologies related to the present invention may unnecessarily obscure the gist of the present invention, the detailed description will be omitted.

이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명하기로 한다.Hereinafter, a preferred embodiment according to the present invention will be described in detail with reference to the attached drawings.

도 1은 본 발명의 실시 예에 따른 전체 시스템을 개략적으로 도시한 도면이뎌, 도 2는 본 발명의 실시 예에 따른 뉴럴 블록 클러스터 및 뉴럴 블록 생성과정을 설명하기 위한 도면이다.FIG. 1 is a diagram schematically showing the entire system according to an embodiment of the present invention, and FIG. 2 is a diagram illustrating a neural block cluster and a neural block generation process according to an embodiment of the present invention.

먼저, 도 1에 도시된 바와 같이, 본 발명의 실시 예에 따른 블록 체인 네트워크 시스템(1000)은, 네트워크를 통해 유선 또는 무선으로 연결된 하나 이상의 노드 단말(100)들에 의해 형성된 블록체인 메쉬 네트워크로 구성될 수 있다.First, as shown in Figure 1, the blockchain network system 1000 according to an embodiment of the present invention is a blockchain mesh network formed by one or more node terminals 100 connected wired or wirelessly through a network. It can be configured.

그리고, 노드 단말(100)들은 입출력 장치를 통하여 블록 체인 네트워크에 연결되고, 데이터를 교환할 수 있다. 블록체인 생성 장치(1000)는 이동 전화, 스마트 폰, PDA, 태블릿 컴퓨터, 랩톱 컴퓨터 등 모바일 장치, 퍼스널 컴퓨터, 태블릿 컴퓨터, 넷북 등 컴퓨팅 장치, 혹은 텔레비전, 스마트 텔레비전, 게이트 제어를 위한 보안 장치 등 전자 제품 등 다양한 전자 시스템을 포함할 수 있다.Additionally, the node terminals 100 are connected to the blockchain network through an input/output device and can exchange data. The blockchain generation device 1000 is a mobile device such as a mobile phone, smart phone, PDA, tablet computer, or laptop computer, a computing device such as a personal computer, tablet computer, or netbook, or an electronic device such as a television, smart television, or security device for gate control. It may include various electronic systems such as products.

그리고, 각 노드 단말(100)들은 블록 체인 네트워크에 접속하기 위한 통신 모듈을 구비할 수 있다. 블록 체인 네트워크는 예를 들어, 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network;WAN) 또는 부가가치 통신망(Value Added Network; VAN) 등과 같은 유선 네트워크로 구현될 수 있다. 또한, 블록 체인 네트워크는 이동 통신망(mobile radio communication network), 위성 통신망, 블루투스(Bluetooth), Wibro(Wireless Broadband Internet), HSDPA(High Speed Downlink Packet Access), 와이파이(Wi-Fi), LTE(Long Term Evolution) 등과 같은 모든 종류의 무선 네트워크로 구현될 수 있다. 필요에 따라서, 블록 체인 네트워크는 유선 및 무선이 혼용된 네트워크일 수 있다.Additionally, each node terminal 100 may be equipped with a communication module for accessing the blockchain network. A blockchain network may be implemented as a wired network, for example, a Local Area Network (LAN), a Wide Area Network (WAN), or a Value Added Network (VAN). In addition, blockchain networks include mobile radio communication networks, satellite communication networks, Bluetooth, Wibro (Wireless Broadband Internet), HSDPA (High Speed Downlink Packet Access), Wi-Fi, and LTE (Long Term). It can be implemented in all types of wireless networks such as Evolution). Depending on need, the blockchain network may be a mixed wired and wireless network.

그리고, 각 노드 단말은 자신의 노드 접속에 따른 계정 정보를 네트워크를 통해 클라우드 방식으로 공유되는 거래 장부 데이터에 등록할 수 있다. 그리고, 블록 체인을 생성하기 위한 암호화 정보의 거래가 필요한 경우, 각 거래자 단말은 상기 거래 장부 데이터에 기록될 거래 정보를 각 거래자 단말에게 전파할 수 있다.In addition, each node terminal can register account information according to its node connection in the transaction ledger data shared in the cloud through the network. In addition, when a transaction of encryption information is required to create a block chain, each trader terminal can transmit the transaction information to be recorded in the transaction ledger data to each trader terminal.

그리고, 이에 대응하는 상호 검증 처리에 따라, 예를 들어 일정 비율 이상의 노드 단말로부터의 승인이 처리된 경우 상기 거래 장부 데이터가 업데이트되고, 그 정보가 공유됨으로써, 블록 체인을 생성하기 위한 암호화 정보의 거래가 처리될 수 있다.And, according to the corresponding mutual verification process, for example, when approval from a certain percentage or more of node terminals is processed, the transaction ledger data is updated, and the information is shared, so that the encryption information for creating a block chain is traded. can be processed.

여기서, 상기 거래 장부 데이터는 일정 시간 또는 단위에 대응하는 블록별로 현재의 블록이 이전에 생성된 블록에 대한 해시값을 포함하도록 하여 복수의 블록이 생성 순서에 따라 순차적으로 연결된 구조를 갖는 블록 체인(block chain) 데이터와 연동될 수 있다.Here, the transaction ledger data is a block chain having a structure in which a plurality of blocks are connected sequentially according to the order of creation such that the current block includes a hash value for a previously created block for each block corresponding to a certain time or unit ( block chain) data.

이에 따라, 거래 장부 데이터의 위변조 여부 검증은 상기 블록 체인의 해시값 검증에 따라 용이하게 처리될 수 있다. 이를 위해, 각 거래자 단말에서는 다음 블록의 해시값을 산출하기 위한 연산 및 검증 처리를 수행하는 컴퓨팅 파워를 제공하고, 이에 대응하는 보상을 획득할 수도 있다.Accordingly, verification of whether transaction ledger data has been forged or altered can be easily processed by verifying the hash value of the block chain. To this end, each trader terminal provides computing power to perform computation and verification processing to calculate the hash value of the next block, and can also obtain corresponding compensation.

이러한 블록 체인의 보안 안정성은 데이터를 공유하는 공유자들의 시스템 참여에 의해 형성될 수 있다. 따라서, 블록체인 네트워크에 접속된 각 공유자 단말 사이의 공유에 대한 내역 및 블록 체인을 생성하기 위한 암호화 정보 발급/거래 내역 등을 포함하는 거래 정보 블록이 순차적으로 저장될 수 있으며, 그 위변조 방지를 위한 해시값을 순차적으로 블록 체인화하기 위한 거래 검증(작업증명) 처리가 각 거래자 단말에서 분산 수행될 수 있다.The security stability of this blockchain can be formed by the participation of sharers in the system who share data. Therefore, transaction information blocks containing details of sharing between each sharer terminal connected to the blockchain network and details of encryption information issuance/transactions for creating a blockchain can be stored sequentially, and to prevent forgery and alteration. Transaction verification (proof of work) processing to sequentially block hash values can be distributed and performed on each trader's terminal.

이러한 거래 검증 처리는 다양한 분산합의 알고리즘이 사용될 수 있으며, 대표적으로서, PoW(Proof-of-Work), PoS(Proof-of-Stake) 등이 사용될 수 있다. 작업증명(PoW, Proof-of-Work)은 작업을 위해 리소스(ex. 컴퓨팅 파워 등)를 투입했다는 것을 증명하여 부정을 억제하는 방법으로 예시되고, PoS(Proof-of-Stake)는 노드의 보유 지분에 비례하여 증명이 가능하도록, PoS는 블록을 생성할 수 있는 확률을 각 노드가 갖고 있는 토큰의 지분에 비례하도록 제어하는 프로세스를 제공하고 있다.Various distributed consensus algorithms can be used to process such transaction verification, and representative examples include Proof-of-Work (PoW) and Proof-of-Stake (PoS). Proof-of-Work (PoW) is exemplified as a method of suppressing fraud by proving that resources (e.g. computing power, etc.) have been invested for work, and Proof-of-Stake (PoS) is the retention of nodes. To enable proof in proportion to the stake, PoS provides a process to control the probability of creating a block so that it is proportional to the stake of tokens held by each node.

특히, 본 발명의 실시 예에 따른 노드 단말(100)들은 프라이빗 블록 체인 네트워크를 구축할 수 있으며, 프라이빗 블록 체인 네트워크의 경우에는 권한 위임된 특정 노드 단말에서만 블록의 생성 및 검증이 가능하도록 제어된다.In particular, the node terminals 100 according to an embodiment of the present invention can build a private blockchain network, and in the case of a private blockchain network, the creation and verification of blocks is controlled so that only specific node terminals with delegated authority can create and verify them.

다만, 프라이빗 블록 체인 네트워크는 분산 합의를 빠르게 처리할 수 있는 장점은 있으나 전술한 바와 같이 권한 위임된 단말 그 자체에 장애가 발생하는 경우 그 노드 단말 뿐만 아니라 권한을 위임한 모든 단말들이 실질적으로 합의에 참여할 수 없게 되는 문제점이 발생된다. 이는 결과적으로 블록 체인 데이터의 분화를 일으킬 수 있으며, 상호 일치되지 않는 데이터들로 인해 리오그(reorganization)가 발생되고, 나아가 잦은 포크(fork) 프로세스로 인한 시스템 안정성을 저하시킬 수 있다.However, the private blockchain network has the advantage of being able to quickly process distributed agreements, but as described above, if a failure occurs in the authorized terminal itself, not only the node terminal but all authorized terminals will actually participate in the agreement. Problems arise that make it impossible to do so. As a result, this can cause differentiation of blockchain data, cause reorganization due to inconsistent data, and further reduce system stability due to frequent fork processes.

이를 해결하기 위해, 도 2를 참조하면, 본 발명의 실시 예에 따른 블록 체인 시스템(1000)의 노드 단말(100)들은, 프라이빗 블록 체인의 블록 생성에 대한 권한 위임에 따라 전술한 일반적 블록 체인 생성 및 공유 프로세스의 처리가 가능한 블록 체인 서비스부(120)를 포함한다. 여기서, 본 발명의 실시 예에서 노드 단말(100)들은 프라이빗 블록 체인 네트워크에 참여하고, 각 블록의 생성 가능한 권한이 부여된 노드 단말(100)들일 수 있다. 프라이빗 블록 체인 네트워크에 참여하는 단말(100)들에는 시스템(1000)에서 설정되는 권한 정보가 부여될 수 있다. 상기 권한 정보는 블록 생성, 마이닝, 거래 및 합의 노드 참여 기능별 각각의 세부 권한으로 구분될 수 있고, 상기 권한 정보는 블록 체인 서비스부(120)에 의해 식별되어 네트워크를 통해 수행 가능한 프로세스들이 제어될 수 있다.To solve this, referring to FIG. 2, the node terminals 100 of the blockchain system 1000 according to an embodiment of the present invention generate the general block chain described above according to delegation of authority for block creation of the private block chain. and a blockchain service unit 120 capable of processing shared processes. Here, in an embodiment of the present invention, the node terminals 100 participate in a private blockchain network and may be node terminals 100 that are authorized to create each block. Terminals 100 participating in the private blockchain network may be granted authority information set in the system 1000. The authority information can be divided into detailed authorities for each function of block creation, mining, transaction, and consensus node participation, and the authority information can be identified by the blockchain service unit 120 to control processes that can be performed through the network. there is.

그리고, 노드 단말(100)들은 자신이 속한 사전 설정된 개수의 노드들을 포함하는 뉴럴 블록 클러스터를 식별하고, 상기 뉴럴 블록 클러스터 내에서 투표 합의 프로세스에 의해 선정되는 노드 단말(100)을 마스터 노드로 활성화하는 뉴럴 블록 모듈(110)을 포함할 수 있다.In addition, the node terminals 100 identify a neural block cluster containing a preset number of nodes to which they belong, and activate the node terminal 100 selected by a voting consensus process within the neural block cluster as a master node. It may include a neural block module 110.

그리고, 상기 마스터 노드가 아닌 뉴럴 블록 모듈(110)은 팔로워 노드로 활성화될 수 있으며, 상기 마스터 노드인 노드 단말 주소로의 블록 생성 권한을 위임하고, 마스터 노드인 노드 단말에서 생성된 신규 블록 및 검증된 체인 데이터를 상기 마스터 노드인 노드 단말로부터 수신할 수 있다.In addition, the neural block module 110, which is not the master node, can be activated as a follower node, delegates block creation authority to the node terminal address, which is the master node, and verifies new blocks generated at the node terminal, which is the master node. The chain data can be received from the node terminal, which is the master node.

그리고, 상기 마스터 노드의 노드 단말 주소에 장애가 발생한 경우에는, 각 뉴럴 블록 모듈(110)은 상기 뉴럴 블록 클러스터 내 포함된 팔로워 노드 단말 중 어느 하나를 마스터 노드로 활성화시키는 투표 합의 프로세스를 수행할 수 있다.In addition, when a failure occurs in the node terminal address of the master node, each neural block module 110 can perform a voting consensus process to activate one of the follower node terminals included in the neural block cluster as a master node. .

이러한 투표 합의 프로세스에 의해 다시 마스터 노드 단말(100)이 선정되면, 마스터 노드 단말(100)은 다시 전술한 바와 같은 팔로워 노드 단말로부터의 블록 생성 권한 위임 정보를 획득하고, 자신이 생성한 신규 블록 및 검증된 체인 데이터를 상기 팔로워 노드 단말들로 전파할 수 있다.When the master node terminal 100 is selected again through this voting consensus process, the master node terminal 100 again obtains the block creation authority delegation information from the follower node terminal as described above, and creates new blocks and Verified chain data can be propagated to the follower node terminals.

이러한 뉴럴 블록 클러스터 네트워크는 일정 개수 이내의 노드 단말(100)들 간에 형성될 수 있으며, 관련 설정 정보 및 설정 조건은 사전 구축된 스마트 컨트랙트의 형태 등에 명시되어 블록 체인 데이터 내에 저장될 수 있다. 예를 들어, 지역적 조건, 네트워크 거리 조건 또는 네트워크 속도 조건에 따라 인접한 일정 개수 이내의 노드 단말(100)들은 하나의 뉴럴 블록 클러스터 네트워크로 형성될 수 있다.This neural block cluster network can be formed between node terminals 100 within a certain number, and related setting information and setting conditions can be specified in the form of a pre-built smart contract and stored in the blockchain data. For example, according to regional conditions, network distance conditions, or network speed conditions, adjacent node terminals 100 within a certain number may be formed into one neural block cluster network.

이러한 뉴럴 블록 클러스터 네트워크는 각 노드간 정보 교환을 통해 P2P(peer to peer) 네트워크를 구축할 수 있으며, 뉴럴 블록 모듈(110)은 각 뉴럴 블록 클러스터 내 노드 단말(100)을 식별하기 위한 장치 정보, 노드 네임 및 P2P 네트워크 주소 정보를 미리 색인하여 저장할 수 있다. This neural block cluster network can build a P2P (peer to peer) network through information exchange between each node, and the neural block module 110 includes device information for identifying the node terminal 100 in each neural block cluster, Node name and P2P network address information can be indexed and stored in advance.

또한, 뉴럴 블록 모듈(110)은 뉴럴 블록 클러스터 내에서 마스터 노드의 단말 정보를 모니터링할 수 있으며, 마스터 노드가 존재하지 않거나, 마스터 노드 단말의 응답이 일정 시간 이상이거나, 마스터 노드로부터 정상 블록을 수신하지 못하는 등의 장애가 발생하는 경우, 상기 마스터 노드의 노드 단말은 뉴럴 블록 클러스터 네트워크에서 배제될 수 있으며, 마스터 노드 단말을 재선정하기 위한 투표 합의 프로세스를 수행할 수 있다.In addition, the neural block module 110 can monitor the terminal information of the master node within the neural block cluster, and can determine if the master node does not exist, if the response of the master node terminal is longer than a certain time, or if a normal block is received from the master node. If a failure occurs, such as failure to do so, the node terminal of the master node may be excluded from the neural block cluster network, and a voting consensus process may be performed to reselect the master node terminal.

여기서, 투표 합의 프로세스는 사전 설정된 조건에 따라, 뉴럴 블록 클러스터 내 포함된 노드 단말(100)들 중 가장 안정성 또는 신뢰성 있는 노드 단말(100)을 선정하는 프로세스일 수 있으며, 예를 들어, 사전 수집된 장치 정보 또는 네트워크 응답 속도 정보 등에 기초하여 각 노드 단말(100)의 뉴럴 블록 모듈(110)들은 선정 투표 정보를 공유하고, 과반 또는 가장 높은 투표수를 득표한 노드 단말(100)이 마스터 노드로 결정될 수 있다. 만약 마스터 노드가 결정되지 못하는 경우, 뉴럴 블록 모듈(110)은 일정 시간 이후 재투표를 수행할 수 있으며, 재투표 이후에도 마스터 노드가 결정되지 못하는 경우, 현재의 뉴럴 블록 클러스터 네트워크를 해제하고, 접속가능한 다른 뉴럴 블록 클러스터를 색인하여 다른 뉴럴 블록 클러스터 네트워크에 참여할 수도 있다.Here, the voting consensus process may be a process of selecting the most stable or reliable node terminal 100 among the node terminals 100 included in the neural block cluster according to preset conditions, for example, pre-collected Based on device information or network response speed information, the neural block modules 110 of each node terminal 100 share selection voting information, and the node terminal 100 with the majority or highest number of votes will be determined as the master node. You can. If the master node cannot be determined, the neural block module 110 can perform a re-vote after a certain period of time, and if the master node cannot be determined even after the re-vote, the current neural block cluster network is canceled and another accessible neural network is activated. Block clusters can also be indexed to participate in other neural block cluster networks.

또한, 전술한 뉴럴 블록 모듈(110)은 블록 체인 서비스부(120)와 결합된 플랫폼 소프트웨어 개발 키트(SDK)로 구현될 수 있으며, SDK는 상기 SDK가 설치 가능한 다양한 플랫폼상에 설치되어 노드 단말(100)의 기능을 실행할 수 있다. 또한, 뉴럴 블록 모듈(110)은 이러한 소프트웨어 개발 키트의 품질 평가를 위한 처리 정보의 모니터링을 수행하고, 모니터링 정보를 별도의 관리 서비스 장치로 전달할 수 있는 바, 이에 대하여는 도 5 내지 도 7등을 참조하여 보다 구체적으로 후술하도록 한다.In addition, the above-mentioned neural block module 110 can be implemented as a platform software development kit (SDK) combined with the blockchain service unit 120, and the SDK is installed on various platforms on which the SDK can be installed to provide a node terminal ( 100) functions can be executed. In addition, the neural block module 110 can monitor processing information for quality evaluation of the software development kit and transmit the monitoring information to a separate management service device, see FIGS. 5 to 7, etc. This will be described in more detail later.

도 3은 본 발명의 실시 예에 따른 뉴럴 블록 모듈을 보다 구체적으로 도시한 블록도이다.Figure 3 is a block diagram illustrating in more detail a neural block module according to an embodiment of the present invention.

도 3을 참조하면, 본 발명의 실시 예에 따른 뉴럴 블록 모듈(110)은, 장치 정보 설정부(111), 클라이언트 설정부(112), P2P 주소 설정부(113), 클러스터 설정부(114), 마스터 노드 기능부(115), 팔로워 노드 기능부(116) 및 모니터링부(117)를 포함한다.Referring to FIG. 3, the neural block module 110 according to an embodiment of the present invention includes a device information setting unit 111, a client setting unit 112, a P2P address setting unit 113, and a cluster setting unit 114. , includes a master node functional unit 115, a follower node functional unit 116, and a monitoring unit 117.

장치 정보 설정부(111)는, 뉴럴 블록 모듈(110)이 설치된 단말(100)의 장치 정보를 획득 및 저장 관리한다. 여기서, 장치 정보는 단말(100)의 노드 네임 정보, 장치 주소 정보, 장치 성능 정보, 장치 신뢰성 정보, 사용 네트워크 정보 중 적어도 하나를 포함할 수 있다. 이러한 장치 정보는, 뉴럴 블록 클러스터의 식별 또는 구축, 마스터 노드의 결정, 마스터 노드 투표 합의 프로세스의 수행 등에 이용될 수 있다.The device information setting unit 111 acquires, stores, and manages device information of the terminal 100 on which the neural block module 110 is installed. Here, the device information may include at least one of node name information of the terminal 100, device address information, device performance information, device reliability information, and network information in use. This device information can be used to identify or build a neural block cluster, determine a master node, perform a master node voting consensus process, etc.

클라이언트 설정부(112)는 뉴럴 블록 클러스터 네트워크를 포함하는 블록 체인 네트워크에 접속할 클라이언트 정보를 설정한다. 설정된 클라이언트 정보는LISTEN-CLIENT-URL과 같은 블록체인 네트워크 클라이언트 주소 정보를 포함할 수 있으며, 단말(100)은 상기 블록체인 네트워크 클라이언트 주소 정보를 통해 블록 체인 네트워크에 접속하여 블록 정보를 획득하거나 공유할 수 있다.The client setting unit 112 sets client information to connect to the blockchain network including the neural block cluster network. The set client information may include blockchain network client address information such as LISTEN-CLIENT-URL, and the terminal 100 can access the blockchain network through the blockchain network client address information to obtain or share block information. You can.

그리고, P2P 주소 설정부(113)는, 뉴럴 블록 클러스터 네트워크를 구성하는 각 뉴럴 블록 노드간 블록 정보를 전파하기 위한 자신의 뉴럴 블록 클러스터 네트워크 내 P2P 주소 정보를 설정한다.And, the P2P address setting unit 113 sets P2P address information in its own neural block cluster network to propagate block information between each neural block node constituting the neural block cluster network.

그리고, 클러스터 설정부(114)는, 클라이언트 설정 정보에 따른 블록 체인 네트워크에 접속하고, 현재 단말(100)이 속한 뉴럴 블록 클러스터 네트워크를 구성하는 하나 이상의 노드 단말들을 식별하며, 식별된 단말들의 P2P 주소 정보를 수집하여 저장하며, 각 P2P 주소 정보를 이용한 뉴럴 블록 클러스터 네트워크 내 내부 네트워크 설정을 수행한다.And, the cluster setting unit 114 connects to the blockchain network according to the client setting information, identifies one or more node terminals constituting the neural block cluster network to which the terminal 100 currently belongs, and P2P addresses of the identified terminals. Information is collected and stored, and internal network settings within the neural block cluster network are performed using each P2P address information.

전술한 바와 같이, 뉴럴 블록 클러스터 네트워크는, 지역적 또는 네트워크 속도 등에 따라 상호 인접한 일정 개수 이내의 블록 생성 권한이 위임된 노드 단말(100)들이 연결되어 구성될 수 있다. 이러한 연결 설정을 위해, 클러스터 설정부(114)는 자신이 속한 뉴럴 블록 클러스터 네트워크를 식별하거나, 신규 뉴럴 블록 클러스터 네트워크를 식별할 수 있으며, 식별된 뉴럴 블록 클러스터 네트워크 내 상기 P2P 주소 정보로 공유된 마스터 노드 정보에 따라, 마스터 노드 기능부(115) 또는 팔로워 노드 기능부(116)가 활성화될 수 있다. 이를 위해, 모니터링부(117)는 뉴럴 블록 클러스터 네트워크 내 마스터 노드 정보를 수집하고, 장애 여부 발생 등을 주기적으로 모니터링할 수 있다.As described above, the neural block cluster network may be formed by connecting node terminals 100 with delegated block creation authority within a certain number of adjacent areas depending on the region or network speed. To establish this connection, the cluster setting unit 114 can identify the neural block cluster network to which it belongs or identify a new neural block cluster network, and the master shared with the P2P address information in the identified neural block cluster network. Depending on the node information, the master node function 115 or the follower node function 116 may be activated. To this end, the monitoring unit 117 can collect information on master nodes within the neural block cluster network and periodically monitor the occurrence of failures.

마스터 노드 정보는 클러스터 설정부(114)를 통해 각 뉴럴 블록 클러스터 네트워크 내에서 공유될 수 있으며, 마스터 노드가 선정되지 않은 경우 클러스터 설정부(114)는 마스터 노드 단말(100)의 설정을 위한 투표 합의 프로세스를 수행할 수있다. 여기서 투표 합의 프로세스는 장치 정보 설정부(111)에서 설정된 장치 정보에 기초한 마스터 노드의 선정 투표 정보를 상기 뉴럴 블록 클러스터 네트워크를 구성하는 각 노드 단말들로 공유하는 프로세스를 포함할 수 있다.Master node information can be shared within each neural block cluster network through the cluster setting unit 114, and if the master node is not selected, the cluster setting unit 114 agrees to vote for setting the master node terminal 100. The process can be performed Here, the voting consensus process may include a process of sharing the selection voting information of the master node based on the device information set in the device information setting unit 111 with each node terminal constituting the neural block cluster network.

이를 위해, 클러스터 설정부(114)는 뉴럴 블록 클러스터 네트워크를 구성하는 노드 단말들의 장치 정보를 수집할 수 있으며, 장치 정보와 사전 설정된 조건 정보에 기초한 우선 순위에 따라 특정 노드 단말을 마스터 노드로 결정하기 위한 자신의 선정 투표 정보를 상기 P2P 주소 정보로 공유할 수 있다. 만약 우선 순위가 동일한 노드 단말이 복수인 경우, 클러스터 설정부(114)는 우선 순위가 동일한 복수의 노드 단말 중 랜덤하게 선정된 노드 단말을 상기 특정 노드 단말로 결정할 수 있다.To this end, the cluster setting unit 114 may collect device information of node terminals constituting the neural block cluster network, and determine a specific node terminal as the master node according to priority based on device information and preset condition information. You can share your voting information with the P2P address information above. If there are a plurality of node terminals with the same priority, the cluster setting unit 114 may determine a randomly selected node terminal among the plurality of node terminals with the same priority as the specific node terminal.

이에 따라, 각 노드 단말(100)들 중 가장 투표 수가 높거나 과반수 이상의 투표 수를 획득한 어느 하나의 단말(100)은 마스터 노드 단말로 활성화될 수 있다.Accordingly, among the node terminals 100, one terminal 100 that has the highest number of votes or has obtained more than half of the votes may be activated as a master node terminal.

보다 구체적으로, 마스터 노드 기능부(115)는 클러스터 설정부(114)에서의 선정 투표 프로세스 결과 정보를 참조하여, 단말(100)의 마스터 노드 기능 수행여부를 식별하고, 단말(100)이 마스터 노드로 선정된 경우 마스터 노드 기능을 수행한다. 여기서, 마스터 노드 기능부(115)가 활성화된 경우, 후술할 팔로워 노드 기능부(116)는 비활성화로 제어될 수 있다.More specifically, the master node function unit 115 refers to the selection voting process result information in the cluster setting unit 114, identifies whether the terminal 100 performs the master node function, and determines whether the terminal 100 is a master node. If selected, it performs the master node function. Here, when the master node functional unit 115 is activated, the follower node functional unit 116, which will be described later, may be controlled to be deactivated.

그리고, 마스터 노드 기능부(115)는 거래(트랜잭션) 정보 수집에 따른 블록 생성 및 공유 갱신 프로세스를 수행하고, 팔로워 노드 기능이 활성화된 뉴럴 블록 네트워크 내 다른 단말들로 상기 마스터 노드 단말의 블록 생성 및 공유 갱신 정보를 상기 P2P 주소 정보를 통해 전달한다.In addition, the master node function unit 115 performs a block generation and sharing update process according to transaction information collection, and generates blocks of the master node terminal with other terminals in the neural block network with the follower node function activated. Shared update information is transmitted through the P2P address information.

이에 따라, 마스터 노드 기능부(115)는 뉴럴 블록 클러스터를 대표하는 블록 정보를 생성, 검증 및 전파할 수 있으며, 그 결과 정보는 뉴럴 블록 클러스터 내에 P2P 네트워크를 통해 다른 팔로워 노드 기능 활성화된 단말들로 브로드캐스팅될 수 있다.Accordingly, the master node function unit 115 can generate, verify, and disseminate block information representing the neural block cluster, and the resulting information is sent to other terminals with the follower node function activated through the P2P network within the neural block cluster. It can be broadcast.

한편, 팔로워 노드 기능부(116)는 마스터 노드로 선정되지 않은 단말에서 활성화될 수 있으며, 상기 마스터 노드 기능이 활성화된 단말로부터 상기 뉴럴 블록 클러스터 네트워크를 통해 브로드캐스팅된 블록 정보를 수신하여 블록 체인 서비스부(120)로 전달하고, 블록 체인 서비스부(120)는 마스터 노드로부터 수신된 블록 정보에 따른 블록 생성 및 갱신 처리를 수행할 수 있다.Meanwhile, the follower node function unit 116 can be activated in a terminal that is not selected as a master node, and receives block information broadcast through the neural block cluster network from a terminal with the master node function activated to provide a blockchain service. It is transmitted to unit 120, and the block chain service unit 120 can perform block creation and update processing according to the block information received from the master node.

한편, 전술한 모니터링부(117)는, 뉴럴 블록 네트워크 내 마스터 노드 정보를 수집 및 모니터링하며, 마스터 노드 단말의 장애 여부 발생을 판단하여 클러스터 설정부(114)로 전달할 수있다. 마스터 노드 단말의 장애는 블록 정보가 일정 시간 이내 수신되지 않거나, 마스터 노드 정보로 요청된 확인 정보에 대응하는 응답이 수신되지 않거나, 수신된 정보가 비정상인 경우 판단될 수 있다.Meanwhile, the above-mentioned monitoring unit 117 collects and monitors master node information in the neural block network, determines whether a failure of the master node terminal occurs, and transmits the information to the cluster setting unit 114. Failure of the master node terminal may be determined when block information is not received within a certain period of time, a response corresponding to confirmation information requested as master node information is not received, or the received information is abnormal.

또한, 모니터링부(117)는 뉴럴 블록 클러스터 네트워크 및 전체 블록 체인 네트워크로부터 소프트웨어 품질 검증을 위한 검증 정보를 수집할 수 있으며, 수집된 검증 정보는 관리 서비스 장치(200)로 전달될 수 있다. 관리 서비스 장치(200)는 검증 정보에 기초한 소프트웨어 가시화, 아키텍쳐 가시화 및 문서 가시화 서비스를 제공할 수 있으며, 가시화된 정보에 기초한 소프트웨어 검증 및 분석 인터페이스를 관리자 단말로 제공할 수 있다.Additionally, the monitoring unit 117 may collect verification information for software quality verification from the neural block cluster network and the entire blockchain network, and the collected verification information may be transmitted to the management service device 200. The management service device 200 can provide software visualization, architecture visualization, and document visualization services based on verification information, and can provide a software verification and analysis interface based on visualized information to an administrator terminal.

그리고, 모니터링부(117)는 블록 체인 정보의 위변조 감지를 처리하여 관리 서비스 장치(200)로 전달할 수 있으며, 특히 모니터링부(117)는 뉴럴 블록 클러스터 내로 마스터 노드로부터 공유되는 뉴럴 블록과, 전체 블록 체인 네트워크로 공유되는 블록 체인 데이터를 비교하여, 위변조 여부를 탐지할 수 있고, 마스터 노드의 위변조 행위가 탐지되는 경우에는 상기 마스터 노드의 권한 제외 등을 뉴럴 블록 클러스터 네트워크 내 다른 단말들로 요청할 수도 있다.In addition, the monitoring unit 117 can process forgery detection of blockchain information and transmit it to the management service device 200. In particular, the monitoring unit 117 processes the neural blocks shared from the master node within the neural block cluster and the entire block. By comparing the blockchain data shared through the chain network, it is possible to detect forgery and forgery. If forgery and alteration by the master node are detected, other terminals in the neural block cluster network can be requested to exclude the master node's authority. .

한편, 도시되지는 않았으나, 단말(100) 장치는, 전술한 블록 체인 서비스부(120) 및 뉴럴 블록 모듈(110)이 활용 가능한 메모리를 포함할 수 있다. 메모리는 컴퓨터에서 읽을 수 있는 명령어(instruction)를 포함할 수 있으며, 블록 체인 서비스부(120) 및 뉴럴 블록 모듈(110)은 메모리에 저장된 명령어가 프로세서에서 실행됨에 따라 앞서 언급된 동작들을 수행할 수 있다. 메모리는 휘발성 메모리 혹은 비휘발성 메모리일 수 있다.Meanwhile, although not shown, the terminal 100 device may include memory that can be utilized by the aforementioned blockchain service unit 120 and the neural block module 110. The memory may include instructions that can be read by a computer, and the blockchain service unit 120 and the neural block module 110 can perform the aforementioned operations as the instructions stored in the memory are executed on the processor. there is. The memory may be volatile memory or non-volatile memory.

메모리는 사용자의 데이터를 저장하도록 저장 장치를 포함할 수 있다. 저장 장치는 eMMC(embeddedmultimedia card), SSD(solid state drive), UFS(universal flash storage) 등 일 수 있다. 저장 장치는 적어도 하나의 비휘발성 메모리 장치를 포함할 수 있다. 비휘발성 메모리 장치는, 낸드 플래시 메모리(NAND FlashMemory), 수직형 낸드 플래시 메모리(Vertical NAND; VNAND), 노아 플래시 메모리(NOR Flash Memory), 저항성 램(Resistive Random Access Memory: RRAM), 상변화 메모리(Phase-Change Memory: PRAM), 자기저항 메모리(Magnetoresistive Random Access Memory: MRAM), 강유전체 메모리(Ferroelectric Random Access Memory: FRAM), 스핀주입 자화반전 메모리(Spin Transfer Torque Random Access Memory: STT-RAM) 등이 될 수 있다.The memory may include a storage device to store user data. The storage device may be an embedded multimedia card (eMMC), solid state drive (SSD), or universal flash storage (UFS). The storage device may include at least one non-volatile memory device. Non-volatile memory devices include NAND Flash Memory (NAND FlashMemory), Vertical NAND (VNAND), NOR Flash Memory (NOR Flash Memory), Resistive Random Access Memory (RRAM), and Phase Change Memory ( Phase-Change Memory (PRAM), Magnetoresistive Random Access Memory (MRAM), Ferroelectric Random Access Memory (FRAM), Spin Transfer Torque Random Access Memory (STT-RAM), etc. It can be.

도 4는 본 발명의 실시 예에 따른 뉴럴 블록 모듈의 동작 방법을 설명하기 위한 흐름도이다.Figure 4 is a flowchart for explaining a method of operating a neural block module according to an embodiment of the present invention.

도 4를 참조하면, 본 발명의 실시 예에 따른 뉴럴 블록 모듈(110)은, 먼저 장치 정보 설정부(111)를 이용한 장치 설정 정보 및 클라이언트 설정부(112)를 이용한 클라이언트 설정 정보를 구성하고, 클러스터 설정부(114)를 통해 뉴럴 블록 클러스터 네트워크에 대응하는 클러스터 정보를 획득한다(S101).Referring to FIG. 4, the neural block module 110 according to an embodiment of the present invention first configures device setting information using the device information setting unit 111 and client setting information using the client setting unit 112, Cluster information corresponding to the neural block cluster network is acquired through the cluster setting unit 114 (S101).

그리고, 뉴럴 블록 모듈(110)은 뉴럴 블록 클러스터 내 다른 마스터 노드가 존재하는지 판단한다(S103).Then, the neural block module 110 determines whether another master node exists in the neural block cluster (S103).

마스터 노드가 존재하지 않는 경우, 뉴럴 블록 모듈(110)은 클러스터 설정부(114)를 통해 결정된 마스터 노드 선정 투표 정보를 클러스터 P2P 네트워크로 전달 공유한다(S105).If the master node does not exist, the neural block module 110 transmits and shares the master node selection voting information determined through the cluster setting unit 114 to the cluster P2P network (S105).

그리고, 뉴럴 블록 모듈(110)은 선정 투표 결과, 단말(100) 자신이 마스터 노드로 선정되었는지 확인한다(S107).Then, the neural block module 110 confirms whether the terminal 100 itself has been selected as the master node as a result of the selection vote (S107).

만약 마스터 노드로 선정된 경우, 뉴럴 블록 모듈(110)은 마스터 노드 위임 정보를 뉴럴 블록 네트워크 내 다른 노드 단말들로부터 수집하고(S109), 마스터 노드 기능부(115)의 활성화 및 블록 체인 네트워크로의 등록 프로세스를 수행할 수 있다(S111).If selected as a master node, the neural block module 110 collects master node delegation information from other node terminals in the neural block network (S109), activates the master node function unit 115, and connects the master node to the blockchain network. The registration process can be performed (S111).

이후, 마스터 노드 기능부(115)는 신규 블록을 생성하여 블록 체인을 갱신할 수 있으며, 신규 블록 및 갱신 정보는 뉴럴 네트워크 내 다른 단말들로 전달될 수있다(S113). Afterwards, the master node function unit 115 can update the blockchain by creating a new block, and the new block and update information can be transmitted to other terminals in the neural network (S113).

본 발명의 실시 예에 따르면, 이와 같이 마스터 노드에서 생성된 신규 블록 정보는 뉴럴 블록이라고 할 수 있으며, 뉴럴 블록은 블록 체인 네트워크를 통해 공유 및 검증되고, 검증된 뉴럴 블록은 뉴럴 블록 클러스터 네트워크 내 브로드캐스팅 될 수 있다.According to an embodiment of the present invention, the new block information generated in the master node in this way can be called a neural block, the neural block is shared and verified through the blockchain network, and the verified neural block is broadcast within the neural block cluster network. You can be cast.

한편, 마스터 노드로 선정되지 않은 경우, 뉴럴 블록 모듈(110)은 마스터 노드로 선정된 단말을 식별하며, 선정된 단말로 마스터 노드 위임 정보를 제공하며(S115), 팔로워 노드 기능부(116)의 활성화 및 블록체인 네트워크로의 등록 프로세스를 수행할 수 있다(S117).On the other hand, if it is not selected as a master node, the neural block module 110 identifies the terminal selected as the master node, provides master node delegation information to the selected terminal (S115), and the follower node functional unit 116 You can perform the activation and registration process into the blockchain network (S117).

이후, 팔로워 노드 기능부(116)가 활성화된 뉴럴 블록 모듈(110)은 마스터 노드의 뉴럴 블록 정보를 수신하여, 저장 관리되는 블록 체인 데이터를 갱신할 수 있다.Afterwards, the neural block module 110 with the follower node function unit 116 activated can receive the neural block information of the master node and update the stored and managed blockchain data.

한편, 뉴럴 블록 모듈(110)은 모니터링부(117)를 통해, 마스터 노드의 장애 발생을 판단한다(S121).Meanwhile, the neural block module 110 determines whether a failure of the master node has occurred through the monitoring unit 117 (S121).

장애가 발생되지 않은 경우 뉴럴 블록 모듈(110)은 각 노드의 기존 프로세스를 지속적으로 수행한다(S123).If no failure occurs, the neural block module 110 continues to perform the existing process of each node (S123).

그러나, 장애가 발생된 경우, 뉴럴 블록 모듈(110)은 전술한 마스터 노드 선정 투표 단계(S105)의 프로세스를 재수행하여, 뉴럴 블록 클러스터의 뉴럴 블록 생성 프로세스는 안정적으로 유지되도록 한다.However, if a failure occurs, the neural block module 110 re-performs the process of the master node selection voting step (S105) described above, so that the neural block generation process of the neural block cluster is maintained stably.

이에 따라, 분산 합의를 뉴럴 블록 클러스터별로 수행시킴에 의한 빠른 거래 프로세스는 유지되면서, 특정 마스터 노드에 장애가 발생하더라도 안정적으로 다른 노드 단말로 뉴럴 블록 생산자를 대체시킴으로써, 시스템 신뢰성을 향상시킬 수 있으며, 리오그(REORG.) 발생을 방지하고, 포크의 필요성을 최소화시킬 수 있다.Accordingly, the fast transaction process is maintained by performing distributed consensus on each neural block cluster, and system reliability can be improved by stably replacing the neural block producer with another node terminal even if a specific master node fails. This can prevent REORG from occurring and minimize the need for forks.

도 5는 본 발명의 실시 예에 따른 관리 서비스 장치를 설명하기 위한 블록도이다.Figure 5 is a block diagram for explaining a management service device according to an embodiment of the present invention.

도 5를 참조하면, 본 발명의 실시 예에 따른 관리 서비스 장치(200)는, 뉴럴 블록 모듈(110)의 모니터링부(117)로부터 수신되는 검증 정보에 기초하여, 소프트웨 품질 검증 및 취약점 등의 분석 서비스를 제공할 수 있다.Referring to FIG. 5, the management service device 200 according to an embodiment of the present invention verifies software quality and analyzes vulnerabilities, etc., based on verification information received from the monitoring unit 117 of the neural block module 110. Services can be provided.

보다 구체적으로, 관리 서비스 장치(200)는 소프트웨어 가시화부(210), 아키텍쳐 가시화부(220), 문서 가시화부(230), 취약점 분석부(240) 및 인터페이스 제공부(250)를 포함한다.More specifically, the management service device 200 includes a software visualization unit 210, an architecture visualization unit 220, a document visualization unit 230, a vulnerability analysis unit 240, and an interface provision unit 250.

소프트웨어 가시화부(210)는, 모니터링부(117)로부터 수집되는 블록 체인 정보에 기초하여, 소프트웨어 품질 점검을 위한 검증 프로세스를 가시화 처리할 수 있다.The software visualization unit 210 can visualize the verification process for software quality inspection based on the blockchain information collected from the monitoring unit 117.

이를 위해, 소프트웨어 가시화부(210)는, 프로젝트 관리 툴, 소프트웨어 버전 관리, 지속적 통합 툴을 포함할 수 있으며, 모니터링부(117)로부터 수집된 정보에 기초한 블록 체인 시스템 소프트웨어의 소스 코드 정보를 파싱함으로써, 소프트웨어의 요구 사항 충족 여부를 검사하고, 이에 따른 품질 검증 정보를 인터페이스 제공부(250)로 전달할 수 있다.To this end, the software visualization unit 210 may include a project management tool, software version management, and continuous integration tool, and may parse the source code information of the blockchain system software based on the information collected from the monitoring unit 117. , it is possible to check whether the requirements of the software are met, and to transmit the resulting quality verification information to the interface provider 250.

소프트웨어 가시화부(210)는 모니터링부(117)로부터 수집된 모니터링 정보에 따라, 블록 체인 네트워크 내 구축된 소프트웨어의 요구사항으로부터 테스트까지의 상호 추적, 설계 및 코드의 연관성 감지, 품질 점수 측정 등의 정량적 결과 정보를 산출할 수 있으며, 산출된 결과 정보는 품질 검증 정보로서 인터페이스 제공부(250)로 전달될 수 있다.According to the monitoring information collected from the monitoring unit 117, the software visualization unit 210 performs quantitative tracking such as mutual tracking from requirements to testing of software built within the blockchain network, detection of design and code correlation, and quality score measurement. Result information can be calculated, and the calculated result information can be transmitted to the interface provider 250 as quality verification information.

그리고, 아키텍쳐 가시화부(220)는 소프트웨어의 내부 구조 정보를 가시화 처리하여, 인터페이스 제공부(250)로 전달할 수 있다.Additionally, the architecture visualization unit 220 may visualize the internal structure information of the software and transmit it to the interface provider 250.

이를 위해, 아키텍쳐 가시화부(220)는, 소프트웨어 제품 정보 추출부, 문맥 분석부, 정보 베이스부, 구조 시각화부를 포함할 수 있다. 이러한 아키텍쳐 가시화부(220)는 각 구성요소를 이용하여, 모니터링부(117)로부터 수집된 소스 코드 정보의 파싱을 처리하고, 파싱된 정보를 이용하여 소프트웨어 구조 정보를 시각화된 아키텍쳐 정보로서 가시화 처리하고, 시각화된 아키텍쳐 정보는 인터페이스 제공부(250)로 전달될 수 있다.To this end, the architecture visualization unit 220 may include a software product information extraction unit, a context analysis unit, an information base unit, and a structure visualization unit. The architecture visualization unit 220 processes the parsing of the source code information collected from the monitoring unit 117 using each component, and visualizes the software structure information as visualized architecture information using the parsed information. , the visualized architecture information may be transmitted to the interface provider 250.

한편, 문서 가시화부(230)는 별도 구축된 요구사항 정보 관리 데이터베이스로부터 수집된 소프트웨어 프로젝트 템플릿 정보를 이용하여, 소프트웨어 문서 정보로의 변환을 통해 가시화 처리하고, 가시화된 문서 정보는 인터페이스 제공부(250)로 전달될 수 있다. 여기서, 변환 방식으로는 XSLT(A LANGUAGE FOR TRANSFORMING XML DOCUMENTS) 방식이 예시될 수 있으며, 소프트웨어 개발 사이클 내 입력된 데이터들을 기반으로 하는 자동화 처리를 통해 소프트웨어 문서 정보를 획득하여 인터페이스 제공부(250)로 전달할 수 있다.Meanwhile, the document visualization unit 230 visualizes the software project template information collected from a separately constructed requirements information management database by converting it into software document information, and the visualized document information is processed by the interface provider 250. ) can be transmitted. Here, the conversion method may be an example of the It can be delivered.

그리고, 취약점 분석부(240)는, 모니터링부(117)로부터 수집되는 검증 정보와 전술한 소프트웨어 가시화부(210), 아키텍쳐 가시화부(220) 및 문서 가시화부(230)로부터 구축된 가시화 정보를 이용하여, 블록 체인 소프트웨어의 취약점을 분석 검증하며, 검증 결과를 인터페이스 제공부(250)로 전달한다.And, the vulnerability analysis unit 240 uses the verification information collected from the monitoring unit 117 and the visualization information constructed from the above-described software visualization unit 210, architecture visualization unit 220, and document visualization unit 230. Thus, vulnerabilities in the blockchain software are analyzed and verified, and the verification results are delivered to the interface provider 250.

취약점 분석부(240)는 모니터링부(117)로부터 수집되는 검증 메시지와, 전술한 가시화 정보로부터, 솔리디티, LUA와 같이 예시되는 다양한 소프트웨어 언어의 취약점을 분석 및 검증하고 검증결과를 인터페이스 제공부(250)로 제공할 수 있다. 또한, 취약점 분석부(240)는 소프트웨어의 취약점 및 검증 모니터링 정보를 생성하여 인터페이스 제공부(250)로 제공할 수 있다.The vulnerability analysis unit 240 analyzes and verifies vulnerabilities in various software languages such as Solidity and LUA from the verification message collected from the monitoring unit 117 and the above-described visualization information, and provides the verification results to the interface provider ( 250). Additionally, the vulnerability analysis unit 240 may generate software vulnerability and verification monitoring information and provide it to the interface provider 250.

한편, 인터페이스 제공부(250)는 소프트웨어 가시화부(210), 아키텍쳐 가시화부(220), 문서 가시화부(230) 및 취약점 분석부(240)의 처리 결과 정보를 수집하고, 전체 블록 체인 소프트웨어 정보와 취약점 정보를 시각화한 분석 인터페이스를 생성할 수 있으며, 생성된 분석 정보는 관리 서비스 장치(200)의 디스플레이부(미도시)를 통해 출력되거나, 별도의 관리자 단말로 제공되어 디스플레이되거나, 다른 노드 단말들 중 관리 권한이 설정된 단말로 제공될 수 있다.Meanwhile, the interface provider 250 collects information on the processing results of the software visualization unit 210, architecture visualization unit 220, document visualization unit 230, and vulnerability analysis unit 240, and collects the entire blockchain software information and An analysis interface that visualizes vulnerability information can be created, and the generated analysis information is output through a display unit (not shown) of the management service device 200, is provided and displayed on a separate administrator terminal, or is displayed on other node terminals. It can be provided to a terminal with management permissions set.

도 6은 본 발명의 실시 예에 따른 관리 서비스 장치의 동작 방법을 설명하기 위한 흐름도이다.Figure 6 is a flowchart for explaining the operation method of the management service device according to an embodiment of the present invention.

도 6을 참조하면, 본 발명의 실시 예에 따른 관리 서비스 장치(200)는, 소프트웨어 요구사항 정보와, 프로젝트 제품 정보가 입력되면(S201, 203), 현재 블록 체인 네트워크에 적용된 소스 코드 분석에 따라, 소프트웨어 가시화, 아키텍쳐 가시화 및 문서 가시화 처리를 수행한다(S205).Referring to Figure 6, the management service device 200 according to an embodiment of the present invention, when software requirements information and project product information are input (S201, 203), according to source code analysis currently applied to the blockchain network. , software visualization, architecture visualization, and document visualization processing are performed (S205).

여기서, 각 가시화 처리에 따른 결과 정보는 인터페이스 제공부(250) 및 취약점 분석부(240)로 전달될 수 있다.Here, the result information according to each visualization process may be transmitted to the interface providing unit 250 and the vulnerability analysis unit 240.

이후, 관리 서비스 장치(200)는 취약점 분석부(240)를 통해, 가시화 정보와 모니터링부(117)로부터 수집되는 모니터링 정보에 기초하여, 프로젝트 내 소프트웨어 요구사항 대비 품질 점수 및 취약점 검증 처리를 수행한다(S207).Afterwards, the management service device 200 performs a quality score and vulnerability verification process compared to the software requirements within the project based on the visualization information and the monitoring information collected from the monitoring unit 117 through the vulnerability analysis unit 240. (S207).

이후, 관리 서비스 장치(200)는 인터페이스 제공부(250)를 통해, 검증 및 가시화 처리된 분석 결과 정보를 분석 인터페이스 포맷으로 출력한다(S209).Thereafter, the management service device 200 outputs the verified and visualized analysis result information in an analysis interface format through the interface provider 250 (S209).

도 7은 본 발명의 실시 예에 따른 관리 장치의 블록 체인 기반 소프트웨어 분석 인터페이스를 설명하기 위한 예시도이다.Figure 7 is an example diagram illustrating a blockchain-based software analysis interface of a management device according to an embodiment of the present invention.

도 7을 참조하면, 본 발명의 실시 예에 따른 분석 인터페이스는, 전술한 바와 같은 가시화 정보와 취약점 검증에 따른 블록 체인 네트워크 소프트웨어의 품질 정보를 종합적으로 제공할 수 있다.Referring to FIG. 7, the analysis interface according to an embodiment of the present invention can comprehensively provide quality information of blockchain network software according to visualization information and vulnerability verification as described above.

도 7에 도시된 바와 같이, 본 발명의 실시 예에 따라 인터페이스 제공부(250)를 통해 제공되는 분석 인터페이스는 소프트웨어 가시화 및 아키텍쳐 가시화에 의해 획득된 구조 인터페이스(취약점 트리)와, 구동 시뮬레이션에 의해 노드 단말(100)에서 출력되는 사용자 서비스 화면 정보와, 문서 가시화에 따라 획득된 소스 코드 문서 정보와, 취약점 분석부(240)의 분석에 따라 획득되는 취약점 설명 및 회피 방안 안내 정보가 출력될 수 있다.As shown in FIG. 7, the analysis interface provided through the interface provider 250 according to an embodiment of the present invention is a structural interface (vulnerability tree) obtained by software visualization and architecture visualization, and a node by driving simulation. User service screen information output from the terminal 100, source code document information obtained according to document visualization, and vulnerability description and avoidance method guidance information obtained according to analysis by the vulnerability analysis unit 240 may be output.

이와 같은 분석 서비스 장치(200)의 품질 검증 프로세스 및 분석 결과 인터페이스 제공에 의해, 블록 체인 네트워크 소프트웨어 개발의 효율성과 관리 비용 절감 효과를 높일 수 있으며, 다양한 평가 기준과 시각화 툴 도입을 통해 보다 안정적이고 높은 성능의 블록 체인 소프트웨어 개발을 용이하게 할 수 있다.By providing the quality verification process and analysis result interface of the analysis service device 200, the efficiency and management cost reduction effect of blockchain network software development can be increased, and the introduction of various evaluation criteria and visualization tools can provide more stable and high performance. It can facilitate the development of high-performance blockchain software.

상술한 본 발명의 일실시예에 따른 방법들은 컴퓨터에서 실행되기 위한 프로그램으로 제작될 수 있다. 또한, 상기 프로그램은 컴퓨터가 읽을 수 있는 기록 매체에 저장될 수 있으며, 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있을 수 있다.The methods according to an embodiment of the present invention described above can be produced as a program to be executed on a computer. Additionally, the program may be stored in a computer-readable recording medium, and examples of computer-readable recording media may include ROM, RAM, CD-ROM, magnetic tape, floppy disk, and optical data storage devices. there is.

컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 상기 방법을 구현하기 위한 기능적인(function) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.The computer-readable recording medium is distributed in a computer system connected to a network, so that computer-readable code can be stored and executed in a distributed manner. And, functional programs, codes, and code segments for implementing the method can be easily deduced by programmers in the technical field to which the present invention pertains.

또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형 실시가 가능한 것은 물론이고, 이러한 변형 실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안 될 것이다.In addition, although preferred embodiments of the present invention have been shown and described above, the present invention is not limited to the specific embodiments described above, and the technical field to which the invention pertains without departing from the gist of the present invention as claimed in the claims. Of course, various modifications can be made by those skilled in the art, and these modifications should not be understood individually from the technical idea or perspective of the present invention.

Claims (6)

블록체인 네트워크를 형성하는 노드 단말에, 투표 합의 프로세스에 의해 블록 체인의 블록 생성 권한을 위임받는 마스터 노드를 선정하여 블록 체인 처리를 제어하는 뉴럴 블록 모듈이 구비되는 뉴럴 블록 클러스터 기반 블록체인 시스템과, 상기 뉴럴 블록의 모니터링 정보에 의해 블록체인 네트워크 관리정보를 제공하는 관리 서비스 장치를 포함하는 블록체인 네트워크 시스템의 동작방법으로서,
상기 관리 서비스 장치가,
상기 뉴럴 블록 모듈로부터 뉴럴 블록 클러스터 네트워크 및 전체 블록 체인 네트워크로부터 소프트웨어 품질 검증을 위한 검증 정보를 전달받는 단계;
상기 검증정보에 기초한 소프트웨어 가시화, 아키텍쳐 가시화 및 문서 가시화 서비스를 제공하고, 가시화된 정보에 기초한 블록 체인 내 거래 및 결제 프로세스의 문제점 또는 취약점들을 분석 및 검증하여 관련 품질 정보를 관리자 단말로 제공하는 단계를 포함하고,
상기 뉴럴 블록 모듈은,
상기 마스터 노드로 블록 생성 권한을 위임하는 팔로워 노드를 포함하되,
상기 마스터 노드의 단말 정보를 모니터링하고,
상기 마스터 노드의 노드 단말 주소에 장애가 발생한 경우 상기 팔로워 노드 중 어느 하나를 새로운 마스터 노드로 활성화시키는 투표 합의 프로세스를 수행하고,
상기 장애는,
상기 마스터 노드가 존재하지 않는 것, 또는 상기 마스터 노드로부터 정상 블록을 수신하지 못하는 것을 포함하는,
뉴럴 블록 클러스터 기반의 블록 체인 네트워크 시스템의 동작방법.
A neural block cluster-based blockchain system in which the node terminals forming the blockchain network are equipped with a neural block module that controls blockchain processing by selecting a master node that is delegated authority to create blocks in the blockchain through a voting consensus process; A method of operating a blockchain network system including a management service device that provides blockchain network management information based on monitoring information of the neural block,
The management service device,
Receiving verification information for software quality verification from the neural block cluster network and the entire blockchain network from the neural block module;
A step of providing software visualization, architecture visualization, and document visualization services based on the verification information, analyzing and verifying problems or vulnerabilities in the transaction and payment process in the blockchain based on the visualized information, and providing related quality information to the administrator terminal. Contains,
The neural block module is,
Includes a follower node that delegates block creation authority to the master node,
Monitor terminal information of the master node,
If a failure occurs in the node terminal address of the master node, perform a voting consensus process to activate one of the follower nodes as a new master node,
The above disorders are:
Including that the master node does not exist, or that a normal block is not received from the master node,
How a neural block cluster-based blockchain network system operates.
제1항에 있어서,
상기 관리 서비스 장치는,
프로젝트 관리 툴, 소프트웨어 버전 관리, 지속적 통합 툴을 포함하고, 상기 뉴럴 블록 모듈로 부터 수집된 정보에 기초하여 블록 체인 시스템 소프트웨어의 소스 코드 정보를 파싱하여 소프트웨어의 요구 사항 충족 여부를 검사하고, 이에 따른 품질 검증 정보를 가시화하여 제공하는
뉴럴 블록 클러스터 기반의 블록체인 네트워크 시스템의 동작방법.
According to paragraph 1,
The management service device is,
It includes a project management tool, software version management, and continuous integration tool, and parses the source code information of the blockchain system software based on the information collected from the neural block module to check whether the requirements of the software are met, and accordingly Provides visual quality verification information
How a neural block cluster-based blockchain network system operates.
제2항에 있어서,
뉴럴 블록 모듈로부터 수집된 모니터링 정보에 따라, 블록 체인 네트워크 내 구축된 소프트웨어의 요구사항으로부터 테스트까지의 상호 추적, 설계 및 코드의 연관성 감지, 품질 점수 측정 중 하나를 포함하는 정량적 결과 정보를 산출하고, 산출된 결과 정보는 품질 검증 정보로서 가시화하여 제공하는
뉴럴 블록 클러스터 기반의 블록체인 네트워크 시스템의 동작방법.
According to paragraph 2,
According to the monitoring information collected from the neural block module, quantitative result information is calculated, including one of the following: mutual tracking of software built within the blockchain network from requirements to testing, detection of design and code correlation, and quality score measurement, The calculated result information is visualized and provided as quality verification information.
How a neural block cluster-based blockchain network system operates.
제1항에 있어서,
상기 관리 서비스 장치는,
소프트웨어 제품 정보 추출부, 문맥 분석부, 정보 베이스부, 구조 시각화부를 포함하고, 각 구성요소를 이용하여, 뉴럴 블록 모듈로부터 수집된 소스 코드 정보의 파싱을 처리하고, 파싱된 정보를 이용하여 소프트웨어 구조 정보를 시각화된 아키텍쳐 정보로서 가시화 처리하여 제공하는
뉴럴 블록 클러스터 기반의 블록체인 네트워크 시스템의 동작방법.
According to paragraph 1,
The management service device is,
It includes a software product information extraction unit, context analysis unit, information base unit, and structure visualization unit, and uses each component to process the parsing of source code information collected from the neural block module and construct a software structure using the parsed information. Provides information by visualizing it as visualized architecture information.
How a neural block cluster-based blockchain network system operates.
제1항에 있어서,
상기 관리 서비스 장치는,
뉴럴 블록 모듈로부터 수집되는 검증 정보와 전술한 소프트웨어 가시화부, 아키텍쳐 가시화부 및 문서 가시화부로부터 구축된 가시화 정보를 이용하여, 블록 체인 소프트웨어의 취약점을 분석 검증하는 취약점 분석 단계를 더 포함하는
뉴럴 블록 클러스터 기반의 블록체인 네트워크 시스템의 동작방법.
According to paragraph 1,
The management service device is,
It further includes a vulnerability analysis step of analyzing and verifying vulnerabilities in blockchain software using verification information collected from the neural block module and visualization information constructed from the software visualization unit, architecture visualization unit, and document visualization unit described above.
How a neural block cluster-based blockchain network system operates.
제5항에 있어서,
상기 취약점 분석단계는
뉴럴 블록 모듈로부터 수집되는 검증 메시지와, 전술한 가시화 정보로부터, 솔리디티, LUA와 같이 예시되는 다양한 소프트웨어 언어의 취약점을 분석 및 검증하고 검증결과를 인터페이스 제공부로 제공하고, 소프트웨어의 취약점 및 검증 모니터링 정보를 생성하여 가시화된 인터페이스 정보로 제공하는
뉴럴 블록 클러스터 기반의 블록체인 네트워크 시스템의 동작방법.
According to clause 5,
The vulnerability analysis step is
From the verification messages collected from the neural block module and the above-mentioned visualization information, the vulnerabilities of various software languages such as Solidity and LUA are analyzed and verified, the verification results are provided to the interface provider, and software vulnerabilities and verification monitoring information are provided. creates and provides visualized interface information.
How a neural block cluster-based blockchain network system operates.
KR1020190168434A 2019-12-17 2019-12-17 A Program for operation of blockchain network system KR102610532B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190168434A KR102610532B1 (en) 2019-12-17 2019-12-17 A Program for operation of blockchain network system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190168434A KR102610532B1 (en) 2019-12-17 2019-12-17 A Program for operation of blockchain network system

Publications (2)

Publication Number Publication Date
KR20210077136A KR20210077136A (en) 2021-06-25
KR102610532B1 true KR102610532B1 (en) 2023-12-06

Family

ID=76629032

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190168434A KR102610532B1 (en) 2019-12-17 2019-12-17 A Program for operation of blockchain network system

Country Status (1)

Country Link
KR (1) KR102610532B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102628501B1 (en) * 2021-12-23 2024-01-24 주식회사 크립티드 Method of distributing and storing block chain data and device of thereof
CN114039978B (en) * 2022-01-06 2022-03-25 天津大学四川创新研究院 Decentralized PoW computing power cluster deployment method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019003309A (en) * 2017-06-13 2019-01-10 株式会社野村総合研究所 Inspection apparatus
KR101946196B1 (en) * 2018-03-26 2019-02-08 그래프 블록체인 리미티드 Control system for controlling private block-chain system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019003309A (en) * 2017-06-13 2019-01-10 株式会社野村総合研究所 Inspection apparatus
KR101946196B1 (en) * 2018-03-26 2019-02-08 그래프 블록체인 리미티드 Control system for controlling private block-chain system

Also Published As

Publication number Publication date
KR20210077136A (en) 2021-06-25

Similar Documents

Publication Publication Date Title
Huang et al. A survey of state-of-the-art on blockchains: Theories, modelings, and tools
US10965446B2 (en) Blockchain-based automated user matching
WO2021036545A1 (en) Smart contract-based data processing method, and device and storage medium
US10965445B2 (en) Blockchain-based unexpected data detection
JP6775086B2 (en) Blockchain monitoring and management
US10997125B2 (en) Proof of lottery (PoL) blockchain
US20190268139A1 (en) Data authentication using a blockchain approach
US20200272618A1 (en) Distributed ledger technology
CN111383021B (en) Node management method, device, equipment and medium based on block chain network
US20190268153A1 (en) Event execution using a blockchain approach
CN110569251A (en) Data processing method, related equipment and computer readable storage medium
US20230037932A1 (en) Data processing method and apparatus based on blockchain network, and computer device
KR102610532B1 (en) A Program for operation of blockchain network system
KR20190122149A (en) Method for selecting consensus node using nonse, method and apparatus for generating blockchain using the same
CN109951490A (en) Webpage integrity assurance, system and electronic equipment based on block chain
CN112035350B (en) Test method and device for block chain system and computer equipment
CN111756684B (en) Method, system and non-transitory computer-readable storage medium for transmitting critical data
CN111680282B (en) Node management method, device, equipment and medium based on block chain network
KR20210077176A (en) A sysrem for consturcting secure block chain based on neural block clusters
KR102535980B1 (en) Device for Management of Neural Block Based Blockchain System
KR102542063B1 (en) A terminal device and a method for consturcting secure block chain based on neural block clusters
Kausar et al. Convergence of blockchain in IoT applications for heterogeneous networks
KR20210077125A (en) System for block chain network based on neural block cluster
KR20210077141A (en) A Program for operation of blockchain network
KR20210077158A (en) A Method for Management of Neural Block Based Blockchain System

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