KR20230046644A - Representative and canditate selection method of blockchain network using comtitive bidding and blockchain network - Google Patents

Representative and canditate selection method of blockchain network using comtitive bidding and blockchain network Download PDF

Info

Publication number
KR20230046644A
KR20230046644A KR1020210129856A KR20210129856A KR20230046644A KR 20230046644 A KR20230046644 A KR 20230046644A KR 1020210129856 A KR1020210129856 A KR 1020210129856A KR 20210129856 A KR20210129856 A KR 20210129856A KR 20230046644 A KR20230046644 A KR 20230046644A
Authority
KR
South Korea
Prior art keywords
representative
node
blockchain network
selection
selecting
Prior art date
Application number
KR1020210129856A
Other languages
Korean (ko)
Other versions
KR102553441B1 (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 KR1020210129856A priority Critical patent/KR102553441B1/en
Publication of KR20230046644A publication Critical patent/KR20230046644A/en
Application granted granted Critical
Publication of KR102553441B1 publication Critical patent/KR102553441B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1087Peer-to-peer [P2P] networks using cross-functional networking aspects
    • H04L67/1093Some peer nodes performing special functions
    • 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
    • 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/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • G06Q20/3674Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes involving authentication
    • 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/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • G06Q20/3676Balancing accounts
    • 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
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/08Auctions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/30Decision processes by autonomous network management units using voting and bidding

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Engineering & Computer Science (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Computing Systems (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Marketing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

According to the present invention, a representative and candidate selection method of a blockchain network using competitive bidding comprises the following steps of: initiating of representative and candidate selection performance of a blockchain network; performing bidding with random values in individual nodes configuring the blockchain network; confirming bidding validity including a bidding participation rate; excluding the maximum value and the minimum value among bid values when the bidding is closed; and selecting a node mote suitable for a selection condition as a representative and selecting a node suitable next as a candidate.

Description

경쟁입찰을 활용한 블록체인 네트워크의 대표자 및 후보자 선정 방법 및 블록체인 네트워크{REPRESENTATIVE AND CANDITATE SELECTION METHOD OF BLOCKCHAIN NETWORK USING COMTITIVE BIDDING AND BLOCKCHAIN NETWORK}Blockchain network representative and candidate selection method using competitive bidding {REPRESENTATIVE AND CANDITATE SELECTION METHOD OF BLOCKCHAIN NETWORK USING COMTITIVE BIDDING AND BLOCKCHAIN NETWORK}

본 발명은 경쟁입찰 방식을 활용한 전용망 트랜잭션 고속 합의 기법이 적용된 블록체인 네트워크의 대표자 노드 및 후보자 노드의 선정 방법 및 이를 수행하는 노드들로 이루어진 블록체인 네트워크에 관한 것이다.The present invention relates to a method for selecting a representative node and a candidate node of a blockchain network to which a high-speed consensus technique for private network transactions using a competitive bidding method is applied, and a blockchain network composed of nodes performing the same.

비트코인 등 암호화폐가 세계 경제에 큰 축을 이루면서 블록체인에 관한 관심이 급증하였고, 관련 기술 개발 및 다양한 플랫폼들이 상용화되기에 이르렀다. 이에, 블록체인을 활용한 더 많은 서비스가 발굴되고, 요구사항이 증가하면서 블록체인의 근본적인 문제들이 제기되기 시작했는데 그중에서 가장 중요한 요소가 바로 성능(속도)이다. 현재 공식적인 비트코인의 속도는 초당 7개 트랜잭션을 처리하는 수준인 7TPS(Transaction Per Second), 이더리움은 약 20TPS 수준이며, 상대적으로 빠른 EOS도 3,000TPS 수준을 파악되면서 일상생활에서 요구되는 수만 TPS 요구사항을 맞추기 어려운 상황이다. 따라서 블록체인의 성패를 결정짓는 가장 큰 요인 중 하나가 바로 속도 문제이다.As cryptocurrencies such as Bitcoin play a major role in the global economy, interest in blockchain has soared, and related technologies have been developed and various platforms have been commercialized. Accordingly, as more services using blockchain were discovered and requirements increased, fundamental problems of blockchain began to be raised, and the most important factor among them was performance (speed). Currently, the official speed of Bitcoin is 7TPS (Transaction Per Second), which is the level of processing 7 transactions per second, and Ethereum is about 20TPS. It's a difficult situation to get right. Therefore, one of the biggest factors determining the success or failure of blockchain is speed.

블록체인의 속도를 향상시킬 수 있는 방법은 여러 가지가 있으며, 가장 일반적인 방식이 블록생성 주체를 빠르고 공정하게 결정하는 데 있다. 다르게 표현하면 Primary Node(대표자)라고 불리는 블록 생성자를 어떻게 선정하느냐에 따라 블록생성의 속도와 직결되기 때문에 Primary Node를 선정하는 방법, 또는 블록체인 합의 방법에 대해 다양한 아이디어와 기술들이 개발되고 있다.There are many ways to improve the speed of the block chain, and the most common method is to quickly and fairly determine who creates the block. In other words, since the speed of block generation is directly related to how the block creator called the Primary Node (representative) is selected, various ideas and technologies are being developed for the method of selecting the Primary Node or the blockchain consensus method.

현재까지 제시된 몇 가지 방안 中 대표적인 방법과 관련 기술을 소개하면 다음과 같다.Among the several methods proposed so far, representative methods and related technologies are introduced as follows.

첫째, ‘블록체인 합의 방법 및 디바이스’에서는 서비스마다 특화된 합의 기법을 다양화시키고 합의를 무작위로 처리하는 방안을 제시하였으나, 신규 합의 기법을 제안하기보다는 PoW(Proof of Work), PoS(Proof of Stake) 등 기존 합의 기법을 상황에 따라 선택하는 방안을 제시하였다.First, in 'Blockchain Consensus Method and Device', a method for diversifying consensus techniques specialized for each service and randomly processing consensus was proposed, but rather than proposing a new consensus technique, PoW (Proof of Work) and PoS (Proof of Stake) ) and other existing consensus methods were suggested depending on the situation.

둘째, ‘계층화되고 확률적인 대표자 선출에 의한 노드증명방식의 합의 과정과 대가 배분 과정을 가지는 블록체인 생성 방법’은 구체적인 로직보다는 무작위적인 확률에 의존한 랜덤 선택 방안을 제시하고 있다.Second, the ‘method of creating a block chain with a node proof consensus process and price distribution process by hierarchical and stochastic representative election’ suggests a random selection method based on random probability rather than specific logic.

셋째, ‘난스를 이용한 합의 노드 선택 방법 및 그것을 이용한 블록체인 생성 방법 및 장치’는 랜덤값(난스)을 기준으로 블록 생성자 후보군을 구성하고 투표로 최종 생성자를 결정하는 방식으로 합의 기법의 무작위성 확보 방안을 제안하고 있다.Third, 'Agreement node selection method using nonce and block chain generation method and device using it' is a method to secure randomness of consensus technique by constructing a block generator candidate group based on a random value (nonce) and determining the final generator by voting. is proposing

넷째, ‘블록체인 기반의 합의 알고리즘에서 대표자 선정방법’에서는 단순히 무작위로 대표자를 선정하는 것이 바람직한 합의 방식이라고 제안하고 있다.Fourth, 'Method for Selecting a Representative in Blockchain-based Consensus Algorithm' suggests that simply selecting a representative at random is a desirable consensus method.

그 외에 다수의 문헌에서 대표자를 선정하는 방안을 제시하고 있으나 기존의 에너지 소모 또는 지분 경쟁방식이나 단순 무작위적 방식을 제안한다는 점에서 유사성이 있다.In addition, many literatures suggest a method for selecting a representative, but there is a similarity in that they suggest the existing energy consumption or share competition method or a simple random method.

또한, 대표자 선정 외에도 프로세스를 단순화하거나 효율적으로 처리함으로써 속도를 높일 수도 있는데, 이에 대한 연구결과는 초기 단계로 많이 나와 있지는 않다.In addition, in addition to the selection of representatives, the speed can be increased by simplifying or efficiently processing the process, but there are not many research results on this in the early stages.

상기와 같이 종래의 기술이 본 발명에서 해결하고자 하는 문제점, 즉 블록생성 주체인 대표자 선정 방안은 다음과 같다.As described above, the problem to be solved by the present invention in the prior art, that is, the method for selecting a representative who is the subject of block generation, is as follows.

대표적인 대표자 합의 방식으로는 PBFT(Byzantine Fault Tolerance)가 있는데, 정책적으로 선정된 노드 그룹에서 대표자를 선출하고 대표자의 오작동시 다음 대표자 선정 방식을 포함하고 있다. 이를 확장한 SBFT(Simplified BFT)는 특정 역할을 하는 노드(Collector)를 별도로 두고 Threshold Signature기법을 적용하여 PBFT의 네트워크 오버헤드 감소시키고자 했다. 이들 BFT 계열 방식은 대표자가 초기에 이미 선정되어 있거나 선정 과정을 운영기관 또는 협의체에 위임하는 방식으로 운영하므로 대표자가 사전에 정의된, 즉 예측이 가능한 상황이다. Loop Fault Tolerance 기법 또한 Spinning이라는 일종의 Round-Robin 방식으로 매 블록마다 리더를 교체하므로 대표자 선정의 공정성은 확보했다고 볼 수 있으나, 다음 라운드 대표자를 예측할 수 있는 단점이 있다. 이는 가중치를 부가한 Round-Robin 방식의 Tendermint도 동일하다고 볼 수 있다.As a representative representative consensus method, there is PBFT (Byzantine Fault Tolerance), which elects a representative from a node group selected by policy and includes a method for selecting the next representative in the event of a malfunction of the representative. SBFT (Simplified BFT), which is an extension of this, tried to reduce the network overhead of PBFT by applying the Threshold Signature technique with a separate node (Collector) that plays a specific role. These BFT-type methods operate in such a way that a representative is already selected at the beginning or the selection process is delegated to an operating institution or consultative body, so the representative is defined in advance, that is, a predictable situation. The Loop Fault Tolerance technique is also a kind of Round-Robin method called Spinning. Since the leader is replaced every block, it can be said that the fairness of the representative selection is secured, but it has the disadvantage of predicting the representative of the next round. This can be seen as the same as the Tendermint of the Round-Robin method with added weights.

게임이론을 기반으로 설계된 Symsensus 또한 블록생성 후보군을 그룹으로 나누고 그룹 내 노드 역할을 다단계로 나누어 블록생성 및 합의 도출 과정을 설계하였으나, 블록 생성자 선정에 있어 블록체인을 운영하는 기관의 권한이 독점적이어서 내부적인 취약점이 존재하는 단점이 있다.Symsensus, which was designed based on game theory, also designed the block generation and consensus-building process by dividing the block generation candidates into groups and dividing the roles of nodes within the group into multiple stages. The downside is that vulnerabilities exist.

반면, 블록 생성자인 대표자를 선정하지 않는 Proof 기반 블록체인 알고리즘은 블록 생성을 위한 경쟁적 행위와 Fork라는 비정상적인 상황이 발생하므로 고속 합의를 추구하는 블록체인 방식과는 맞지 않는다.On the other hand, Proof-based blockchain algorithms that do not select a representative who is a block generator do not match the blockchain method that pursues high-speed consensus because competitive behavior for block creation and abnormal situations such as fork occur.

상술한 종래 기술에 따라 제시한 기법에는 다음과 같은 문제점들이 있다.The technique proposed according to the above prior art has the following problems.

첫째, 다수의 기술이 에너지 경쟁적 소모(PoW 등) 방식을 고수하거나 특정 소수에 권한이 집중되는 지분 증명 방식(PoS 등) 등에 의존하고 있어 에너지 문제, 환경 문제 또는 공정성이나 차기 대표자 예측에 따른 보안성 등의 문제가 존재한다.First, many technologies adhere to competitive energy consumption (PoW, etc.) or rely on proof-of-stake methods (PoS, etc.) in which authority is concentrated in a specific minority, so energy problems, environmental problems, or security based on fairness or prediction of the next representative etc., there are problems.

둘째, 공정성 확보 차원에서 무작위적인 대표자 선정 방식을 제안하는 경우도 있는데, 단순히 순번을 돌리는 Round-Robin 기법이나 무작위 선정에 따른 랜덤 선택 방식이 그것이다. 다만, Round-Robin 방식은 차기 대표자가 예측 가능하여 보안적 취약성이 내재하고, 무작위적 선택은 과정상 공정성 확보 문제나 이전 대표자의 선택 권한 등도 문제가 된다.Second, in order to ensure fairness, there are cases where a random representative selection method is proposed, such as the Round-Robin technique that simply rotates the turn or the random selection method based on random selection. However, the round-robin method has inherent security vulnerabilities because the next representative is predictable, and the random selection poses problems such as securing fairness in the process or the right to select the previous representative.

셋째, 공정한 방식으로 대표자를 선정한다고 하더라도 선정 과정에서 공유되는 정보 및 절차에 대한 투명하고 구체적인 프로세스가 제시되어야 한다. 특히, 공유 정보로부터 유리한 정보를 도출하거나 타(他) 노드들과의 경쟁적 우위를 가질 수 있어서는 안 되는데, 이를 구체적으로 해결하는 방안이 제시된 사례가 없다. Third, even if a representative is selected in a fair manner, a transparent and specific process for sharing information and procedures in the selection process must be presented. In particular, it should not be possible to derive advantageous information from shared information or to have a competitive advantage with other nodes, but there is no case in which a concrete solution to this problem has been proposed.

넷째, 대표자 선정 기법 대부분은 매번 동일한 프로세스를 반복적으로 수행함에 따른 비효율성을 내포하고 있다. Fourth, most of the representative selection techniques contain inefficiency due to the repetition of the same process every time.

이 외에도 대표자 선정 과정을 효율적으로 처리하기 위한 프로세스를 제시한 경우가 드물다.In addition to this, it is rare to present a process for efficiently handling the process of selecting a representative.

대한민국 등록공보 10-1949712호Republic of Korea Registration No. 10-1949712

본 발명은 블록체인 네트워크상에서 블록 생성을 주도하는 대표자를 랜덤으로 선정하는 과정에 효율성과 보안성을 동시에 확보할 수 있는 블록체인 네트워크의 대표자 및 후보자 선정 방법 및 이를 수행하는 블록체인 네트워크를 제공하고자 한다.The present invention aims to provide a method for selecting a representative and candidate of a blockchain network that can secure efficiency and security at the same time in the process of randomly selecting a representative who leads block generation on a blockchain network, and a blockchain network that performs the same. .

본 발명의 일 측면에 따른 경쟁입찰을 활용한 블록체인 네트워크의 대표자 및 후보자 선정 방법은, 블록체인 네트워크의 대표자 및 후보자 선정 수행을 개시하는 단계; 블록체인 네트워크를 구성하는 각 노드들에서 랜덤값으로 입찰을 수행하는 단계; 입찰 참여율을 포함한 입찰 유효성을 확인하는 단계; 입찰이 마감되면 투찰값들중 최대값 및 최소값을 제외시키는 단계; 및 선정 조건에 가장 부합하는 노드를 대표자로 선정하고, 다음으로 부합하는 노드를 후보자로 선정하는 단계를 포함할 수 있다.A method for selecting a representative and a candidate for a blockchain network using competitive bidding according to an aspect of the present invention includes the steps of initiating selection of a representative and candidate for a blockchain network; Bidding with random values in each node constituting the blockchain network; Checking the validity of the bid including the bid participation rate; Excluding the maximum value and the minimum value among bid values when the bidding is closed; and selecting a node that most satisfies the selection condition as a representative, and then selecting a node that satisfies the selection condition as a candidate.

여기서, 상기 대표자 및 후보자 선정 수행을 개시하는 단계에서는, 블록체인 네트워크의 의사결정을 위해 하나 또는 소정 개수의 라운드를 수행할 대표자 및 후보자 선정 수행을 개시할 수 있다.Here, in the step of initiating the selection of representatives and candidates, selection of representatives and candidates to perform one or a predetermined number of rounds for decision-making of the blockchain network may be initiated.

여기서, 상기 선정 조건은, 제외되지 않은 투찰값들의 평균값에 가장 근사일 수 있다.Here, the selection condition may be closest to the average value of non-excluded bid values.

여기서, 상기 선정 조건에 따른 대표자 및 후보자를 선정하는 단계에서는, 상기 평균값에 가장 근사한 노드가 둘 이상인 경우, 이전의 대표자 노드 이력을 검색하여 가장 오래된 대표 노드 이력을 가진 노드를 대표 노드로 선정할 수 있다.Here, in the step of selecting the representative and the candidate according to the selection condition, if there are two or more nodes closest to the average value, the previous representative node history may be searched and the node having the oldest representative node history may be selected as the representative node. there is.

여기서, 상기 후보자는, 상기 대표자가 담당 라운드를 진행할 수 없는 상황에서, 다음 라운드에 대한 상기 블록체인 네트워크의 대표자 및 후보자 선정 방법을 수행할 수 있다.Here, the candidate may perform the method of selecting the representative and candidate of the blockchain network for the next round in a situation where the representative cannot proceed with the round in charge.

여기서, 상기 대표자 및 후보자 선정 수행을 개시하는 단계에서는, 상기 입찰 및 선정 결과 전송을 위한 경로를 정의하는 비순환 트리 토폴로지를 구성할 수 있다.Here, in the step of initiating the selection of the representative and the candidate, an acyclic tree topology defining a path for transmitting the bidding and selection results may be configured.

여기서, 상기 비순환 트리 토폴로지의 루트 노드는, 이전에 선정된 대표자 또는 후보자의 노드일 수 있다.Here, the root node of the acyclic tree topology may be a previously selected representative or candidate node.

본 발명의 다른 측면에 따른 블록체인 네트워크는, 전용망을 통해 상호간에 데이터 통신을 수행하는 복수개의 노드들로 이루어지며, 대표자 노드 및 후보자 노드를 포함하는 블록체인 네트워크로서, 상기 대표자 노드는, 후속 라운드를 진행할 다른 대표자 노드를 선정하기 위해, 랜덤값 입찰, 최대값 및 최소값 제외 방식의 대표자 선정 경매 입찰을 수행할 수 있다.A blockchain network according to another aspect of the present invention is composed of a plurality of nodes that perform data communication with each other through a dedicated network, and includes a representative node and a candidate node, wherein the representative node performs subsequent rounds. In order to select another representative node to proceed with, a representative selection auction bidding may be conducted in a method of excluding random value bidding and maximum and minimum values.

여기서, 상기 후보자 노드는, 상기 대표자가 담당 라운드를 진행할 수 없는 상황에서, 다음 라운드에 대한 상기 대표자 선정 경매 입찰을 수행할 수 있다.Here, the candidate node may perform the representative selection auction bidding for the next round in a situation where the representative cannot proceed with the round in charge.

여기서, 상기 대표자 노드는, 담당하는 마지막 라운드에서 다음 라운드에 대한 상기 대표자 선정 경매 입찰을 수행하되, 선정 조건에 가장 부합하는 노드를 대표자로 선정하고, 다음으로 부합하는 노드를 후보자로 선정할 수 있다.Here, the representative node performs the representative selection auction bidding for the next round in the last round in charge, selects the node that most satisfies the selection conditions as the representative, and selects the next matching node as the candidate. .

여기서, 상기 대표자 노드는, 상기 복수개의 노드들로부터 랜덤값인 투찰갑들을 전송받는 단계; 입찰 참여율을 포함한 입찰 유효성을 확인하는 단계; 입찰이 마감되면 투찰값들중 최대값 및 최소값을 제외시키는 단계; 및 선정 조건에 가장 부합하는 노드를 대표자로 선정하고, 다음으로 부합하는 노드를 후보자로 선정하는 단계를 포함할 수 있다.Here, the representative node comprises: receiving random value wallets from the plurality of nodes; Checking the validity of the bid including the bid participation rate; Excluding the maximum value and the minimum value among bid values when the bidding is closed; and selecting a node that most satisfies the selection condition as a representative, and then selecting a node that satisfies the selection condition as a candidate.

여기서, 상기 대표자 노드는, 상기 대표자 선정 경매 입찰 운영을 위한 정보 전달 경로를 정의하는 상기 복수개의 노드들간 비순환식 트리 구조의 토폴로지를 구성할 수 있다.Here, the representative node may configure a topology of an acyclic tree structure among the plurality of nodes defining an information transfer path for the representative selection auction bidding operation.

여기서, 상기 복수개의 노드들 각각은, 자신이 생성한 정보나 상기 토폴로지상 소스측 이전 노드에서 전달받은 정보를, 자신이 생성한 일회용 비밀키를 이용하여 암호화하여 상기 토폴로지상 싱크측 다음 노드에 전달할 수 있다.Here, each of the plurality of nodes encrypts information generated by itself or information received from a previous node on the source side on the topology using a one-time private key generated by the node, and forwards the information to the next node on the sink side on the topology. can

여기서, 상기 대표자 노드는, 상기 대표자 선정 경매 입찰의 선정 결과를 시간 동기화를 위한 정보와 함께 상기 다수개의 노드들로 전송할 수 있다.Here, the representative node may transmit the selection result of the representative selection auction bidding to the plurality of nodes together with information for time synchronization.

여기서, 상기 시간 동기화를 위한 정보를 전송받은 상기 다수개의 노드들은, 다음 라운드의 시작점 및 종료점을 상기 시간 동기화를 위한 정보에 따라 설정할 수 있다.Here, the plurality of nodes that have received the information for time synchronization may set the start point and end point of the next round according to the information for time synchronization.

여기서, 상기 다수개의 노드들은, 각 라운드에서 해당 라운드의 블록을 생성하고 검증을 요청하며, 이전 라운드에서 생성된 블록을 검증하여 체인을 형성하며, 다음 라운드를 위한 대표자 노드 및 후보자 노드를 선정할 수 있다.Here, the plurality of nodes may create a block of the corresponding round in each round, request verification, verify the block generated in the previous round to form a chain, and select representative nodes and candidate nodes for the next round. there is.

상술한 구성의 본 발명의 사상에 따른 블록체인 네트워크의 대표자 및 후보자 선정 방법 및/또는 블록체인 네트워크를 실시하면, 블록체인 네트워크상에서 블록 생성을 주도하는 대표자를 랜덤으로 선정하는 과정에 효율성과 보안성을 동시에 확보할 수 있는 이점이 있다.Efficiency and security in the process of randomly selecting a representative who leads block generation on the blockchain network when the blockchain network representative and candidate selection method and/or the blockchain network according to the spirit of the present invention having the above configuration are implemented. has the advantage of being able to secure both at the same time.

본 발명의 블록체인 네트워크의 대표자 및 후보자 선정 방법 및/또는 블록체인 네트워크는, 비정상적인 상황에서도 즉각적인 대응이 가능해야 하며, 간결한 방식으로 운영되어야 속도 향상 효과도 얻을 수 있는 이점이 있다.The blockchain network representative and candidate selection method and / or blockchain network of the present invention should be able to respond immediately even in abnormal situations, and should be operated in a concise manner to obtain a speed-up effect.

본 발명의 블록체인 네트워크의 대표자 및 후보자 선정 방법 및/또는 블록체인 네트워크는, 블록체인이 다양한 서비스로 확대되고 있는 상황에서 에너지 소모를 최소화하면서 오버헤드를 줄이고 보안성을 확보하기 위해서는 블록을 생성하는 방법, 즉 블록 생성 및 합의 방식을 개선하는 이점이 있다.The method for selecting representatives and candidates of the blockchain network and/or the blockchain network of the present invention, in order to reduce overhead and secure security while minimizing energy consumption in a situation where the blockchain is expanding to various services, generates blocks It has the advantage of improving the method, i.e. block generation and consensus method.

도 1은 본 발명에서 제안하는 경쟁입찰 방식의 대표자 선정 방법을 수행하는 블록체인 네트워크를 도식화한 개념도.
도 2는 본 발명의 사상에 따른 블록체인 네트워크의 대표자 및 후보자 선정 방법의 일 실시예를 도시한 흐름도.
도 3은 블록체인 노드간 네트워크를 구성함에 있어 토폴로지를 형성하는 방법을 나타내는 개념도.
도 4는 블록체인 노드 토폴로지가 형성된 상황에서 대표자 및 후보자를 선정하기 위한 랜덤값 전송 절차를 도시하는 개념도.
도 5는 도 1의 블록체인 네트워크를 구성하는 각 노드들이 될 수 있는 블록체인 노드 장치의 일 예를 도시한 블록도.
도 6은 각 라운드마다 대표자 선정과 블록생성, 검증 및 체인을 형성하는 절차를 보여주는 개념도.
1 is a conceptual diagram illustrating a blockchain network performing a representative selection method of a competitive bidding method proposed in the present invention.
2 is a flowchart illustrating an embodiment of a method for selecting a representative and a candidate of a blockchain network according to the spirit of the present invention.
3 is a conceptual diagram illustrating a method of forming a topology in configuring a network between blockchain nodes.
4 is a conceptual diagram illustrating a random value transmission procedure for selecting a representative and a candidate in a situation where a blockchain node topology is formed.
5 is a block diagram showing an example of a blockchain node device that can be each node constituting the blockchain network of FIG. 1;
6 is a conceptual diagram showing procedures for selecting a representative, generating a block, verifying, and forming a chain for each round.

본 발명을 설명함에 있어서 제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 용어들에 의해 한정되지 않을 수 있다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다. In describing the present invention, terms such as first and second may be used to describe various components, but the components may not be limited by the terms. Terms are only for the purpose of distinguishing one element from another. For example, a first element may be termed a second element, and similarly, a second element may be termed a first element, without departing from the scope of the present invention.

어떤 구성요소가 다른 구성요소에 연결되어 있다거나 접속되어 있다고 언급되는 경우는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해될 수 있다.When a component is referred to as being connected or connected to another component, it may be directly connected or connected to the other component, but it may be understood that another component may exist in the middle. .

본 명세서에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. Terms used in this specification are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions may include plural expressions unless the context clearly dictates otherwise.

본 명세서에서, 포함하다 또는 구비하다 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것으로서, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해될 수 있다. In this specification, the terms include or include are intended to designate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features or numbers, It can be understood that the presence or addition of steps, operations, components, parts, or combinations thereof is not precluded.

또한, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.In addition, shapes and sizes of elements in the drawings may be exaggerated for clearer description.

블록체인 기술이 상용화되고 다양한 서비스에 적용되기 위해서는 다음과 같은 요구조건을 만족시킬 수 있어야 한다.In order for blockchain technology to be commercialized and applied to various services, the following requirements must be satisfied.

1) 다음 블록을 생성할 대표자 선정에 부수적인 노력(에너지 소모 등)이 최소화되어야 한다.1) Ancillary effort (energy consumption, etc.) in selecting a representative to create the next block should be minimized.

2) 다음 블록을 생성할 대표자는 완전 무작위적 선택으로 예측이 불가능해야 한다.2) The representative who will create the next block must be completely random and unpredictable.

3) 대표자 선정시 정보 공유에 따른 네트워크 오버헤드를 최소화시켜야 한다.3) When selecting a representative, network overhead due to information sharing must be minimized.

4) 대표자 선정시 공유되는 정보를 상대측은 미리 알 수 없어야 하고(Hiding 특성), 송신자는 송신 後 그 정보를 수정할 수 없어야 한다(Binding 특성).4) When selecting a representative, the other party must not know the shared information in advance (Hiding feature), and the sender must not be able to modify the information after transmission (Binding feature).

5) 대표자 선정을 포함한 블록생성 프로세스는 간결하고 효율적이어야 한다.5) The block generation process, including the selection of representatives, must be concise and efficient.

6) 현재의 대표자가 악의적이거나 비정상적인 경우 즉각적인 다음 대표자 선정이 필요하다.6) If the current representative is malicious or abnormal, it is necessary to immediately select the next representative.

7) 비동기식 네트워크에서도 동작이 가능하도록 동기화 처리 방안이 필요하다.7) A synchronization process method is needed to enable operation in an asynchronous network.

본 발명에서는 상술한 요구조건들을 달성하기 위해, 전용망 환경 블록체인 네트워크를 위해 입찰 합의 방식의 랜덤성 대표자 선정 방법을 제시하며, 대표자 선정 입찰 과정을 블록 생성, 검증, 체인 형성의 단계별 프로세스와 병렬적으로 처리하는 방안을 제시한다.In the present invention, in order to achieve the above-mentioned requirements, a method for selecting representatives of randomness based on a bidding agreement method is presented for a blockchain network in a dedicated network environment, and the representative selection bidding process is performed in parallel with the step-by-step process of block generation, verification, and chain formation. Suggests how to deal with

도 1은 본 발명에서 제안하는 경쟁입찰 방식의 블록 생성자(즉, 대표자) 선정 방법을 수행하는 블록체인 네트워크를 도식화한 것이다. 블록체인을 형성하고 있는 노드들(도 1의 A(1000), B, C 등)은 신규 라운드가 시작되면 임의의 랜덤값(RA 등)을 생성하여 네트워크 정책(MST 방식)에 따라 전파한다. 1 is a schematic diagram of a block chain network that performs a method for selecting a block generator (ie, representative) of the competitive bidding method proposed in the present invention. Nodes forming a blockchain (A (1000), B, C, etc. in FIG. 1) generate a random value (R A, etc.) when a new round starts and propagate it according to the network policy (MST method) .

이후 모든 노드들이 생성한 임의의 값 중 최대와 최소값을 제외한 나머지 값들의 평균값을 구하고, 이를 노드들이 생성한 임의의 값과 비교하여 가장 근사값을 생성한 노드가 다음 라운드의 대표자가 되는 방식으로 대표자 노드를 결정한다. 여기서, 최대값과 최소값을 제외하는 이유는 일반 가격입찰방식에서 일부 악의적 행위 또는 담합으로 인한 공정성 저해를 방지하기 위한 방안이며, 블록체인에서 대표자를 선정하는 방식에서 동일하게 적용한 것이다(일부 악의적 노드가 생성할 수 있는 가장 낮은 값 또는 가장 높은 값을 생성할 경우 전체 평균값에 크게 영향을 미칠 수 있고, 따라서 높은 확률로 원하는 노드가 대표자가 될 수 있도록 할 수 있다). Afterwards, the average value of the remaining values excluding the maximum and minimum values among the random values generated by all nodes is calculated, and this is compared with the random values generated by the nodes, and the node generating the closest value becomes the representative node for the next round. decide Here, the reason for excluding the maximum and minimum values is to prevent damage to fairness due to some malicious acts or collusion in the general price bidding method, and the same is applied to the method of selecting a representative in the blockchain (some malicious nodes Generating the lowest or highest value that can be generated can greatly affect the overall average value, so that the desired node can become a representative with a high probability).

상기 경쟁입찰방식에 따라 대표자를 선정할 경우, 다음 라운드 대표자를 예측하는 것이 불가능하고 이번 라운드 대표자도 다음 라운드 대표자로서 자격이 있으므로 완전한 무작위성을 유지할 수 있다.When a representative is selected according to the competitive bidding method, it is impossible to predict a representative for the next round, and since the representative of this round is qualified as a representative of the next round, complete randomness can be maintained.

도 2는 매 라운드마다 대표자와 후보자를 선정하는 프로세스의 형식을 가지는 본 발명의 사상에 따른 블록체인 네트워크의 대표자 및 후보자 선정 방법의 일 실시예를 도시한 흐름도이다.2 is a flowchart showing an embodiment of a method for selecting a representative and a candidate for a blockchain network according to the spirit of the present invention, which has a form of a process for selecting a representative and a candidate for each round.

도시한 블록체인 네트워크의 대표자 및 후보자 선정 방법은, 블록체인 네트워크의 대표자 및 후보자 선정 수행을 개시하는 단계(S110); 각 노드에서 랜덤값으로 입찰을 수행하는 단계(S120); 입찰 참여율을 포함한 입찰 유효성을 확인하는 단계(S140); 입찰이 마감되면 투찰값들중 최대값 및 최소값을 제외시키는 단계(S150); 및 선정 조건에 가장 부합하는 노드를 대표자로 선정하고, 다음으로 부합하는 노드를 후보자로 선정하는 단계(S160)를 포함할 수 있다.The method for selecting the representative and candidate of the block chain network shown includes the step of starting the selection of the representative and candidate of the block chain network (S110); Bidding with a random value at each node (S120); Checking the validity of the bid including the bid participation rate (S140); Excluding the maximum value and the minimum value among bid values when the bidding is closed (S150); and selecting a node that most satisfies the selection conditions as a representative, and then selecting a node that satisfies the selection condition as a candidate (S160).

라운드(round)란 블록체인이나 해시그래프 등 탈중앙화 분산형 시스템에서 다수의 노드들이 일정한 합의 알고리즘에 따라 의사결정을 내리는 최소한의 시간 단위를 말한다.A round refers to the minimum unit of time in which a number of nodes make a decision according to a certain consensus algorithm in a decentralized distributed system such as blockchain or hashgraph.

상기 대표자 및 후보자 선정 수행을 개시하는 단계(S110)에서는, 블록체인 네트워크의 의사결정을 위한 하나 혹은 소정 개수의 라운드를 수행할 대표자 및 후보자 선정 수행을 개시한다. 후자의 경우 한꺼번에 결정되는 복수개의 라운드들을 하나의 집합 라운드로 볼 수 있다.In the step of starting the selection of representatives and candidates (S110), selection of representatives and candidates to perform one or a predetermined number of rounds for decision-making of the blockchain network is started. In the latter case, a plurality of rounds determined at once can be regarded as one aggregation round.

상기 S110 단계에서는 해당 라운드의 대표자 또는 후보자가 다음 라운드의 대표자 및 후보자 선정을 위한 입찰을 지시하거나, 해당 라운드가 시작되면 바로 모든 노드들이 다음 라운드의 대표자 및 후보자 선정을 위한 입찰을 수행할 수 있다.In the step S110, the representative or candidate of the corresponding round may instruct bidding for selecting the representative and candidate for the next round, or all nodes may bid for selecting the representative and candidate for the next round as soon as the corresponding round starts.

도시한 실시예의 경우, 새로운 라운드가 시작되면(S110), 각 노드는 랜덤값을 생성하여 투찰하고 정해진 시간 이후에 전체 노드의 2/3 이상이 참가한 경우 정상적인 입찰로 인정하되, 2/3를 넘지 않는 경우에는 재입찰을 시작한다(S140). 이때, 구현에 따라서는, 기존에 입찰할 노드는 재입찰에 참가할 필요 없이 이미 투찰한 값으로 입찰에 참가한 것으로 볼 수 있다. 이는 네트워크 오버헤드 최소화를 위한 조치이다. In the case of the illustrated embodiment, when a new round starts (S110), each node generates a random value and bids, and if more than 2/3 of all nodes participate after a set time, it is recognized as a normal bidding, but not more than 2/3. If not, re-bidding starts (S140). At this time, depending on the implementation, the node to bid in the past may be considered to have participated in the bidding with the value already bid without having to participate in re-bidding. This is a measure to minimize network overhead.

도시한 S140 단계에서의 투찰 마감 기준은 전체 노드의 2/3이 아닌 네트워크나 노드 운영 환경에 따라 가변적으로 설정 가능하다. 예컨대, 도시한 S140 단계에서는 입찰 유효성을 "전체 노드의 2/3 이상이 참가"로만 확인하고 있지만, 다른 구현에서는 다른 유효 조건들을 추가적으로 더 확인할 수 있다.The bid closing criterion in the illustrated step S140 can be set variably according to the network or node operating environment, not 2/3 of all nodes. For example, in the illustrated step S140 , the bidding validity is confirmed only by “participation of 2/3 or more of all nodes”, but other valid conditions may be additionally confirmed in other implementations.

투찰이 마감되면(S125), 노드들의 투찰값들 중 최대값과 최소값을 제외한 나머지 값들의 평균값을 계산한다. 구현에 따라, 최대 또는 최소값이 복수인 경우에는 하나씩만 제외할 수 있으며, 제외할 최대값과 최소값을 하나를 규정하지 않고, 소정 개수로 규정할 수도 있다(노드 개수가 많은 경우).When the bid is closed (S125), the average value of the remaining values excluding the maximum and minimum values among the bid values of the nodes is calculated. Depending on the implementation, if there are multiple maximum or minimum values, only one can be excluded, and a predetermined number of maximum and minimum values to be excluded may be specified instead of one (if the number of nodes is large).

다음, 각 노드들의 투찰값들 중 상기 계산된 평균값에 가장 근사치를 제시한 노드를 대표자(Primary 노드)로 선정하고, 그 다음 근사치를 제시한 노드를 후보자(secondary 노드)로 지정한다(S160). Next, among the bid values of each node, a node that presents the closest value to the calculated average value is selected as a representative (primary node), and then the node that presents the approximate value is designated as a candidate (secondary node) (S160).

즉, 본 발명의 사상에 따른 경쟁입찰 방식은, 각 노드별로 랜덤값을 생성하여 서로 공유하고 공유된 정보들 중 최대값과 최소값을 제외한 나머지 값들의 평균을 구한 다음, 이를 기준으로 가장 근사한 랜덤값을 생성한 노드를 대표자 노드로 선정하고(S162, S164), 두 번째로 근사한 랜덤값을 생성한 노드를 후보자 노드로 지정한다(S166, S168).That is, in the competitive bidding method according to the idea of the present invention, a random value is generated for each node, shared with each other, and the average of the remaining values excluding the maximum and minimum values among the shared information is calculated, and then the closest random value is obtained based on this. The node that generated is selected as a representative node (S162, S164), and the node that generated the second closest random value is designated as a candidate node (S166, S168).

후보자는 Primary 노드가 비정상적인 상황일 때 즉각적으로 대표자를 대신함으로써 비정상적 운영에 대응하되, 해당 라운드가 끝남과 동시에 역할을 종료한다. 만약, 라운드 종료후 다음 라운드의 개시와 함께 본 발명의 입찰이 수행되지 않는 경우, 상기 후보자가 다음 라운드에 대한 입찰을 지시할 수 있다. The candidate responds to the abnormal operation by immediately replacing the representative when the primary node is in an abnormal situation, but ends the role as soon as the round ends. If the bidding according to the present invention is not performed with the start of the next round after the end of the round, the candidate may instruct bidding for the next round.

상기 S160 단계에서의 경쟁입찰 Logic에서 최대/최소값을 제외한 값들의 평균값 근사치를 기준으로 하지 않고, 평균값보다 높은(또는 낮은) 가장 가까운 값으로 정하거나 이와 유사한 기준으로 대표자를 선정할 수도 있다. In the competitive bidding logic at step S160, the representative may be selected based on a value higher (or lower) than the average or similar to the average value, rather than based on the approximate average value of the values excluding the maximum/minimum values.

이때, 가장 근사한 랜덤값을 생성한 노드가 둘 이상인 경우(S162의 No), 이전의 대표자 노드 이력을 검색하여(S165) 가장 오래된 대표자 노드 이력을 가진 노드를 대표자 노드로 선정하고, 두 번째로 오래된 대표 노드 이력을 가진 노드를 후보자 노드로 선정함으로써 노드간 형평성을 조정할 수 있다.At this time, if there are two or more nodes that generated the closest random value (No in S162), the previous representative node history is searched (S165), the node with the oldest representative node history is selected as the representative node, and the second oldest By selecting a node with a representative node history as a candidate node, fairness between nodes can be adjusted.

또는, 두 번째로 근사한 랜덤값을 생성한 노드가 둘 이상인 경우(S166의 No), 이전의 대표 노드 이력을 검색하여(S165) 가장 오래된 대표 노드 이력을 가진 노드를 후보자 노드로 선정함으로써 노드간 형평성을 조정할 수 있다. 이 경우, 도시한 S165 단계의 다음은 종료하게 되며, 도 2에서는 이를 생략하였다.Alternatively, if there are two or more nodes that generated the second closest random value (No in S166), the previous representative node history is searched (S165) and the node with the oldest representative node history is selected as a candidate node to achieve fairness between nodes. can be adjusted. In this case, the shown step S165 is completed, and in FIG. 2 it is omitted.

상기 대표자 및 후보자 선정 수행을 개시하는 단계(S110)에서는, 이전에 선정된 대표자 노드에서 상기 입찰 및 선정 결과 전송을 위한 경로를 정의하는 비순환 트리 토폴로지를 구성할 수 있다. In the step of initiating the selection of the representative and the candidate (S110), a non-recursive tree topology defining a path for transmitting the bidding and selection results may be configured in the previously selected representative node.

도 3은 블록체인 노드간 네트워크를 구성함에 있어 비순환 토폴로지를 형성하는 방법을 나타내는 개념도이다. 3 is a conceptual diagram showing a method of forming an acyclic topology in constructing a network between blockchain nodes.

본 발명에서 제안하는 경쟁입찰방식은 전체 노드의 평규값을 계산하는 방식이므로 이를 총괄할 수 있는 루트(Root) 노드가 필요한데 이를 구성하는 방식으로 최소신장트리 기법을 이용한다(이전 라운드의 대표자가 해당 라운드에서 Root 노드 역할을 수행한다). 도 3에서 Node A(1000)는 이전 라운드의 대표자로서 루트(Root) 노드가 되며 이를 기준으로 최소 비용으로 구성 가능한 토폴로지를 형성한다(도 3의 오른쪽 그림). The competitive bidding method proposed in the present invention is a method of calculating the average value of all nodes, so a root node that can manage it is required, and the minimum spanning tree technique is used as a way to configure it (the representative of the previous round is the corresponding round serves as the root node). In FIG. 3, Node A (1000) becomes a root node as a representative of the previous round, and based on this, a topology that can be configured with minimum cost is formed (right figure in FIG. 3).

최소신장트리 방식을 사용함으로써 입찰에 누락된 노드 여부 확인 및 참여 유도, 그리고 네트워크 오버헤드를 최소화시킬 수 있다. 여기서 말하는 최소 비용은 네트워크 지연시간, 네트워크 구성 노드의 자원량(CPU, 메모리), 노드 에러율을 정량화한 수치이다. "최소신장트리"는 복잡도가 비교적 높은 편이나 본 발명이 적용될 수 있는 환경인 전용망에서는 복잡도가 그리 큰 영향을 미치지 않는다. 도 3의 화살표 방향이 토폴로지 구성 순서를 나타내며 노드 A, B, C가 형성된 상태에서 입찰 진행 과정을 나타낸 것이 도 4이다.By using the minimum spanning tree method, it is possible to check whether a node is missing in the bidding, induce participation, and minimize network overhead. The minimum cost referred to here is a numerical value quantifying the network delay time, the amount of resources (CPU, memory) of network configuration nodes, and the node error rate. The "minimum spanning tree" has a relatively high complexity, but the complexity does not have a large effect in a dedicated network, which is an environment to which the present invention can be applied. The direction of the arrow in FIG. 3 represents the order of topology configuration, and FIG. 4 shows a bidding process in a state where nodes A, B, and C are formed.

상기 "최소신장트리" 알고리즘을 적용하면, 네트워크 지연시간, 각 노드별 자원량, 노드 에러율을 고려하여 최소 비용으로 구성가능한 비순환식 네트워크 토폴로지를 작성할 수 있다.When the "minimum spanning tree" algorithm is applied, an acyclic network topology configurable at a minimum cost can be created in consideration of network delay time, resource amount for each node, and node error rate.

다른 구현에서는, 상기 비순환 트리 토폴로지를 구성하기 위해, 최소신장트리 대신에 네트워크 최단경로 선정방식(Dijkstra 알고리즘) 등도 적용 가능하다. In another implementation, in order to configure the acyclic tree topology, a network shortest path selection method (Dijkstra algorithm) or the like can be applied instead of the minimum spanning tree.

도 4는 블록체인 노드 토폴로지가 형성된 상황에서 대표자 및 후보자를 선정하기 위한 투찰값(랜덤값) 공유(전송) 절차를 도시하는 개념도이다.4 is a conceptual diagram illustrating a procedure for sharing (transmitting) a bid value (random value) for selecting a representative and a candidate in a situation where a blockchain node topology is formed.

도 4에서 Node A(1000)라고 표시된 노드가 Root 노드이다(도 3과도 연계됨). 노드 A는 자신의 랜덤값 RA와 일회용 비밀키 EA를 생성하고, 하기 수학식 1식에 따라 VA를 계산하여 노드 B로 전송한다.A node marked as Node A (1000) in FIG. 4 is a root node (also linked to FIG. 3). Node A generates its own random value R A and one-time private key E A , calculates V A according to Equation 1 below, and transmits it to node B.

Figure pat00001
Figure pat00001

상기 수학식에서 H는 해쉬함수를 의미하나, 계산량을 줄이기 위해 상위 또는 하위 1/2 비트를 추출하는 함수일 수도 있다. 또한 뒤의 E[·]는 암호알고리즘을 뜻하는데 맨 뒤 ‘EA’ 암호키를 이용하여 안에 들어있는 RA를 암호화하는 것을 뜻한다. 상황에 따라 해쉬함수 또는 1/2 도출함수를 선택적으로 사용할 수 있다.In the above equation, H denotes a hash function, but may be a function that extracts upper or lower 1/2 bits to reduce the amount of calculation. Also, the E[·] at the end means the encryption algorithm, which means that R A contained in it is encrypted using the encryption key 'E A ' at the end. Depending on the situation, a hash function or a 1/2 derivation function can be selectively used.

노드 B는 노드 A로부터 VA를 수신한 후, 자신이 생성한 랜덤값 RB와 일회용 비밀키 EB를 이용하여 VB를 생성하여 VA와 VB를 노드 C로 송신한다. 토폴로지의 중간 노드들은 노드 B와 동일한 행위를 수행하며 도 4에서 노드 C가 토폴로지의 마지막 노드라고 가정하면 노드 C는 자신의 랜덤값 RC만 생성한 후 역순으로 전송한다(도 4에서 노드 C → 노드 B). 이를 수신한 노드 B는 RC를 저장해두고 자신의 랜덤값 RB와 RC를 노드 A로 전송한다. Node B receives V A from node A, generates V B using random value R B and one-time secret key E B generated by node B, and transmits V A and V B to node C. Intermediate nodes in the topology perform the same actions as node B. Assuming node C is the last node in the topology in FIG. 4, node C generates only its own random value R C and transmits it in the reverse order (node C in FIG. 4 → node B). Upon receiving this, node B stores R C and transmits its own random values R B and R C to node A.

노드 A는 수신한 모든 랜덤값(각 노드들의 투찰값)들 중 최대값과 최소값을 제외한 나머지 값들의 평균을 계산하고 이에 가장 근사한 투찰값을 제시한 노드를 대표자로, 두 번째 근사한 투찰값을 제시한 노드를 후보자로 선정한 뒤, 이를 자신의 일회용 비밀키 EA와 함께 노드 B로 전송한다(도 4의 NP). 이를 수신한 노드 B는 일회용 비밀키 EA를 이용하여 노드 A의 투찰값을 확인한 후 대표자와 후보자 선정 결과를 검증하고 문제가 없을 경우, 노드 A의 일회용 비밀키 EA, 자신의 일회용 비밀키 EB를 대표자 및 후보자 선정 결과와 함께 노드 C로 송신한다. 마지막 노드인 C는 EA와 EB를 이용하여 이전에 수신한 VA와 VB로부터 RA와 RB를 도출하여 대표자와 후보자 선정 결과를 검증하고 문제가 없으면 이를 수용하는 것으로 대표자 및 후보자 선정 과정을 종료한다.Node A calculates the average of the remaining values excluding the maximum and minimum values among all received random values (bid values of each node), and presents the second approximate bid value with the representative node presenting the closest bid value. After selecting one node as a candidate, it transmits it to node B along with its one-time private key E A (N P in FIG. 4). Upon receiving this , node B verifies the bid value of node A using the one-time private key E A and then verifies the result of selecting the representative and candidate. B is transmitted to node C along with the results of selecting representatives and candidates. C, the last node, derives R A and R B from the previously received VA and V B using E A and E B , verifies the result of selecting the representative and candidate, and selects the representative and candidate by accepting them if there is no problem. end the process

상술한 방식의 경쟁입찰 정보 공유는, 상기 토폴로지 구성 순서 방향으로 자신의 랜덤값을 일회용 비밀키로 암호화하고 이를 입증할 수 있도록 랜덤값의 해쉬값을 추가하여 전송함으로써, 투찰 종료전에는 자신의 랜덤값이 유출되지 않도록 보호할 수 있다. 예컨대, 상기 토폴로지 구성 순서 방향으로 자신의 랜덤값을 일회용 비밀키로 암호화하고 이를 입증할 수 있도록 랜덤값의 해쉬값 대신 상위 1/2비트 또는 하위 1/2비트를 추가하여 전송함으로써 랜덤값 유출을 방지할 수 있다.Competitive bidding information sharing in the above-described manner is By encrypting its own random value with a one-time secret key in the topology configuration sequence direction and adding a hash value of the random value to prove it, it can protect its own random value from being leaked before the bidding ends. For example, the above Random value leakage can be prevented by encrypting one's own random value with a one-time secret key in the topology configuration order direction and adding the upper 1/2 bit or lower 1/2 bit instead of the hash value of the random value to prove it. .

또한, 상술한 방식의 경쟁입찰 정보 공유는, 상기 토폴로지 구성 순서 반대 방향으로 자신의 랜덤값을 전송함으로써 수신측에서 투찰 결과를 정리할 수 있도록 정보를 제공하고, 상기 토폴로지 구성 순서 방향으로 자신의 랜덤값을 암호화한 일회용 비밀키를 전송함으로써 수신측에서 투찰 결과를 검증할 수 있도록 정보를 제공할 수 있다.In addition, the sharing of competitive bidding information in the above-described manner, By transmitting its own random value in the opposite direction of the topology configuration sequence, the receiving side provides information to organize the bidding results, and by transmitting a one-time private key that encrypts its own random value in the topology configuration sequence direction, the receiving side bids Information can be provided so that the results can be verified.

상술한 방식의 경쟁입찰 정보 공유에서, 상기 토폴로지 구성 순서 방향으로 제일 상위에 있는 루트 노드인 해당 라운드의 대표자 노드는, 자신의 일회용 비밀키와 더불어 모든 노드의 랜덤값을 취합하여 최소값 및 최대값을 제외하고 나머지 랜덤값들의 평균값 계산 및 이를 기준으로 다름 라운드의 대표자 노드와 후보자 노드 선정 결과를 토폴로지 구성 순서 방향으로 전송한다.In the above-described competitive bidding information sharing, the representative node of the round, which is the root node at the top in the topology configuration order direction, collects the random values of all nodes together with its own one-time secret key to determine the minimum and maximum values. Except for the calculation of the average value of the remaining random values, and based on this, the result of selecting the representative node and candidate node of the next round is transmitted in the order of topology configuration.

상기 과정에서 토폴로지 형성 순서 방향으로 랜덤값을 암호화시켜 전송하므로 수신측 노드가 송신측 노드의 랜덤값을 받은 뒤에 자신의 랜덤값을 생성하더라고 송신측 노드의 랜덤값을 확인할 수 없으므로 Hiding 특성을 유지할 수 있다. 반면, 송신측 노드는 한번 보낸 랜덤값을 다른 값으로 속일 수 없는데, 이는 해쉬함수 및 암호함수의 특성상 같은 결과를 내는 서로 다른 두 입력값을 찾는 것이 거의 불가능하기 때문이며 따라서 Binding 특성을 유지할 수 있다.In the above process, since the random value is encrypted and transmitted in the direction of the topology formation order, even if the receiving node generates its own random value after receiving the random value of the sending node, the random value of the sending node cannot be confirmed, so the hiding characteristic can be maintained. there is. On the other hand, the node on the sending side cannot fake the random value sent once with another value. This is because it is almost impossible to find two different input values that produce the same result due to the characteristics of the hash function and the encryption function, so the Binding characteristic can be maintained.

또한, 대표자와 후보자 선정 결과 전송시 시간 정보(도 4의 ‘T’)도 공유하는데, 이는 일반적으로 비동기식 네트워크에서 블록체인이 동작하는 것으로 가정하고 노드간 시간 동기화를 통한 효율적인 운영을 꾀하기 위함이다. 또한 상기 시간 정보는 비동기 네트워크에서 라운드 운영시 필요한 정보이다.In addition, time information (‘T’ in FIG. 4) is also shared when the representative and candidate selection results are transmitted, which is to promote efficient operation through time synchronization between nodes, assuming that the blockchain operates in a generally asynchronous network. In addition, the time information is necessary information when operating a round in an asynchronous network.

도 5는 도 1의 블록체인 네트워크를 구성하는 각 노드들이 될 수 있는 블록체인 노드 장치의 일 예를 도시한 블록도이다.Figure 5 is a block diagram showing an example of a block chain node device that can be each node constituting the block chain network of Figure 1.

도시한 블록체인 노드 장치(1000)는 적어도 하나의 프로세서(1100), 네트워크 인터페이스(1200), 메모리(1300), 디스플레이(1400), 및 입출력 장치(1500)를 포함할 수 있다.The illustrated blockchain node device 1000 may include at least one processor 1100, a network interface 1200, a memory 1300, a display 1400, and an input/output device 1500.

도시한 프로세서(1100)는, 상술된 바와 같이, 본 발명의 사상에 따른 블록체인 네트워크의 대표자 및 후보자 선정 방법을 다른 노드들의 블록체인 노드 장치들과 함께 수행할 수 있다.As described above, the illustrated processor 1100 may perform a method for selecting a representative and a candidate of a blockchain network according to the spirit of the present invention together with blockchain node devices of other nodes.

상기 프로세서(1100)는 프로그램을 실행하고, 블록체인 노드 장치(1000)를 제어할 수 있다. 블록체인 노드 장치(1000)는 입출력 장치(1500)를 통하여 외부 장치(예를 들어, 퍼스널 컴퓨터 혹은 네트워크)에 연결되고, 데이터를 교환할 수 있다. 블록체인 노드 장치(1000)는 이동 전화, 스마트 폰, PDA, 태블릿 컴퓨터, 랩톱 컴퓨터 등 모바일 장치, 퍼스널 컴퓨터, 태블릿 컴퓨터, 넷북 등 컴퓨팅 장치, 혹은 텔레비전, 스마트 텔레비전, 게이트 제어를 위한 보안 장치 등 전자 제품 등 다양한 전자 시스템을 포함할 수 있다.The processor 1100 may execute a program and control the blockchain node device 1000. The blockchain node device 1000 may be connected to an external device (eg, a personal computer or network) through an input/output device 1500 and exchange data. The blockchain node device 1000 is a mobile device such as a mobile phone, smart phone, PDA, tablet computer, laptop computer, personal computer, tablet computer, netbook, etc., or a television, smart television, security device for gate control, etc. It may include various electronic systems such as products.

도시된 바와 같이, 프로세서(1100)는 블록 생성부(BLK Generating Unit), 블록체인 제어부(Blockchain Controlling Unit), 블록 전파부(BLK Propagating Unit), 및 블록 검증부(BLK Verifying Unit)를 프로그램 코드로 실행하도록 구현될 수 있다. 블록 생성부는 거래내역에 필요한 새로운 블록을 생성할 수 있다. 블록체인 제어부는 상술된 블록체인 생성 방법, 특히 분산합의 노드 선택 방식을 이용하여 새로운 블록이 자신의 블록체인에 연결되도록 제어할 수 있다. 블록 전파부는 블록체인에 연결된 새로운 블록의 유효성을 검증하기 위하여 새로운 블록을 네트워크로 전파할 수 있다. 블록 검증부는 네트워크를 형성한 다른 노드에서 생성된 블록을 수신하고, 수신된 블록의 유효성을 검증할 수 있다.As shown, the processor 1100 converts a block generating unit (BLK Generating Unit), a blockchain controlling unit, a block propagating unit, and a block verifying unit into program codes. can be implemented to run The block generator may create a new block required for transaction details. The blockchain control unit can control a new block to be connected to its own blockchain by using the above-described blockchain generation method, in particular, the distributed agreement node selection method. The block propagation unit may propagate the new block to the network in order to verify the validity of the new block connected to the blockchain. The block verifier may receive a block generated by another node forming the network and verify the validity of the received block.

도시한 네트워크 인터페이스(1200)는 외부의 네트워크와 다양한 유/무선 방식에 의해 통신을 수행하도록 구현될 수 있다.The illustrated network interface 1200 may be implemented to perform communication with an external network through various wired/wireless methods.

메모리(1300)는 컴퓨터에서 읽을 수 있는 명령어(instruction)를 포함할 수 있다. 프로세서(1100)는 메모리(1300)에 저장된 명령어가 프로세서(1100)에서 실행됨에 따라 앞서 언급된 동작들을 수행할 수 있다. 메모리(1300)는 휘발성 메모리 혹은 비휘발성 메모리일 수 있다.The memory 1300 may include computer readable instructions. The processor 1100 may perform the aforementioned operations as instructions stored in the memory 1300 are executed in the processor 1100 . The memory 1300 may be a volatile memory or a non-volatile memory.

도 1 및 도 5에 따라 구성되는 본 발명의 사상에 따른, 블록체인 네트워크는According to the idea of the present invention constructed according to FIGS. 1 and 5, a blockchain network

전용망을 통해 상호간에 데이터 통신을 수행하는 복수개의 노드들로 이루어지며, 대표자 노드 및 후보자 노드를 포함하는 블록체인 네트워크이다. 여기서, 상기 대표자 노드는, 후속 라운드를 진행할 다른 대표자 노드를 선정하기 위해, 랜덤값 입찰, 최대값 및 최소값 제외 방식의 다음 라운드에서의 대표자 선정 경매 입찰을 수행한다.It consists of a plurality of nodes that perform data communication with each other through a dedicated network, and is a blockchain network including representative nodes and candidate nodes. Here, the representative node performs a representative selection auction bidding in the next round in a method of random value bidding and maximum and minimum value exclusion, in order to select another representative node to proceed with the next round.

상기 대표자 선정 경매 입찰은 도 2의 흐름도에 따른 블록체인 네트워크의 대표자 및 후보자 선정 방법으로 수행될 수 있다.The representative selection auction bidding may be performed by a method for selecting a representative and a candidate of the blockchain network according to the flowchart of FIG. 2 .

상기 대표자 선정 경매 입찰은 각 라운드의 개시와 함께 수행되거나, 특정 라운드의 상기 대표자 노드가, 담당하는 마지막 라운드에서 다음 라운드에 대한 상기 대표자 선정 경매 입찰을 수행할 수 있다. 후자의 경우, 상기 특정 라운드의 상기 후보자 노드는, 상기 대표자가 상기 특정 라운드를 진행할 수 없는 상황에서, 다음 라운드에 대한 상기 대표자 선정 경매 입찰을 수행할 수 있다. The representative selection auction bidding may be performed at the start of each round, or the representative selection auction bidding for the next round may be performed in the last round in charge of the representative node of a specific round. In the latter case, the candidate node of the specific round may perform the representative selection auction bidding for the next round in a situation where the representative cannot proceed with the specific round.

상기 대표자 선정 경매 입찰에서는, 선정 조건에 가장 부합하는 노드를 대표자로 선정하고, 다음으로 부합하는 노드를 후보자로 선정한다.In the representative selection auction bidding, a node that most satisfies the selection conditions is selected as a representative, and a node that meets next is selected as a candidate.

상기 대표자 선정 경매 입찰을 위해 상기 대표자 노드는, 상기 복수개의 노드들로부터 랜덤값인 투찰값들을 전송받는 단계; 입찰 참여율을 포함한 입찰 유효성을 확인하는 단계; 입찰이 마감되면 투찰값들중 최대값 및 최소값을 제외시키는 단계; 및 선정 조건에 가장 부합하는 노드를 대표자로 선정하고, 다음으로 부합하는 노드를 후보자로 선정하는 단계를 도 2와 같이 수행할 수 있다.receiving, by the representative node, bid values that are random values from the plurality of nodes for bidding in the representative selection auction; Checking the validity of the bid including the bid participation rate; Excluding the maximum value and the minimum value among bid values when the bidding is closed; and selecting a node that most satisfies the selection conditions as a representative, and then selecting a node that satisfies the next selection condition as a candidate, as shown in FIG. 2 .

또한, 도 2의 단계들을 수행함에 있어서, 상기 대표자 노드는, 상기 대표자 선정 경매 입찰 운영을 위한 정보 전달 경로를 정의하는 상기 블록체인 네트워크 구성하는 상기 복수개의 노드들간 비순환식 트리 구조의 토폴로지를 작성할 수 있다.In addition, in performing the steps of FIG. 2, the representative node may create a topology of an acyclic tree structure among the plurality of nodes constituting the blockchain network defining an information transmission path for the representative selection auction bidding operation. there is.

상기 비순환식 트리 구조의 토폴로지는, 상기 대표자 선정 경매 입찰 과정에서의 정보 전달 경로로 이용되지만, 구현에 따라서는, 블록 생성 및 검증 과정에서의 정보 전달 경로로 이용될 수도 있다.The topology of the acyclic tree structure is used as an information transmission path in the representative selection auction bidding process, but may also be used as an information transmission path in block generation and verification processes, depending on implementation.

블록 체인 네트워크를 구성하는 상기 복수개의 노드들 각각은, 자신이 생성한 정보나 상기 토폴로지상 소스측 이전 노드에서 전달받은 정보를, 자신이 생성한 일회용 비밀키를 이용하여 암호화하여 상기 토폴로지상 싱크측 다음 노드에 전달할 수 있다. 예컨대, 상기 토폴로지 구성 순서 방향으로 자신의 랜덤값을 암호화한 일회용 비밀키를 전송함으로써 수신측에서 투찰 결과를 검증할 수 있도록 정보를 제공하는 방식으로 경쟁입찰 정보 공유가 이루어진다.Each of the plurality of nodes constituting the blockchain network encrypts the information generated by itself or the information received from the previous node to the source side on the topology by using the one-time secret key generated by the node to encrypt the sink side on the topology. It can be passed on to the next node. For example, competitive bidding information is shared by transmitting a one-time private key that encrypts its own random value in the topology configuration sequence direction to provide information so that the receiving side can verify the bidding result.

상기 대표자 선정 경매 입찰을 주도하는 상기 대표자 노드는 상기 대표자 선정 경매 입찰의 선정 결과를 시간 동기화를 위한 정보와 함께 상기 다수개의 노드들로 전송할 수 있다. 그러면, 상기 시간 동기화를 위한 정보를 전송받은 상기 다수개의 노드들은, 다음 라운드의 시작점 및 종료점을 상기 시간 동기화를 위한 정보에 따라 설정할 수 있다.The representative node leading the representative selection auction bidding may transmit a selection result of the representative selection auction bidding together with information for time synchronization to the plurality of nodes. Then, the plurality of nodes that have received the information for time synchronization can set the start point and end point of the next round according to the information for time synchronization.

도 6은 각 라운드마다 대표자 선정과 블록생성, 검증 및 체인을 형성하는 절차를 보여주는 개념도이다.6 is a conceptual diagram showing the process of selecting a representative, generating a block, verifying, and forming a chain for each round.

우선 라운드의 대표자(후보자 포함) 선정 과정은 그 전 라운드에서 일어난다(도 5에서 ‘n’ 라운드 대표자 선정은 그 전 라운드인 ‘n-1’ 라운드에서 완료됨). 또한 각 라운드마다 해당 라운드의 블록이 생성되고 검증 요청 과정이 일어난다. 동시에 그 전 라운드에서 생성된 블록의 검증과 체인 구성이 일어난다. 즉, 대표자 선정과 블록생성, 검증 및 체인을 형성하는 절차를 직렬이 아닌 병렬로 처리함과 동시에 메시지 처리도 동일 payload 및 절차에서 동시 처리토록 함으로써 속도 향상 및 네트워크 오버헤드 감소 효과를 가져올 수 있다.The process of selecting representatives (including candidates) of the first round takes place in the previous round (in FIG. 5, the selection of representatives for round 'n' is completed in the previous round, 'n-1' round). Also, for each round, a block of the corresponding round is created and a verification request process takes place. At the same time, the verification of the block created in the previous round and the chain construction take place. In other words, the process of selecting a representative, generating a block, verifying and forming a chain is processed in parallel rather than serially, and at the same time, message processing is also processed simultaneously in the same payload and procedure, thereby improving speed and reducing network overhead.

정리하면, 블록체인 네트워크를 구성하는 상기 다수개의 노드들은, 각 라운드에서 해당 라운드의 블록을 생성하고 검증을 요청하며, 이전 라운드에서 생성된 블록을 검증하여 체인을 형성하며, 다음 라운드를 위한 대표자 노드 및 후보자 노드를 선정할 수 있다. 즉, 상기 전용망 환경 블록체인 네트워크의 병렬 처리 프로세스는, 대표자 선정과 블록의 생성 및 검증 요청, 블록의 검증 및 체인 형성 과정을 병렬적으로 처리할 수 있다. 이때, 하나의 메시지에 블록 생성과 검증 요청, 검증 결과 알림 및 대표자 선정 과정을 모두 포함함으로써 네트워크 오버헤드를 줄여줄 수 있다.In summary, the plurality of nodes constituting the blockchain network generate a block of the corresponding round in each round and request verification, verify the block generated in the previous round to form a chain, and form a representative node for the next round. and candidate nodes may be selected. That is, in the parallel processing process of the private network environment blockchain network, the process of selecting a representative, generating and verifying a block, verifying a block, and forming a chain can be processed in parallel. At this time, network overhead can be reduced by including all processes of block creation, verification request, verification result notification, and representative selection in one message.

또한, 상기 전용망 환경 블록체인 네트워크의 병렬 처리 프로세스는, 블록 생성과 검증 요청, 검증 결과 알림, 대표자 선정 과정 중 어느 하나가 누락 또는 에러가 났을 경우, 이를 재전송하거나 다음 단계 프로세스로 넘겨줄 수 있다.In addition, in the parallel processing process of the dedicated network environment blockchain network, if any one of the block generation and verification request, verification result notification, and representative selection process is omitted or an error occurs, it can be retransmitted or passed on to the next step process.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely an example of the technical idea of the present invention, and various modifications and variations can be made to those skilled in the art without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are not intended to limit the technical idea of the present invention, but to explain, and the scope of the technical idea of the present invention is not limited by these embodiments. The protection scope of the present invention should be construed according to the claims below, and all technical ideas within the equivalent range should be construed as being included in the scope of the present invention.

예컨대, 상술한 설명에서는 전용망에서 경쟁입찰방식을 이용한 블록 생성자(대표자) 선정, 네트워크 토폴로지 구성 방법을 구체적인 사례로서 설명하였으나, 불특정 소수 혹은 특정 다수간 안전한 네트워크 환경이 지원되는 경우(예 : VPN)에는 인터넷망에도 적용이 가능하며, 이 또한 본 발명의 권리범위에 속함은 물론이다.For example, in the above description, the selection of block generators (representatives) using the competitive bidding method in a dedicated network and the method of configuring the network topology were described as specific examples, but in the case where a secure network environment between an unspecified small number or a specific number is supported (e.g. VPN) It can also be applied to the Internet network, and this also belongs to the scope of the present invention, of course.

1000 : 블록체인 노드 장치
1100 : 프로세서
1200 : 네트워크 인터페이스
1300 : 메모리
1400 : 디스플레이
1500 : 입출력 장치
1000: blockchain node device
1100: processor
1200: network interface
1300: memory
1400: display
1500: I/O device

Claims (16)

블록체인 네트워크의 대표자 및 후보자 선정 수행을 개시하는 단계;
블록체인 네트워크를 구성하는 각 노드들에서 랜덤값으로 입찰을 수행하는 단계;
입찰 참여율을 포함한 입찰 유효성을 확인하는 단계;
입찰이 마감되면 투찰값들중 최대값 및 최소값을 제외시키는 단계; 및
선정 조건에 가장 부합하는 노드를 대표자로 선정하고, 다음으로 부합하는 노드를 후보자로 선정하는 단계
를 포함하는 경쟁입찰을 활용한 블록체인 네트워크의 대표자 및 후보자 선정 방법.
Initiating the selection of representatives and candidates of the blockchain network;
Bidding with random values in each node constituting the blockchain network;
Checking the validity of the bid including the bid participation rate;
Excluding the maximum value and the minimum value among bid values when the bidding is closed; and
Selecting the node that most satisfies the selection conditions as the representative, and selecting the node that meets the next criteria as the candidate
A method for selecting representatives and candidates for blockchain networks using competitive bidding, including
제1항에 있어서,
상기 대표자 및 후보자 선정 수행을 개시하는 단계에서는,
블록체인 네트워크의 의사결정을 위해 하나 또는 소정 개수의 라운드를 수행할 대표자 및 후보자 선정 수행을 개시하는 블록체인 네트워크의 대표자 및 후보자 선정 방법.
According to claim 1,
In the step of initiating the selection of representatives and candidates,
A method for selecting representatives and candidates of a blockchain network that initiates the selection of representatives and candidates to perform one or a predetermined number of rounds for decision-making in the blockchain network.
제1항에 있어서,
상기 선정 조건은,
제외되지 않은 투찰값들의 평균값에 가장 근사인 것을 특징으로 하는 블록체인 네트워크의 대표자 및 후보자 선정 방법.
According to claim 1,
The selection conditions are:
A method for selecting representatives and candidates of a blockchain network, characterized in that it is closest to the average value of non-excluded bids.
제3항에 있어서,
상기 선정 조건에 따른 대표자 및 후보자를 선정하는 단계에서는,
상기 평균값에 가장 근사한 노드가 둘 이상인 경우, 이전의 대표자 노드 이력을 검색하여 가장 오래된 대표 노드 이력을 가진 노드를 대표 노드로 선정하는 블록체인 네트워크의 대표자 및 후보자 선정 방법.
According to claim 3,
In the step of selecting representatives and candidates according to the selection conditions,
If there are two or more nodes closest to the average value, a method for selecting a representative and candidate of a blockchain network by searching for previous representative node histories and selecting a node with the oldest representative node history as a representative node.
제1항에 있어서,
상기 후보자는,
상기 대표자가 담당 라운드를 진행할 수 없는 상황에서, 다음 라운드에 대한 상기 블록체인 네트워크의 대표자 및 후보자 선정 방법을 수행하는 블록체인 네트워크의 대표자 및 후보자 선정 방법.
According to claim 1,
said candidate,
A method for selecting a representative and candidate of the blockchain network for performing the method for selecting the representative and candidate of the blockchain network for the next round in a situation where the representative cannot proceed with the round in charge.
제1항에 있어서,
상기 대표자 및 후보자 선정 수행을 개시하는 단계에서는,
상기 입찰 및 선정 결과 전송을 위한 경로를 정의하는 비순환 트리 토폴로지를 구성하는 블록체인 네트워크의 대표자 및 후보자 선정 방법.
According to claim 1,
In the step of initiating the selection of representatives and candidates,
A method for selecting representatives and candidates of a blockchain network constituting an acyclic tree topology defining a path for transmitting the bidding and selection results.
제6항에 있어서,
상기 비순환 트리 토폴로지의 루트 노드는, 이전에 선정된 대표자 또는 후보자의 노드인 블록체인 네트워크의 대표자 및 후보자 선정 방법.
According to claim 6,
The root node of the acyclic tree topology is a node of a previously selected representative or candidate, and a representative and candidate selection method of a blockchain network.
전용망을 통해 상호간에 데이터 통신을 수행하는 복수개의 노드들로 이루어지며, 대표자 노드 및 후보자 노드를 포함하는 블록체인 네트워크로서,
상기 대표자 노드는,
후속 라운드를 진행할 다른 대표자 노드를 선정하기 위해, 랜덤값 입찰, 최대값 및 최소값 제외 방식의 대표자 선정 경매 입찰을 수행하는 블록체인 네트워크.
A blockchain network consisting of a plurality of nodes that perform data communication with each other through a dedicated network and includes a representative node and a candidate node,
The representative node,
A blockchain network that conducts a representative selection auction bidding in the method of random value bidding, maximum and minimum value exclusion, in order to select other representative nodes to proceed with subsequent rounds.
제8항에 있어서,
상기 후보자 노드는,
상기 대표자가 담당 라운드를 진행할 수 없는 상황에서, 다음 라운드에 대한 상기 대표자 선정 경매 입찰을 수행하는 블록체인 네트워크.
According to claim 8,
The candidate node,
A blockchain network that conducts auction bidding for the representative selection for the next round in a situation where the representative cannot proceed with the round in charge.
제8항에 있어서,
상기 대표자 노드는,
담당하는 마지막 라운드에서 다음 라운드에 대한 상기 대표자 선정 경매 입찰을 수행하되,
선정 조건에 가장 부합하는 노드를 대표자로 선정하고, 다음으로 부합하는 노드를 후보자로 선정하는 블록체인 네트워크.
According to claim 8,
The representative node,
In the last round in charge, the above-mentioned representative selection auction bid for the next round is carried out,
A blockchain network that selects the node that most satisfies the selection conditions as the representative, and selects the node that satisfies the next as the candidate.
제8항에 있어서,
상기 대표자 노드는,
상기 복수개의 노드들로부터 랜덤값인 투찰갑들을 전송받는 단계;
입찰 참여율을 포함한 입찰 유효성을 확인하는 단계;
입찰이 마감되면 투찰값들중 최대값 및 최소값을 제외시키는 단계; 및
선정 조건에 가장 부합하는 노드를 대표자로 선정하고, 다음으로 부합하는 노드를 후보자로 선정하는 단계
를 포함하는 대표자 및 후보자 선정 방법을 수행하는 블록체인 네트워크.
According to claim 8,
The representative node,
Receiving random values of round wallets from the plurality of nodes;
Checking the validity of the bid including the bid participation rate;
Excluding the maximum value and the minimum value among bid values when the bidding is closed; and
Selecting the node that most satisfies the selection conditions as the representative, and selecting the node that meets the next criteria as the candidate
A blockchain network that performs a method for selecting representatives and candidates, including
제8항에 있어서,
상기 대표자 노드는,
상기 대표자 선정 경매 입찰 운영을 위한 정보 전달 경로를 정의하는 상기 복수개의 노드들간 비순환식 트리 구조의 토폴로지를 구성하는 블록체인 네트워크.
According to claim 8,
The representative node,
A blockchain network constituting a topology of an acyclic tree structure between the plurality of nodes defining an information transmission path for the representative selection auction bidding operation.
제12항에 있어서,
상기 복수개의 노드들 각각은,
자신이 생성한 정보나 상기 토폴로지상 소스측 이전 노드에서 전달받은 정보를, 자신이 생성한 일회용 비밀키를 이용하여 암호화하여 상기 토폴로지상 싱크측 다음 노드에 전달하는 블록체인 네트워크.
According to claim 12,
Each of the plurality of nodes,
A blockchain network that encrypts information generated by itself or information received from a previous node on the source side of the topology using a one-time private key created by itself and forwards it to the next node of the sink side of the topology.
제8항에 있어서,
상기 대표자 노드는,
상기 대표자 선정 경매 입찰의 선정 결과를 시간 동기화를 위한 정보와 함께 상기 다수개의 노드들로 전송하는 블록체인 네트워크.
According to claim 8,
The representative node,
A blockchain network that transmits the selection result of the representative selection auction bid to the plurality of nodes together with information for time synchronization.
제14항에 있어서,
상기 시간 동기화를 위한 정보를 전송받은 상기 다수개의 노드들은,
다음 라운드의 시작점 및 종료점을 상기 시간 동기화를 위한 정보에 따라 설정하는 블록체인 네트워크.
According to claim 14,
The plurality of nodes receiving the information for time synchronization,
A blockchain network that sets the starting point and ending point of the next round according to the information for time synchronization.
제8항에 있어서,
상기 다수개의 노드들은,
각 라운드에서 해당 라운드의 블록을 생성하고 검증을 요청하며,
이전 라운드에서 생성된 블록을 검증하여 체인을 형성하며,
다음 라운드를 위한 대표자 노드 및 후보자 노드를 선정하는 블록체인 네트워크.





According to claim 8,
The plurality of nodes,
In each round, the blocks of that round are generated and verified,
Blocks created in the previous round are verified to form a chain,
A blockchain network that selects representative nodes and candidate nodes for the next round.





KR1020210129856A 2021-09-30 2021-09-30 Representative and canditate selection method of blockchain network using comtitive bidding and blockchain network KR102553441B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210129856A KR102553441B1 (en) 2021-09-30 2021-09-30 Representative and canditate selection method of blockchain network using comtitive bidding and blockchain network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210129856A KR102553441B1 (en) 2021-09-30 2021-09-30 Representative and canditate selection method of blockchain network using comtitive bidding and blockchain network

Publications (2)

Publication Number Publication Date
KR20230046644A true KR20230046644A (en) 2023-04-06
KR102553441B1 KR102553441B1 (en) 2023-07-11

Family

ID=85918292

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210129856A KR102553441B1 (en) 2021-09-30 2021-09-30 Representative and canditate selection method of blockchain network using comtitive bidding and blockchain network

Country Status (1)

Country Link
KR (1) KR102553441B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101949712B1 (en) 2018-06-29 2019-02-19 (주) 와이즈엠글로벌 Block chain generation method having consensus algorithm by stratified stochastic delegated proof of node and their commission allocation algorithm
KR20190067581A (en) * 2017-12-07 2019-06-17 한국전자통신연구원 Apparatus and method for distributed processing of blockchain transactions
KR20200121141A (en) * 2019-04-15 2020-10-23 주식회사 더블체인 System and method for selection of block generator using equitable consensus algorithm in blockchain
KR20210048120A (en) * 2019-10-23 2021-05-03 한국과학기술원 P2P Network based Verifiable Random Number Generation Method and System using Periodic Seeder Inheritance

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190067581A (en) * 2017-12-07 2019-06-17 한국전자통신연구원 Apparatus and method for distributed processing of blockchain transactions
KR101949712B1 (en) 2018-06-29 2019-02-19 (주) 와이즈엠글로벌 Block chain generation method having consensus algorithm by stratified stochastic delegated proof of node and their commission allocation algorithm
KR20200121141A (en) * 2019-04-15 2020-10-23 주식회사 더블체인 System and method for selection of block generator using equitable consensus algorithm in blockchain
KR20210048120A (en) * 2019-10-23 2021-05-03 한국과학기술원 P2P Network based Verifiable Random Number Generation Method and System using Periodic Seeder Inheritance

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
비특허문헌1(Seyed Mehran Dibaji et al., IEEE, 2018.08.31)* *
비특허문헌2(지소영 등, JIIBC, 2018.10.31)* *
비특허문헌3(ksj4572, 해시넷, 2019.08.06)* *

Also Published As

Publication number Publication date
KR102553441B1 (en) 2023-07-11

Similar Documents

Publication Publication Date Title
Lu et al. Edge blockchain assisted lightweight privacy-preserving data aggregation for smart grid
Zhao et al. Secure multi-party computation: theory, practice and applications
Aman et al. Low power data integrity in IoT systems
Luu et al. Demystifying incentives in the consensus computer
Lu et al. A novel privacy-preserving set aggregation scheme for smart grid communications
Esfahani et al. Secure blockchain-based energy transaction framework in smart power systems
Chandran et al. Efficient, constant-round and actively secure MPC: beyond the three-party case
Zhang et al. SAPFS: An efficient symmetric-key authentication key agreement scheme with perfect forward secrecy for industrial Internet of Things
Samuel et al. GarliChain: A privacy preserving system for smart grid consumers using blockchain
Hamouid et al. Efficient certificateless web-of-trust model for public-key authentication in MANET
Olakanmi et al. Trust-aware and incentive-based offloading scheme for secure multi-party computation in Internet of Things
Lahiri et al. A trustworthy blockchain based framework for impregnable iov in edge computing
Asfia et al. A blockchain construct for energy trading against sybil attacks
Puranam et al. Anatomy and lifecycle of a bitcoin transaction
Wan et al. AnonymousFox: An efficient and scalable blockchain consensus algorithm
US20220138005A1 (en) Distributed computing system and method of operation thereof
KR102553441B1 (en) Representative and canditate selection method of blockchain network using comtitive bidding and blockchain network
CN116032465A (en) Entrusted workload evidence sharing method
US20220075668A1 (en) Distributed computing system and method of operation thereof
Tan et al. ZKBdf: a ZKBoo-based quantum-secure verifiable delay function with prover-secret
Kim A reverse sequence hash chain-based access control for a smart home system
Entezari et al. A mafia and distance fraud high-resistance rfid distance bounding protocol
Zhang et al. Secure outsourcing algorithms of modular exponentiations in edge computing
Baniata et al. Approaches to overpower proof-of-work blockchains despite minority
US20210026840A1 (en) Apparatus and Method for Determining A Finality of A Block Within A Blockchain

Legal Events

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