KR102610530B1 - A neural consensus node apparatus for using a non-random consensus proof-based blockchain network as a random consensus proof-based blockchain network, and its operation method - Google Patents

A neural consensus node apparatus for using a non-random consensus proof-based blockchain network as a random consensus proof-based blockchain network, and its operation method Download PDF

Info

Publication number
KR102610530B1
KR102610530B1 KR1020210055357A KR20210055357A KR102610530B1 KR 102610530 B1 KR102610530 B1 KR 102610530B1 KR 1020210055357 A KR1020210055357 A KR 1020210055357A KR 20210055357 A KR20210055357 A KR 20210055357A KR 102610530 B1 KR102610530 B1 KR 102610530B1
Authority
KR
South Korea
Prior art keywords
consensus
node
proof
neural
blockchain network
Prior art date
Application number
KR1020210055357A
Other languages
Korean (ko)
Other versions
KR20220148396A (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 KR1020210055357A priority Critical patent/KR102610530B1/en
Priority to PCT/KR2021/011842 priority patent/WO2022231072A2/en
Publication of KR20220148396A publication Critical patent/KR20220148396A/en
Priority to US18/059,902 priority patent/US20230100485A1/en
Application granted granted Critical
Publication of KR102610530B1 publication Critical patent/KR102610530B1/en

Links

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/18Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
    • G06F11/183Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits by voting, the voting not being performed by the redundant components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/18Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
    • G06F11/187Voting techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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/1068Discovery involving direct consultation or announcement among potential requesting and potential source peers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Abstract

비-랜덤 합의체 증명 기반 블록 체인 네트워크에 접속되는 노드 장치의 동작 방법에 있어서, 상기 블록 체인 네트워크를 통해 전파된 신규 블록 데이터를 획득하는 단계; 상기 신규 블록 데이터로부터 유효성 검증 데이터를 추출하는 단계; 상기 유효성 검증 데이터의 검증 처리에 따라, 랜덤 합의체 증명 프로세스 기반으로 생성된 다음 블록의 뉴럴 합의체 지정 정보를 획득하는 단계; 상기 다음 블록의 뉴럴 합의체 지정 정보에 기초하여, 합의체 노드 기능부를 선택적으로 구동시켜, 다음 블록의 유효성 검증 데이터를 생성하는 단계; 및 상기 생성된 유효성 검증 데이터 및 상기 신규 블록을 결합한 상기 다음 블록을 구성하여, 상기 블록 체인 네트워크를 통해 전파시키는 단계를 포함한다.A method of operating a node device connected to a non-random consensus proof-based blockchain network, comprising: acquiring new block data propagated through the blockchain network; extracting validation data from the new block data; Acquiring neural consensus designation information for the next block generated based on a random consensus proof process according to the verification processing of the validation data; Based on the neural consensus designation information of the next block, selectively driving the consensus node function to generate validation data of the next block; and constructing the next block by combining the generated validation data and the new block, and disseminating it through the blockchain network.

Description

비-랜덤 합의체 증명 기반 블록 체인 네트워크를 랜덤 합의체 증명 기반 블록 체인 네트워크로 이용하는 뉴럴 합의체 노드 장치 및 그 동작 방법{A neural consensus node apparatus for using a non-random consensus proof-based blockchain network as a random consensus proof-based blockchain network, and its operation method}Neural consensus node apparatus for using a non-random consensus proof-based blockchain network as a random consensus proof-based blockchain network and its operation method {A neural consensus node apparatus for using a non-random consensus proof-based blockchain network as a random consensus proof -based blockchain network, and its operation method}

본 발명은 블록 체인 네트워크를 구축하는 장치 및 그 동작 방법에 관한 것이다. 보다 구체적으로, 본 발명은 비-랜덤 합의체 증명 기반 블록 체인 네트워크를 랜덤 합의체 증명 기반 블록 체인 네트워크로 이용하는 뉴럴 합의체 노드 장치 및 그 동작 방법에 관한 것이다.The present invention relates to a device for building a blockchain network and a method of operating the same. More specifically, the present invention relates to a neural consensus node device and a method of operating the same that uses a non-random consensus proof-based blockchain network as a random consensus proof-based blockchain network.

일반적으로, 블록체인(blockchain)은 분산 데이터베이스의 하나로 P2P(Peer to Peer) 네트워크를 활용한다. 분산 데이터베이스는 데이터를 물리적으로 분산시켜 다수의 이용자가 대규모의 데이터베이스를 공유하게 만드는 기술이다. 블록체인은 데이터를 저장하는 구조체 리스트로, 네트워크 참여 노드 단말들이 데이터를 저장하고 검증을 통해 거래 정보를 기록한 원장 데이터를 공동으로 기록 및 관리할 수 있다.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 is a list of structures that store data, and node terminals participating in the network can jointly record and manage ledger data that stores data and records transaction information through verification.

블록체인 활용의 한 예로, 블록체인은 인터넷으로 연결된 가상화폐 사용자들의 노드 단말들이 P2P 네트워크를 구성하여 이루어질 수 있다. 이를 통해, 가상화폐의 거래 내역이 담긴 블록(block)이 사용자 노드 단말에서 관리되고 신규 블록과 연결 및 전파될 수 있다. 신규 블록이 생성되면 다수의 참여자(노드 단말)의 합의 알고리즘을 통해 검증된 블록이 기존 블록과 연결될 수 있고 거래내역이 포함된 최종적인 장부(ledger)로 확인되어 분산 저장될 수 있다. 또한 참여 노드 단말에서 거래가 발생할 시에는, 해당 거래에 대한 유효성 검증을 통해 검증된 트랜잭션 정보가 각 노드 단말들에게 전파하게 된다. 이를 통해 거래 내역, 즉 검증된 트랜잭션이 전파되어 분산 저장되고 일부 노드의 데이터 위조 시, 분산 저장된 트랜잭션에 기반하여 진위를 파악할 수 있게된다. 블록체인의 보안 안정성은 데이터를 공유하는 이용자가 많을 수록 커진다. 블록체인은 비트코인 이외에도 클라우드 컴퓨팅 서비스 등 다양한 온라인 서비스에 활용되고 있다. As an example of blockchain utilization, blockchain can be created by forming a P2P network of node terminals of virtual currency users connected to the Internet. Through this, blocks containing virtual currency transaction details can be managed at the user node terminal and connected to and propagated with new blocks. When a new block is created, the block verified through the consensus algorithm of multiple participants (node terminals) can be linked to the existing block, confirmed as a final ledger containing transaction details, and stored distributedly. Additionally, when a transaction occurs at a participating node terminal, the transaction information verified through validation of the transaction is disseminated to each node terminal. Through this, transaction details, i.e. verified transactions, are propagated and stored distributedly, and when data of some nodes is falsified, the authenticity can be determined based on the distributedly stored transactions. 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.

블록체인 기술은 기존의 중앙집중식 데이터 관리 구조를 탈중앙식 또는 분산식으로 바꾸면서 거래비용 감소와 데이터 위변조 방지를 가능하게 할 수 있다. 이같은 블록체인 기술은 금융/의료/콘텐츠/공공/물류/유통/에너지 분야 등의 산업과 결합하여 경제적 가치를 창출할 수 있다. Blockchain technology can reduce transaction costs and prevent data forgery and falsification by changing the existing centralized data management structure to a decentralized or distributed one. Such blockchain technology can create economic value by combining with industries such as finance/medical/content/public/logistics/distribution/energy fields.

블록체인은 네트워크에 참여한 노드가 블록을 생성하여 타 노드로 생성한 블록 정보를 전파할 수 있다. 또한 신규 블록 정보를 수신한 노드들은 신규 블록 정보에 대한 정합성을 판별하고 검증할 수 있다. 이 때, 신규 생성되는 블록에 포함될 수 있는 거래 내역, 즉 트랜잭션에 대한 유효성 검증 또한 블록체인 네트워크에 참여한 노드에서 수행될 수 있다.Blockchain allows nodes participating in the network to create blocks and spread the generated block information to other nodes. Additionally, nodes that have received new block information can determine and verify the consistency of the new block information. At this time, transaction details that may be included in a newly created block, that is, validation of transactions, can also be performed by nodes participating in the blockchain network.

또한, 블록체인 네트워크는 참여하는 노드들이 관리하는 원장을 구성하는 블록 정보의 무결성을 보장하고 정당성을 검토하기 위해서 합의 알고리즘이 적용될 수 있다. 합의 알고리즘은 작업증명(PoW; Proof of Work), 지분증명(PoS; Proof of Stake), 위임된 지분증명(DPoS; Delegated Poof of Stake), PBFT(Practical Byzantine Fault Tolerance) 등이 일반적으로 적용되고 있다.Additionally, a consensus algorithm can be applied to the blockchain network to ensure the integrity and review the legitimacy of the block information that makes up the ledger managed by participating nodes. Commonly applied consensus algorithms are Proof of Work (PoW), Proof of Stake (PoS), Delegated Proof of Stake (DPoS), and Practical Byzantine Fault Tolerance (PBFT). .

작업증명(PoW, Proof-of-Work)은 작업을 위해 리소스(ex 컴퓨팅 파워 등)를 투입했다는 것을 증명하여 부정을 억제하는 방법으로. 작업증명(PoW)에 참여하기 위해서 참여 노드는 반드시 리소스를 투입해야 한다. 스팸(spam)이나 DoS 공격 등도 리소스의 51% 이상을 투입하여야 성공 가능하다.Proof-of-Work (PoW) is a method of suppressing fraud by proving that resources (e.g. computing power, etc.) have been invested for work. In order to participate in proof-of-work (PoW), participating nodes must invest resources. Spam or DoS attacks can also be successful when more than 51% of resources are invested.

Pow는 블록을 생성하기 위하여 고유의 해시값이 필요하며, 여기서 고유의 해시값은 nonce값을 무작위로 대입해서 찾아내야 하는 값이므로, 이러한 고유 해시값을 찾기 위하여 컴퓨팅 파워 등 리소스들이 과다하게 투입되어야하며, 전력소모에 의한 비용 및 환경문제가 발생되고, 기능이 집약된 별도 칩들이 등장하게 되며, 이로 인하여 연산능력의 단합으로 인한 중앙화 문제가 야기될 수 있다.Pow requires a unique hash value to create a block, and since the unique hash value is a value that must be found by randomly assigning nonce values, excessive resources such as computing power must be invested to find this unique hash value. In addition, cost and environmental problems arise due to power consumption, and separate chips with intensive functions appear, which may cause centralization problems due to the unification of computing power.

이를 해결하기 위해, PoS(Proof-of-Stake)가 제안되었으며, PoS는 노드의 보유 지분에 비례하여 증명이 가능한 방법을 채택하고 있다. PoS는 블록을 생성할 수 있는 확률을 각 노드가 갖고 있는 토큰의 지분에 비례하도록 한다. PoS는 토큰의 지분을 투입하는 리소스라고 보면, PoW의 구체적인 하나의 종류라고 볼 수 있다. PoS의 알고리즘 공식은 '다이제스트를 사용한 PoW'로 표현될 수 있다. PoW과 비교하여 PoS는 에너지 소비가 거의 없으며, 리소스 집약을 어렵게 한다.To solve this, PoS (Proof-of-Stake) was proposed, and PoS adopts a method that allows proof in proportion to the node's stake. PoS makes the probability of creating a block proportional to the share of tokens held by each node. If you think of PoS as a resource for investing token shares, it can be seen as a specific type of PoW. The algorithmic formula of PoS can be expressed as ‘PoW using digest’. Compared to PoW, PoS consumes little energy and makes resource concentration difficult.

그러나, PoS는 지분이 많을수록 더 유리해지는 방식이므로, 지분에 의해 블록생성 중앙화 문제가 발생될 수 있으며, 각 노드들 이 토큰을 수집하기만 하고, 사용하지 않으려는 경향이 나타날 수 있다. 나아가, 블록체인의 첫 번째 블록에 해당하는 제네시스 블록 시점에서는 지분이 100%에 달하기 때문에 시스템을 개시한 사람은 몇 번이고 전체 블록을 다시 만들어낼 수 있다. 각 노드들도 지분만 갖고 있으면, 그 시점부터 다시 시작하는 것이 가능하기 때문에 PoS만으로는 위변조를 막을 수 없다.However, since PoS is a method that becomes more advantageous the more stakes there are, problems with block generation centralization may occur due to stakes, and each node may tend to collect tokens and not use them. Furthermore, since the stake reaches 100% at the genesis block, which is the first block of the blockchain, the person who started the system can recreate the entire block any number of times. As long as each node has a stake, it is possible to start over from that point, so PoS alone cannot prevent forgery.

이러한 문제점 해결을 위해, 한국공개특허공보 10-2019-0122149에서는 난스를 이용한 합의 노드 선택 방법이 개시되어 있다. 이러한 방식은 공평한 랜덤 합의체를 이용하므로 PoW와 같은 과도한 자원 사용이 필요 없으며, PoS와 같이 업데이트 권한을 자원이 많은 노드가 독점하는 단점을 개선할 수 있도록, 전체 노드 중 난스 체인에 따라 합의체로 선정된 일부만 블록 생성에 참여하여 자원 소모를 최소화하고, 난스 증명 과정을 통해 블록 생성 권한을 획득할 노드를 미리 예측 불가능하게 하면서 확률적 전체의 대표이고, 일정 수 이상의 합의 노드가 선택되도록 하는 장점을 갖는다.To solve this problem, Korea Patent Publication No. 10-2019-0122149 discloses a method of selecting a consensus node using nonce. This method uses a fair random consensus, so there is no need for excessive resource use like PoW, and to improve the disadvantage of nodes with many resources monopolizing update rights like PoS, a consensus among all nodes is selected according to the nonce chain. Only some participate in block creation to minimize resource consumption, and it is impossible to predict in advance the nodes that will acquire block creation rights through the nonce proof process, but it is a representative of the probabilistic whole and has the advantage of allowing a certain number of consensus nodes to be selected.

그럼에도 불구하고, 현재 비트코인이나 이더리움과 같이 이미 전세계적으로 구축된 블록체인 네트워크는 여전히 PoW, Pow 방식을 사용하고 있으며, 프라이빗 블록체인 네트워크 등은 통신량의 효율성을 보전하기 위해 PBFT와 같이 소규모 노드만이 참여 가능한 네트워크를 운용하는 바, 새로운 합의 기법을 제안하여 새로운 네트워크를 구축하더라도, 이미 방대하게 구축된 기존의 블록 체인 네트워크로 인하여 발생되는 자원 및 사회적 비용 낭비를 신속하게 극복하기는 매우 어려운 실정이다.Nevertheless, currently, blockchain networks that have already been established around the world, such as Bitcoin or Ethereum, still use PoW and Pow methods, and private blockchain networks use small nodes such as PBFT to preserve communication efficiency. Since we operate a network in which only those who can participate, even if we build a new network by proposing a new consensus technique, it is very difficult to quickly overcome the waste of resources and social costs caused by the existing blockchain network that has already been built on a large scale. am.

본 발명은 상기한 바와 같은 문제점을 해결하고자 안출된 것으로, 비-랜덤 합의체 증명 기반의 기존 블록 체인 네트워크를, 랜덤 합의체 증명 기반 블록 체인 네트워크로 이용하는 뉴럴 합의체 증명 모듈 클러스터를 구축함으로써, 기존의 PoW, PoS 방식의 기 구축된 블록 체인 네트워크가 더이상의 PoW 또는 PoS 방식으로 운용되지 않도록 제어하면서, 기 구축된 블록 체인 네트워크를 기반으로 하는 랜덤 합의체 증명 기반 블록 체인 네트워크가 운용될 수 있도록 지원하는 장치 및 그 동작 방법을 제공하는데 그 목적이 있다.The present invention was created to solve the problems described above, by building a cluster of neural consensus proof modules that use the existing blockchain network based on non-random consensus proof as a random consensus proof-based block chain network, thereby reducing the existing PoW, A device and device that supports the operation of a random consensus proof-based blockchain network based on an existing blockchain network while controlling the existing PoS-type blockchain network to no longer operate in the PoW or PoS method. The purpose is to provide a method of operation.

상기한 바와 같은 과제를 해결하기 위한 본 발명의 실시 예에 따른 방법은, 비-랜덤 합의체 증명 기반 블록 체인 네트워크에 접속되는 노드 장치의 동작 방법에 있어서, 상기 블록 체인 네트워크를 통해 전파된 신규 블록 데이터를 획득하는 단계; 상기 신규 블록 데이터로부터 유효성 검증 데이터를 추출하는 단계; 상기 유효성 검증 데이터의 검증 처리에 따라, 랜덤 합의체 증명 프로세스 기반으로 생성된 다음 블록의 뉴럴 합의체 지정 정보를 획득하는 단계; 상기 다음 블록의 뉴럴 합의체 지정 정보에 기초하여, 합의체 노드 기능부를 선택적으로 구동시켜, 다음 블록의 유효성 검증 데이터를 생성하는 단계; 및 상기 생성된 유효성 검증 데이터 및 상기 신규 블록을 결합한 상기 다음 블록을 구성하여, 상기 블록 체인 네트워크를 통해 전파시키는 단계를 포함한다.A method according to an embodiment of the present invention to solve the above-described problem is a method of operating a node device connected to a non-random consensus proof-based blockchain network, wherein new block data propagated through the blockchain network Obtaining a; extracting validation data from the new block data; Acquiring neural consensus designation information for the next block generated based on a random consensus proof process according to the verification processing of the validation data; Based on the neural consensus designation information of the next block, selectively driving the consensus node function to generate validation data of the next block; and constructing the next block by combining the generated validation data and the new block, and disseminating it through the blockchain network.

상기한 바와 같은 과제를 해결하기 위한 본 발명의 실시 예에 따른 장치는,비-랜덤 합의체 증명 기반 블록 체인 네트워크에 접속되는 노드 장치에 있어서, 상기 블록 체인 네트워크를 통해 전파된 신규 블록 데이터를 획득하여, 상기 신규 블록 데이터로부터 유효성 검증 데이터를 추출하고, 상기 유효성 검증 데이터의 검증 처리에 따라, 랜덤 합의체 증명 프로세스 기반으로 생성된 다음 블록의 뉴럴 합의체 지정 정보를 획득하는 유효성 검증 처리부; 상기 다음 블록의 뉴럴 합의체 지정 정보에 기초하여 선택적으로 구동되어 다음 블록의 유효성 검증 데이터를 생성하는 합의체 노드 기능부; 및 상기 생성된 유효성 검증 데이터 및 상기 신규 블록을 결합한 상기 다음 블록을 구성하여, 상기 블록 체인 네트워크를 통해 전파시키는 블록 체인 서비스부를 포함한다.A device according to an embodiment of the present invention for solving the problems described above is a node device connected to a non-random consensus proof-based blockchain network, and acquires new block data propagated through the blockchain network. , a validation processing unit that extracts validation data from the new block data and obtains neural consensus designation information for the next block generated based on a random consensus proof process according to the validation processing of the validation data; a consensus node function unit that is selectively driven based on the neural consensus designation information of the next block to generate validation data for the next block; and a block chain service unit that configures the next block by combining the generated validation data and the new block and disseminates it through the block chain network.

본 발명의 실시 예에 따르면, 비-랜덤 합의체 증명 기반의 기존 블록 체인 네트워크를, 랜덤 합의체 증명 기반 블록 체인 네트워크로 이용하는 뉴럴 합의체 증명 모듈 클러스터를 구축함으로써, 기존의 PoW, PoS 방식의 기 구축된 블록 체인 네트워크가 더이상의 PoW 또는 PoS 방식으로 운용되지 않도록 제어하거나, 비잔틴 장애 허용 합의체의 최소 노드 수에 따라 제한적으로 운용되도록 제어하면서, 기 구축된 블록 체인 네트워크를 기반으로 하는 랜덤 합의체 증명 기반 블록 체인 네트워크가 운용될 수 있도록 하는 네트워크를 형성하는 노드 단말 장치 및 그 동작 방법을 제공할 수 있다.According to an embodiment of the present invention, by building a neural consensus proof module cluster that uses the existing blockchain network based on non-random consensus proof as a random consensus proof-based blockchain network, existing blocks of existing PoW and PoS methods are built. A random consensus proof-based blockchain network based on an existing blockchain network, controlling the chain network to no longer operate in the PoW or PoS manner, or controlling the operation to be limited according to the minimum number of nodes of the Byzantine fault-tolerant consensus. A node terminal device forming a network that can be operated and a method of operating the same can be provided.

이에 따라, 기 구축된 비-랜덤 합의체 증명 기반 블록 체인 네트워크의 인프라 및 효용성은 최대한 유지하면서도 랜덤 합의체 증명 기반의 블록 체인 네트워크로 활용할 수 있도록 전환시킬 수 있음으로써, 자원 및 사회적 비용 낭비를 방지하면서도 효율적이고 공평한 뉴럴 합의체 증명 기반의 분산합의 프로세스를 제공하는 장치 및 그 동작 방법을 제공할 수 있다.Accordingly, the infrastructure and utility of the existing non-random consensus proof-based blockchain network can be maintained as much as possible while being converted to a random consensus proof-based blockchain network, thereby preventing waste of resources and social costs and improving efficiency. It is possible to provide a device that provides a distributed consensus process based on fair neural consensus proof and a method of operating the same.

도 1은 본 발명의 실시 예에 따른 전체 시스템을 개략적으로 도시한 도면이뎌, 도 2는 본 발명의 실시 예에 따른 블록 체인 네트워크를 설명하기 위한 도면이다.
도 3은 본 발명의 실시 예에 따른 노드 장치를 보다 구체적으로 도시한 블록도이다.
도 4는 본 발명의 실시 예에 따른 뉴럴 합의체 증명 모듈 클러스터 구성 및 전체 프로세스를 설명하기 위한 개념도이다.
도 5는 본 발명의 실시 예에 따른 노드 장치의 동작 방법을 설명하기 위한 흐름도이다.
도 6 내지 도 9는 본 발명의 실시 예에 따른 합의체 증명 모듈 노드 장치에 의해 처리되는 단계별 데이터를 예시한 도면이다.
도 10은 본 발명의 다른 실시 예에 따른 노드 장치의 동작 방법을 설명하기 위한 흐름도이다.
Figure 1 is a diagram schematically showing the entire system according to an embodiment of the present invention, and Figure 2 is a diagram for explaining a blockchain network according to an embodiment of the present invention.
Figure 3 is a block diagram illustrating a node device according to an embodiment of the present invention in more detail.
Figure 4 is a conceptual diagram for explaining the neural consensus proof module cluster configuration and overall process according to an embodiment of the present invention.
Figure 5 is a flowchart for explaining a method of operating a node device according to an embodiment of the present invention.
Figures 6 to 9 are diagrams illustrating step-by-step data processed by the consensus proof module node device according to an embodiment of the present invention.
Figure 10 is a flowchart for explaining a method of operating a node device according to another 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는 본 발명의 실시 예에 따른 블록 체인 네트워크를 설명하기 위한 도면이다.Figure 1 is a diagram schematically showing the entire system according to an embodiment of the present invention, and Figure 2 is a diagram for explaining a blockchain network according to an embodiment of the present invention.

먼저, 도 1을 참조하면, 본 발명의 실시 예에 따른 블록체인 네트워크 시스템(1000)은 유선 또는 무선 네트워크를 통해 연결된 하나 이상의 노드 단말들에 의해 메쉬형(Mesh) 네트워크 토폴로지의 블록체인 네트워크를 구성할 수 있다. 상기 노드 단말들은 입출력 장치를 통하여 블록체인 네트워크에 연결되고, 데이터를 교환할 수 있다. 블록체인 네트워크 시스템(1000)은 이동 전화, 스마트 폰, PDA, 태블릿 컴퓨터, 랩톱 컴퓨터 등 모바일 장치, 퍼스널 컴퓨터, 태블릿 컴퓨터, 넷북 등 컴퓨팅 장치, 혹은 텔레비전, 스마트 텔레비전, 게이트 제어를 위한 보안 장치 등 전자 제품 등 다양한 전자 시스템을 상기 노드 단말로 포함할 수 있다.First, referring to FIG. 1, the blockchain network system 1000 according to an embodiment of the present invention configures a blockchain network with a mesh network topology by one or more node terminals connected through a wired or wireless network. can do. The node terminals are connected to the blockchain network through input/output devices and can exchange data. The blockchain network system (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. Various electronic systems, such as products, may be included as the node terminal.

그리고, 각 노드 단말(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, the transaction ledger data is updated and the information is shared, so that a transaction of encryption information to create a block chain 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.

이러한 블록 체인의 보안 안정성은 데이터를 공유하는 공유자들의 시스템 참여에 의해 형성될 수 있다. 따라서, 블록체인 네트워크에 접속된 각 공유자 단말 사이의 공유에 대한 내역 및 블록 체인을 생성하기 위한 암호화 정보 발급/거래 내역 등을 포함하는 거래 정보 블록이 순차적으로 저장될 수 있으며, 그 위변조 방지를 위한 해시값을 순차적으로 블록 체인화하기 위한 거래 검증 처리가 각 거래자 단말에서 분산 수행될 수 있다.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 processing to sequentially block hash values can be distributed and performed on each trader's terminal.

이러한 거래 검증 처리에 있어서, 도 2에 도시된 바와 같이, 기존에 구축된 블록 체인 네트워크는 통상 비-랜덤 합의체 증명 기반의 블록 체인 네트워크일 수 있다. 대표적으로서, PoW(Proof-of-Work), PoS(Proof-of-Stake) 등이 비-랜덤 합의체 증명 기반의 블록 체인 네트워크(200)일 수 있으며, 비트코인, 이더리움 등의 블록 체인 네트워크가 이에 해당할 수 있다.In this transaction verification process, as shown in FIG. 2, an existing blockchain network may typically be a non-random consensus proof-based blockchain network. Representative examples include Proof-of-Work (PoW) and Proof-of-Stake (PoS), which may be non-random consensus proof-based blockchain networks (200), and blockchain networks such as Bitcoin and Ethereum. This may apply.

이에 대응하여, 본 발명의 실시 예에 따른 노드 장치(100)는, 뉴럴 합의체 증명 모듈 클러스터를 구성할 수 있으며, 뉴럴 합의체 증명 모듈 클러스터는 랜덤 합의체 증명 방식을 기반으로, 뉴럴 합의체 유효성 검증 데이터를 결합한 신규 블록을 구성할 수 있으며, 구성된 신규 블록이 비-랜덤 합의체 블록 체인 네트워크(200)를 통해 전파되도록 처리할 수 있다.In response to this, the node device 100 according to an embodiment of the present invention can configure a neural consensus proof module cluster, and the neural consensus proof module cluster combines neural consensus validation data based on a random consensus proof method. A new block can be formed, and the constructed new block can be processed to be propagated through the non-random consensus blockchain network 200.

이에 따라, 비-랜덤 합의체 블록 체인 네트워크(200)에서는 다시 전파된 블록 데이터를 네트워크 내 공유하게 되며, 뉴럴 합의체 증명 모듈 클러스터를 구성하는 노드 장치(100)에 의해 다시 다음 블록이 생성되도록 처리될 수 있다. 이 과정에서 별도의 PoW, PoS 등의 증명은 요구되지 않기 때문에, 비경쟁 방식으로 탈 중앙화를 구현할 수 있는 신규의 랜덤 합의체 블록 체인 네트워크 시스템(1000)을 구축할 수 있게 된다.Accordingly, in the non-random consensus blockchain network 200, the re-propagated block data is shared within the network, and can be processed to generate the next block again by the node device 100 constituting the neural consensus proof module cluster. there is. Since separate proofs such as PoW and PoS are not required in this process, it is possible to build a new random consensus blockchain network system (1000) that can implement decentralization in a non-competitive manner.

즉, 본 발명의 실시 예에 따르면, 비-랜덤 합의체 증명 기반의 기존 블록 체인 네트워크(200)를, 랜덤 합의체 증명 기반 블록 체인 네트워크(1000)로 이용할 수 있게 하는 뉴럴 합의체 증명 모듈 클러스터를 노드 장치(100)들로 구축함으로써, 기존의 PoW, PoS 방식의 기 구축된 블록 체인 네트워크가 더이상의 PoW 또는 PoS 방식으로 운용되지 않도록 제어하거나, 비잔틴 장애 허용 합의체의 최소 노드 수에 따라 제한적으로 운용되도록 제어하면서, 기 구축된 블록 체인 네트워크를 기반으로 하는 랜덤 합의체 증명 기반 블록 체인 네트워크가 운용될 수 있도록 하는 네트워크를 형성하는 노드 단말 장치(100)를 제공할 수 있는 것이다.That is, according to an embodiment of the present invention, a node device ( 100), controlling the existing blockchain network to no longer operate in the PoW or PoS method, or controlling it to operate in a limited manner according to the minimum number of nodes of the Byzantine fault-tolerant consensus. , It is possible to provide a node terminal device 100 that forms a network that allows a random consensus proof-based blockchain network based on an existing blockchain network to be operated.

이에 따라, 기 구축된 비-랜덤 합의체 증명 기반 블록 체인 네트워크의 인프라 및 효용성은 최대한 유지하면서도 랜덤 합의체 증명 기반의 블록 체인 네트워크로 활용할 수 있도록 전환시킬 수 있음으로써, 자원 및 사회적 비용 낭비를 방지하면서도 효율적이고 공평한 뉴럴 합의체 증명 기반의 분산합의 프로세스를 제공할 수 있다. 여기서, 랜덤 합의체의 참여 자격 증명은 일회성 난수 기반으로 구성된 논스 체인 및 해시 확인 프로세스가 이용될 수 있으나, 이는 예시일 뿐이며, 여러 다른 방식으로도 랜덤 합의체의 지정 또는 참여 자격 증명은 가능할 수 있다.Accordingly, the infrastructure and utility of the existing non-random consensus proof-based blockchain network can be maintained as much as possible while being converted to a random consensus proof-based blockchain network, thereby preventing waste of resources and social costs and improving efficiency. It can provide a distributed consensus process based on fair neural consensus proof. Here, the nonce chain and hash confirmation process based on one-time random numbers may be used to prove participation in the random consensus, but this is only an example, and designation of the random consensus or proof of participation credentials may be possible in various other ways.

보다 구체적으로, 도 3 및 도 4를 참조하면, 도 3은 본 발명의 실시 예에 따른 노드 장치를 보다 구체적으로 도시한 블록도이며, 도 4는 본 발명의 실시 예에 따른 뉴럴 합의체 증명 모듈 클러스터 구성 및 전체 프로세스를 설명하기 위한 개념도이다.More specifically, referring to FIGS. 3 and 4, FIG. 3 is a block diagram illustrating a node device according to an embodiment of the present invention in more detail, and FIG. 4 is a neural consensus proof module cluster according to an embodiment of the present invention. This is a conceptual diagram to explain the composition and overall process.

본 발명의 실시 예에 따른 블록 체인 시스템(1000)의 노드 단말(100)들은, 랜덤한 노드 선정 프로세스에 의해 다음 블록을 구성하기 위한 뉴럴 합의체 증명 모듈 클러스터에 포함될 수 있으며, 이러한 뉴럴 합의체 증명 모듈 클러스터에 포함되어 본 발명의 실시 예에 따른 랜덤 합의체 증명 프로세스를 수행하기 위한 뉴럴 합의체 증명 모듈(110)을 각각 포함할 수 있다.The node terminals 100 of the blockchain system 1000 according to an embodiment of the present invention may be included in a neural consensus proof module cluster for configuring the next block by a random node selection process, and this neural consensus proof module cluster may each include a neural consensus verification module 110 for performing a random consensus verification process according to an embodiment of the present invention.

또한, 노드 단말(100)은 비-랜덤 합의체 블록 체인 네트워크(200)에 접속되어 있으며, 랜덤 합의체 증명 프로세스에 의해 구성된 다음 블록의 공유 전파 프로세스의 처리를 상기 비-랜덤 합의체 블록 체인 네트워크(200)를 통해 수행하는 블록 체인 서비스부(120)를 포함할 수 있다.In addition, the node terminal 100 is connected to the non-random consensus blockchain network 200, and processes the shared propagation process of the next block constructed by the random consensus proof process through the non-random consensus blockchain network 200. It may include a blockchain service unit 120 that performs through.

이에 따라, 본 발명의 실시 예에서 노드 단말(100)들은, 비-랜덤 합의체 블록 체인 네트워크(200)에 참여하면서 랜덤 합의체 선정 프로세스에 의해 선정되어 각 블록을 합의체 협의에 따라 생성 가능한 권한이 선택적으로 부여되는 노드 단말(100)들일 수 있으며, 이를 통해 랜덤 합의체 블록 체인 네트워크 시스템(1000)이 독자적으로 구축될 수 있다.Accordingly, in an embodiment of the present invention, the node terminals 100 participate in the non-random consensus blockchain network 200 and are selected through a random consensus selection process to selectively have the authority to create each block according to consensus agreement. These may be assigned node terminals 100, through which a random consensus blockchain network system 1000 can be independently built.

또한, 도 4에 도시된 바와 같이, 노드 단말(100)들은 일반 노드인 제4 노드 단말, 참여 노드인 제3 노드 단말, 의회 노드인 제2 노드 단말, 위원회 노드인 제1 노드 단말의 기능을 선택적으로 수행할 수 있다.In addition, as shown in FIG. 4, the node terminals 100 perform the functions of the fourth node terminal as a general node, the third node terminal as a participating node, the second node terminal as a council node, and the first node terminal as a committee node. It can be performed optionally.

뉴럴 합의체 증명 모들 클러스터는 참여 노드로 등록된 단말인 제3 노드 단말을 기반으로 구축될 수 있다. 제3 노드 단말인 참여 노드에서는 신규 전파된 블록의 합의체 유효성 검증 데이터에서 확인되는 다음 합의체 선정 정보에 기초하여, 참여 자격을 검증할 수 있으며, 제2 노드 단말은 검증 결과에 따라 의회 노드 선정 여부를 확인하여 의회 노드 기능 동작을 처리하는 단말일 수 있다. 제1 노드 단말은 검증 결과에 따라 위원회 노드 선정 여부를 확인하여 위원회 노드 기능 동작을 처리하는 단말일 수 있다.Neural consensus proof mode cluster can be built based on a third node terminal, which is a terminal registered as a participating node. The participating node, which is the third node terminal, can verify participation qualifications based on the next consensus body selection information confirmed in the consensus validation data of the newly propagated block, and the second node terminal determines whether to select a council node based on the verification results. It may be a terminal that verifies and processes the operation of the parliamentary node function. The first node terminal may be a terminal that processes committee node function operations by confirming whether the committee node is selected according to the verification result.

의회 노드로 선정된 노드 단말(100)의 경우, 도 4에서 도시된 제2 노드 단말과 같이 후보 블록 제시 및 합의 프로세스를 수행할 수 있으며, 위원회 노드로 선정된 노드 단말(100)의 경우, 합의 블록을 결정하고 서명 정보를 취합하여, 다음 블록의 합의체 유효성 검증 데이터를 구성 및 배포하는 프로세스를 수행할 수 있다. 여기서, 합의체 유효성 검증 데이터는 합의 과정 검증 데이터, 다중 서명 정보 및 다음 합의체 선정 정보를 포함할 수 있으며, 이는 기 구축된 비-랜덤 합의체 블록 체인 네트워크(200)를 통해 전파될 수 있다.In the case of the node terminal 100 selected as a council node, a candidate block presentation and consensus process can be performed like the second node terminal shown in FIG. 4, and in the case of the node terminal 100 selected as a committee node, consensus By determining the block and collecting signature information, the process of constructing and distributing consensus validation data for the next block can be performed. Here, consensus body validation data may include consensus process verification data, multi-signature information, and next consensus body selection information, which may be disseminated through the previously established non-random consensus blockchain network 200.

이러한 신규 블록 구성 및 전파 처리에 따라, 기존 비-랜덤 합의체 블록 체인 네트워크(200)의 증명 프로세스는 제한 처리될 수 있으며, 일부 노드 수가 비잔틴 감내 허용(PBFT) 기준치에 기반하여 설정된 개수 미달인 예외적인 경우에만 노드 단말(100)들 간의 Pow 또는 Pos 증명 기반 다음 블록 생성이 처리될 수 있다.According to this new block composition and propagation processing, the proof process of the existing non-random consensus blockchain network (200) may be limited, and there may be exceptional cases where the number of some nodes falls below the number set based on the Byzantine Tolerance (PBFT) threshold. Only in this case can generation of the next block based on Pow or Pos proof between node terminals 100 be processed.

한편, 이러한 노드 단말(100)의 참여 자격 및 검증 정보는 참여 노드 등록에 따라 개별 노드별로 연산되는 랜덤 값을 기반으로 산출되어 상호 공개 및 검증될 수 있는 바, 이는 전술한 바와 같이 논스(nonce) 체인이 이용될 수 있다. 예를 들어, 다음 합의체 선정 정보에 포함된 논스 값과 현재 블록의 높이 값 등을 이용한 해시 처리에 따른 자신의 자격 검증 값이 어떠한 값인지에 따라, 노드 단말(100)은 참여 노드, 의회 노드, 위원회 노드 또는 의장 노드 중 적어도 하나로 결정될 수 있다.Meanwhile, the participation qualification and verification information of the node terminal 100 can be calculated and mutually disclosed and verified based on a random value calculated for each individual node according to the participation node registration, which is a nonce as described above. A chain may be used. For example, depending on the value of its qualification verification value based on hash processing using the nonce value included in the next consensus body selection information and the height value of the current block, the node terminal 100 may be selected as a participating node, a congress node, or It may be determined to be at least one of a committee node or a chairman node.

또한 도 3에 도시된 바와 같이, 본 발명의 실시 예에 따른 노드 단말(100)은, 장치 정보 설정부(111), 노드 정보 설정부(112), 유효성 검증 처리부(113), 자격 검증 처리부(114), 합의체 노드 기능부(115) 및 데이터 인터페이스부(116)를 포함한다.In addition, as shown in FIG. 3, the node terminal 100 according to an embodiment of the present invention includes a device information setting unit 111, a node information setting unit 112, a validation processing unit 113, and a qualification verification processing unit ( 114), and includes a consensus node function unit 115 and a data interface unit 116.

장치 정보 설정부(111)는, 뉴럴 합의체 증명 모듈(110)이 설치된 단말(100)의 장치 정보를 획득 및 저장 관리한다. 여기서, 장치 정보는 단말(100)의 노드 네임 정보, 장치 주소 정보, 장치 성능 정보, 장치 신뢰성 정보, 사용 네트워크 정보 중 적어도 하나를 포함할 수 있다. 이러한 장치 정보는, 뉴럴 합의체 증명 모듈 클러스터의 식별 또는 구축, 투표 합의 프로세스의 수행 등에 이용될 수 있다.The device information setting unit 111 acquires, stores, and manages device information of the terminal 100 on which the neural consensus verification 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 consensus proof module cluster, perform a voting consensus process, etc.

노드 정보 설정부(112)는 비-랜덤 합의체 블록 체인 네트워크(200) 및 참여 노드 등록을 위한 노드 정보를 설정한다. 설정된 노드 정보는 블록체인 네트워크 클라이언트 주소 정보를 포함할 수 있으며, 단말(100)은 상기 블록체인 네트워크 클라이언트 주소 정보를 통해 블록 체인 네트워크에 접속하여 블록 정보를 획득하거나 공유할 수 있다.The node information setting unit 112 sets node information for registering the non-random consensus blockchain network 200 and participating nodes. The set node information may include blockchain network client address information, and the terminal 100 can acquire or share block information by accessing the blockchain network through the blockchain network client address information.

유효성 검증 처리부(113)는 상기 비-랜덤 합의체 블록 체인 네트워크(200)를 통해 전파된 신규 블록 데이터를 획득하여, 상기 신규 블록 데이터로부터 유효성 검증 데이터를 추출하고, 상기 유효성 검증 데이터의 검증 처리에 따라, 랜덤 합의체 증명 프로세스 기반으로 생성된 다음 블록의 뉴럴 합의체 지정 정보를 획득한다.The validation processing unit 113 acquires new block data propagated through the non-random consensus blockchain network 200, extracts validation data from the new block data, and performs verification processing of the validation data. , Obtain the neural consensus designation information for the next block generated based on the random consensus proof process.

그리고, 합의체 노드 기능부(115)는, 상기 다음 블록의 뉴럴 합의체 지정 정보에 기초하여 선택적으로 구동되어 다음 블록의 유효성 검증 데이터를 생성하는 바, 의장 노드 기능부(1151), 의회 노드 기능부(1152), 위원회 노드 기능부(1153) 중 적어도 하나를 선택적으로 구동시킬 수 있다. 의장 노드 기능부(1151)는 뉴럴 합의체 지정 정보와 지정된 노드 단말(100)의 논스 값의 적어도 일부의 비교를 통해 선택적으로 구동될 수 있으나, 본 발명이 이러한 선정 방식에 한정되는 것은 아니다.In addition, the consensus node function unit 115 is selectively driven based on the neural consensus designation information of the next block to generate validation data for the next block, and the chairman node function unit 1151 and the council node function unit ( 1152), at least one of the committee node function unit 1153 may be selectively driven. The chairman node function unit 1151 may be selectively driven by comparing the neural consensus designation information with at least a portion of the nonce value of the designated node terminal 100, but the present invention is not limited to this selection method.

먼저, 의장 노드 기능부(1151)는 의회 및 위원회 노드에 대응하는 의장 프로세스를 수행할 수 있는 바, 의회 노드들로부터 블록 체인 네트워크의 트랜잭션 풀에서 가져온 유효한 거래 블록의 위임 정보 및 참여 자격 검증 정보와, 다음 블록 합의체 후보 정보를 수집할 수 있다. 이에 따라, 다음 블록을 위한 3f + 1(f는 자연수)개 이상의 의회 노드가 선정될 수 있으며, 2f + 1개 이상의 위원회 노드가 선정될 수 있다.First, the chairman node function unit 1151 is capable of performing a chairman process corresponding to the congress and committee nodes, and receives delegation information and participation qualification verification information of valid transaction blocks taken from the transaction pool of the blockchain network from the congress nodes. , information on candidates for the next block consensus can be collected. Accordingly, more than 3f + 1 (f is a natural number) council nodes can be selected for the next block, and more than 2f + 1 committee nodes can be selected.

그리고, 의회 노드 기능부(1152)는 의장 노드 기능부(1151)가 구동되는 노드 단말(100)로 비-랜덤 합의체 블록 체인 네트워크(200)의 트랜잭션 풀에서 가져온 유효한 거래 블록의 위임 정보 및 참여 자격 검증 정보를 전송할 수 있다.In addition, the council node functional unit 1152 is a node terminal 100 on which the chairman node functional unit 1151 is driven, and the delegation information and participation qualifications of valid transaction blocks taken from the transaction pool of the non-random consensus blockchain network 200 Verification information can be transmitted.

그리고, 의장 노드 기능부(1151)는, 의회 노드에서 제안된 거래 블록 중 의회 노드의 합의 정족수 이상이 일치되는 블록을 후보 블록으로 선정하고, 후보 블록에 대한 합의를 나타내는 다중 서명 영역의 부분 서명 처리를 요청하는 메시지를 위원회 노드 기능부(1153)가 구동된 노드 단말(100)들로 전달할 수 있다. 예를 들어, 의장 노드 기능부(1151)는 2f+1개의 거래 데이터 후보 블록 중 f+1개가 일치하는 거래 데이터 후보 블록을 결정하고, 위원회 노드 기능부(1153)로 다중 서명 영역의 부분 서명 처리를 요청하는 메시지를 송신할 수 있는 바, 위원회 노드 기능부(1153)가 구동된 노드 단말(100)에서는 후보 블록에 대응하는 합의를 나타내는 부분 서명을 처리하여 의장 노드 기능부(1151)가 구동된 노드 단말(100)로 전달할 수 있다.In addition, the chairman node function unit 1151 selects a block that matches more than the consensus quorum of the council nodes among the transaction blocks proposed by the council nodes as a candidate block, and processes partial signatures in the multi-signature area indicating consensus on the candidate block. A message requesting can be delivered to the node terminals 100 in which the committee node function unit 1153 is driven. For example, the chairman node functional unit 1151 determines a transaction data candidate block that matches f+1 of 2f+1 transaction data candidate blocks, and processes partial signatures in the multi-signature area with the committee node functional unit 1153. A message requesting a message can be transmitted, and the node terminal 100 in which the committee node functional unit 1153 is driven processes a partial signature indicating the agreement corresponding to the candidate block, and the chairman node functional unit 1151 is driven. It can be transmitted to the node terminal 100.

이에 따라, 의장 노드 기능부(1151)는, 위원회 합의에 따라 다중 서명 처리가 완료된 후보 블록을 검증하여 배포 블록으로 결정하고, 상기 합의 프로세스에 대응하는 유효성 검증 데이터를 생성하여 배포 블록과 결합하여 신규 블록을 생성한다.Accordingly, the chairman node functional unit 1151 verifies the candidate block for which multi-signature processing has been completed according to the committee agreement and determines it as a distribution block, generates validation data corresponding to the consensus process, combines it with the distribution block, and creates a new Create a block.

데이터 인터페이스부(116)는, 생성된 신규 블록을 비-랜덤 합의체 블록 체인 네트워크(200)의 포맷으로 변환 처리하여 블록 체인 서비스부(120)로 전달할 수 있다.The data interface unit 116 may convert the generated new block into the format of the non-random consensus blockchain network 200 and transmit it to the blockchain service unit 120.

그리고, 블록 체인 서비스부(120)에서는 상기 신규 블록을 비-랜덤 합의체 블록 체인 네트워크(200)를 통해 전파 처리할 수 있으며, 신규 블록은 비-랜덤 합의체 블록 체인 네트워크(200)를 통해 전파될 뿐만 아니라 거래 데이터 관리부(121) 구동에 따라, 거래 데이터 메모리 풀(mem pool)에 추가될 수도 있다.In addition, the blockchain service unit 120 can process the new block to be propagated through the non-random consensus blockchain network 200, and the new block is not only propagated through the non-random consensus blockchain network 200. In addition, depending on the operation of the transaction data management unit 121, it may be added to the transaction data memory pool (mem pool).

한편, 도시되지는 않았으나, 노드 단말(100) 장치는, 전술한 블록 체인 서비스부(120) 및 뉴럴 합의체 증명 모듈(110)이 활용 가능한 메모리를 포함할 수 있다. 메모리는 컴퓨터에서 읽을 수 있는 명령어(instruction)를 포함할 수 있으며, 블록 체인 서비스부(120) 및 뉴럴 블록 모듈(110)은 메모리에 저장된 명령어가 프로세서에서 실행됨에 따라 앞서 언급된 동작들을 수행할 수 있다. 메모리는 휘발성 메모리 혹은 비휘발성 메모리일 수 있다.Meanwhile, although not shown, the node terminal 100 device may include memory that can be utilized by the above-described blockchain service unit 120 and the neural consensus verification 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.

도 5는 본 발명의 실시 예에 따른 노드 단말(100)의 동작 방법을 설명하기 위한 흐름도이다.Figure 5 is a flowchart for explaining the operation method of the node terminal 100 according to an embodiment of the present invention.

도 5를 참조하면, 본 발명의 실시 예에 따른 노드 단말(100)은, 기 구축된 비-랜덤 합의체 블록 체인 네트워크(200)를 통해 전파된 신규 블록 데이터가 획득되면(S101), 유효성 검증 처리부(113)에서는 신규 블록 데이터로부터 유효성 검증 데이터를 추출하고, 유효성 검증 데이터의 검증 처리에 따른 합의체 지정 정보를 획득한다(S103).Referring to FIG. 5, when new block data propagated through the pre-established non-random consensus blockchain network 200 is obtained (S101), the node terminal 100 according to an embodiment of the present invention uses a validation processing unit. In (113), validation data is extracted from the new block data, and consensus designation information is obtained according to the verification process of the validation data (S103).

유효성 검증 처리부(113)는 상기 유효성 검증 데이터의 검증 처리에 따라, 랜덤 합의체 증명 프로세스 기반으로 생성된 다음 블록의 뉴럴 합의체 지정 정보를 할 수 있으며, 전술한 바와 같이 상기 유효성 검증 데이터는, 상기 랜덤 합의체 증명 프로세스에 대응하는 합의 과정 검증 데이터를 포함할 수 있다.According to the verification processing of the validation data, the validation processing unit 113 can specify the neural consensus body of the next block generated based on the random consensus body verification process. As described above, the validation data is the random consensus body. It may include consensus process verification data corresponding to the proof process.

예를 들어, 합의 과정 검증 데이터는, 거래 데이터에 대한 합의를 처리하는 의회 노드의 멤버 자격 검증 정보로서, 논스 체인 기반 자격 증명 해시 데이터 및 상기 의회 노드의 부분 서명들을 결합하여 형성된 다중 서명 데이터를 포함할 수 있다. 또한, 상기 다음 블록의 뉴럴 합의체 지정 정보는, 다음 블록에 대응하는 뉴럴 합의체의 참가 자격을 검증하기 위한 논스(nounce) 정보를 포함할 수도 있다.For example, consensus process verification data is membership verification information of a congress node that processes consensus on transaction data, and includes multi-signature data formed by combining nonce chain-based credential hash data and partial signatures of the congress node. can do. Additionally, the neural consensus designation information for the next block may include nonce information for verifying the participation qualifications of the neural consensus corresponding to the next block.

이후, 노드 단말(100)은 다음 블록에 대한 뉴럴 합의체 증명 클러스터 노드를 구성하는 노드로 선정되었는지 판단하며(S107), 선정된 경우 합의체 지정 정보에 기초하여 의장 노드인지를 확인한다(S109).Afterwards, the node terminal 100 determines whether it has been selected as a node constituting the neural consensus proof cluster node for the next block (S107), and if selected, confirms whether it is a chairman node based on the consensus designation information (S109).

의장 노드로 지정되지 않은 경우에는 각 자격에 따라 블록 체인 네트워크의 트랜잭션 풀에서 가져온 유효한 거래 블록의 위임 정보 및 참여 자격 검증 정보를 의회 의장 노드로 전달할 수 있다(S113).If it is not designated as a chairman node, the delegation information and participation qualification verification information of a valid transaction block taken from the transaction pool of the blockchain network can be delivered to the council chairman node according to each qualification (S113).

이에 따라 의장 노드 기능부(1151)가 구동된 노드 단말(100)은 위임 정보 및 다음 블록 합의체 후보 정보를 다른 노드들로부터 취합할 수 있다(S115).Accordingly, the node terminal 100 in which the chairman node function unit 1151 is driven can collect delegation information and next block consensus candidate information from other nodes (S115).

또한, 의장 노드 기능부(1151)가 구동된 노드 단말(100)은 의회 노드 기능부(1152)가 구동된 노드 단말(100)로부터 합의된 후보 블록을 결정하고, 후보 블록에 대한 합의를 나타내는 다중 서명 영역의 부분 서명 처리를 요청하는 메시지를 위원회 멤버 노드로 전달한다(S117).In addition, the node terminal 100 in which the chairman node functional unit 1151 is driven determines the candidate block agreed upon by the node terminal 100 in which the congress node functional unit 1152 is driven, and the multiplex signal representing the consensus on the candidate block is determined. A message requesting partial signature processing of the signature area is delivered to the committee member node (S117).

그리고, 의장 노드 기능부(1151)가 구동된 노드 단말(100)은 위원회 합의에 따라 다중 서명 처리가 완료된 후보 블록을 검증하여 배포 블록으로 결정하며(S119), 유효성 검증 데이터 생성하여 배포 블록과 결합하여 신규 블록을 생성하고(S121), 결합된 신규 블록을 비-랜덤 합의체 블록 체인 네트워크(200)의 트랜잭션 풀에 등록하고, 기 구축된 비-랜덤 합의체 블록 체인 네트워크(200)를 통해 신규 블록을 전파한다(S123).Then, the node terminal 100 in which the chairman node function unit 1151 is driven verifies the candidate block for which multi-signature processing has been completed according to the committee agreement and determines it as a distribution block (S119), generates validation data, and combines it with the distribution block. creates a new block (S121), registers the combined new block in the transaction pool of the non-random consensus blockchain network (200), and creates a new block through the previously established non-random consensus blockchain network (200). Spread it (S123).

도 6 내지 도 9는 본 발명의 실시 예에 따른 합의체 증명 모듈 노드 장치에 의해 처리되는 단계별 데이터를 예시한 도면이다.Figures 6 to 9 are diagrams illustrating step-by-step data processed by the consensus proof module node device according to an embodiment of the present invention.

도 6은 현재 블록의 구성을 위한 위임 요청 단계에서 의장 노드로 전달되는 위임 정보를 예시한 것으로, 위임 정보에는 현재 블록 높이에 대응하는 난스 값과, 다중서명을 위해 각 의회 노드가 사용하고자 하는 Qi 값 정보와, 거래 데이터와, 다음 합의체 의회 후보 정보 및 다음 블록 높이의 난스 값이 포함될 수 있다.Figure 6 illustrates the delegation information delivered to the chairman node at the delegation request stage for composing the current block. The delegation information includes a nonce value corresponding to the current block height and the Qi that each council node wishes to use for multi-signature. Value information, transaction data, next consensus council candidate information, and nonce value of the next block height may be included.

그리고, 도 7은 준비 단계에서 의장 노드에서 위원회 노드로 전달되는 후보 블록 정보를 예시한 것으로, 후보 블록 정보는 머클 루트 등을 포함하는 헤더 정보, 후보 블록 거래 데이터, 다음 합의체의 의회 지정 정보, 다중서명 요청 데이터(Qi를 통합한 Q 데이터, 공개 키 Pk) 및 검증 데이터를 포함할 수 있다. 검증 데이터는 거래 데이터를 제안한 서버 정보를 식별할 수 있는 비트맵 정보 등이 예시될 수 있으며, 이는 의장 노드 자신이 제안하는 케이스 등을 사전에 방지할 수 있게 한다.And, Figure 7 illustrates the candidate block information transmitted from the chairman node to the committee node in the preparation stage. The candidate block information includes header information including the Merkle root, candidate block transaction data, council designation information of the next consensus body, and multiple It may include signature request data (Q data incorporating Qi, public key Pk) and verification data. Verification data may be, for example, bitmap information that can identify server information that proposed transaction data, which can prevent cases such as those proposed by the chairman node itself in advance.

또한, 도 8은 위원회 검증이 처리되는 프로세스에서 위원회 노드로부터 의장 노드로 전파되는 부분 서명 데이터를 예시한 것으로, 의장 노드는 부분 서명 데이터 Si를 통합하여 서명 완료 데이터 S를 산출할 수 있다..In addition, Figure 8 illustrates partial signature data propagated from the committee node to the chairman node in the process of committee verification, and the chairman node can calculate the signature completed data S by integrating the partial signature data Si.

한편, 도 9는 본 발명의 실시 예에 따라 생성되어 전파되는 신규 블록의 구성을 도시한 것으로, 신규 블록은 헤더 정보와, 거래 블록 정보 및 유효성 검증 데이터를 포함할 수 있다. 유효성 검증 데이터는 앞서 설명한 바와 같이, 다음 합의체 지정 정보와, 완료된 다중서명 정보 및 합의 과정 및 참여 자격을 증명할 수 있는 다양한 정보들이 포함될 수 있다. 또한, 헤더 정보에도 블록 데이터 자체의 유효성 검증을 위한 머클루트(MerkleRoot) 값 등이 포함될 수 있다.Meanwhile, Figure 9 shows the configuration of a new block generated and propagated according to an embodiment of the present invention. The new block may include header information, transaction block information, and validation data. As described above, validation data may include information on designating the next consensus body, completed multi-signature information, and various information that can prove the consensus process and participation qualifications. Additionally, header information may also include MerkleRoot values to verify the validity of the block data itself.

이에 따라, 유효성 검증 처리부(113)는 먼저 다중서명 정보를 확인하여 합의 과정을 1차 검증하고, 이후 헤더의 머클루트 값이 정상인지 확인하여 2차 검증할 수 있으며, 거래 블록 정보를 이용하여 다신 산출한 머클루트 값과 비교하여 3차 검증함으로써, 안전한 거래 블록의 처리를 가능하게 한다.Accordingly, the validation processing unit 113 can first verify the consensus process by first checking the multi-signature information, and then perform secondary verification by checking whether the Merkle root value of the header is normal, and then verify again using the transaction block information. By performing third verification by comparing with the calculated Merkle root value, safe transaction block processing is possible.

도 10은 본 발명의 다른 실시 예에 따른 노드 단말 장치의 동작 방법을 설명하기 위한 흐름도이다.Figure 10 is a flowchart for explaining a method of operating a node terminal device according to another embodiment of the present invention.

도 10을 참조하면, 본 발명의 다른 실시 예에 따른 노드 단말(100)은 먼저 다음 뉴럴 합의체의 의회 및 위원회 노드 개수를 식별한다(S201).Referring to FIG. 10, the node terminal 100 according to another embodiment of the present invention first identifies the number of council and committee nodes of the next neural consensus (S201).

그리고, 노드 단말(100)은 비잔틴 감내 최소 허용 노드 수에 따라 사전 설정된 합의체 정족수 미달 여부를 판단한다.In addition, the node terminal 100 determines whether the preset consensus quorum is not met according to the minimum allowable number of nodes for Byzantine tolerance.

예를 들어, 합의체 정족수는 참여 노드의 수 N에 대응하여, 노드 선택 확률 P에 의해 선택될 수 있는 최대 비잔틴 수(악의적 노드의 최대 허용 개수)에 의해 결정될 수 있으며, 의회 노드는 최소 3f+1(f는 자연수)개, 위원회 노드는 최소 2f+1개 이상이어야 합의체 정족수를 만족시킬 수 있다.For example, the consensus quorum can be determined by the maximum Byzantine number (maximum allowed number of malicious nodes) that can be selected by node selection probability P, corresponding to the number of participating nodes N, and the congress nodes have at least 3f+1 (f is a natural number), and there must be at least 2f+1 committee nodes to satisfy the consensus quorum.

만약 상기 합의체 노드 개수가 상기 비잔틴 감내 최소 허용 노드 수에 따라 사전 설정된 뉴럴 합의체 의회 및 위원회 정족수에 미달하는 경우 노드 단말(100)은, 상기 다음 블록의 유효성 검증 데이터는 상기 PoW(Proof of Work) 또는 Pos(Proof of stake) 방식으로 형성시키는 선택적 예외 처리를 수행한다(S205).If the number of consensus nodes is less than the quorum of the neural consensus assembly and committee preset according to the minimum allowable number of Byzantine tolerance nodes, the node terminal 100 may use the PoW (Proof of Work) or Selective exception processing is performed using Pos (Proof of stake) method (S205).

반면, 상기 합의체 노드 개수가 상기 비잔틴 감내 최소 허용 노드 수에 따라 사전 설정된 뉴럴 합의체 의회 및 위원회 정족수 이상인 경우, 상기 비-랜덤 합의체 증명 기반 블록체인 네트워크의 PoW(Proof of Work) 또는 Pos(Proof of stake) 프로세스는 제한시키고, 전술한 도 5의 프로세스를 이용하여 뉴럴 합의체를 구성하고, 유효성 검증 데이터를 구성하여 신규 블록을 생성 및 전파할 수 있다(S203).On the other hand, if the number of consensus nodes is more than the quorum of the neural consensus assembly and committee preset according to the minimum allowable number of Byzantine tolerance nodes, Proof of Work (PoW) or Proof of stake (Pos) of the non-random consensus proof-based blockchain network ) The process can be limited, a neural consensus can be formed using the process of FIG. 5 described above, and validation data can be configured to create and propagate a new block (S203).

상술한 본 발명의 일실시예에 따른 방법들은 컴퓨터에서 실행되기 위한 프로그램으로 제작될 수 있다. 또한, 상기 프로그램은 컴퓨터가 읽을 수 있는 기록 매체에 저장될 수 있으며, 컴퓨터가 읽을 수 있는 기록 매체의 예로는 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 (16)

비-랜덤 합의체 증명 기반 블록 체인 네트워크에 접속되는 노드 장치의 동작 방법에 있어서,
상기 블록 체인 네트워크를 통해 전파된 신규 블록 데이터를 획득하는 단계;
상기 신규 블록 데이터로부터 제1 유효성 검증 데이터를 추출하는 단계;
상기 제1 유효성 검증 데이터의 검증 처리에 따라, 랜덤 합의체 증명 프로세스 기반으로 생성된 다음 블록의 뉴럴 합의체 지정 정보를 획득하는 단계;
상기 다음 블록의 뉴럴 합의체 지정 정보에 기초하여, 합의체 노드 기능부를 선택적으로 구동시켜, 다음 블록의 제2 유효성 검증 데이터를 생성하는 단계; 및
상기 제2 유효성 검증 데이터를 포함한 상기 다음 블록을 상기 블록 체인 네트워크를 통해 전파시키는 단계를 포함하고,
상기 제1 유효성 검증 데이터는 상기 다음 블록의 뉴럴 합의체 지정 정보를 포함하고,
상기 제2 유효성 검증 데이터를 생성하는 단계는,
상기 노드 장치가 상기 다음 블록에 대응되는 뉴럴 합의체 증명 클러스터를 구성하는 노드로 선정되었는지 판단하는 단계;
상기 구성하는 노드로 선정된 경우, 상기 다음 블록의 뉴럴 합의체 지정 정보에 기초하여 상기 노드 장치가 상기 뉴럴 합의체 증명 클러스터의 의장 노드인지 확인하는 단계;
상기 노드 장치가 상기 의장 노드이면, 위원회 노드의 합의에 따라 다중 서명 처리가 완료된 후보 블록을 검증하여 배포 블록을 결정하는 단계; 및
상기 합의체 노드 기능부에 의해 상기 제2 유효성 검증 데이터를 생성하는 단계를 포함하고,
상기 블록 체인 네트워크를 통해 전파시키는 단계는,
상기 제2 유효성 검증 데이터와 상기 배포 블록을 결합하여 상기 다음 블록을 생성하는 단계; 및
상기 다음 블록을 상기 블록 체인 네트워크의 포맷으로 변환 처리하여 상기 블록 체인 네트워크를 통해 전파시키는 단계를 포함하는,
노드 장치의 동작 방법.
In a method of operating a node device connected to a non-random consensus proof-based blockchain network,
Obtaining new block data propagated through the blockchain network;
extracting first validation data from the new block data;
Acquiring neural consensus designation information for the next block generated based on a random consensus proof process according to the verification processing of the first validation data;
Based on the neural consensus designation information of the next block, selectively driving the consensus node function to generate second validation data of the next block; and
Propagating the next block containing the second validation data through the blockchain network,
The first validation data includes neural consensus designation information for the next block,
The step of generating the second validation data includes:
determining whether the node device has been selected as a node constituting a neural consensus proof cluster corresponding to the next block;
When selected as the constituting node, confirming whether the node device is a chairman node of the neural consensus verification cluster based on the neural consensus designation information of the next block;
If the node device is the chairman node, determining a distribution block by verifying a candidate block for which multi-signature processing has been completed according to an agreement of committee nodes; and
Generating the second validation data by the consensus node function,
The step of propagating through the blockchain network is,
combining the second validation data and the distribution block to generate the next block; and
Containing the step of converting the next block into the format of the blockchain network and disseminating it through the blockchain network,
How the node device works.
제1항에 있어서,
상기 제1 유효성 검증 데이터는,
상기 랜덤 합의체 증명 프로세스에 대응하는 합의 과정 검증 데이터를 포함하는
노드 장치의 동작 방법.
According to paragraph 1,
The first validation data is,
Containing consensus process verification data corresponding to the random consensus verification process
How the node device works.
제2항에 있어서,
상기 합의 과정 검증 데이터는,
거래 데이터에 대한 합의를 처리하는 의회 노드의 멤버 검증 정보 및 상기 의회 노드의 부분 서명들을 결합하여 형성된 다중 서명 데이터를 포함하는
노드 장치의 동작 방법.
According to paragraph 2,
The consensus process verification data is,
Containing multi-signature data formed by combining member verification information of a congress node that processes consensus on transaction data and partial signatures of the congress node
How the node device works.
제1항에 있어서,
상기 다음 블록의 뉴럴 합의체 지정 정보는, 다음 블록에 대응하는 뉴럴 합의체의 참가 자격을 검증하기 위한 논스(nounce) 정보를 포함하는
노드 장치의 동작 방법.
According to paragraph 1,
The neural consensus designation information for the next block includes nonce information for verifying the participation qualifications of the neural consensus corresponding to the next block.
How the node device works.
제1항에 있어서,
상기 비-랜덤 합의체 증명 기반 블록 체인 네트워크는 PoW(Proof of Work) 또는 Pos(Proof of stake) 방식의 블록 체인 네트워크인
노드 장치의 동작 방법.
According to paragraph 1,
The non-random consensus proof-based blockchain network is a PoW (Proof of Work) or Pos (Proof of stake) type blockchain network.
How the node device works.
제5항에 있어서,
상기 다음 블록의 뉴럴 합의체 지정 정보로부터 식별되는 합의체 노드 개수를 식별하는 단계; 및
상기 합의체 노드 개수가 비잔틴 감내 최소 허용 노드 수에 따라 사전 설정된 뉴럴 합의체 의회 및 위원회 정족수에 미달하는 경우, 상기 제2 유효성 검증 데이터는 상기 PoW(Proof of Work) 또는 Pos(Proof of stake) 방식으로 형성시키는 선택적 예외 처리 단계를 더 포함하는
노드 장치의 동작 방법.
According to clause 5,
Identifying the number of consensus nodes identified from the neural consensus designation information of the next block; and
If the number of consensus nodes is less than the quorum of the neural consensus assembly and committee preset according to the minimum allowable number of Byzantine tolerance nodes, the second validation data is formed using the PoW (Proof of Work) or Pos (Proof of stake) method. which further includes an optional exception handling step that causes
How the node device works.
제6항에 있어서,
상기 합의체 노드 개수가 상기 비잔틴 감내 최소 허용 노드 수에 따라 사전 설정된 뉴럴 합의체 의회 및 위원회 정족수 이상인 경우, 상기 비-랜덤 합의체 증명 기반 블록체인 네트워크의 PoW(Proof of Work) 또는 Pos(Proof of stake) 프로세스는 제한시키는 단계를 더 포함하는
노드 장치의 동작 방법.
According to clause 6,
If the number of consensus nodes is more than the quorum of the neural consensus assembly and committee preset according to the minimum allowable number of Byzantine tolerance nodes, the PoW (Proof of Work) or Pos (Proof of stake) process of the non-random consensus proof-based blockchain network further includes the step of limiting
How the node device works.
삭제delete 비-랜덤 합의체 증명 기반 블록 체인 네트워크에 접속되는 노드 장치에 있어서,
상기 블록 체인 네트워크를 통해 전파된 신규 블록 데이터를 획득하여, 상기 신규 블록 데이터로부터 제1 유효성 검증 데이터를 추출하고, 상기 제1 유효성 검증 데이터의 검증 처리에 따라, 랜덤 합의체 증명 프로세스 기반으로 생성된 다음 블록의 뉴럴 합의체 지정 정보를 획득하는 유효성 검증 처리부;
상기 다음 블록의 뉴럴 합의체 지정 정보에 기초하여 선택적으로 구동되어 다음 블록의 제2 유효성 검증 데이터를 생성하는 합의체 노드 기능부; 및
상기 제2 유효성 검증 데이터를 포함한 상기 다음 블록을 상기 블록 체인 네트워크를 통해 전파시키는 블록 체인 서비스부를 포함하고,
상기 제1 유효성 검증 데이터는 상기 다음 블록의 뉴럴 합의체 지정 정보를 포함하고,
상기 합의체 노드 기능부는,
상기 노드 장치가 상기 다음 블록에 대응되는 뉴럴 합의체 증명 클러스터를 구성하는 노드로 선정되었는지 판단하고, 상기 구성하는 노드로 선정된 경우 상기 다음 블록의 뉴럴 합의체 지정 정보에 기초하여 상기 노드 장치가 상기 뉴럴 합의체 증명 클러스터의 의장 노드인지 확인하고, 상기 노드 장치가 상기 의장 노드이면 위원회 노드의 협의에 따라 다중 서명 처리가 완료된 후보 블록을 검증하여 배포 블록을 결정하고,
상기 블록 체인 서비스부는,
상기 제2 유효성 검증 데이터와 상기 배포 블록을 결합하여 상기 다음 블록을 생성하고, 상기 다음 블록을 상기 블록 체인 네트워크의 포맷으로 변환 처리하여 상기 블록 체인 네트워크를 통해 전파시키는,
노드 장치.
In a node device connected to a non-random consensus proof-based blockchain network,
By acquiring new block data propagated through the blockchain network, first validation data is extracted from the new block data, and according to verification processing of the first validation data, the following is generated based on a random consensus proof process. A validation processing unit that obtains the neural consensus designation information of the block;
a consensus node function unit that is selectively driven based on the neural consensus designation information of the next block to generate second validation data of the next block; and
A block chain service unit that propagates the next block including the second validation data through the block chain network,
The first validation data includes neural consensus designation information for the next block,
The consensus node function unit is,
It is determined whether the node device has been selected as a node constituting the neural consensus proof cluster corresponding to the next block, and if selected as a node constituting the neural consensus body, the node device is selected as the neural consensus body based on the neural consensus designation information of the next block. Check whether the node device is the chairman node of the proof cluster, and if the node device is the chairman node, determine the distribution block by verifying the candidate block for which multi-signature processing has been completed according to the agreement of the committee nodes,
The blockchain service department,
Combining the second validation data and the distribution block to generate the next block, converting the next block into the format of the blockchain network and disseminating it through the blockchain network,
Node device.
제9항에 있어서,
상기 제1 유효성 검증 데이터는,
상기 랜덤 합의체 증명 프로세스에 대응하는 합의 과정 검증 데이터를 포함하는
노드 장치.
According to clause 9,
The first validation data is,
Containing consensus process verification data corresponding to the random consensus verification process
Node device.
제10항에 있어서,
상기 합의 과정 검증 데이터는,
거래 데이터에 대한 합의를 처리하는 의회 노드의 멤버 검증 정보 및 상기 의회 노드의 부분 서명들을 결합하여 형성된 다중 서명 데이터를 포함하는
노드 장치.
According to clause 10,
The consensus process verification data is,
Containing multi-signature data formed by combining member verification information of a congress node that processes consensus on transaction data and partial signatures of the congress node
Node device.
제9항에 있어서,
상기 다음 블록의 뉴럴 합의체 지정 정보는, 다음 블록에 대응하는 뉴럴 합의체의 참가 자격을 검증하기 위한 논스(nounce) 정보를 포함하는
노드 장치.
According to clause 9,
The neural consensus designation information for the next block includes nonce information for verifying the participation qualifications of the neural consensus corresponding to the next block.
Node device.
제9항에 있어서,
상기 비-랜덤 합의체 증명 기반 블록 체인 네트워크는 PoW(Proof of Work) 또는 Pos(Proof of stake) 방식의 블록 체인 네트워크인
노드 장치.
According to clause 9,
The non-random consensus proof-based blockchain network is a PoW (Proof of Work) or Pos (Proof of stake) type blockchain network.
Node device.
제13항에 있어서,
상기 다음 블록의 뉴럴 합의체 지정 정보로부터 식별되는 합의체 노드 개수를 식별하고,
상기 합의체 노드 기능부는, 상기 합의체 노드 개수가 비잔틴 감내 최소 허용 노드 수에 따라 사전 설정된 뉴럴 합의체 의회 및 위원회 정족수에 미달하는 경우, 상기 제2 유효성 검증 데이터는 상기 PoW(Proof of Work) 또는 Pos(Proof of stake) 방식으로 형성시키는 선택적 예외 처리를 수행하는
노드 장치.
According to clause 13,
Identify the number of consensus nodes identified from the neural consensus designation information of the next block,
The consensus node function unit, when the number of consensus nodes is less than the quorum of the neural consensus assembly and committee preset according to the minimum allowable number of nodes for Byzantine tolerance, the second validation data is provided as Proof of Work (PoW) or Proof of Work (PoW). of stake) method to perform selective exception handling.
Node device.
제14항에 있어서,
상기 합의체 노드 기능부는,
상기 합의체 노드 개수가 상기 비잔틴 감내 최소 허용 노드 수에 따라 사전 설정된 뉴럴 합의체 의회 및 위원회 정족수 이상인 경우, 상기 비-랜덤 합의체 증명 기반 블록체인 네트워크의 PoW(Proof of Work) 또는 Pos(Proof of stake) 프로세스는 제한시키는
노드 장치.
According to clause 14,
The consensus node function unit is,
If the number of consensus nodes is more than the quorum of the neural consensus assembly and committee preset according to the minimum allowable number of Byzantine tolerance nodes, the PoW (Proof of Work) or Pos (Proof of stake) process of the non-random consensus proof-based blockchain network is limiting
Node device.
삭제delete
KR1020210055357A 2021-04-29 2021-04-29 A neural consensus node apparatus for using a non-random consensus proof-based blockchain network as a random consensus proof-based blockchain network, and its operation method KR102610530B1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020210055357A KR102610530B1 (en) 2021-04-29 2021-04-29 A neural consensus node apparatus for using a non-random consensus proof-based blockchain network as a random consensus proof-based blockchain network, and its operation method
PCT/KR2021/011842 WO2022231072A2 (en) 2021-04-29 2021-09-02 Neural consensus-based blockchain network system for performing random consensus proof using non-random consensus proof-based blockchain network
US18/059,902 US20230100485A1 (en) 2021-04-29 2022-11-29 Neural consensus-based blockchain network system for performing random consensus proof using non-random consensus proof-based blockchain network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210055357A KR102610530B1 (en) 2021-04-29 2021-04-29 A neural consensus node apparatus for using a non-random consensus proof-based blockchain network as a random consensus proof-based blockchain network, and its operation method

Publications (2)

Publication Number Publication Date
KR20220148396A KR20220148396A (en) 2022-11-07
KR102610530B1 true KR102610530B1 (en) 2023-12-06

Family

ID=84043486

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210055357A KR102610530B1 (en) 2021-04-29 2021-04-29 A neural consensus node apparatus for using a non-random consensus proof-based blockchain network as a random consensus proof-based blockchain network, and its operation method

Country Status (1)

Country Link
KR (1) KR102610530B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200026699A1 (en) * 2018-07-20 2020-01-23 True Blockchain Technology Ltd. Highly Performant Decentralized Public Ledger with Hybrid Consensus

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102406020B1 (en) * 2019-06-18 2022-06-10 한국전자통신연구원 Apparatus and method for processing distributed consensus on decentralized byzantene fault tolerance

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200026699A1 (en) * 2018-07-20 2020-01-23 True Blockchain Technology Ltd. Highly Performant Decentralized Public Ledger with Hybrid Consensus

Also Published As

Publication number Publication date
KR20220148396A (en) 2022-11-07

Similar Documents

Publication Publication Date Title
CN110599173B (en) Block chain consensus node determination method, device, equipment and storage medium
Fan et al. Dredas: Decentralized, reliable and efficient remote outsourced data auditing scheme with blockchain smart contract for industrial IoT
KR102561726B1 (en) Method for selecting consensus node using nonse, method and apparatus for generating blockchain using the same
CN111090892B (en) Block chain consensus method and device based on VRF and threshold signature
Wahab et al. Survey of consensus protocols
JP2020522927A (en) Blockchain for general calculation
CN111294379B (en) Block chain network service platform, authority hosting method thereof and storage medium
CN109842606A (en) Block chain common recognition algorithm and system based on consistency hash algorithm
CN110892674A (en) Transaction generation method and block verification method of block chain
US20200296111A1 (en) Methods of electing leader nodes in a blockchain network using a role-based consensus protocol
CN113626875A (en) Knowledge graph file storage method for block chain fragment enabling
Lee et al. Blockchain-based perfect sharing project platform based on the proof of atomicity consensus algorithm
KR20210046982A (en) Project Management Platform
KR102610530B1 (en) A neural consensus node apparatus for using a non-random consensus proof-based blockchain network as a random consensus proof-based blockchain network, and its operation method
KR102610531B1 (en) A neural consensus proof based block chain network platform system constructed by using a non-random consensus proof-based blockchain network
Huang et al. Consensus of whom? A spectrum of blockchain consensus protocols and new directions
KR20210077136A (en) A Program for operation of blockchain network system
KR102628770B1 (en) A Neural consensus-based blockchain network system that performs random consensus proof using non-random consensus proof-based blockchain network
Mohsenzadeh et al. A novel reputation-based consensus framework (RCF) in distributed ledger technology
US20230100485A1 (en) Neural consensus-based blockchain network system for performing random consensus proof using non-random consensus proof-based blockchain network
KR20240063718A (en) A method and an apparatus for providing mornitoring service of neural consensus-based blockchain network system that performs random consensus proof using non-random consensus proof-based blockchain network
KR20240063717A (en) A method and an apparatus for providing mornitoring service of neural consensus-based blockchain network system that performs random consensus proof using non-random consensus proof-based blockchain network
KR20210066348A (en) A terminal device and a method for consturcting secure block chain based on neural block clusters
KR20240063719A (en) A method and an apparatus for providing mornitoring service of neural consensus-based blockchain network system that performs random consensus proof using non-random consensus proof-based blockchain network
KR20210077176A (en) A sysrem for consturcting secure block chain based on neural block clusters

Legal Events

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