[go: up one dir, main page]

KR101827373B1 - Block window module having agreement algorithm for limiting mining, managing server and virtual money exchange system and method - Google Patents

Block window module having agreement algorithm for limiting mining, managing server and virtual money exchange system and method Download PDF

Info

Publication number
KR101827373B1
KR101827373B1 KR1020170109485A KR20170109485A KR101827373B1 KR 101827373 B1 KR101827373 B1 KR 101827373B1 KR 1020170109485 A KR1020170109485 A KR 1020170109485A KR 20170109485 A KR20170109485 A KR 20170109485A KR 101827373 B1 KR101827373 B1 KR 101827373B1
Authority
KR
South Korea
Prior art keywords
mining
block window
block
nodes
node
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020170109485A
Other languages
Korean (ko)
Inventor
전삼구
Original Assignee
주식회사 더블체인
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 더블체인 filed Critical 주식회사 더블체인
Priority to KR1020170109485A priority Critical patent/KR101827373B1/en
Application granted granted Critical
Publication of KR101827373B1 publication Critical patent/KR101827373B1/en
Priority to PCT/KR2018/003358 priority patent/WO2019045209A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/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/3678Payment 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 e-cash details, e.g. blinded, divisible or detecting double spending
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

본 발명은 블록체인 기반 가상화폐 거래 시스템 및 방법을 제공하며, 시스템마이닝 노드와 일반 노드와 마이닝 노드에 대해 특정 작업증명주기 이후에 채굴시도에 대해 일정한 제약을 부여하는 채굴 제한을 위한 합의 알고리즘을 포함하는 블록윈도우 모듈을 포함하고, 블록윈도우 모듈은, 마이닝 노드의 채굴시도의 결과를 해당 마이닝 노드와 연계하여 채굴이력정보를 기록하는 채굴이력 관리부와; 채굴성공을 달성한 마이닝 노드들 중 적어도 일부에 대해 일정 기간 동안 채굴시도의 결과를 무효화하거나 채굴시도를 금지하는 블록윈도우를 설정하는 블록윈도우 생성부를 포함한다. 블록윈도우 모듈은 채굴이력정보를 기초로 블록윈도우 사이즈를 산출하여 블록윈도우를 제공하는 블록윈도우 사이즈 산출부 및 현재 또는 최근 일정기간 동안 일반노드들 간의 가상화폐 거래이력정보를 제공하는 거래이력 관리부를 더 포함한다. 블록윈도우 사이즈 산출부로부터 산출되는 블록윈도우 사이즈(y)는, y = [0.7 (N)×현재까지의 누적 블록수)]/(10년간 누적 블록수)로 정의되며, N은 노드인수로서 A=(전체 참여 노드수), B=(전체 참여 노드수)/(전체 마이닝 노드수), C=(전체 마이닝 노드수)/(마이닝 성공 경험이 있는 참여 마이닝 노드수) 중 어느 하나이다. 따라서, 소수 마이닝 노드의 채굴독과점을 효과적으로 방지할 수 있다.The present invention provides a block chain-based virtual currency trading system and method, and includes a consensus algorithm for mining restriction that gives certain constraints to a mining attempt after a specific job certification period for system mining nodes, general nodes and mining nodes And a block window module including a mining history management unit for recording the mining history information by linking the mining node's mining attempt result with the mining node; And a block window generation unit for setting a block window for invalidating the result of the mining attempt or inhibiting the mining attempt for at least a part of the mining nodes that have succeeded in mining. The block window module includes a block window size calculating unit for calculating a block window size based on the digesting history information and providing a block window and a transaction history managing unit for providing virtual currency transaction history information between general nodes during a current or recent period . The block window size (y) calculated from the block window size calculating unit is defined by y = [0.7 (N) x the cumulative number of blocks up to the present time] / (the cumulative number of blocks over 10 years) = (Total number of participating nodes), B = (total number of participating nodes) / (total number of mining nodes), C = (total number of mining nodes) / (number of participating mining nodes having mining success experience). Therefore, it is possible to effectively prevent the mining monopoly of a few mining nodes.

Figure R1020170109485
Figure R1020170109485

Description

채굴 제한을 위한 합의 알고리즘을 포함하는 블록윈도우 모듈 및 관리 서버 그리고 가상화폐 거래 시스템 및 방법{BLOCK WINDOW MODULE HAVING AGREEMENT ALGORITHM FOR LIMITING MINING, MANAGING SERVER AND VIRTUAL MONEY EXCHANGE SYSTEM AND METHOD}Technical Field [0001] The present invention relates to a block window module and a management server including a consensus algorithm for mining restriction, a virtual money transaction system, and a virtual money transaction system.

본 발명은 블록윈도우 모듈 및 블록윈도우 관리 서버 이 모듈 또는 서버를 이용한 가상화폐거래 시스템 및 방법에 관한 것으로서, 특히 가상 화폐거래 시스템에서 소수 마이닝 노드들의 채굴 독점 또는 과점을 방지하거나, 참여 노드들에게 비교적 공평하게 채굴기회를 제공하고, 채굴에 필요한 자원이나 노력을 과도하게 사용하는 에너지 낭비도 감소시킬 수 있도록 채굴에 성공한 특정 마이닝 노드에게 채굴참여 기회를 제한하는 기능을 제공하는 채굴 제한을 위한 합의 알고리즘을 포함하는 블록윈도우 모듈 및 블록윈도우 관리 서버 이 모듈 또는 서버를 이용한 가상화폐거래 시스템 및 방법에 관한 것이다.The present invention relates to a virtual money trading system and method using a module or a server, and more particularly to a virtual money trading system in which a block monopoly or an oligopoly of a prime mining node is prevented, A consensus algorithm for mining restrictions that provides opportunities to equip mining opportunities and to limit mining opportunities to specific mining nodes that have been successfully mined to reduce waste of energy that is excessive use of resources and efforts required for mining. And more particularly, to a virtual money trading system and method using the module or the server.

본 명세서에서 표현하는 "마이닝 노드"는 설명의 편의상 기능적인 측면을 강조하기 위한 것이며, 적어도 채굴기능을 가진 노드를 의미하고, 마이닝 노드의 경우에도 가상화폐 거래를 위한 월릿기능, 가상화폐 블록을 저장하는 데이터베이스 기능 등 일반 가상화폐 거래 시스템에 적용되는 모든 종류의 노드기능을 마이닝 노드 역시 가질 수 있다. 또한, 본 명세서에서 표현하는 "일반 노드"는 설명의 편의상 기능적인 측면을 강조하기 위한 것으로서 적어도 월릿기능, 송금 및 수금 기능을 가진 거래기능으로서의 일반 노드를 나타내지만 마이닝 기능 등의 별도의 다른 노드들이 가질 수 있다. 즉, 본 명세서에서는 노드의 명칭이 무엇이든지 노드는 그 명칭에서 의미하는 기능외에도 별도의 다른 기능을 더 포함할 수 있으며, 가상화폐시스템의 동작과 관련된 기능 및 본 발명의 목적을 달성할 수 있는 기능을 가질 수 있으면 특별히 제한을 두지 않는다.The term "mining node" used herein is intended to emphasize functional aspects for the sake of convenience of description and means at least a node having a mining function. In the case of a mining node, a wallet function for virtual currency trading, Mining nodes can also have all kinds of node functions that apply to general virtual currency trading systems such as database functions. The term "general node " in the present specification is intended to emphasize a functional aspect for the sake of convenience of description, and at least represents a general node as a transaction function having a wallet function, a money transfer function and a collection function. However, Lt; / RTI > That is, in this specification, the node may include other functions in addition to the functions denoted by the name, regardless of the name of the node, and may include functions related to the operation of the virtual money system and functions And the like.

블록체인은 비트코인 등과 같은 분산형 가상화폐 거래 시스템에서 노드들간에 서로 주고받는 가상화폐의 거래를 지속적으로 기록하는 거래기록장부의 기능을 가지고 있다. 이와 같이 거래기록장부의 기능을 하는 블록체인이 분산형 가상화폐 거래 시스템에서 필요한 이유는 가상화폐가 실물의 물리적 화폐로 존재하는 것이 아니 아니라 가상적으로만 존재하기 때문이다. 즉, 최초 생성된 100원의 가상화폐는 시간이 흐르면서 시스템 내에서 총합의 개념으로는 언제나 존재하지만, 그 형태는 1원씩 백번으로 나누어져 시스템내 100개의 노드에 각각 위치한 100개의 전자지갑에 존재할 수도 있고, 예를 들면, 다른 가상화폐 200원과 결합하여 특정 노드의 지갑에서 300원 속에 포함되어 존재할 수도 있다. 따라서, 현재 거래하는 가상화폐가 정당성을 가지고 있는가를 판단할 수 있는 자료는 결국 그 가상화폐가 최초 생성될 때부터 현재까지 거래 내역을 역추적하여 최초 생성될 당시부터 현재까지 일관성 있게 정당성을 가지고 있는지의 여부를 확인하는 수 밖에 없다. 은행과 같은 중앙서버가 총괄적으로 가상화폐를 관리하는 경우에는 중앙서버에서 이러한 가상화폐 거래기록을 총괄적으로 기록하지만, 블록체인의 경우에는 분산형 노드들로 이루어진 분산형 시스템 내에서 노드들에 의해 기록되고 있으며, 이에 블록체인이 거래될 때마다 그 거래내용을 암호화하여 블록을 생성하고 새롭게 생성된 블록을 블록체인에 결합하여 거래장부를 업데이트 한다. 블록체인의 암호화의 강점은 과거로부터 현재까지 거래가 발생할 때마다 기록된 내용이 연쇄적으로 해쉬값으로 엮여 있다는 점이다. 따라서, 한 개의 특정 해쉬값이 아니라 거래시스템 내 전체 거래의 암호를 풀어내지 못하는 한 거래내용을 조작할 수 없다는 점과, 또한, 시시각각으로 다시 거래되는 내용이 블록으로 생성되어 블록체인에 결합되는 과정에 있고, 또한, 그 거래장부가 분산형으로 여러 노드에 존재하기 때문에 현대의 컴퓨터로는 수백년간의 시간이 걸려도 전체적으로 블록체인 암호를 해독하거나 블록체인 기반 가상화폐거래 시스템을 해킹하는 것은 불가능하다. 즉, 블록체인을 기반으로 하는 가상화폐는 기존의 블록체인에 기재된 거래내역을 통해 정당성이 검증될 수 있고, 그 거래 내역을 현실적으로 조작할 수 없다는 점에서 신뢰성을 가진다고 할 수 있다.The block chain has the function of a transaction record book that continuously records transactions of virtual currency exchanged between nodes in a distributed virtual currency transaction system such as bit coin. The reason why the block chain functioning as a transaction record book is necessary in a distributed virtual currency trading system is that virtual money does not exist as a real physical currency but exists virtually only. In other words, the first 100 won virtual currency is always present in the system as a total concept over time, but its form can be divided into one hundred circles, and it can exist in 100 electronic wallets located in 100 nodes in the system For example, it may be included in a circle of 300 yen in a wallet of a specific node in combination with another virtual money 200 circle. Therefore, the data that can judge whether the virtual currency that is currently being traded is legitimate can be traced back from the time when the virtual currency was originally created until now to determine whether it is consistently valid I have no choice but to confirm. When a central server such as a bank manages a virtual currency as a whole, the central server collectively records these virtual currency transaction records. In the case of a block chain, however, the transactions are recorded by nodes in a distributed system of distributed nodes Each time a block chain is traded, the transaction is encrypted to generate a block, and the newly created block is combined into a block chain to update the transaction record. The strength of encryption in a block chain is that the recorded contents are cascaded into a hash value each time a transaction occurs from the past to the present. Therefore, it is not possible to manipulate the contents of the transaction as long as it can not decrypt the entire transaction in the transaction system, rather than one particular hash value. In addition, the contents that are re- , And since the transaction book is distributed in various nodes, it is impossible to decipher the block chain password or hack the block chain-based virtual currency trading system as a whole even though it takes hundreds of years with modern computers. That is, the virtual money based on the block chain can be verified through the transaction details described in the existing block chain, and can be said to have reliability in that the transaction details can not be manipulated realistically.

따라서, 블록체인을 이용하는 가상화폐 거래 시스템에서는 시시각각으로 이루어지는 거래가 전체 노드에 전파되고, 암호화되어 블록으로 새롭게 거래기록을 생성하고, 생성된 새로운 블록은 다시 블록체인에 결합하는 작업이 끊임없이 진행된다.Therefore, in a virtual currency trading system using a block chain, a transaction that occurs every minute is propagated to all nodes, encrypted, and a new transaction record is generated as a block, and the generated new block is connected to a block chain.

이와 같이, 새롭게 이루어지는 거래내역들을 함께 묶어서 일정한 주기(예를 들면, 1분, 3분, 10분 등) 동안 한 개의 새로운 블록으로 생성하고, 그 블록이 정당성을 가지면 기존의 블록체인에 연결하는 과정을 소위 “작업증명(proof of work)”이라고 한다.As described above, when a new block is newly created for a predetermined period (for example, 1 minute, 3 minutes, 10 minutes, etc.) by bundling the newly formed transaction details and the block is connected to an existing block chain Called "proof of work".

일반적으로 작업증명의 합의알고리즘은 다음과 같은 프로세스로 진행된다.Generally, the algorithm of the proof of agreement of the proof of work proceeds to the following process.

WS1: 새로운 거래 내역이 모든 노드에 알려진다.WS1: New transaction details are known to all nodes.

WS2: 각 노드들은 새로운 거래 내역을 블록에 취합한다.WS2: Each node collects new transaction details into a block.

WS3: 각 노드들은 그 블록에 대한 작업증명을 찾는 과정을 수행한다.WS3: Each node performs a process of finding a proof of work for the block.

WS4: 어떤 노드가 작업증명을 성공적으로 수행했을 때, 모든 노드에게 그 블록을 전송한다.WS4: When a node successfully performs a proof of operation, it sends the block to all nodes.

WS5: 노드들은 그 블록이 모든 거래가 이전에 쓰이지 않고 유효한 경우에만 승인한다.WS5: Nodes only acknowledge the block if all transactions are not previously used and valid.

WS6: 노드들은 자신이 승인한 블록의 해시를 이전 해시로 사용하여 다음 블록을 생성하는 과정을 통해 그 블록이 승인되었다는 의사를 나타낸다. 이 경우 노드들은 항상 가장 긴 체인을 옳은 것으로 간주하며 그 체인이 계속 확장하도록 작업을 수행한다.WS6: Nodes indicate that the block has been approved through the process of generating the next block using the hash of the block it has approved as the previous hash. In this case, the nodes always consider the longest chain to be correct and perform the operation so that the chain continues to expand.

비트코인 등과 같은 가상화폐 시스템에서는 이와 같은 과정을 통해 다수의 노드를 통해 새로운 거래가 최초 발생부터 현재까지 일관성 있게 시간적으로 중복성이 없는 무결성 거래임을 증명한다는 점에서 독특함을 가진다.In a virtual currency system such as a bit coin, it is unique in that a new transaction through a plurality of nodes through such a process proves to be an integrity transaction that is consistently and temporally non-redundant from the first generation to the present.

이를 위해서는 작업증명에 참여하는 노드(이하 "마이닝 노드"라 함)들에게 적극적으로 참여할 수 있는 보상 동기를 주어야 하는데, 이 부분이 소위 말하는 "채굴(mining)"이다. 즉, 채굴을 수행하는 마이닝 노드가 특정 블록의 해쉬값을 풀면 거래기록을 불록에 기록하여 새로운 블록을 생성하게 되는데 이 때 일정한 가상화폐를 보상으로 지불하게 된다.In order to do this, it is necessary to give compensation motive to actively participate in nodes (hereinafter referred to as "mining nodes") participating in the proof of work, and this part is so-called "mining". That is, when a mining node that performs mining solves a hash value of a specific block, a transaction record is recorded in a block and a new block is created. In this case, a certain virtual money is paid as compensation.

그러나, 이러한 작업증명의 능력이 특성상 채굴에 참여하는 마이닝 노드의 성능, 즉 컴퓨터 능력에 의존할 수 밖에 없기 때문에, 컴퓨터 능력을 집중화한 소수의 개체 또는 단체들에게 채굴이 집중되는 경향을 보이게 된다는 점에서 문제가 있다. 강력한 컴퓨터 파워를 가진 소수의 마이닝 노드에게 채굴이 집중될 경우, 나머지 노드들은 의욕을 상실하여 참여 동기를 잃어가게 되며, 결과적으로 다수의 노드가 수행해야 할 작업증명이 소수의 노드들에게 편중되면서, 블록체인의 검증에 중대한 위협이 될 수 있다. 즉, 소수의 노드들이 블록체인 검증을 독점 또는 과점할 경우에는 이들 독과점 마이닝 노드들이 단합하여 검증시스템을 무력하게 하면, 모든 가상화폐거래의 무결성을 보장할 수 없게 되기 때문에 가상화폐 시스템의 붕괴가 초래될 수 있는 중대한 문제가 발생할 수 있다.However, due to the nature of these proofs, it is dependent on the performance of the mining nodes participating in mining, that is, the computer capabilities, so that the mining tendency is concentrated in a small number of individuals or groups concentrating their computer skills There is a problem in. When mining is concentrated on a small number of mining nodes with strong computer power, the remaining nodes lose motivation and lose their motivation for participation. As a result, the proof of work to be performed by a plurality of nodes is concentrated on a small number of nodes, This can pose a serious threat to the verification of the block chain. In other words, if a few nodes monopolize or block the block chain verification, if these monopoly mining nodes are unified to disable the verification system, the integrity of all virtual currency transactions can not be guaranteed, resulting in the collapse of the virtual monetary system There can be serious problems that can happen.

또한, 가상화폐 시스템의 신규화폐 공급은 이와 같은 마이닝 노드들이 채굴한 가상화폐를 통해 이루어지기 때문에 가상화폐가 소수의 과점 마이닝 노드들에게 편중되어 가상화폐의 빈익빈 부익부 현상을 가중시킬 수 있다는 점에서도 문제가 있다.In addition, since the new money supply of the virtual money system is performed through the virtual money mined by the mining nodes, the virtual money is concentrated on a small number of oligopolistic mining nodes, .

그리고, 참여 마이닝 노드들 간의 컴퓨터 파워를 향상시키기 위해 과도한 경쟁으로 자원낭비가 심대해지고 있다. 즉, 컴퓨터 파워가 증가하여 블록생성이 빨라지면 해쉬 난이도를 높여서 일정채굴주기(즉 작업증명 주기) 조건(예를 들면, 1분, 10분 등)을 맞출 수는 있지만, 이 경우 더욱더 컴퓨터 파워를 높이려는 노력으로 인해 검증작업에 참여할 수 있는 능력을 가진 소수 노드들 외에는 참여 개체 또는 단체의 수가 줄어들어 더욱더 채굴 독과점율만 높아지고, 자원낭비만 가속화되고 있다.
예를 들면, 종래 기술로서 비특허문헌1 (이혁준 외 1명. ‘비트코인의 신뢰구조와 이중지불의 위협’. 정보보호학회지. 정보보호학회(2016년 4월, 제26권 제2호, pp.25-30), <URL : http://www.dbpia.co.kr/Journal/ArticleDetail/NODE06669072>)의 경우, 가상화폐의 무결성을 해치는 부당한 이중지불을 방지하기 위한 방안으로, 정당한 작업증명 노드를 50% 이상 확보하는 방안(P29, "4.2.5 < 50%")(비특허문헌 1의 제1 방안과), 거래의 중요도에 따라서 승인 횟수를 조정하는 방안(P29, "5.1")(비특허문헌 1의 제2방안), 채굴속도 등의 동향을 살펴서 위험이 있다고 감지되면 경고를 하고 거래연기 등과 같은 원시적인 방안(P29, "5.2")(비특허문헌 1의 제3방안)을 제안하고 있다.
또 다른 종래기술로서, 예를 들면, 비특허문헌2 (김소희 외 2명, ‘비트코인 블록체인의 이기적인 채굴 방안 분석’. 한국통신학회 추계종합학술발표회 논문집. 한국통신학회. 2015년 11월, pp.423-424
<URL : http://www.dbpia.co.kr/Journal/ArticleDetail/NODE06564742>)
는 이중지불이 발생할 때 주로 발생하는 현상인 블록분기의 문제에 초점을 두어 불록이 분기될 경우 그 현상을 다른 채굴자에게 전파하여 채굴자들이 선택성을 갖게 하면서 승인횟수를 1/2(50%의 절반)로 분산시켜서 결과적으로 유효성을 상실시키거나, 분기된 블록에게는 이유 여하를 불문하고 채굴보상을 주지 않는 것, 타임스탬프로 블록의 생성시기를 알려주어 최근의 블록만을 채택하도록 하는 방식이 있다.
그러나, 비특허문헌 1 및 2는 모두 무결성 방지에 초점을 두는 기술이지만 채굴독점으로 인하여 발생하는 문제를 방지할 수 없고, 더욱이 이와 같은 채굴독점으로 인하여 작은 컴퓨터 성능을 가진 다수의 일반 채굴자들의 채굴의욕 상실을 방지할 수 없다는 점에서 근본적인 문제가 있다.
In addition, excessive competition is wasting resources in order to improve computer power among participating mining nodes. In other words, if the computer power increases and the block generation speeds up, it is possible to increase the hash difficulty so that a certain mining cycle (ie, job certification cycle) condition (for example, 1 minute, 10 minutes, etc.) As a result of efforts to increase the number of participating entities or groups, the number of participating entities or groups is increased, and only the number of mining monopolies is increased, and resource waste is accelerating.
For example, as a conventional technique, non-patent document 1 (Lee, Hyuk-joon, 1, 'Reliable structure of bit coin and threat of double payment') Journal of the Korea Institute of Information Security and Cryptology (Apr. 2016, pp.25-30), <URL: http://www.dbpia.co.kr/Journal/ArticleDetail/NODE06669072>), as a method to prevent unfair double payment that damages the integrity of virtual money, (P29, "4.2.5 <50%") (based on the first method of non-patent document 1), a method of adjusting the number of approvals according to the importance of transactions (P29, "5.1" (P29, "5.2") (third method of non-patent document 1) (see Non-Patent Document 1, second method), and mining speed, ).
As another conventional technique, for example, Non-Patent Document 2 (Kim, Soh-hee et al., &Quot; Self-exploiting scheme analysis of bit coin block chain &quot;. Proceedings of KIIS Fall Conference, pp.423-424
<URL: http://www.dbpia.co.kr/Journal/ArticleDetail/NODE06564742>
(50%) of the number of approvals by making the minerals selectable by spreading the phenomenon to other miners when the block is branched, focusing on the problem of block branching, Half), resulting in loss of validity, or that the branching block is not given any mining compensation regardless of the reason, and the time stamp is used to inform the generation time of the block so that only the latest block is adopted.
However, both Non-Patent Documents 1 and 2 focus on prevention of integrity, but can not prevent the problem caused by mining monopoly. Moreover, because of such mining monopoly, many miners There is a fundamental problem in that it can not prevent loss of motivation.

삭제delete

- 이혁준 외 1명. ‘비트코인의 신뢰구조와 이중지불의 위협’. 정보보호학회지. 정보보호학회(2016년 4월, 제26권 제2호, pp.25-30), <URL : http://www.dbpia.co.kr/Journal/ArticleDetail/NODE06669072>- Lee Hyuk Jun and 1 other. 'Bitcoin' s trust structure and threat of dual payments'. Journal of information security. Journal of the Korea Institute of Information Security and Cryptology (April 2016, 26, No. 2, pp.25-30), <URL: http://www.dbpia.co.kr/Journal/ArticleDetail/NODE06669072> - 김소희 외 2명, ‘비트코인 블록체인의 이기적인 채굴 방안 분석’. 한국통신학회 추계종합학술발표회 논문집. 한국통신학회. 2015년 11월, pp.423-424- Kim Sookhee et al., 'Analysis of self-exploitation strategy of bit coin block chain'. Proceedings of the Korean Institute of Communication Sciences Conference. Korean Institute of Communication Sciences. November 2015, pp.423-424 <URL : http://www.dbpia.co.kr/Journal/ArticleDetail/NODE06564742><URL: http://www.dbpia.co.kr/Journal/ArticleDetail/NODE06564742>

본 발명은 이와 같은 종래 기술의 문제점을 해소하기 위한 것으로서, 일실시 예에 따른 목적은 소수 마이닝 노드에게 집중되는 채굴 독과점율을 경감할 수 있는 블록윈도우 모듈 및 블록윈도우 관리 서버, 이 모듈 또는 서버를 이용한 가상화폐거래 시스템 및 방법을 제공하는 것이다.SUMMARY OF THE INVENTION Accordingly, the present invention has been made keeping in mind the above problems occurring in the prior art, and it is an object of the present invention to provide a block window module and a block window management server capable of reducing a min- And to provide a virtual money transaction system and method using the same.

본 발명의 다른 일실시예에 따른 목적은 가상화폐 시스템에서 작업증명에 참여하는 마이닝 노드의 개체수 감소를 방지하고, 다수의 마이닝 노드가 참여할 수 있는 동기를 부여할 수 있고, 결과적으로 채굴경쟁을 위한 컴퓨터 파워의 과도한 투입에 따른 자원낭비 방지와 채굴 가상화폐의 공평한 분배를 도모할 수 있는 채굴 제한을 위한 합의 알고리즘을 포함하는 블록윈도우 모듈 및 블록윈도우 관리 서버 및 이 모듈 또는 서버를 이용한 가상화폐거래 시스템 및 방법을 제공하는 것이다.Another object of the present invention is to prevent a decrease in the number of mining nodes participating in a proof of work in a virtual money system and to give a motivation to participate in a plurality of mining nodes, A block window module and a block window management server including a consensus algorithm for mining restriction to prevent resource waste due to excessive input of computer power and equitable distribution of mined virtual money, and a virtual money trading system And a method thereof.

본 발명의 일실시예에 따른 목적을 실현하기 위한 제1양태는 작업증명에 참여하는 마이닝 노드와 가상화폐 거래를 위한 일반 노드를 적어도 포함하는 블록체인 기반 가상화폐 거래 시스템으로서, 상기 가상화폐 거래시스템은 특정 작업증명주기에 채굴성공을 달성한 마이닝 노드에 대해 상기 특정 작업증명주기 이후에 채굴시도에 대해 일정한 제약을 부여하는 채굴 제한을 위한 합의 알고리즘을 포함하는블록윈도우 모듈을 포함하고, 상기 블록윈도우 모듈은, 상기 작업증명 과정에서 마이닝 노드의 작업증명 동작 중 하나인 채굴시도의 결과를 해당 마이닝 노드와 연계하여 채굴이력정보를 기록하는 채굴이력 관리부와; 상기 채굴이력정보에 기초하여 채굴시도를 수행한 결과 채굴성공을 달성한 마이닝 노드들 중 적어도 일부에 대해 해당 작업증명주기 이후 일정 기간 동안 채굴시도의 결과를 무효화하거나 채굴시도를 금지하는 블록윈도우를 설정하는 블록윈도우 생성부를; 포함하고, 상기 채굴이력정보는 블록체인에 연결되는 누적 블록수, 참여 마이닝 노드수 정보, 채굴에 성공한 경력이 있는 마이닝 노드수 정보, 개별 마이닝 노드의 채굴 이력 정보, 마이닝 노드들의 채굴 성공율, 상위 마이닝 노드들의 채굴 독과점율, 과점율중 적어도 하나를 포함하고, 상기 블록윈도우 모듈은 상기 채굴이력정보를 기초로 채굴에 성공한 마이닝 노드에 대해 설정할 블록윈도우 사이즈를 산출하여 블록윈도우를 제공하는 블록윈도우 사이즈 산출부 및 현재 또는 최근 일정기간 동안 일반노드들 간의 가상화폐 거래이력정보를 제공하는 거래이력 관리부를 더 포함하며, 상기 블록윈도우 사이즈 산출부로부터 산출되는 상기 블록윈도우 사이즈(y)는, y = [0.7 (N)×현재까지의 누적 블록수)]/(10년간 누적 블록수)로 정의되며, 상기 N은 노드인수로서 A=(전체 참여 노드수), B=(전체 참여 노드수)/(전체 마이닝 노드수), C=(전체 마이닝 노드수)/(마이닝 성공 경험이 있는 참여 마이닝 노드수)중 어느 하나이다.A first aspect for realizing an object according to an embodiment of the present invention is a block chain-based virtual currency trading system including at least a mining node participating in a proof of work and a general node for a virtual currency transaction, Includes a block window module including a consensus algorithm for mining restricting a mining attempt to a mining attempt after the specific work proof period for a mining node that has achieved a mining success in a specific work proof cycle, The module includes a mining history management unit for recording the mining history information by linking the mining node with a result of mining attempt, As a result of performing a mining attempt based on the mining history information, a block window is set for at least a part of the mining nodes that have succeeded in mining success, such that a result of mining attempt is invalidated or a mining attempt is prohibited for a predetermined period after the corresponding job proving period A block window generating unit for generating a block window; The mining history information includes information on the number of cumulative blocks connected to the block chain, information on the number of participating mining nodes, information on the number of mining nodes having a successful mining history, mining history information of individual mining nodes, And the block window module calculates a block window size to be set for a mining node that has successfully been mined based on the mining history information and calculates a block window size for providing a block window part And a transaction history management unit for providing the virtual currency transaction history information between the general nodes during a current or recent period, and the block window size (y) calculated from the block window size calculation unit is y = [0.7 N is the total number of nodes involved, and B is the total number of participating nodes / (total number of participating nodes) / (total number of participating nodes) / (Number of nodes), C = (total number of mining nodes) / (number of participating mining nodes having mining success experience).

삭제delete

삭제delete

바람직하게는, 상기 변수 A, B 및 C 중 적어도 하나는 상기 거래이력정보로부터의 일정기간 거래량 또는 거래량 변화율을 반비례 인수로 포함할 수 있다.
본 발명의 일실시예에 따른 목적을 실현하기 위한 제2양태는 작업증명에 참여하는 마이닝 노드와 가상화폐 거래를 위한 일반 노드를 적어도 포함하는 블록체인 기반 가상화폐 거래 시스템으로서, 상기 가상화폐 거래시스템은 특정 작업증명주기에 채굴성공을 달성한 마이닝 노드에 대해 상기 특정 작업증명주기 이후에 채굴시도에 대해 일정한 제약을 부여하는 채굴 제한을 위한 합의 알고리즘을 포함하는블록윈도우 모듈을 포함하고, 상기 블록윈도우 모듈은, 상기 작업증명 과정에서 마이닝 노드의 작업증명 동작 중 하나인 채굴시도의 결과를 해당 마이닝 노드와 연계하여 채굴이력정보를 기록하는 채굴이력 관리부와; 상기 채굴이력정보에 기초하여 채굴시도를 수행한 결과 채굴성공을 달성한 마이닝 노드들 중 적어도 일부에 대해 해당 작업증명주기 이후 일정 기간 동안 채굴시도의 결과를 무효화하거나 채굴시도를 금지하는 블록윈도우를 설정하는 블록윈도우 생성부를; 포함하고, 상기 채굴이력정보는 블록체인에 연결되는 누적 블록수, 참여 마이닝 노드수 정보, 채굴에 성공한 경력이 있는 마이닝 노드수 정보, 개별 마이닝 노드의 채굴 이력 정보, 마이닝 노드들의 채굴 성공율, 상위 마이닝 노드들의 채굴 독과점율, 과점율중 적어도 하나를 포함하고, 상기 블록윈도우 모듈은 상기 채굴이력정보를 기초로 채굴에 성공한 마이닝 노드에 대해 설정할 블록윈도우 사이즈를 산출하여 블록윈도우를 제공하는 블록윈도우 사이즈 산출부 및 현재 또는 최근 일정기간 동안 일반노드들 간의 가상화폐 거래이력정보를 제공하는 거래이력 관리부를 더 포함하며, 상위 일정비율의 채굴 성공율을 차지하는 마이닝 노드의 과점율(R)을 다음과 같이 정의할 때, R=[상위 일정 비율의 마이닝 노드의 채굴량(블록수)/전체 참여 마이닝 노드의 채굴량(블록수)], 단 채굴기간은 최근 일정기간, 블록윈도우 사이즈(y)는, y=(과점율) ×nP(n은 자연수, P는 블록생성 주기로서)로 정의되며, 상기 변수 A, B 및 C 중 적어도 하나는 상기 거래이력정보로부터의 일정기간 거래량 또는 거래량 변화율을 반비례 인수로 포함할 수 있다.
Preferably, at least one of the variables A, B, and C may include a periodic transaction amount or a transaction amount change rate as an inverse factor from the transaction history information.
A second aspect for realizing an object according to an embodiment of the present invention is a block chain-based virtual currency trading system including at least a mining node participating in a proof of work and a general node for a virtual currency transaction, Includes a block window module including a consensus algorithm for mining restricting a mining attempt to a mining attempt after the specific work proof period for a mining node that has achieved a mining success in a specific work proof cycle, The module includes a mining history management unit for recording the mining history information by linking the mining node with a result of mining attempt, As a result of performing a mining attempt based on the mining history information, a block window is set for at least a part of the mining nodes that have succeeded in mining success, such that a result of mining attempt is invalidated or a mining attempt is prohibited for a predetermined period after the corresponding job proving period A block window generating unit for generating a block window; The mining history information includes information on the number of cumulative blocks connected to the block chain, information on the number of participating mining nodes, information on the number of mining nodes having a successful mining history, mining history information of individual mining nodes, And the block window module calculates a block window size to be set for a mining node that has successfully been mined based on the mining history information and calculates a block window size for providing a block window part And a transaction history management unit for providing the virtual currency transaction history information between the general nodes during the present or recent period. When defining the oligonucleotide ratio (R) of the mining node occupying the success rate of the upper certain rate as follows (Y) = y (y) = y (y) = y (y), where y is the number of blocks minus the total number of mining nodes ) N nP (where n is a natural number and P is a block generation period), and at least one of the variables A, B, and C may include a periodic transaction amount or a transaction amount change rate as an inverse factor from the transaction history information .

삭제delete

바람직하게는, 상기 마이닝 노드에 대해 해당 채굴 성공율에 비례하여 차별적으로 블록윈도우 사이즈가 설정되거나, 무차별적으로 블록윈도우가 설정되며, 상기 노드인수(N)는 상기 거래이력정보로부터의 일정기간 거래량을 반비례 인수로 포함한다.Preferably, the block window size is set differently for the mining node in proportion to the mining success rate, or the block window is set indiscriminately, and the node factor N is a value obtained by subtracting a predetermined period trading amount from the transaction history information Include as an inverse factor.

바람직하게는, 상기 블록윈도우 모듈은 특정 작업증명주기 동안 시스템 내에서 블록이 생성되지 않는 블랙아웃 발생여부를 감시하는 블랙아웃 감시부를 더 포함하고, 시스템 내에서 블랙아웃이 발생한 것을 감지할 때 상기 블랙아웃 감시부는 상기 특정 작업증명주기 이후 작업증명주기에 마이닝 노드들에 대해 이미 설정된 블록윈도우 설정을 해제하는 블록윈도우 해제모드를 설정하며, 상기 블랙아웃 감시부는 상기 블록윈도우 해제모드가 설정된 이후 작업증명 주기 동안 블록이 생성된 것을 감지하면 즉시 블록윈도우 해제모드를 블록윈도우 모드로 전환하며, 상기 블록윈도우 모드에 따라서 상기 블록윈도우 생성부는 상기 블록윈도우 사이즈 산출부와 연동하여 블록윈도우를 다시 생성한다.Preferably, the block window module further includes a blackout monitoring unit for monitoring whether a blackout occurs in which no block is generated in the system during a specific job certification period, and when the blackout occurs in the system, Out monitoring unit sets a block window release mode for releasing the block window setting already set for the mining nodes in the task certification cycle after the specific task certification cycle, The block window release mode is immediately switched to the block window mode, and the block window generation unit generates the block window in cooperation with the block window size calculation unit according to the block window mode.

바람직하게는, 상기 블록윈도우 모듈은 특정 작업증명주기 동안 시스템 내에서 블록이 생성되지 않는 블랙아웃 발생여부를 감시하는 블랙아웃 감시부를 더 포함하고, 상기 특정 작업주기 동안 블록윈도우가 설정된 적어도 하나 이상의 마이닝 노드가 채굴시도를 수행하여 채굴이 무효화된 것을 상기 채굴이력관리부가 기록한 경우, 또한, 상기 블랙아웃 감시부가 상기 특정 작업주기 동안 블랙아웃이 발생한 것을 감지한 경우, 상기 채굴이력관리부에 기록된 해당 무효화 채굴을 유효채굴로 전환하는 언마이닝 전용모드를 설정하며, 상기 블랙아웃 감시부는 상기 언마이닝 전용모드가 설정된 이후 작업증명 주기 동안 블록이 생성된 것을 감지하면 즉시 언마이닝 전용모드를 블록윈도우 모드로 전환하며, 상기 블록윈도우 모드에 따라서 상기 블록윈도우 생성부는 상기 블록윈도우 사이즈 산출부와 연동하여 블록윈도우를 다시 생성한다.Preferably, the block window module further includes a blackout monitoring unit for monitoring whether a blackout occurs in which no block is generated in the system during a specific job certification period, and the blackout monitoring unit monitors at least one or more mining When the mining history management unit records that a mining attempt is made by the node to invalidate the mining operation and the blackout monitoring unit detects that blackout has occurred during the specific operation period, Wherein the blackout monitoring unit sets the unminifying dedicated mode to the block window mode immediately after detecting that the block is generated during the job certification period after the unminifying dedicated mode is set. In accordance with the block window mode, Generation unit may regenerate the block window in conjunction with the block diagram window size computing unit.

상기 가상화폐 거래 시스템은 상기 블록윈도우 모듈을 업데이트하여 노드들에게 프레임워크로 제공하는 블록윈도우 관리 서버를 더 포함하며, 상기 블록윈도우 관리 서버는 독립된 개체로서 일반 가상화폐 거래시스템에 특정 통신 커넥터를 통해 결합가능하고, 상기 블록윈도우 모듈은 업데이트될 때마다 상기 블록윈도우 관리 서버로부터 노드들에게 제공되거나, 노드들로부터 다른 노드들에게 전파된다.The virtual money transaction system further includes a block window management server for updating the block window module and providing the block window module as a framework to the nodes, wherein the block window management server is an independent entity, And the block window module is provided to the nodes from the block window management server each time it is updated or is propagated from the nodes to other nodes.

본 발명의 일실시예에 따른 제3양태는 작업증명에 참여하는 마이닝 노드와 가상화폐 거래를 위한 일반 노드를 적어도 포함하는 블록체인 기반 가상화폐 거래 시스템에서의 가상화폐 거래 방법으로서, 상기 가상화폐 거래시스템은 특정 작업증명주기에 채굴성공을 달성한 마이닝 노드에 대해 상기 특정 작업증명주기 이후에 채굴시도에 대해 일정한 제약을 부여하는 블록윈도우 모듈을 포함하고, 상기 블록윈도우 모듈의 채굴이력 관리부가 상기 작업증명 과정에서 마이닝 노드의 작업증명 동작 중 하나인 채굴시도의 결과를 해당 마이닝 노드와 연계하여 채굴이력정보를 기록하는 채굴이력정보 기록단계와; 상기 블록윈도우 모듈의 블록윈도우 생성부가 상기 채굴이력정보에 기초하여 채굴시도를 수행한 결과 채굴성공을 달성한 마이닝 노드들 중 적어도 일부에 대해 해당 작업증명주기 이후 일정 기간 동안 채굴시도의 결과를 무효화하거나 채굴시도를 금지하는 블록윈도우를 설정하는 블록윈도우 설정단계를; 포함하며, 바람직하게는, 상기 채굴이력정보는 블록체인에 연결되는 누적 블록수, 참여 마이닝 노드수 정보, 채굴에 성공한 경력이 있는 마이닝 노드수 정보, 개별 마이닝 노드의 채굴 이력 정보, 마이닝 노드들의 채굴 성공율, 상위 마이닝 노드들의 채굴 독과점율 중 적어도 하나를 포함하고, 상기 채굴이력정보 기록단계 이후, 상기 블록윈도우 모듈의 거래이력 관리부가 현재 또는 최근 일정기간 동안 일반노드들 간의 가상화폐 거래이력정보를 제공하는 단계와; 상기 블록윈도우 모듈의 블록윈도우 사이즈 산출부가 상기 채굴이력정보를 기초로 채굴에 성공한 마이닝 노드에 대해 설정할 블록윈도우 사이즈를 산출하여 블록윈도우를 제공하는 단계를; 더 포함하고, 상기 블록윈도우 사이즈 산출부로부터 산출되는 상기 블록윈도우 사이즈(y)는, y = [0.7 (N)×현재까지의 누적 블록수)]/(10년간 누적 블록수)로 정의되며, 상기 N은 노드인수로서 A=(전체 참여 노드수), B=(전체 참여 노드수)/(전체 마이닝 노드수), C=(전체 마이닝 노드수)/(마이닝 성공 경험이 있는 참여 마이닝 노드수)중 어느 하나이다.A third aspect according to an embodiment of the present invention is a virtual money trading method in a block chain-based virtual money trading system including at least a mining node participating in a proof of work and a general node for a virtual currency transaction, The system includes a block window module that gives a certain restriction to a mining attempt after the specific job certification period for a mining node that has achieved mining success in a specific job proving cycle, and the mining history management unit of the block window module A mining history information recording step of recording the mining history information by linking the result of the mining attempt, which is one of the operation of the mining node's proof proving process, to the mining node; The block window generator of the block window module invalidates the result of the mining attempt for at least a part of the mining nodes that have achieved the mining success as a result of performing the mining attempt based on the mining history information, A block window setting step of setting a block window for prohibiting a mining attempt; Preferably, the mining history information includes a number of cumulative blocks connected to the block chain, information on the number of participating mining nodes, information on the number of mining nodes having a successful mining history, mining history information of individual mining nodes, mining of mining nodes Success rate, and mining monopoly rate of the upper mining nodes, and after the mining history information recording step, the transaction history management unit of the block window module provides the virtual currency transaction history information between the general nodes for the current or recent period ; Calculating a block window size to be set for a mining node in which the block window size calculating unit of the block window module succeeds in mining based on the mining history information to provide a block window; , The block window size (y) calculated from the block window size calculating unit is defined as y = [0.7 (N) x the cumulative number of blocks up to the present time)] / (the cumulative number of blocks over 10 years) N is the node factor, A = (total number of participating nodes), B = (total number of participating nodes) / (total number of mining nodes), C = (total number of mining nodes) ).

삭제delete

삭제delete

바람직하게는, 상기 변수 A, B 및 C 중 적어도 하나는 상기 거래이력정보로부터의 일정기간 거래량 또는 거래량 변화율을 반비례 인수로 포함할 수 있다.Preferably, at least one of the variables A, B, and C may include a periodic transaction amount or a transaction amount change rate as an inverse factor from the transaction history information.

본 발명의 일실시예에 따른 제4양태는 작업증명에 참여하는 마이닝 노드와 가상화폐 거래를 위한 일반 노드를 적어도 포함하는 블록체인 기반 가상화폐 거래 시스템에서의 가상화폐 거래 방법으로서, 상기 가상화폐 거래시스템은 특정 작업증명주기에 채굴성공을 달성한 마이닝 노드에 대해 상기 특정 작업증명주기 이후에 채굴시도에 대해 일정한 제약을 부여하는 블록윈도우 모듈을 포함하고, 상기 블록윈도우 모듈의 채굴이력 관리부가 상기 작업증명 과정에서 마이닝 노드의 작업증명 동작 중 하나인 채굴시도의 결과를 해당 마이닝 노드와 연계하여 채굴이력정보를 기록하는 채굴이력정보 기록단계와; 상기 블록윈도우 모듈의 블록윈도우 생성부가 상기 채굴이력정보에 기초하여 채굴시도를 수행한 결과 채굴성공을 달성한 마이닝 노드들 중 적어도 일부에 대해 해당 작업증명주기 이후 일정 기간 동안 채굴시도의 결과를 무효화하거나 채굴시도를 금지하는 블록윈도우를 설정하는 블록윈도우 설정단계를; 포함하며, 바람직하게는, 상기 채굴이력정보는 블록체인에 연결되는 누적 블록수, 참여 마이닝 노드수 정보, 채굴에 성공한 경력이 있는 마이닝 노드수 정보, 개별 마이닝 노드의 채굴 이력 정보, 마이닝 노드들의 채굴 성공율, 상위 마이닝 노드들의 채굴 독과점율 중 적어도 하나를 포함하고, 상기 채굴이력정보 기록단계 이후, 상기 블록윈도우 모듈의 거래이력 관리부가 현재 또는 최근 일정기간 동안 일반노드들 간의 가상화폐 거래이력정보를 제공하는 단계와; 상기 블록윈도우 모듈의 블록윈도우 사이즈 산출부가 상기 채굴이력정보를 기초로 채굴에 성공한 마이닝 노드에 대해 설정할 블록윈도우 사이즈를 산출하여 블록윈도우를 제공하는 단계를; 더 포함하고, 상위 일정비율의 채굴 성공율을 차지하는 마이닝 노드의 과점율(R)을 다음과 같이 정의할 때, R=[상위 일정 비율의 마이닝 노드의 채굴량(블록수)/전체 참여 마이닝 노드의 채굴량(블록수)], 단 채굴기간은 최근 일정기간, 블록윈도우 사이즈(y)는, y=(과점율) ×nP(n은 자연수, P는 블록생성 주기로서)로 정의되며, 상기 변수 A, B 및 C 중 적어도 하나는 상기 거래이력정보로부터의 일정기간 거래량 또는 거래량 변화율을 반비례 인수로 포함할 수 있다.A fourth aspect according to an embodiment of the present invention is a virtual currency trading method in a block chain-based virtual currency trading system including at least a mining node participating in a proof of work and a general node for a virtual currency transaction, The system includes a block window module that gives a certain restriction to a mining attempt after the specific job certification period for a mining node that has achieved mining success in a specific job proving cycle, and the mining history management unit of the block window module A mining history information recording step of recording the mining history information by linking the result of the mining attempt, which is one of the operation of the mining node's proof proving process, to the mining node; The block window generator of the block window module invalidates the result of the mining attempt for at least a part of the mining nodes that have achieved the mining success as a result of performing the mining attempt based on the mining history information, A block window setting step of setting a block window for prohibiting a mining attempt; Preferably, the mining history information includes a number of cumulative blocks connected to the block chain, information on the number of participating mining nodes, information on the number of mining nodes having a successful mining history, mining history information of individual mining nodes, mining of mining nodes Success rate, and mining monopoly rate of the upper mining nodes, and after the mining history information recording step, the transaction history management unit of the block window module provides the virtual currency transaction history information between the general nodes for the current or recent period ; Calculating a block window size to be set for a mining node in which the block window size calculating unit of the block window module succeeds in mining based on the mining history information to provide a block window; (R) of a mining node that occupies the highest success rate of mining success rate is defined as follows: R = [minus number of mining nodes of the upper certain ratio / number of all mining nodes (N is a natural number, and P is a block generation period), and the variables A, B, and C are defined by the following equation (1) B, and C may include, as inverse factors, a certain period of transaction amount or a change amount of transaction amount from the transaction history information.

바람직하게는, 상기 블록윈도우 제공 단계에서, 상기 마이닝 노드에 대해 해당 채굴 성공율에 비례하여 차별적으로 블록윈도우 사이즈가 설정되거나, 무차별적으로 블록윈도우가 설정되며, 상기 노드인수(N)는 상기 거래이력정보로부터의 일정기간 거래량을 반비례 인수로 포함한다.Preferably, in the block window providing step, a block window size is set differently in proportion to a mining success rate of the mining node, or a block window is set indiscriminately, and the node argument (N) The amount of transactions from the information for a certain period is included as an inverse factor.

바람직하게는, 상기 블록윈도우 모듈의 블랙아웃 감시부가 특정 작업증명주기 동안 시스템 내에서 블록이 생성되지 않는 블랙아웃 발생여부를 감시하는 블랙아웃 감시단계와; 블랙아웃이 발생한 것을 감지할 때 상기 블랙아웃 감시부가 상기 특정 작업증명주기 이후 작업증명주기에 마이닝 노드들에 대해 이미 설정된 블록윈도우 설정을 해제하는 블록윈도우 해제모드를 설정하는 블록윈도우 해제모드 설정단계와; 상기 블랙아웃 감시부가 상기 블록윈도우 해제모드 설정단계 이후 작업증명 주기 동안 블록이 생성된 것을 감지하면 즉시 블록윈도우 해제모드를 블록윈도우 모드로 전환하고, 상기 블록윈도우 모드에 따라서 상기 블록윈도우 생성부가 상기 블록윈도우 사이즈 산출부와 연동하여 블록윈도우를 다시 생성하는 단계를; 더 포함한다.Preferably, the blackout monitoring unit of the block window module monitors whether a blackout occurs in which no block is generated in the system during a specific job certification period; A block window release mode setting step of setting a block window release mode in which the blackout monitoring unit releases the block window setting already set for the mining nodes in the task certification cycle after the specific task certification cycle when detecting that blackout has occurred ; When the blackout monitoring unit detects that a block has been generated during the task verification period after the block window release mode setting step, immediately switches the block window release mode to the block window mode, and in response to the block window mode, Regenerating the block window in cooperation with the window size calculating unit; .

바람직하게는, 상기 블록윈도우 모듈의 블랙아웃 감시부가 특정 작업증명주기 동안 시스템 내에서 블록이 생성되지 않는 블랙아웃 발생여부를 감시하는 블랙아웃 감시단계와; 상기 특정 작업주기 동안 블록윈도우가 설정된 적어도 하나 이상의 마이닝 노드가 채굴시도를 수행하여 채굴이 무효화된 것을 상기 채굴이력관리부가 기록한 경우, 또한, 상기 블랙아웃 감시부가 상기 특정 작업주기 동안 블랙아웃이 발생한 것을 감지한 경우, 상기 채굴이력관리부에 기록된 해당 무효화 채굴을 유효채굴로 전환하는 언마이닝 전용모드를 설정하는 언마이닝 전용모드 설정단계와; 상기 블랙아웃 감시부가 상기 언마이닝 전용모드 설정단계 이후 작업증명 주기 동안 블록이 생성된 것을 감지하면 즉시 언마이닝 전용모드를 블록윈도우 모드로 전환하며, 상기 블록윈도우 모드에 따라서 상기 블록윈도우 생성부가 상기 블록윈도우 사이즈 산출부와 연동하여 블록윈도우를 다시 생성하는 단계를; 더 포함한다.Preferably, the blackout monitoring unit of the block window module monitors whether a blackout occurs in which no block is generated in the system during a specific job certification period; If the mining history management unit records that at least one mining node having a block window set by the mining node has been invalidated by mining attempt during the specific work period and that the blackout monitoring unit has generated blackout during the specific work period An unmining dedicated mode setting step of setting an unmining dedicated mode to switch the corresponding invalidation mining recorded in the mining history management unit to effective mining; Wherein when the blackout monitoring unit detects that a block has been generated during the operation proving period after the unminifying dedicated mode setting step, the blackout monitoring unit immediately switches the unminifying dedicated mode to the block window mode, Regenerating the block window in cooperation with the window size calculating unit; .

본 발명의 일실시예에 따른 제5양태는 상기 블록윈도우 모듈을 프레임워크로 저장한 저장매체를 제공한다.A fifth aspect according to an embodiment of the present invention provides a storage medium storing the block window module as a framework.

본 발명의 일실시예에 따른 제6양태는 상기 블록윈도우 모듈을 업데이트하여 노드들에게 제공가능하고, 가상화폐 거래시스템에 물리적으로 통신포트를 통해 연결하여 적용가능한 블록윈도우 관리서버를 제공한다.A sixth aspect according to an embodiment of the present invention provides a block window management server that can update the block window module and be provided to nodes, and is applicable to physically connect to a virtual currency trading system through a communication port.

이상과 같은 구성에 따라서, 본 발명은 다음과 같은 효과를 얻을 수 있다.According to the above configuration, the present invention can obtain the following effects.

이상과 같은 구성에 따라서, 본 발명은 다음과 같은 효과를 얻을 수 있다.According to the above configuration, the present invention can obtain the following effects.

첫째, 채굴에 성공한 마이닝 노드에 대해 언제든지 일정기간 추가 채굴을 금지하는 블록윈도우를 설정할 수 있기 때문에, 강력한 컴퓨터 파워를 가진 소수 마이닝 노드나, 소수 마이닝 노드가 결탁한 풀 마이닝 노드가 독점적, 과점적으로 채굴을 성공시키는 비율을 감소시킬 수 있다.First, since it is possible to set a block window for prohibiting additional mining at any time for mining nodes that have succeeded in mining, a few mining nodes having strong computer power or full mining nodes conspiring with few mining nodes are exclusively and exclusively The rate of successful mining can be reduced.

둘째, 마이닝 노드의 채굴 독점이나 과점 현상을 방지할 수 있기 때문에 결과적으로 채굴에 소외된 다수의 마이닝 노드나 일반 거래 노드들에게도 채굴 참여기회 또는 동기를 부여할 수 있어 작업증명이 일부 소수 마이닝 노드에게 집중되어 작업증명을 왜곡시키는 현상을 방지할 수 있다.Second, it can prevent mining monopoly or oligopoly of mining node. As a result, mining nodes or general trading nodes alienated from mining can be given mining opportunity or motivation. Thereby preventing the work proof from being distorted.

셋째, 가상화폐에서 채굴 또는 작업증명 프로세스는 현실화폐에서는 화폐발행과 같은 역할을 하기 때문에 본 발명의 블록윈도우 기법을 통해 가상화폐가 컴퓨터파워가 우수한 소수 부유한 계층에게 독점되지 않고 대중에게 널리 고르게 분배되는 효과를 얻을 수 있다.Third, since the mining or proof-of-work process in virtual money plays the role of money issuance in real money, the block window technique of the present invention allows the virtual money to be widely distributed evenly to the public, Can be obtained.

넷째, 블록윈도우 기법을 적용할 경우 컴퓨터 파워가 높아도 채굴금지 기간이 상대적으로 길어질 수 있어 컴퓨터 파워가 낮은 다수에게 채굴기회가 넘어가는 효과 때문에 굳이 컴퓨터 파워를 극단적으로 높이려는 시도 또는 무리한 편법을 동원한 채굴방식(예를 들면, 풀 마이닝 노드 집단의 결탁 등)이 실질적으로 불필요하다. 따라서, 과도하게 자원을 낭비하는 폐단과 사행심을 방지할 수 있다.Fourth, when applying the block window technique, even if the computer power is high, the period of prohibition of mining can be relatively long. Therefore, Method (e.g., concatenation of a pool mining node group, etc.) is substantially unnecessary. Therefore, it is possible to prevent the wasteful and wasted resources from being excessively wasted.

다섯째, 블록윈도우 모듈을 가상화폐 시스템이나 기타 블록체인을 기반으로 하는 관련 시스템에 일체로 결합하거나, 프레임워크 형태, 프레임워크를 저장한 저장매체 형태, 다운로드 형태, 프레임워크와 하드웨어가 함께 결합된 서버 형태 등으로 제공할 수 있으므로, 기존 가상화폐 시스템이나 기타 블록체인 기반 시스템에 간편하게 적용할 수 있어 새로운 기능에 따른 기존의 시스템을 해체하는 낭비요소를 제거할 수 있다.Fifth, a block window module may be integrally combined with a related system based on a virtual monetary system or other block chain, a form of a storage medium storing a framework type, a framework, a download form, a server combined with a framework and hardware It can be easily applied to an existing virtual money system or other block chain based system, thereby eliminating the waste of dismantling the existing system according to the new function.

도 1은 본 발명의 일실시예에 따라서 블록윈도우 기능을 적용한 가상화폐 시스템을 나타낸 개략 구성도이다.
도 2는 본 발명의 일실시예에 따라서 블록윈도우 관리 서버와 시스템 운영을 담당하는 가상화폐 기능모듈 관리 서버의 구성 및 관계를 나타낸 개략도이다.
도 3은 본 발명의 일실시예에 따라서 블록윈도우의 동작원리를 나타낸 설명도이다.
도 4는 본 발명의 일실시예에 따라서 가상화폐 시스템에서 블록윈도우 모드의 동작 프로세스를 나타낸 흐름도이다.
도 5는 본 발명의 일실시예에 따라서 블록윈도우 사이즈를 산출하기 위한 향후 블록 및 참여 노드의 예상추이를 기록한 그래프이다.
FIG. 1 is a schematic block diagram of a virtual money system applying a block window function according to an embodiment of the present invention. Referring to FIG.
FIG. 2 is a schematic view showing a configuration and a relationship of a block window management server and a virtual currency function module management server that is responsible for system operation according to an embodiment of the present invention.
3 is an explanatory view showing an operation principle of a block window according to an embodiment of the present invention.
4 is a flowchart illustrating an operation process of a block window mode in a virtual money system according to an embodiment of the present invention.
5 is a graph illustrating predicted trends of future blocks and participating nodes for calculating a block window size according to an embodiment of the present invention.

이하, 본 발명의 바람직한 실시예에 대하여 첨부도면을 참조하여 설명한다.Hereinafter, preferred embodiments of the present invention will be described with reference to the accompanying drawings.

도 1은 본 발명의 일실시예에 따라서 블록윈도우를 적용한 가상화폐 시스템(이하 "가상화폐 시스템" 또는 단순히 "시스템"을 혼용하여 사용함)을 나타낸 개략 구성도이다. 도면을 참조하면, 본 발명의 일실시예에 따른 가상화폐 시스템은 채굴에 참여하는 마이닝 노드(MN1, MN2, MN3, MN4), P2P 방식으로 직접 가상화폐 거래를 수행하거나 가상화폐 거래소(300)를 통해 거래를 수행하는 노드(N5, N6, N7, N8)(이하, "일반 노드"라 함), 시스템에 참여하는 모든 노드들에게 노드들이 원하는 목적의 기능을 수행할 수 있도록 하는 기능적 소프트웨어, 기능적 하드웨어, 기능적 소트웨어 및 하드웨어가 결합된 단위 개체(이하 "기능 모듈"이라함, 본 발명에서 사용하는 "모듈"은 특정 기능을 수행할 수 있는 수단으로서, 기능적 소프트웨어 프레임워크나 특정 프레임워크에 결합되어 특정 기능을 수행할 수 있는 일반 소프트웨어 또는 이러한 소프트웨어와 하드웨어가 함께 결합되어 특정 기능을 수행할 수 있는 단위개체를 망라한다)를 제공하는 가상화폐 기능모듈 관리서버(200)와, 마이닝 노드(MN1, MN2, MN3, MN4) 중 어느 하나가 작업증명 과정에 따라서 채굴이 완료되면 특정 기준조건에 따라서 채굴을 한 마이닝 노드에 대해 일정기간 동안 채굴을 금지하거나 채굴효과를 무효화하고, 다른 참여 마이닝 노드에게 채굴기회를 부여할 수 있는 환경을 제공하는 블록윈도우 모듈(BMW) 또는 블록윈도우 관리서버(100)를 포함할 수 있다.FIG. 1 is a schematic block diagram showing a virtual money system (hereinafter referred to as "virtual money system" or simply "system" used in combination) to which a block window is applied according to an embodiment of the present invention. Referring to the drawings, a virtual monetary system according to an embodiment of the present invention includes mining nodes MN1, MN2, MN3, and MN4 participating in mining, a virtual virtual money transaction using a P2P method, N5, N6, N7 and N8 (hereinafter referred to as "general node") that performs transactions through the network, functional software that allows nodes to perform desired functions, (Hereinafter referred to as "functional module ", a" module "used in the present invention is a unit capable of performing a specific function, and may be a functional software framework or a combination of a specific framework General software that can perform a specific function or a unit entity that can perform a specific function by combining such software and hardware) When the virtual money function module management server 200 and one of the mining nodes MN1, MN2, MN3, and MN4 have been mined according to the job certification process, A block window module (BMW) or a block window management server 100 that provides an environment for prohibiting mining, invalidating mining effects, and granting mining opportunities to other participating mining nodes.

본 발명의 일실시예에 따른 시스템에서 사용하는 각 구성요소들은 설명의 편의상 제시된 것으로서, 그 구성요소들의 개수에 특별히 제한을 두는 것은 아니다. 또한, 마이닝 노드(MN1, MN2, MN3, MN4)와 일반 노드(N1, N2, N3, N4)도 설명의 편의상 분리한 것으로서, 일반 노드도 마이닝 기능을 가질 수 있고, 마이닝 노드도 일반 가상화폐 거래를 수행할 수 있다. 또한, 본 발명에서 지칭하는 노드는 필요에 따라서, 서버들 각각을 나타내거나, 노드들의 그룹을 지칭할 수도 있다. 즉, 독립된 단위 개체로서 기능하면, 모두 노드로 표현될 수 있다. 따라서, 거래용 일반 노드는 스마트폰, 이동단말기, 개인 PC나 랩탑 컴퓨터 등 개체로서 시스템에 접속할 수 있는 것이면 어떠한 것도 포함할 수 있다.Each component used in the system according to an embodiment of the present invention is presented for convenience of explanation and does not particularly limit the number of the components. Also, the mining nodes MN1, MN2, MN3, and MN4 and the general nodes N1, N2, N3, and N4 are also separated from each other for convenience of explanation. The general node can also have a mining function. Can be performed. Further, the node referred to in the present invention may represent each of the servers or may refer to a group of nodes, as needed. That is, if they function as independent unit entities, they can all be expressed as nodes. Thus, the transactional generic node may include anything that is capable of accessing the system as an entity, such as a smart phone, a mobile terminal, a personal PC, or a laptop computer.

시스템 내에서 사용하는 통신망(70)은 P2P나 간접 통신을 수행하는 기능을 가질 수 잇으면 어느 것도 가능하며, 예를 들면, 통신망(70)은 이동통신망(71), 인터넷(72), 블루투스 BL(73), 전용선(74), LPWAN(Low Power Wide Area Network)(75) 등을 포함할 수 있다. LPWAN(75)의 구체적인 예로는 미국의 LoRaWANTM, 유럽의 SigfoxTM와 그 밖에도 오픈망으로서의 WeightlessTM, 차세대 LTE망 등을 들 수 있다. 또한, 통신망(70)과 노드 또는 서버들 간의 연견은 무선 방식은 물론 유선방식도 가능하다.For example, the communication network 70 may include a mobile communication network 71, an Internet 72, a Bluetooth BL (Personal Digital Assistant), and the like. The communication network 70 may be any of various types of communication networks, A dedicated line 73, a low power wide area network (LPWAN) 75, and the like. Specific examples of LPWAN (75), may be mentioned the US LoRaWAN TM, Sigfox TM in Europe and elsewhere as an open network Weightless TM, next generation networks, such as LTE. In addition, the connection between the communication network 70 and the nodes or servers can be performed in a wired manner as well as a wireless manner.

도 2는 본 발명의 일실시예에 따라서 블록윈도우 서버(100) 및 가상화폐 기능 모듈 관리서버(200)의 구성 및 다른 노드들과의 관계를 나타낸 개략도이다.FIG. 2 is a schematic diagram showing a configuration of a block window server 100 and a virtual money function module management server 200 according to an embodiment of the present invention, and a relationship with other nodes.

먼저, 가상화폐 기능모듈 관리서버(200)는 일반적으로 가상화폐 시스템을 유지하기 위해 노드들에게 기능적 소프트웨어를 제공한다. 즉, 시스템에 참여하는 노드들은 마이닝 기능 모듈, 거래기능 모듈(월릿), 블록체인 데이터베이스 기능 모듈, 네트워크 라우팅 기능 모듈 중 일부 또는 전부를 가질 수 있다. 이러한 기능모듈의 제공이나 업데이트를 위해 가상화폐 기능모듈 관리 서버(200)는 마이닝 기능 모듈을 업데이트하거나 제공하는 마이닝 기능모듈 관리부(210), 가상화폐 거래를 위한 전자지갑(월릿:wallet) 모듈을 업데이트하여 제공하는 월릿기능 모듈 관리부(220), 블록체인의 데이터를 저장할 수 있는 기능 모듈을 제공하는 블록체인 기능모듈 관리부, 시스템 내외에서 네트워크의 라우팅 기능을 수행할 수 있는 네트워크 라우팅 모듈을 업데이트하거나 제공하는 네트워크 라우팅 모듈 관리부(240)를 포함할 수 있다. 노드들은 이러한 기능모듈을 가상화폐 기능모듈 관리서버(200)로부터 직접 다운로드 하거나 다른 노드들로부터 다운로드 받아서 자신들이 원하는 기능의 노드동작을 수행할 수 있다. 노드 클라우드(Node Cloud)(500)는 본 발명의 일실시예에 따른 가상화폐 시스템에 참여할 수 있는 모든 노드 또는 이들 노드들과 여러 다른 알고리즘으로 접속 가능한 노드들을 포함할 수 있다. 즉 노드 클라우드(500)에는 마이닝 노드(MN1, MN2, MN3 MN4), 거래용 일반 노드(N1, N2, N3, N4), 마이닝 노드들이 컴퓨터 파워를 높이기 위해 집단적으로 결합한 풀 마이닝 노드, 일반 노드들이 집단적으로 결합된 풀 일반노드, 본 발명의 일실시예에 따른 가상화폐 시스템에 참여하는 각종 거래소 서버, 이들 각종 노드와 서버에 직간접적으로 연결되는 다른 기능의 노드들도 함께 포함될 수 있다.First, the virtual currency function module management server 200 generally provides functional software to the nodes to maintain the virtual money system. That is, the nodes participating in the system may have some or all of the mining function module, the transaction function module (wallet), the block chain database function module, and the network routing function module. In order to provide or update such a function module, the virtual money function module management server 200 includes a mining function module management unit 210 for updating or providing a mining function module, an electronic purse (wallet) module for virtual currency transaction A block chain function module management unit that provides a function module capable of storing data of a block chain, and a network routing module that can perform a routing function of the network in and out of the system And a network routing module management unit 240. The nodes can directly download the function module from the virtual money function module management server 200 or download the function module from other nodes to perform a node operation of a desired function. The node cloud 500 may include all nodes capable of participating in the virtual money system according to one embodiment of the present invention, or nodes connectable to these nodes and various other algorithms. That is, the node cloud 500 includes mining nodes MN1, MN2 and MN3 MN4, trading general nodes N1, N2, N3 and N4, a pool mining node collectively combining mining nodes to increase computer power, Collectively pooled general nodes, various exchange servers participating in the virtual money system according to an embodiment of the present invention, and nodes of other functions directly or indirectly connected to these various nodes and servers.

다음에 종래기술에는 개시된 바 없는 기술로서, 본 발명의 일실시예에 따라서 독창적으로 제안하는 블록윈도우의 개념과 그 블록윈도우 기술을 적용한 블록윈도우 관리서버(100)에 대하여 설명한다.Next, the concept of a block window that is uniquely proposed according to an embodiment of the present invention and a block window management server 100 to which the block window technique is applied will be described.

"블록윈도우(block window)"는 본 발명에서 최초로 사용하는 용어이며, 블록의 생성을 통해 마이닝(이하 채굴을 혼용하여 사용함)을 달성한 노드(즉 채굴성공 노드")에 대해 일정기준에 따라서 일정기간 동안 블록의 생성을 금지 시켜서 결과적으로 일정기간 동안 채굴 활동을 중지시키거나 채굴 활동을 통해 블록을 생성하여도 블록윈도우 기간 중에는 그 블록을 채굴 무효화로 작용시키는 기능 모듈이라 정의할 수 있다. 이러한 블록윈도우를 통해 특정 일부 마이닝 노드들에게 채굴이 편중되는 성향을 방지하고 컴퓨터 파워 능력이 상대적으로 작은 노드들에게도 채굴의 기회를 제공할 수 있다. The term "block window" is a term used for the first time in the present invention. The term " block window &quot; refers to a node that has achieved mining It is possible to define a function module for prohibiting the generation of blocks during a period of time and consequently stopping mining activities for a certain period of time or generating blocks through mining activities, Windows can prevent mining from being biased to certain mining nodes and provide mining opportunities for nodes with relatively low power.

본 발명의 일실시예에 따른 블록윈도우 관리서버(100)는 가상화폐 기능모듈 관리 서버(200)와는 별도로 구성되어 가상화폐 거래시스템에서 가상화폐 거래 기능을 수행할 때 블록윈도우 모드 동작을 수행하도록 구성될 수도 있고, 가상화폐 기능모듈 관리서버(200)와 함께 일체로 구성되어 동일한 동작을 수행할 수도 있다. 별도로 구성될 경우에는 개별단위로 일반적인 모든 가상화폐 거래 시스템에 USB나 다운로드 가능한 기능모듈 형태로도 제공하여 블록윈도우 관련 동작을 가상화폐 거래 중에 함께 수행하도록 구성할 수도 있다.The block window management server 100 according to an exemplary embodiment of the present invention may be configured separately from the virtual currency function module management server 200 to perform a block window mode operation when performing a virtual currency transaction function in a virtual currency transaction system Or may be integrally formed with the virtual money function module management server 200 to perform the same operation. If it is separately configured, it is also possible to configure the block window related operation to be carried out together with the virtual currency transaction by providing USB or a downloadable functional module to the general virtual currency trading system in the individual unit.

도 2를 참조하면, 본 발명의 일실시예에 따른 블록윈도우 관리서버(100)는 마이닝 노드(MN1, MN2, MN3, MN4)의 채굴이력을 추적하여 채굴이력정보를 제공하는 채굴이력 관리부(110)와, 일반노드(N1, N2, N3, N4)가 거래하는 거래량을 추적하여 거래량 추세정보, 예를 들면, 최근 일정기간(1시간, 2시간, 1일, 1주 등)의 거래량, 거래량 변화율 등의 거래이력정보를 제공하는 거래이력 관리부(120), 블록 생성이 이루어지지 않아 작업증명을 할 수 없는 상태의 발생여부를 추적하여 블랙아웃 발생 및 추이에 관한 블랙아웃 정보를 제공하는 블랙아웃 감시부(130), 채굴이력 관리부(110)로부터의 채굴이력정보, 거래 이력 관리부(120)로부터의 거래이력정보, 블랙아웃 감시부(130)로부터의 블랙아웃 관련정보를 기초로 현재의 블록윈도우 사이즈를 산출하는 블록윈도우 사이즈 산출부(140), 상기 블록윈도우 사이즈 산출부(150)에 따라서 블록윈도우 모드 하에서 블록윈도우를 생성하여 해당 마이닝 노드(MN1, MN2, MN3, MN4)에 제공하는 블록윈도우 생성부(150), 블록윈도우 기능 프로그램을 업데이트하거나 그 프로그램을 기능모듈로서의 블록윈도우 모듈로 시스템 또는 시스템의 각 노드에 업데이로 제공하는 블록윈도우 모듈 업데이트부(160)를 포함할 수 있다.2, the block window management server 100 according to an embodiment of the present invention includes a mining history management unit 110 for tracking mining history of mining nodes MN1, MN2, MN3, MN4 and providing mining history information, And the transaction amount of the recent period (1 hour, 2 hours, 1 day, 1 week, etc.) and the transaction amount A transaction history management unit 120 for providing transaction history information such as a rate of change, a blackout management unit 120 for tracking the occurrence of a state in which a block can not be generated because the block is not generated, Based on the mining history information from the monitoring unit 130, the mining history management unit 110, the transaction history information from the transaction history management unit 120, and the blackout-related information from the blackout monitoring unit 130, Block window size to calculate size A block window generation unit 150 for generating a block window under the block window mode according to the block window size calculation unit 150 and providing the block window to the corresponding mining nodes MN1, MN2, MN3 and MN4, And a block window module update unit 160 that updates the function program or updates the block program module to each node of the system or system as a block window module as a function module.

블록윈도우 관리서버(100)에서 채굴이력 관리부(110), 거래이력 관리부(120), 블랙아웃 감시부(130), 블록윈도우 사이즈 산출부(140), 블록윈도우 생성부(150)는 함께 블록윈도우 모듈(BWM)을 구성할 수 있다. 이 경우 블록윈도우 모듈(BWM)은 가상화폐 거래시스템 자체에 처음부터 함께 결합된 소프트웨어 모듈 또는 소프트웨오와 하드웨어가 결합된 모듈일 수도 있고, 소프트웨어 프레임워크로 구성되어 다른 가상화폐 거래 시스템이나 기타 블록체인 기반 응용 시스템에 다운로드를 통해 결합되는 프로그램일 수도 있고, 하드웨어(예를 들면, 본 실시예에서는 블록윈도우 관리서버(100) 등)와 소프트웨어가 결합된 단일개체로서 USB 등의 통신 포트를 통해 다른 시스템에 결합되는 독립 모듈이 될 수도 있다. 즉, 본 발명에서는 그 목적으로 하는 독과점 마이닝 노드의 채굴독과점 현상의 완화를 달성할 수 있으면, 그 블록윈도우 모듈의 존재형태에 대해 특별히 제한을 두지 않는다.In the block window management server 100, the mining history management unit 110, the transaction history management unit 120, the blackout monitoring unit 130, the block window size calculating unit 140, and the block window generating unit 150, Module (BWM) can be configured. In this case, the block window module (BWM) may be a software module or a combination of software and hardware initially combined together in the virtual currency trading system itself, or may be composed of a software framework, Based application system. Alternatively, the program may be a single object combined with hardware (for example, the block window management server 100 in this embodiment) and software, Lt; / RTI &gt; That is, in the present invention, there is no particular limitation on the existence of the block window module if it is possible to attenuate the phenomenon of mining monopoly of a monopoly mining node for that purpose.

다음에, 도 3을 참조하여 본 발명의 일실시예에 따른 블록윈도우의 개념 및 동작원리에 대해서 설명한다. 도 3은 본 발명의 일실시예에 따라서 블록윈도우의 동작원리를 나타낸 설명도이다.Next, the concept and operation principle of a block window according to an embodiment of the present invention will be described with reference to FIG. 3 is an explanatory view showing an operation principle of a block window according to an embodiment of the present invention.

도 3을 참조하면, 제1 마이닝 노드(MN1)가 수행하는 채굴동작(이하 "채굴시도"라 함)은 M1-1, U1-2, M1-3, U1-4로 모두 앞의 본번호에는 해당 마이닝 노드의 식별 숫자 "1"이 기록되고, 부번호에는 해당 마이닝 노드의 채굴동작의 순서가 기록된다. 즉, 1-1은 제1마이닝 노드(MN1)가 첫번째 채굴동작을 수행한 것을 나타내고, 마찬가지로 1-2는 제1 마이닝 노드(MN1)의 두번째 채굴동작, 1-3은 세번째 채굴동작, 1-4는 네번째 채굴동작을 각각 나타낸다. 또한 W1-1에서의 본번호 "1"은 제1 마이닝 노드(MN1)를 나타내고, 부번호 "1"은 제1 마이닝 노드(MN1)가 채굴성공을 달성하면서 할당된 첫번째 블록윈도우를 나타낸다. 마찬가지로 W1-2에서의 본번호 "1"은 제1 마이닝 노드(MN1)을 나타내고, 부번호 "2"는 제1 마이닝 노드(MN1)가 채굴성공을 달성하면서 할당된 두번째 블록윈도우를 나타낸다.3, the mining operations (hereinafter referred to as "mining attempts") performed by the first mining node MN1 are M1-1, U1-2, M1-3, and U1-4, The identification number "1" of the corresponding mining node is recorded, and the order of the mining operation of the corresponding mining node is recorded in the minor number. In other words, 1-1 indicates that the first mining node MN1 has performed the first mining operation. Likewise, 1-2 indicates the second mining operation of the first mining node MN1, 1-3 indicates the third mining operation, 1- 4 represents the fourth mining operation, respectively. Also, this number "1" at W1-1 represents the first mining node MN1 and the minor number "1" represents the first block window allocated while the first mining node MN1 achieves mining success. Similarly, this number "1" at W1-2 represents the first mining node MN1 and the minor number "2" represents the second block window allocated while the first mining node MN1 achieves mining success.

동일하게, 제2 마이닝 노드(MN2), 제3 마이닝 노드(MN3), 제4 마이닝 노드(MN4)도 제1마이닝 노드와 같은 방식으로 의미를 해석할 수 있다.Similarly, the second mining node MN2, the third mining node MN3, and the fourth mining node MN4 may interpret the semantics in the same manner as the first mining node MN.

블록윈도우의 기본 개념은 마이닝 노드가 채굴을 성공하면 그 채굴을 성공한 작업증명 주기 미만부터 채굴주기(작업증명주기에 해당, 이하 "주기"는 특별한 설명이 없으면 "작업증명 주기"를 의미한다)의 정수배 또는 일정배수까지(도 3의 경우는 3주기까지) 해당 마이닝 노드의 채굴성공이 금지되도록 기능한다는 점이다.The basic idea of the block window is that if the mining node succeeds in mining, the mining cycle starts from the submission of the mining cycle to the mining cycle (corresponding to the job certification cycle, hereinafter "work cycle" means "job certification cycle" (In the case of FIG. 3, up to three cycles), the success of mining of the corresponding mining node is inhibited.

다시, 도 3을 참조로 구체적으로 설명하면 다음과 같다. Referring again to FIG. 3, the following will be described in detail.

제1 마이닝 노드(MN1)가 주기 t1에서 채굴시도(M1-1)가 성공하면, 블록윈도우 모듈은 주기 t2 ~ t4(3주기) 동안 제1 마이닝 노드(MN1)의 채굴시도(U1-2)를 무효화시키는 제1 블록윈도우(W1-1)를 설정한다. 또한, 블록윈도우 모듈(BWM)은 채굴이력 관리부(110)의 기능을 이용하여 제1 마이닝 노드(MN1)가 마이닝에 성공한 부분을, 예를 들면, "1-1"로 기록해둔다(도 3의 마이닝 이력 부분 "M"란 t1행 참조). 그러면, 제1 마이닝 노드(MN1)가 주기 t3에서 채굴을 시도하거나 설사 블록해쉬값을 풀어도 채굴실패를 의미하는 언마이닝(unmining)의 "U"란에 "1-2"로 기록되고(도 3의 채굴이력관리부(110) U란 t1행 참조), 동일한 주기 t3에서 채굴시도(M3-1)를 수행한 제3 마이닝 노드(MN3)가 채굴에 성공하게 되어 채굴이력 관리부(110)의 t3 주기 "M"란에 "3-1"을 기록하게 된다.If the first mining node MN1 succeeds in the mining attempt M1-1 at period t1, the block window module performs the mining attempt U1-2 of the first mining node MN1 during the period t2 to t4 (three periods) Is set as the first block window W1-1. The block window module BWM records the portion where the first mining node MN1 succeeds in mining, for example, "1-1" by using the function of the mining history management unit 110 Mining history part "M", see row t1). Then, even if the first mining node MN1 tries to mining at the cycle t3 or solves the block hash value, it is recorded as "1-2" in the "U" column of the unmining which means the mining failure The third mining node MN3 that has performed the mining attempt M3-1 at the same cycle t3 succeeds in mining and the t3 of the mining history management unit 110 Quot; 3-1 "in the period" M "column.

주기 t2에서는 제2 마이닝 노드(MN2) 만이 채굴시도(M2-1)를 성공하여 M란에 "2-1"로 기록되고, 블록윈도우가 제2 마이닝 노드에 주기 t3 ~ t5 동안 설정된다. 따라서, 주기 t5에서 제2 마이닝 노드(MN2)의 채굴시도(U2-2)는 실패로 기록된다(U란 "2-2" 참조).In the cycle t2, only the second mining node MN2 succeeds in the mining attempt M2-1 and is recorded as "2-1" in the M column, and the block window is set to the second mining node for the period t3 to t5. Therefore, at period t5, the mining attempt (U2-2) of the second mining node (MN2) is recorded as failure (see U column "2-2").

주기 t4에서는 제3 마이닝 노드(MN3)에 블록윈도우가 t4 ~ t6 기간 동안 설정되어 있어 이 설정기간 중에 채굴시도(U3-2)는 언마이닝 U란에 "3-2"로 기록되고, 제4 마이닝 노드(MN4)의 채굴시도(M4-1)가 성공하여 "4-1"로 M란에 기록된다.In the cycle t4, the block window is set in the third mining node MN3 for the period from t4 to t6. During this setting period, the mining attempt U3-2 is recorded as "3-2 & The mining attempt (M4-1) of the mining node MN4 succeeds and is recorded in the M column as "4-1 ".

t5 주기 및 t6 주기에서는 제2 마이닝 노드(MN2)의 채굴시도(U2-2) 및 제4 마이닝 노드(M4)의 채굴시도(U4-2)가 존재하지만 모두 블록윈도우 설정 기간에 해당되어 언마이닝으로 U란에 "2-2", "4-2"로 기록되고, 마이닝이 발생하지 못하는 주기(이하 "블랙아웃" 또는 Black Out의 약자인 "BO"로 표현함)가 발생한다. 블랙아웃 주기의 동작에 대해서는 차후에 다시 설명한다.In the t5 period and the t6 period, the mining attempt (U2-2) of the second mining node (MN2) and the mining attempt (U4-2) of the fourth mining node (M4) Quot; 2-2 "and" 4-2 "in the U column, and a cycle in which mining does not occur (hereinafter referred to as" blackout " The operation of the blackout period will be described later.

이하 주기 t7 ~ t13의 경우에도, 블랙아웃(BO)이 발생한 경우 외에는 기본적으로는 주기 t0 ~ t6와 동작의 원리는 같다고 할 수 있다. 따라서, 다음에는 채굴이 발생하지 않는 블랙아웃(BO) 상태가 발생하는 경우에 대해서만 설명한다.Even in the period from t7 to t13, the principle of operation is basically the same as the cycle t0 to t6 except for the occurrence of the blackout BO. Therefore, only the case where a blackout (BO) state in which mining does not occur will be described next.

블랙아웃과 관련이 없을 때는 기본적으로 앞에서 설명한 바와 같이 최초 채굴(마이닝)이 발생하면, 해당 마이닝 노드에 대해서 그 다음 3주기 동안 채굴시도의 결과를 무효화하는 블록윈도우 기간을 설정하지만("블록윈도우 모드"라 함), 모든 블록윈도우의 설정으로 인해 또는 노드의 참여 미진으로 인해 채굴시도가 전혀 없는 블랙아웃이 발생할 경우에는 블록윈도우 모드를 해제하거나, 블록윈도우 기간 중에 무효화되었던 채굴시도의 결과를 유효화하는 "언마이닝 전용모드"를 동작할 수도 있다.When there is no blackout, basically, as described above, if a first mining occurs, a block window period for invalidating the result of the mining attempt for the next three cycles is set for the mining node (" Quot;), the block window mode is canceled or the result of the mining attempt that was invalidated during the block window period is validated if a blackout occurs due to the setting of all the block windows or due to the lack of participation of the node, The "unmining dedicated mode"

예를 들면, 주기 t5 및 t6에서는 제2 마이닝(MN2), 제3 마이닝(MN3), 제4 마이닝(MN4)에 대해 블록윈도우가 설정되어 주기 t5에서 제2 마이닝 노드(MN2)에 의해 생성된 채굴시도(U2-2)가 채굴이력 관리부(110)의 U란에 "2-2"로 등록되고, 주기 t6에서 제4 마이닝(MN4)에 의해 생성된 채굴시도(U4-2)도 U란에 "2-2"로 등록되어 블록이 생성되지 못하는 블랙아웃이 발생할 수 있다.For example, in the periods t5 and t6, a block window is set for the second mining MN2, the third mining MN3, and the fourth mining MN4, and the block window is set for the second mining node MN2 The mining attempt U2-2 is registered as "2-2" in the U column of the mining history management unit 110 and the mining attempt U4-2 generated by the fourth mining MN4 at the time t6 is also U Quot; 2-2 "to cause blackout that blocks can not be generated.

이 경우에는 무효화된 채굴시도(U2-2) 및 (U4-2)의 채굴실패를 채굴성공으로 전환하여 주기 t5에서 U란의 "2-2"와 주기 t6에서 U란의 "4-2"를 실질적으로는 블록이 생성되도록 채굴성공으로 전환하는 언마이닝 전용모드를 사용할 수도 있다.In this case, the mining failure of the nullified mining attempts U2-2 and U4-2 is converted to mining success, and "2-2" in the U column and "4-2" Mining dedicated mode may be used to switch to a successful mining so that blocks are actually created.

블랙아웃의 동작모드의 또 다른 실시예로서, 주기 t8에서 블랙아웃이 발생하고 모든 마이닝 노드가 채굴시도를 하지 않는 경우에는 그 다음 주기 t9에서부터 일정 주기 동안 바로 블록윈도우 모드를 해제하는 블록윈도우 해제 모드를 수행할 수도 있다. 도 3를 참조하면, 주기 t9와 주기 t10에서 블록윈도우 해제모드(W-RE)가 설정되어 있으며, 이 경우 제1 마이닝 노드(MN1)의 채굴시도(U1-4) 및 제2 마이닝 노드(M2-3)의 채굴시도(M2-3)는 블록윈도우 해제 모드에서 수행되는 것이기 때문에 모두 마이닝 성공으로 채굴이력 관리부(110)의 M란에 기록된다. 블록윈도우 해제 모드(W-RE)에서는 모든 마이닝 노드가 채굴시도를 수행하지 않는 경우를 예로 하였지만, 언마이닝 전용모드에서와 같이 마이닝 노드가 채굴시도를 시행되었지만 블록윈도우의 설정으로 그 채굴시도가 무효화된 경우에도 그 무효화된 채굴시도를 유효화로 전환하는 것 없이 그 다음 주기에 바로 블록윈도우 해제모드 동작을 진행할 수도 있다.As another embodiment of the operation mode of the blackout, if a blackout occurs in the cycle t8 and all the mining nodes do not attempt the mining, the block window release mode in which the block window mode is immediately released for a predetermined period from the next cycle t9 . Referring to FIG. 3, a block window release mode (W-RE) is set at a cycle t9 and a cycle t10. In this case, the mining attempt U1-4 of the first mining node MN1 and the mining attempt -3 is performed in the block window release mode, all of the mining attempts are recorded in the M column of the mining history management unit 110 with success of mining. In the block window release mode (W-RE), all the mining nodes do not perform the mining attempt. However, the mining node attempts mining attempt as in the mining-only mode, but the mining attempt is invalidated by setting the block window The block window release mode operation may be performed immediately in the next cycle without switching the invalidated mining attempt to validation.

블록윈도우 해제모드 또는 언마이닝 전용모드는 참여 노드들 중 적어도 하나가 채굴시도를 성공한 경우에는 블랙아웃 감시부(130)에 의해 자동으로 해제되고 블록윈도우 모드로 복귀하게 되어 블록윈도우 생성부(150)는 블록윈도우 사이즈 산출부(140)와 연동하여 블록윈도우를 적절하게 생성하여 해당 마이닝 노드에게 할당 또는 설정하게 된다.In the block window release mode or the unminifying exclusive mode, when at least one of the participating nodes succeeds in mining, the blackout monitoring unit 130 automatically releases the block window mode and returns to the block window mode, The block window size calculator 140 generates block windows appropriately and assigns or sets the block windows to the corresponding mining nodes.

다음에, 정상적인 블록윈도우 모드로 복귀한 주기 t11에서는 제3 마이닝 노드(MN3)의 채굴시도(M3-3)가 채굴성공을 나타내는 M란에 "3-3"으로 등록되고, 정상적인 블록윈도우 모드로 복귀한 상태이기 때문에 제3 마이닝 노드(MN3)의 주기 t12~t14에 블록윈도우(W3-2)가 설정된다.Next, in the cycle t11 when returning to the normal block window mode, the mining attempt M3-3 of the third mining node MN3 is registered as "3-3" in the column M indicating the mining success, The block window W3-2 is set in the cycle t12 to t14 of the third mining node MN3.

주기 t12에서 제2 마이닝 노드(MN2)의 제4 채굴시도(U2-4)의 경우는 블록윈도우 해제 이후 다시 최초 발생한 채굴시도이지만 실패로 되었기 때문에 U란에 "2-4"로 등록되고, 블록윈도우가 제2 마이닝 노드(MN2)에는 설정되지 않았다. 주기 t12에서는 제4마이닝 노드(MN4)의 제3 채굴시도(M4-3)가 마이닝 성공으로 인식되어 M란에 "4-3"으로 등록된다.In the case of the fourth mining attempt (U2-4) of the second mining node MN2 at the cycle t12, since the mining attempt is the first mining attempt after the block window is released but failed, it is registered as "2-4" in the U column, The window is not set in the second mining node MN2. In the cycle t12, the third mining attempt (M4-3) of the fourth mining node MN4 is recognized as mining success and registered as "4-3" in the M column.

주기 t13에서, 제3마이닝 노드(MN3)의 제4 채굴시도(U3-4)는 블록윈도우 설정으로 U란의 3-4로 등록되었지만, 언마이닝 전용모드를 통해 채굴성공으로 전용되어 사용될 수 있다. At cycle t13, the fourth mining attempt (U3-4) of the third mining node MN3 is registered as 3-4 in the U column in the block window configuration, but can be dedicated and used as a mining success through the mining-only mode .

이와 같이 본 발명의 블록윈도우의 개념을 설명하였다. 그러나 본 발명의 블록윈도우는 블록윈도우 모드(BW), 언마이닝 전용모드(U-TR), 블록윈도우 해제모드(W-RE)에만 국한되는 것은 아니다. 예를 들면, 전체 마이닝 노드의 마이닝 성공률에 따라서 차별적으로 블록윈도우를 설정하거나 블록윈도우의 설정 주기를 차별적으로 설정할 수도 있다.The concept of the block window of the present invention has been described above. However, the block window of the present invention is not limited to the block window mode (BW), the unmining dedicated mode (U-TR), and the block window release mode (W-RE). For example, it is possible to set block windows differently according to the mining success rate of the entire mining node, or to set the setting period of the block window differently.

다음에, 도 4를 참조하여 본 발명의 바람직한 일실시예에 따른 블록윈도우 가 적용된 가상화폐 거래시스템의 합의 알고리즘에 관한 동작 프로세스를 설명한다.Next, referring to FIG. 4, a description will be made of an operation process for a consensus algorithm of a virtual money transaction system to which a block window according to a preferred embodiment of the present invention is applied.

본 발명의 일실시예에 따른 가상화폐 시스템(도 1)에서의 4개의 마이닝 노드(MN1, MN2, MN3, MN4)를 예로 들어 설명한다. 편의상 4개의 마이닝 노드의 명칭을 제1 마이닝 노드(MN1), 제2 마이닝 노드(MN2), 제3 마이닝 노드(MN3), 제4 마이닝 노드(MN4)로 칭한다. 각 마이닝 노드들 중 적어도 일부는 컴퓨터 파워에서 차별이 있는 것으로 가정한다. 또한, 본 발명의 일실시예에 따른 가상화폐 거래 시스템은 기본적으로 가상화폐 기능모듈 관리 서버(200)를 통해 가상화폐를 P2P로 거래할 수 있는 환경 및 마이닝 기능 중 적어도 일부가 모든 참여 노드들에게 이미 갖추어져 있다고 가정한다.The four mining nodes MN1, MN2, MN3, and MN4 in the virtual monetary system (FIG. 1) according to an embodiment of the present invention will be described as an example. For the sake of simplicity, the names of four mining nodes are referred to as a first mining node MN1, a second mining node MN2, a third mining node MN3, and a fourth mining node MN4. It is assumed that at least some of each mining node has differentiation in computer power. In addition, the virtual currency trading system according to an embodiment of the present invention basically includes at least a part of environment and mining functions capable of trading virtual money through P2P through the virtual money function module management server 200, It is assumed that it is already equipped.

또한, 도 2의 블록윈도우 관리서버(100)는 하드웨어와 소프트웨어가 결합된 개념이지만, 소프트웨어로서만 이루어진 블록윈도우 모듈로 구성될 수도 있다. 이 경우 블록윈도우 모듈은 블록윈도우 관리서버(100)의 구성요소인 "마이닝 노드 이력관리부(110), 거래이력 관리부(120), 블랙아웃 감시부(130), 블록윈도우 사이즈 산출부(140), 블록윈도우 생성부(150)를 기능적으로 동일하게 포함할 수 있다. 따라서, 각 블록윈도우 관리서버(100)의 각 구성요소(110, 120, 130, 140, 150)는 소프트웨어 블록윈도우 모듈에서도 동일하게 포함되는 구성요소일 수 있으며, 이 부분에 대해서는 전술한 바와 같다.In addition, although the block window management server 100 of FIG. 2 is a concept of combining hardware and software, it may be configured as a block window module composed only of software. In this case, the block window module is a component of the block window management server 100. The block window module includes a mining node history management unit 110, a transaction history management unit 120, a blackout monitoring unit 130, a block window size calculation unit 140, The respective blocks 110, 120, 130, 140, and 150 of each block window management server 100 may be equally included in the software block window module 150. [ May be included, and this portion is as described above.

이하에서는 블록윈도우 관리서버(100)에 의해 블록윈도우 관련 동작이 수행되는 예를 설명한다.Hereinafter, an example in which the block window management server 100 performs the block window related operation will be described.

스텝 S1: 블록윈도우 관리서버(100)가 블록윈도우 모듈 업데이트부(160)를 통해 가상화폐 거래 시스템 내 모든 참여 노드들에게 블록윈도우 모듈을 제공한다. 일반노드 또는 마이닝 노드들은 이미 다운로드 받은 다른 노드들로부터 블록윈도우 모듈을 P2P로 제공받을 수도 있다. 블록윈도우 모듈 업데이트부(160)는 기존 버전의 블록윈도우 모듈과 업데이트된 최신 블록윈도우 모듈을 수시로 제공할 수 있다.Step S1: The block window management server 100 provides the block window module to all participating nodes in the virtual money transaction system through the block window module update unit 160. [ The general node or the mining node may receive the block window module from other nodes that have already been downloaded to the P2P. The block window module update unit 160 may provide an updated version of the block window module and an updated latest block window module at any time.

다른 실시예로서, 가상화폐 시스템의 작업증명 모듈이나 마인닝 모듈 또는 일반 거래용 모듈(월릿 모듈) 등에 함께 블록윈도우 합의 알고리즘이 포함되어 있을 수도 있다. 이 경우에는 스텝 S1은 이미 블록윈도우 모듈이 존재하는 가상화폐 시스템을 시동하는 작업을 수행할 수도 있다.As another embodiment, a block window agreement algorithm may be included together with a job proof module, a mining module or a general trading module (Wallet module) of a virtual money system. In this case, step S1 may perform a task of starting a virtual money system in which a block window module already exists.

스텝S2: 가상화폐 거래 시스템 내에서 노드들 간에 가상화폐를 주고받는 거래가 진행되고, 그 거래내역(이하 "트랜잭션"이라함)이 일정주기(검증을 위한 작업증명 주기, 예를 들면, 1분, 3분, 10분 등) 동안 마이닝 노드(MN1, MN2, MN3, MN4), 일반 노드(N1, N2, N3, N4) 등, 각종 노드들에게 전달된다.Step S2: A transaction in which virtual money is exchanged between nodes in a virtual money transaction system is performed, and the transaction details (hereinafter referred to as " transaction " MN2, MN3, and MN4, and general nodes N1, N2, N3, and N4 during a period of 3 minutes, 10 minutes, and so on.

스텝S3: 마이닝 노드들 중 하나, 예를 들면 제1 마이닝 노드(MN1)가 블록해쉬를 풀어서 작업증명 주기 내의 거래내역, 즉 트랜잭션을 블록에 기록하여 신규블록을 생성하고 각종 노드(MN1, MN2, MN3, MN4, N1, N2, N3, N4)에 신규블록을 전파한다.Step S3: One of the mining nodes, for example, the first mining node MN1 releases the block hash to write a transaction history in the job proofing period, that is, a transaction into a block to generate a new block, MN3, MN4, N1, N2, N3, N4).

스텝S4: 다른 노드들이 제1마이닝 노드(MN1)가 생성한 신규블록의 정당성을 승인한다.Step S4: Other nodes approve the validity of the new block generated by the first mining node MN1.

스텝S5: 노드들의 승인 숫자가 일정값을 초과(예를 들면 참여 마이닝 노드의 50% 등)하고, 작업증명주기(예를 들면, 1분, 10분 등) 조건을 만족하는가를 블록윈도우 관리서버(100)가 거래 이력 관리부(120)를 통해 체크한다.Step S5: It is determined whether the approval number of the nodes exceeds a predetermined value (for example, 50% of the participating mining nodes) and the condition of the job certification cycle (for example, 1 minute, 10 minutes, (100) through the transaction history management unit (120).

스텝S6: 스텝S5에서 거래 이력 관리부(120)가 승인기준 및 작업증명 주기를 만족한다고 판단하면 마이닝(채굴)이 성공한 것으로 인정하고 채굴 이력관리부(110)는 마이닝에 성공한 해당 마이닝 노드의 식별자 및 마이닝 성공 이력(성공회수, 시간)을 등록한다. 구체적으로는 도 3에서 마이닝 노드 이력관리부(110)는 제1 마이닝 노드(MN1)의 채굴시도(M1-1)를 채굴성공으로 판단하고 마이닝 성공 등록기(M)에 그 제1마이닝 노드의 마이닝 성공정보를 등록한다. 예를 들면, 제1마이닝 노드의 식별자("1") 및 마이닝 성공 이력(회수 "1)를 등록한다(도 3의 주기 t1에서 M란 "1-1" 참조). 그 밖에도 마이닝 성공정보에는 시간, 채굴성공율, 전체 마이닝 노드와 관련된 채굴성공점유율, 상위 일정비율(예를 들면, 상위 5%, 10%, 20%, 30%, 50% 등)에 대한 전체 성공과점율 등이 더 포함될 수도 있다.Step S6: If the transaction history management unit 120 judges that the approval criteria and the job certification cycle are satisfied in step S5, the mining history management unit 110 recognizes that the mining has succeeded. If the mining history management unit 110 determines that the mining is successful, Register the success history (success count, time). Specifically, in FIG. 3, the mining node history management unit 110 determines that the mining attempt M1-1 of the first mining node MN1 is successful and informs the mining success register M of the mining success of the first mining node MN1 Register information. For example, the identifier ("1") of the first mining node and the mining success history (number of times "1") are registered Time, mining success rate, mining success share associated with the entire mining node, overall success and percentage of the upper percentage (eg, top 5%, 10%, 20%, 30%, 50% have.

스텝S7: 거래이력 관리부(120)는 또한 현재까지 형성된 블록수를 산출하여 업데이트 한다.Step S7: The transaction history management unit 120 also calculates and updates the number of blocks formed so far.

스텝S8: 블록윈도우 사이즈 산출부(140)는 현재까지 블록체인에 연결된 모든 블록의 개수(블록수)와 마이닝 노드에 관한 채굴이력정보를 기초로 현재의 블록윈도우 사이즈를 산출한다.Step S8: The block window size calculating unit 140 calculates the current block window size based on the number (the number of blocks) of all the blocks connected to the block chain up to now and the mining history information about the mining node.

블록윈도우 사이즈 산출부(140)는, 예를 들면, 다음과 같은 수식으로 블록윈도우 사이즈를 산출할 수 있다.The block window size calculating unit 140 may calculate the block window size using, for example, the following equation.

y = (N*0.7)/BLOCK_NUM_OF_MAX_BLOCKWINDOW *x y = (N * 0.7) / BLOCK_NUM_OF_MAX_BLOCKWINDOW * x

(if x > BLOCK_NUM_OF_MAX_BLOCKWINDOW then x = BLOCK_NUM_OF_MAX_BLOCKWINDOW ) (if x > BLOCK_NUM_OF_MAX_BLOCKWINDOW then x = BLOCK_NUM_OF_MAX_BLOCKWINDOW)

y : 블록윈도우 사이즈 y: Block window size

x : 현재 블록 수 x: number of current blocks

BLOCK_NUM_OF_MAX_BLOCKWINDOW : 블록윈도우 최대 크기의 블록 넘버 (10년; 1,752,000) BLOCK_NUM_OF_MAX_BLOCKWINDOW: Block number of block window maximum size (10 years; 1,752,000)

N: 노드인수(A=참여 노드수/마이닝 노드, 또는 B=전체 마이닝 노드수/마이닝 성공 경험이 있는 마이닝 노드수, 또는 C= 과점 마이닝 노드수/참여 마이닝 노드수 등으로 정의할 수 있다)N can be defined as node arguments (A = number of participating nodes / mining node, or B = total number of mining nodes / number of mining nodes with experience of mining success, or C = number of oligonormal nodes / number of participating mining nodes)

블록윈도우 사이즈를 산출하는 기본개념은 초기에는 참여하는 마이닝 노드나 일반 노드가 많지 않지만 시간이 지나면서 정상화될 것으로 보고, 점차 블록윈도우 사이즈를 넓혀나가는 것을 기본으로 하지만, 블록윈도우는 참여 마이닝 노드의 수를 실질적으로 제한하는 측면이 있기 때문에 무한정 늘려갈 수는 없다. 따라서 최대 블록윈도우 사이즈가 설정될 수 있는 시점 또는 그 최대 윈도우 사이즈를 미리 상정해두고 블록윈도우 사이즈의 크기를 적절히 설정하면서 가상화폐 거래 시스템을 동작할 수 있다.The basic idea of calculating the block window size is based on the assumption that there are not many participating mining nodes or general nodes in the beginning, but it is expected to normalize over time and gradually expand the block window size. However, There is a limit to the practical limit, so you can not increase indefinitely. Therefore, it is possible to operate the virtual currency trading system while setting the maximum block window size or the maximum window size in advance and setting the size of the block window size appropriately.

이러한 기본개념에서 시간이 지나면서 현재의 블록수(x)가 증가할 것이므로 현재의 블록수(x)를 정비례 변수로 정하고, 최대 윈도우 사이즈(Wm)일 때의 블록수(BLOCK_NUM_OF_MAX_BLOCKWINDOW)를 반비례 변수로 두고, 노드인수(N=A or B or C)를 정비례 변수로 하여 블록윈도우 사이즈(y)를 산출할 수 있다.In this basic concept, since the current block number x will increase over time, the current block number x is set as a direct-proportional variable, and the number of blocks (BLOCK_NUM_OF_MAX_BLOCKWINDOW) at the maximum window size Wm is set as an inverse variable , The block window size (y) can be calculated using the node argument (N = A or B or C) as the direct proportional variable.

아래 표 1은 년간, 주간, 일간, 시간, 분간 블록수 변화추이를 나타낸 표이다. 표 1의 NO. 7에서 "분"=10,080", 블록수="3,360"으로 표현되어 있다. 10080(분)/3360(블록수) = 3이다. 따라서 1개의 블록이 생성되는데 3분이 소요된다는 점에서 일실시예에 따른 가상화폐 거래 시스템에서 블록의 생성주기(즉 작업증명 주기)는 3분임을 알 수 있다. 즉, 3분마다 1개의 채굴성공이 발생하는 가상화폐 거래 시스템의 예를 표 1에서 보여주고 있다. Table 1 below shows the trends of block numbers per year, week, day, hour, and minute. NO in Table 1. (Min) / 3360 (number of blocks) = 3. Therefore, it takes 3 minutes for one block to be generated, so that in one embodiment (Ie, the job certification cycle) is 3 minutes in the virtual currency trading system according to the present invention, that is, an example of a virtual currency trading system in which one mining success occurs every 3 minutes is shown in Table 1 .

NO.NO. year week Work city minute 블록수Number of blocks NN Wm Wm 1One 1 One 365 365 8,760 8,760 525,600 525,600 175,200 175,200 100100 7.000 7.000 22 5 5 1,825 1,825 43,800 43,800 2,628,000 2,628,000 876,000 876,000 100100 35.000 35,000 33 10 10 3,650 3,650 87,600 87,600 5,256,000 5,256,000 1,752,000 1,752,000 100100 70.000 70,000 44 20 20 7,300 7,300 175,200 175,200 10,512,000 10,512,000 3,504,000 3,504,000 100100 70.000 70,000 55 30 30 10,950 10,950 262,800 262,800 15,768,000 15,768,000 5,256,000 5,256,000 100100 70.000 70,000 66 **** **** **** **** **** **** **** **** 77 1One 7 7 168 168 10,080 10,080 3,360 3,360 100100 0.134 0.134 88 22 14 14 336 336 20,160 20,160 6,720 6,720 100100 0.268 0.268 99 33 21 21 504 504 30,240 30,240 10,080 10,080 100100 0.403 0.403 1010 44 28 28 672 672 40,320 40,320 13,440 13,440 100100 0.537 0.537 1111 55 35 35 840 840 50,400 50,400 16,800 16,800 100100 0.671 0.671 1212 66 42 42 1,008 1,008 60,480 60,480 20,160 20,160 100100 0.805 0.805 1313 77 49 49 1,176 1,176 70,560 70,560 23,520 23,520 100100 0.940 0.940 1414 88 56 56 1,344 1,344 80,640 80,640 26,880 26,880 100100 1.074 1.074 1515 99 63 63 1,512 1,512 90,720 90,720 30,240 30,240 100100 1.208 1.208 1616 1010 70 70 1,680 1,680 100,800 100,800 33,600 33,600 100100 1.342 1.342

도 5는 100년간 예측 블록수 증가 추세에 따라서 도출한 최대 블록윈도우 사이즈(y) 예측 그래프도이다. 도 5를 참조하면, 3분을 작업증명주기로 할 경우 10년일 때 블록수 = 1,752,000(표 1 참조)에 도달하고, 가상화폐의 공급량과 블록수(채굴량)를 볼 때 대략 70% 내외의 채굴이 이루어질 수 있는 기간이 된다. 전체 가상화폐는 채굴량에 의해 화폐공급이 이루어지기 때문에 이 시점 이후부터는 마이닝 노드가 가상화폐를 채굴하는 동기 또는 욕구가 감소하는 시점이 된다. 따라서, 블록윈도우의 사이즈 증가를 멈추는 시점을 10년으로 정하는 것도 할 수 있다. 또한, 노드인수에 0.7을 곱하는 것은 전체 채굴 참여 노드 수를 기준으로 블록윈도우 사이즈를 상정하지 않고 대략 전체 채굴 참여 노드 수의 최대 70% 내외를 기준으로 블록윈도우 사이즈를 제한하여 상정하기 때문이다. 노드인수 N은 단순화를 위해 100으로 정하고 있으나 실질적으로는 A=(전체 참여 노드수), B=(전체 참여 노드수)/(전체 마이닝 노드수), C=(전체 마이닝 노드수)/(마이닝 성공 경험이 있는 참여 마이닝 노드수) 등으로 정의할 수 있으며, 마이닝 노드의 독과점율 또는 과점율이 가능한 작아지는 방향으로 블록윈도우 사이즈를 결정할 수 있으면, 어떠한 수식도 가능하다. 노드인수(N)가 상기 A, B 및 C 중 적어도 하나일 경우 또는 다른 변수를 포함한 수식일 경우 거래이력 관리부(120)가 제공하는 최근 일정기간(예를 들면, 1시간, 3시간, 1일, 1주, 1개월 등) 동안 거래량, 거래량 변화율, 거래량 변화추이 등 거래량 관련 데이터를 보여주는 거래이력정보로부터 그 일정기간 거래량이나 거래량 변화율, 거래량 변화추이를 반비례 인수로 포함할 수도 있다. 이 경우는 거래량이 짧은 시간에 급격하게 증가할 때, 블록윈도우 사이즈를 감소시켜 일시적으로 거래량를 신속하게 처리할 수 있는 이점이 있다. FIG. 5 is a graph of a maximum block window size (y) predicted according to an increase in the number of predicted blocks over 100 years. Referring to FIG. 5, when the number of blocks is equal to 1,752,000 (see Table 1) at the time of 10 years, and when the supply amount of virtual money and the block number (mined amount) It becomes a period that can be realized. Since the entire virtual money is monetary supplied by the amount of mining, from this point on, the timing or motivation for the mining node to mince the virtual money decreases. Therefore, it is also possible to set the time point at which the increase in the size of the block window is stopped to be 10 years. In addition, multiplying the node factor by 0.7 assumes that the block window size is limited based on the maximum of about 70% of the total number of participating nodes without assuming the block window size based on the total number of participating nodes. The node argument N is set to 100 for simplification but actually A = (total number of participating nodes), B = (total number of participating nodes) / (total number of mining nodes), C = (total number of mining nodes) / The number of participating mining nodes with success experience), etc., and any formula is possible if the block window size can be determined in such a way that the monopoly rate or the oligosity rate of the mining node becomes as small as possible. If the node argument N is at least one of A, B, and C, or is a formula including other variables, the transaction history management unit 120 may determine a predetermined period (for example, 1 hour, 3 hours, , 1 week, 1 month, etc.), it may include the transaction amount, the change amount of the transaction amount, and the change amount of the transaction amount in inverse proportion from the transaction history information showing the transaction amount related data such as the change amount of the transaction amount, In this case, when the transaction volume increases sharply in a short time, there is an advantage that the block window size can be reduced and the transaction volume can be temporarily processed quickly.

일예로서, 구체적으로 표 1의 NO. 7의 1주간 블록윈도우 사이즈(y)는 다음과 같이 산출될 수 있다.Specifically, as shown in Fig. The one-week block window size (y) of 7 can be calculated as follows.

y(1주간) = [0.7 (N)(1주간 블록수)]/1752000(10년간 블록수) = 0.134(Wm)y (1 week) = [0.7 (N) (1 week blocks)] / 1752000 (10 years blocks) = 0.134 (Wm)

따라서, 1주마다 0.134씩 블록윈도우 사이즈를 10년간 증가시킬 수 있다. 그러나, 블록윈도우 사이즈는 노드인수(N)에 따라서도 변화할 수 있는 것이므로 지속적으로 증감이 발생할 수 있고, 또한 10년 이후에도 노드인수의 변화에 따라서 증감이 발생할 수 있다.Therefore, the block window size can be increased by 0.134 every 10 weeks for 10 years. However, since the block window size can vary according to the node argument N, the increase or decrease may occur continuously, and even after 10 years, the increase or decrease may occur depending on the change of the node argument.

다른 일실시예로서, 상위 일정비율을 차지하는 마이닝 노드(예를 들면, 상위 5%, 10%, 상위 20%, 상위 50% 등)의 독과점율을 다음과 같이 정의할 때,In another embodiment, when defining the monopoly rate of a mining node (e.g., top 5%, 10%, top 20%, top 50%, etc.)

독과점율=[상위 일정 비율의 마이닝 노드의 채굴량(블록수)/전체 참여 마이닝 노드의 채굴량(블록수)](채굴 기간은, 최근 일정기간, 예를 들면, 최근 1개월, 최근 3개월, 최근 6개월, 최근 1년 등의 일정기간)이면,(The number of blocks) / total number of mining nodes (number of blocks) of participating mining nodes] (mining period is a recent period, for example, recent 1 month, recent 3 months, recent 6 months, the last one year, etc.)

블록윈도우 사이즈(y)를 단순히 y=(독과점율) ×nP(n은 자연수, P는 블록생성 주기로서, 예를 들면, 1분, 3분, 10분 등)로 정할 수도 있다.The block window size y may be simply defined as y = (monopolar rating) x nP (n is a natural number, and P is a block generation period, for example, 1 minute, 3 minutes, 10 minutes, etc.).

이 경우에는 독과점 마이닝 노드의 독과점율이 커질수록 블록윈도우 사이즈가 커지기 때문에 현실적이고도 직접적으로 마이닝 노드의 독점적, 과점적 채굴을 방지할 수 있다.In this case, since the block window size becomes larger as the monopoly rate of the monopoly mine node becomes larger, it is possible to prevent the exclusive and oligopolistic mining of the mining node in a realistic and direct manner.

또 다른 일실시예로서, 상위 일정비율(예를 들면 상위 10%, 상위 20%, 상위 50% 등과 같이 상위 0% 부터 50%까지 등)의 독과점 마이닝 노드에 대해 채굴 점유율에 비례하여 차별적으로 블록윈도우 사이즈를 할당 또는 설정할 수도 있다. 이 경우, 일정한 채굴 점유율 미만의 마이닝 노드에게는 블록윈도우를 설정하지 않을 수도 있다.In another embodiment, a monolithic mining node having a higher percentage (for example, from the upper 0% to the upper 50%, such as the upper 10%, upper 20%, upper 50%, etc.) You can also assign or set the window size. In this case, a block window may not be set for a mining node having a certain minus occupancy rate.

다른 실시예로서, 채굴 점유율에 비례하여 차별적으로 블록윈도우 사이즈를 변화시켜서 모든 노드에게 사이즈에 있어서 차등을 두어 블록윈도우를 설정할 수도 있다.In another embodiment, the block window size may be differentiated in proportion to the mining occupancy, and a block window may be set by setting a difference in size among all the nodes.

또 다른 일실시예로서, 마이닝 노드에 대해 최근 단기 일정기간 동안의 채굴점유율에 비례하여 블록윈도우를 설정하거나 블록윈도우의 사이즈를 차별적으로 설정할 수도 있다. 이 경우는 갑자기 거래량이 급증할 때 그 거래량이나 거래량의 변화추이를 통해 블록윈도우 모드에서 블록윈도우 사이즈를 감소 시키거나 일시 블록윈도우 해제 모드를 통해 작업증명이 원활히 이루어지도록 한 후 다시 정상 상태(예를 들면, 시간당 평균 거래량, 일평균 거래량, 일주평균거래량 등으로 거래량이 복귀할 경우의 상태)로 회복되면, 다시 정상적인 블록윈도우 모드 동작을 수행할 수 있다.As another embodiment, it is possible to set a block window or a block window size differently in proportion to a mining occupancy rate of a mining node in a recent short period. In this case, when the transaction volume suddenly surges, the block window size is decreased in the block window mode or the temporary block window release mode through the change of the transaction amount or the transaction amount, , The normal block window mode operation can be performed again when the transaction volume is restored to the normal operation amount, the daily average transaction amount, the round-robin average transaction amount, etc.).

이와 같은 경우에도, 일부 마이닝 노드에만 채굴이 집중화되는 현상을 막을 수 있으므로 본 발명의 목적을 달성할 수 있다.Even in such a case, the phenomenon of concentration of mining only in a part of the mining nodes can be prevented, and thus the object of the present invention can be achieved.

블록윈도우의 사이즈 산출과정이 종료되면, 이어서 스텝S9에서, 산출된 블록윈도우 사이즈에 따라서 채굴을 달성한 마이닝 노드마다, 또는 일정 비율 이상의 채굴 성공율을 가진 마이닝 노드에게만 적절한 윈도우 사이즈를 산출하는 블록윈도우 모드로 가상화폐 거래 시스템을 동작시킨다.When the size of the block window is calculated, in step S9, a block window mode for calculating an appropriate window size only for a mining node having a mining success rate equal to or higher than a predetermined ratio, for each mining node achieving mining according to the calculated block window size To operate the virtual currency trading system.

스텝S10에서, 블랙아웃이 발생하면, 스텝S11에서 블랙아웃 감시부(130)는 블록윈도우 모드 동작을 해제한다(블록윈도우 해제모드). 시스템에 블록윈도우 해제모드를 설정할 때는, 블랙아웃 주기에서(예를 들면 도 3의 주기 t8에서) 바람직하게는, 모든 마이닝 노드가 채굴시도를 하지 않는 상태일 때 수행한다(블록윈도우 해제 모드가 실행된 주기는 도 3의 주기 t9 ~ t10에 해당).In step S10, when blackout occurs, the blackout monitoring unit 130 cancels the block window mode operation (block window release mode) in step S11. When the block window release mode is set in the system, it is preferably performed in a blackout period (for example, at cycle t8 in FIG. 3) when all the mining nodes are in a state of not attempting a mining operation Corresponds to the period t9 to t10 in Fig. 3).

다른 일실시예로서, 다른 마이닝 모드가 채굴시도(예를 들면, 도 3의 제2 마이닝 노드(MN2)의 제2 채굴시도(U2-2) 및 제4 마이닝 노드(MN4)의 제2 채굴시도(U4-2)에 해당)를 수행하고 있지만 기존의 블록윈도우 설정 주기에 속하기 때문에(예를 들면, 도 3의 주기 t5 ~t6에 해당) 유효 채굴로 인정받지 못한 상태(예를 들면, 도 3의 채굴이력 관리부(110)의 U란 "2-2", "4-2")인 경우에는 블랙아웃 감시부(130)가 언마이닝 전용모드로 전환하여 채굴 실패를 의미하는 언마이닝 등록("2-2", "4-2")을 마이닝 등록으로 전용시킬 수 있다.As another embodiment, if another mining mode is selected for a mining attempt (e.g., a second mining attempt (U2-2) of the second mining node (MN2) of Figure 3 and a second mining attempt of the fourth mining node (Corresponding to the cycle t5 to t6 in FIG. 3), but is not recognized as effective mining (for example, in the case of the state 2 "and" 4-2 "of the mining history management unit 110 of the mining history management unit 110, the blackout monitoring unit 130 switches to the mining- "2-2 "," 4-2 ") can be dedicated to mining registration.

스텝S11 과정이 종료되면, 스텝S12로 진행하여 지금까지의 과정을 업데이트하여 각 노드에 전파하고 이어서 스텝S2로 진행하여 처음부터의 과정을 반복한다.When the process of step S11 is finished, the process goes to step S12, the process up to now is updated, and the process is propagated to each node. Then, the process goes to step S2 and the process from the beginning is repeated.

스텝S10에서 블랙아웃이 발생하지 않으면 스텝S12로 역시 진행하여, 지금까지의 과정을 업데이트하여 각 노드에 전파하고 이어서 스텝S2로 진행하여 처음부터의 과정을 반복한다.If blackout does not occur in step S10, the process also proceeds to step S12, updates the process up to this point, propagates to each node, and then proceeds to step S2 to repeat the process from the beginning.

이상과 같이, 본 발명의 바람직한 실시예에 대하여 설명하였지만, 본 발명의 범위는 이에 한정되지 않는다. 예를 들면, 블록윈도우 모듈을 가상화폐 시스템이나 기타 블록체인을 기반으로 하는 관련 시스템에 일체로 결합하거나, 프레임워크 형태, 프레임워크를 저장한 저장매체 형태, 다운로드 형태, 프레임워크과 하드웨어가 함께 결합된 서버 형태 등으로 제공할 수 있으므로, 기존 가상화폐 시스템이나 기타 블록체인 기반 시스템에 간편하게 적용할 수 있어 새로운 기능에 따른 기존의 시스템을 해체하는 낭비요소를 제거할 수 있다. 또한, 본 발명은 가상화폐 시스템 뿐만 아니라 블록체인을 응용하는 모든 시스템에도 그 응용에 따라서 다앙하게 적용이 가능하다. 따라서, 본 발명은 다음의 특허청구범위를 일탈하지 않고도 당분야의 통상의 기술자에 의해 여러 가지 변경 및 변형이 가능하다.Although the preferred embodiments of the present invention have been described above, the scope of the present invention is not limited thereto. For example, the block window module may be integrally combined with a virtual money system or other related system based on a block chain, or a combination of a framework type, a storage medium storing a framework, a download form, a framework and hardware Server type, etc., it can be easily applied to an existing virtual money system or other block-chain-based system, thereby eliminating the waste of dismantling the existing system according to the new function. In addition, the present invention can be applied not only to a virtual currency system but also to all systems applying a block chain, depending on its application. Therefore, the present invention is susceptible to various modifications and variations by those skilled in the art without departing from the scope of the following claims.

70: 통신망 71: 이동통신망
72: 인터넷 73: 블루투스 BL
74: 전용선 75: LPWAN
100: 블록윈도우 관리서버 110: 채굴이력 관리부
120: 거래이력 관리부 130: 블랙아웃 감시부
140: 블록윈도우 사이즈 산출부 150: 블록윈도우 생성부
160: 블록윈도우 모듈 업데이트부 200: 가상화폐 기능모듈 관리 서버
210: 채굴기능 모듈 관리부 220: 월릿기능 모듈 관리부
230: 블록체인 기능 모듈 관리부 240: 네트워크 라우팅 모듈 관리부 300: 가상화폐 거래소 서버
MN1, MN2, MN3, MN4: 제1 내지 제4 마이닝 노드
N5, N6, N7, N8: 일반노드
70: communication network 71: mobile communication network
72: Internet 73: Bluetooth BL
74: Private line 75: LPWAN
100: Block window management server 110: Mining history management unit
120: transaction history management unit 130: blackout monitoring unit
140: block window size calculating unit 150: block window generating unit
160: Block window module update unit 200: Virtual currency function module management server
210: Mining function module management unit 220: Wallet function module management unit
230: Block Chain Function Module Management Unit 240: Network Routing Module Management Unit 300: Virtual Currency Exchange Server
MN1, MN2, MN3, MN4: First to fourth mining nodes
N5, N6, N7, N8: Normal node

Claims (22)

작업증명에 참여하는 마이닝 노드와 가상화폐 거래를 위한 일반 노드를 적어도 포함하는 블록체인 기반 가상화폐 거래 시스템에 있어서,
상기 가상화폐 거래시스템은 특정 작업증명주기에 채굴성공을 달성한 마이닝 노드에 대해 상기 특정 작업증명주기 이후에 채굴시도에 대해 일정한 제약을 부여하는 채굴 제한을 위한 합의 알고리즘을 포함하는 블록윈도우 모듈을 포함하고,
상기 블록윈도우 모듈은,
상기 작업증명 과정에서 마이닝 노드의 작업증명 동작 중 하나인 채굴시도의 결과를 해당 마이닝 노드와 연계하여 채굴이력정보를 기록하는 채굴이력 관리부와;
상기 채굴이력정보에 기초하여 채굴시도를 수행한 결과 채굴성공을 달성한 마이닝 노드들 중 적어도 일부에 대해 해당 작업증명주기 이후 일정 기간 동안 채굴시도의 결과를 무효화하거나 채굴시도를 금지하는 블록윈도우를 설정하는 블록윈도우 생성부를;
포함하고,
상기 채굴이력정보는 블록체인에 연결되는 누적 블록수, 참여 마이닝 노드수 정보, 채굴에 성공한 경력이 있는 마이닝 노드수 정보, 개별 마이닝 노드의 채굴 이력 정보, 마이닝 노드들의 채굴 성공율, 상위 마이닝 노드들의 채굴 독과점율, 과점율중 적어도 하나를 포함하고,
상기 블록윈도우 모듈은 상기 채굴이력정보를 기초로 채굴에 성공한 마이닝 노드에 대해 설정할 블록윈도우 사이즈를 산출하여 블록윈도우를 제공하는 블록윈도우 사이즈 산출부 및 현재 또는 최근 일정기간 동안 일반노드들 간의 가상화폐 거래이력정보를 제공하는 거래이력 관리부를 더 포함하며,
상기 블록윈도우 사이즈 산출부로부터 산출되는 상기 블록윈도우 사이즈(y)는,
y = [0.7 (N)×현재까지의 누적 블록수)]/(10년간 누적 블록수)
로 정의되며,
상기 N은 노드인수로서
A=(전체 참여 노드수), B=(전체 참여 노드수)/(전체 마이닝 노드수), C=(전체 마이닝 노드수)/(마이닝 성공 경험이 있는 참여 마이닝 노드수)
중 어느 하나인 것을 특징으로 하는 가상화폐 거래 시스템.
1. A block chain-based virtual currency trading system comprising at least a mining node participating in a proof of work and a general node for a virtual currency transaction,
The virtual currency transaction system includes a block window module including a consensus algorithm for mining restriction that gives a certain restriction to a mining attempt after the specific job proof period for a mining node that has succeeded in mining at a specific job proving period and,
The block window module comprises:
A mining history management unit that records the mining history information in association with the mining node with a result of the mining attempt, which is one of the operation of the mining node in the proof process;
As a result of performing a mining attempt based on the mining history information, a block window is set for at least a part of the mining nodes that have succeeded in mining success, such that a result of mining attempt is invalidated or a mining attempt is prohibited for a predetermined period after the corresponding job proving period A block window generating unit for generating a block window;
Including,
The mining history information includes information on the number of cumulative blocks connected to the block chain, the number of participating mining nodes, the number of mining nodes having a successful mining history, the mining history information of individual mining nodes, the mining success rate of mining nodes, A monopoly rate, and an oligosity rate,
The block window module includes a block window size calculator for calculating a block window size to be set for a mining node that has successfully mined based on the mining history information and providing a block window, And a transaction history management unit for providing history information,
Wherein the block window size (y) calculated from the block window size calculating unit
y = [0.7 (N) x cumulative number of blocks until now)] / (cumulative number of blocks in 10 years)
Lt; / RTI &gt;
N is a node argument
A = (total number of participating nodes), B = (total number of participating nodes) / (total number of mining nodes), C = (total number of mining nodes) / (number of participating mining nodes having mining success experience)
The virtual currency transaction system comprising:
삭제delete 삭제delete 제1항에 있어서,
상기 변수 A, B 및 C 중 적어도 하나는 상기 거래이력정보로부터의 일정기간 거래량 또는 거래량 변화율을 반비례 인수로 포함할 수 있는 것을 특징으로 하는 가상화폐 거래 시스템.
The method according to claim 1,
Wherein at least one of the variables A, B, and C can include a periodic transaction amount or a transaction amount change rate from the transaction history information as inverse factors.
작업증명에 참여하는 마이닝 노드와 가상화폐 거래를 위한 일반 노드를 적어도 포함하는 블록체인 기반 가상화폐 거래 시스템에 있어서,
상기 가상화폐 거래시스템은 특정 작업증명주기에 채굴성공을 달성한 마이닝 노드에 대해 상기 특정 작업증명주기 이후에 채굴시도에 대해 일정한 제약을 부여하는 채굴 제한을 위한 합의 알고리즘을 포함하는 블록윈도우 모듈을 포함하고,
상기 블록윈도우 모듈은,
상기 작업증명 과정에서 마이닝 노드의 작업증명 동작 중 하나인 채굴시도의 결과를 해당 마이닝 노드와 연계하여 채굴이력정보를 기록하는 채굴이력 관리부와;
상기 채굴이력정보에 기초하여 채굴시도를 수행한 결과 채굴성공을 달성한 마이닝 노드들 중 적어도 일부에 대해 해당 작업증명주기 이후 일정 기간 동안 채굴시도의 결과를 무효화하거나 채굴시도를 금지하는 블록윈도우를 설정하는 블록윈도우 생성부를;
포함하고,
상기 채굴이력정보는 블록체인에 연결되는 누적 블록수, 참여 마이닝 노드수 정보, 채굴에 성공한 경력이 있는 마이닝 노드수 정보, 개별 마이닝 노드의 채굴 이력 정보, 마이닝 노드들의 채굴 성공율, 상위 마이닝 노드들의 채굴 독과점율, 과점율중 적어도 하나를 포함하고,
상기 블록윈도우 모듈은 상기 채굴이력정보를 기초로 채굴에 성공한 마이닝 노드에 대해 설정할 블록윈도우 사이즈를 산출하여 블록윈도우를 제공하는 블록윈도우 사이즈 산출부 및 현재 또는 최근 일정기간 동안 일반노드들 간의 가상화폐 거래이력정보를 제공하는 거래이력 관리부를 더 포함하며,
상위 일정비율의 채굴 성공율을 차지하는 마이닝 노드의 과점율(R)을 다음과 같이 정의할 때,
R=[상위 일정 비율의 마이닝 노드의 채굴량(블록수)/전체 참여 마이닝 노드의 채굴량(블록수)], 단 채굴기간은 최근 일정기간,
블록윈도우 사이즈(y)는,
y=(과점율) ×nP(n은 자연수, P는 블록생성 주기로서)
로 정의되며,
상기 변수 A, B 및 C 중 적어도 하나는 상기 거래이력정보로부터의 일정기간 거래량 또는 거래량 변화율을 반비례 인수로 포함할 수 있는 것을 특징으로 하는 가상화폐 거래 시스템.
1. A block chain-based virtual currency trading system comprising at least a mining node participating in a proof of work and a general node for a virtual currency transaction,
The virtual currency transaction system includes a block window module including a consensus algorithm for mining restriction that gives a certain restriction to a mining attempt after the specific job proof period for a mining node that has succeeded in mining at a specific job proving period and,
The block window module comprises:
A mining history management unit that records the mining history information in association with the mining node with a result of the mining attempt, which is one of the operation of the mining node in the proof process;
As a result of performing a mining attempt based on the mining history information, a block window is set for at least a part of the mining nodes that have succeeded in mining success, such that a result of mining attempt is invalidated or a mining attempt is prohibited for a predetermined period after the corresponding job proving period A block window generating unit for generating a block window;
Including,
The mining history information includes information on the number of cumulative blocks connected to the block chain, the number of participating mining nodes, the number of mining nodes having a successful mining history, the mining history information of individual mining nodes, the mining success rate of mining nodes, A monopoly rate, and an oligosity rate,
The block window module includes a block window size calculator for calculating a block window size to be set for a mining node that has successfully mined based on the mining history information and providing a block window, And a transaction history management unit for providing history information,
When the minutia ratio (R) of a mining node that occupies the highest success rate of mining success rate is defined as follows,
R = [number of blocks (number of blocks) / total number of mining nodes (number of blocks))
The block window size (y)
y = (degree of oligonormal) x nP (n is a natural number, and P is a block generation cycle)
Lt; / RTI &gt;
Wherein at least one of the variables A, B, and C can include a periodic transaction amount or a transaction amount change rate from the transaction history information as inverse factors.
제5항에 있어서,
상기 마이닝 노드에 대해 해당 채굴 성공율에 비례하여 차별적으로 블록윈도우 사이즈가 설정되거나, 무차별적으로 블록윈도우가 설정되며,
상기 노드인수(N)는 상기 거래이력정보로부터의 일정기간 거래량을 반비례 인수로 포함하는 것을 특징으로 하는 가상화폐 거래 시스템.
6. The method of claim 5,
A block window size is discriminately set in proportion to a mining success rate of the mining node, a block window is set indiscriminately,
Wherein the node argument (N) includes a periodic transaction amount from the transaction history information as an inverse proportion argument.
제4항 내지 제6항 중 어느 한 항에 있어서,
상기 블록윈도우 모듈은 특정 작업증명주기 동안 시스템 내에서 블록이 생성되지 않는 블랙아웃 발생여부를 감시하는 블랙아웃 감시부를 더 포함하고,
시스템 내에서 블랙아웃이 발생한 것을 감지할 때 상기 블랙아웃 감시부는 상기 특정 작업증명주기 이후 작업증명주기에 마이닝 노드들에 대해 이미 설정된 블록윈도우 설정을 해제하는 블록윈도우 해제모드를 설정하며,
상기 블랙아웃 감시부는 상기 블록윈도우 해제모드가 설정된 이후 작업증명 주기 동안 블록이 생성된 것을 감지하면 즉시 블록윈도우 해제모드를 블록윈도우 모드로 전환하며, 상기 블록윈도우 모드에 따라서 상기 블록윈도우 생성부는 상기 블록윈도우 사이즈 산출부와 연동하여 블록윈도우를 다시 생성하는 것을 특징으로 하는 가상화폐 거래 시스템.
7. The method according to any one of claims 4 to 6,
Wherein the block window module further includes a blackout monitoring unit for monitoring whether blackout occurs in which no block is generated in the system during a specific job certification period,
The blackout monitoring unit sets a block window release mode for releasing the block window setting already set for the mining nodes in the task certification cycle after the specific task certification cycle,
Wherein the blackout monitoring unit switches the block window release mode to the block window mode upon detecting that the block is generated during the task verification period after the block window release mode is set, And generates the block window in cooperation with the window size calculating unit.
제4항 내지 제6항 중 어느 한 항에 있어서,
상기 블록윈도우 모듈은 특정 작업증명주기 동안 시스템 내에서 블록이 생성되지 않는 블랙아웃 발생여부를 감시하는 블랙아웃 감시부를 더 포함하고,
상기 특정 작업주기 동안 블록윈도우가 설정된 적어도 하나 이상의 마이닝 노드가 채굴시도를 수행하여 채굴이 무효화된 것을 상기 채굴이력관리부가 기록한 경우, 또한, 상기 블랙아웃 감시부가 상기 특정 작업주기 동안 블랙아웃이 발생한 것을 감지한 경우, 상기 채굴이력관리부에 기록된 해당 무효화 채굴을 유효채굴로 전환하는 언마이닝 전용모드를 설정하며,
상기 블랙아웃 감시부는 상기 언마이닝 전용모드가 설정된 이후 작업증명 주기 동안 블록이 생성된 것을 감지하면 즉시 언마이닝 전용모드를 블록윈도우 모드로 전환하며, 상기 블록윈도우 모드에 따라서 상기 블록윈도우 생성부는 상기 블록윈도우 사이즈 산출부와 연동하여 블록윈도우를 다시 생성하는 것을 특징으로 하는 가상화폐 거래 시스템.
7. The method according to any one of claims 4 to 6,
Wherein the block window module further includes a blackout monitoring unit for monitoring whether blackout occurs in which no block is generated in the system during a specific job certification period,
If the mining history management unit records that at least one mining node having a block window set by the mining node has been invalidated by mining attempt during the specific work period and that the blackout monitoring unit has generated blackout during the specific work period Mining dedicated mode to switch the corresponding invalidation mining recorded in the mining history management unit to effective mining,
Wherein the blackout monitoring unit immediately switches the unminifying dedicated mode to the block window mode upon detecting that the block has been generated during the task proof period after the unminifying dedicated mode is set, And generates the block window in cooperation with the window size calculating unit.
제7항에 있어서,
상기 가상화폐 거래 시스템은 상기 블록윈도우 모듈을 업데이트하여 노드들에게 프레임워크로 제공하는 블록윈도우 관리 서버를 더 포함하며,
상기 블록윈도우 관리 서버는 독립된 개체로서 일반 가상화폐 거래시스템에 특정 통신 커넥터를 통해 결합가능하고, 상기 블록윈도우 모듈은 업데이트될 때마다 상기 블록윈도우 관리 서버로부터 노드들에게 제공되거나, 노드들로부터 다른 노드들에게 전파되는 것을 특징으로 하는 가상화폐 거래 시스템.
8. The method of claim 7,
The virtual currency transaction system further comprises a block window management server for updating the block window module and providing the block window module as a framework to the nodes,
The block window management server is an independent entity and can be coupled to a general virtual currency transaction system through a specific communication connector. The block window module is provided to the nodes from the block window management server each time the block window management server is updated, The virtual currency transaction system comprising:
제8항에 있어서,
상기 가상화폐 거래 시스템은 상기 블록윈도우 모듈을 업데이트하여 노드들에게 프레임워크로 제공하는 블록윈도우 관리 서버를 더 포함하며,
상기 블록윈도우 관리 서버는 독립된 개체로서 일반 가상화폐 거래시스템에 특정 통신 커넥터를 통해 결합가능하고, 상기 블록윈도우 모듈은 업데이트될 때마다 상기 블록윈도우 관리 서버로부터 노드들에게 제공되거나, 노드들로부터 다른 노드들에게 전파되는 것을 특징으로 하는 가상화폐 거래 시스템.
9. The method of claim 8,
The virtual currency transaction system further comprises a block window management server for updating the block window module and providing the block window module as a framework to the nodes,
The block window management server is an independent entity and can be coupled to a general virtual currency transaction system through a specific communication connector. The block window module is provided to the nodes from the block window management server each time the block window management server is updated, The virtual currency transaction system comprising:
작업증명에 참여하는 마이닝 노드와 가상화폐 거래를 위한 일반 노드를 적어도 포함하는 블록체인 기반 가상화폐 거래 시스템에서의 가상화폐 거래 방법에 있어서, 상기 가상화폐 거래시스템은 특정 작업증명주기에 채굴성공을 달성한 마이닝 노드에 대해 상기 특정 작업증명주기 이후에 채굴시도에 대해 일정한 제약을 부여하는 채굴 제한을 위한 합의 알고리즘을 포함하는 블록윈도우 모듈을 포함하고,
상기 블록윈도우 모듈의 채굴이력 관리부가 상기 작업증명 과정에서 마이닝 노드의 작업증명 동작 중 하나인 채굴시도의 결과를 해당 마이닝 노드와 연계하여 채굴이력정보를 기록하는 채굴이력정보 기록단계와;
상기 블록윈도우 모듈의 블록윈도우 생성부가 상기 채굴이력정보에 기초하여 채굴시도를 수행한 결과 채굴성공을 달성한 마이닝 노드들 중 적어도 일부에 대해 해당 작업증명주기 이후 일정 기간 동안 채굴시도의 결과를 무효화하거나 채굴시도를 금지하는 블록윈도우를 설정하는 블록윈도우 설정단계를;
포함하고,
상기 채굴이력정보는 블록체인에 연결되는 누적 블록수, 참여 마이닝 노드수 정보, 채굴에 성공한 경력이 있는 마이닝 노드수 정보, 개별 마이닝 노드의 채굴 이력 정보, 마이닝 노드들의 채굴 성공율, 상위 마이닝 노드들의 채굴 독과점율 중 적어도 하나를 포함하고,
상기 채굴이력정보 기록단계 이후,
상기 블록윈도우 모듈의 거래이력 관리부가 현재 또는 최근 일정기간 동안 일반노드들 간의 가상화폐 거래이력정보를 제공하는 단계와;
상기 블록윈도우 모듈의 블록윈도우 사이즈 산출부가 상기 채굴이력정보를 기초로 채굴에 성공한 마이닝 노드에 대해 설정할 블록윈도우 사이즈를 산출하여 블록윈도우를 제공하는 단계를;
더 포함하며,
상기 블록윈도우 사이즈 산출부로부터 산출되는 상기 블록윈도우 사이즈(y)는,
y = [0.7 (N)×현재까지의 누적 블록수)]/(10년간 누적 블록수)
로 정의되며,
상기 N은 노드인수로서
A=(전체 참여 노드수), B=(전체 참여 노드수)/(전체 마이닝 노드수), C=(전체 마이닝 노드수)/(마이닝 성공 경험이 있는 참여 마이닝 노드수)
중 어느 하나인 것을 특징으로 하는 가상화폐 거래 방법.
A virtual currency trading method in a block chain-based virtual currency trading system including at least a mining node participating in a proof of work and a general node for a virtual currency transaction, the virtual currency trading system comprising: A block window module including a consensus algorithm for a mining restriction that gives a certain constraint on a mining attempt after the specific job certification period for a mining node,
A mining history information recording step of recording mining history information in association with a mining node with a mining history management unit of the block window module, the mining node having a result of a mining attempt,
The block window generator of the block window module invalidates the result of the mining attempt for at least a part of the mining nodes that have achieved the mining success as a result of performing the mining attempt based on the mining history information, A block window setting step of setting a block window for prohibiting a mining attempt;
Including,
The mining history information includes information on the number of cumulative blocks connected to the block chain, the number of participating mining nodes, the number of mining nodes having a successful mining history, the mining history information of individual mining nodes, the mining success rate of mining nodes, And a monopoly rate,
After the mining history information recording step,
The transaction history management unit of the block window module providing virtual currency transaction history information between common nodes for a current period or a recent period;
Calculating a block window size to be set for a mining node in which the block window size calculating unit of the block window module succeeds in mining based on the mining history information to provide a block window;
Further,
Wherein the block window size (y) calculated from the block window size calculating unit
y = [0.7 (N) x cumulative number of blocks until now)] / (cumulative number of blocks in 10 years)
Lt; / RTI &gt;
N is a node argument
A = (total number of participating nodes), B = (total number of participating nodes) / (total number of mining nodes), C = (total number of mining nodes) / (number of participating mining nodes having mining success experience)
The virtual currency transaction method comprising:
삭제delete 삭제delete 제11항에 있어서,
상기 변수 A, B 및 C 중 적어도 하나는 상기 거래이력정보로부터의 일정기간 거래량 또는 거래량 변화율을 반비례 인수로 포함할 수 있는 것을 특징으로 하는 가상화폐 거래 방법.
12. The method of claim 11,
Wherein at least one of the variables A, B, and C includes a periodic transaction amount or a transaction amount change rate as an inverse factor from the transaction history information.
작업증명에 참여하는 마이닝 노드와 가상화폐 거래를 위한 일반 노드를 적어도 포함하는 블록체인 기반 가상화폐 거래 시스템에서의 가상화폐 거래 방법에 있어서, 상기 가상화폐 거래시스템은 특정 작업증명주기에 채굴성공을 달성한 마이닝 노드에 대해 상기 특정 작업증명주기 이후에 채굴시도에 대해 일정한 제약을 부여하는 채굴 제한을 위한 합의 알고리즘을 포함하는 블록윈도우 모듈을 포함하고,
상기 블록윈도우 모듈의 채굴이력 관리부가 상기 작업증명 과정에서 마이닝 노드의 작업증명 동작 중 하나인 채굴시도의 결과를 해당 마이닝 노드와 연계하여 채굴이력정보를 기록하는 채굴이력정보 기록단계와;
상기 블록윈도우 모듈의 블록윈도우 생성부가 상기 채굴이력정보에 기초하여 채굴시도를 수행한 결과 채굴성공을 달성한 마이닝 노드들 중 적어도 일부에 대해 해당 작업증명주기 이후 일정 기간 동안 채굴시도의 결과를 무효화하거나 채굴시도를 금지하는 블록윈도우를 설정하는 블록윈도우 설정단계를;
포함하고,
상기 채굴이력정보는 블록체인에 연결되는 누적 블록수, 참여 마이닝 노드수 정보, 채굴에 성공한 경력이 있는 마이닝 노드수 정보, 개별 마이닝 노드의 채굴 이력 정보, 마이닝 노드들의 채굴 성공율, 상위 마이닝 노드들의 채굴 독과점율 중 적어도 하나를 포함하고,
상기 채굴이력정보 기록단계 이후,
상기 블록윈도우 모듈의 거래이력 관리부가 현재 또는 최근 일정기간 동안 일반노드들 간의 가상화폐 거래이력정보를 제공하는 단계와;
상기 블록윈도우 모듈의 블록윈도우 사이즈 산출부가 상기 채굴이력정보를 기초로 채굴에 성공한 마이닝 노드에 대해 설정할 블록윈도우 사이즈를 산출하여 블록윈도우를 제공하는 단계를;
더 포함하며,
상위 일정비율의 채굴 성공율을 차지하는 마이닝 노드의 과점율(R)을 다음과 같이 정의할 때,
R=[상위 일정 비율의 마이닝 노드의 채굴량(블록수)/전체 참여 마이닝 노드의 채굴량(블록수)], 단 채굴기간은 최근 일정기간,
블록윈도우 사이즈(y)는,
y=(과점율) ×nP(n은 자연수, P는 블록생성 주기로서)
로 정의되며,
상기 변수 A, B 및 C 중 적어도 하나는 상기 거래이력정보로부터의 일정기간 거래량 또는 거래량 변화율을 반비례 인수로 포함할 수 있는 것을 특징으로 하는 가상화폐 거래 방법.
A virtual currency trading method in a block chain-based virtual currency trading system including at least a mining node participating in a proof of work and a general node for a virtual currency transaction, the virtual currency trading system comprising: A block window module including a consensus algorithm for a mining restriction that gives a certain constraint on a mining attempt after the specific job certification period for a mining node,
A mining history information recording step of recording mining history information in association with a mining node with a mining history management unit of the block window module, the mining node having a result of a mining attempt,
The block window generator of the block window module invalidates the result of the mining attempt for at least a part of the mining nodes that have achieved the mining success as a result of performing the mining attempt based on the mining history information, A block window setting step of setting a block window for prohibiting a mining attempt;
Including,
The mining history information includes information on the number of cumulative blocks connected to the block chain, the number of participating mining nodes, the number of mining nodes having a successful mining history, the mining history information of individual mining nodes, the mining success rate of mining nodes, And a monopoly rate,
After the mining history information recording step,
The transaction history management unit of the block window module providing virtual currency transaction history information between common nodes for a current period or a recent period;
Calculating a block window size to be set for a mining node in which the block window size calculating unit of the block window module succeeds in mining based on the mining history information to provide a block window;
Further,
When the minutia ratio (R) of a mining node that occupies the highest success rate of mining success rate is defined as follows,
R = [number of blocks (number of blocks) / total number of mining nodes (number of blocks))
The block window size (y)
y = (degree of oligonormal) x nP (n is a natural number, and P is a block generation cycle)
Lt; / RTI &gt;
Wherein at least one of the variables A, B, and C includes a periodic transaction amount or a transaction amount change rate as an inverse factor from the transaction history information.
제15항에 있어서,
상기 블록윈도우 제공 단계에서,
상기 마이닝 노드에 대해 해당 채굴 성공율에 비례하여 차별적으로 블록윈도우 사이즈가 설정되거나, 무차별적으로 블록윈도우가 설정되며,
상기 노드인수(N)는 상기 거래이력정보로부터의 일정기간 거래량을 반비례 인수로 포함하는 것을 특징으로 하는 가상화폐 거래 방법.
16. The method of claim 15,
In the block window providing step,
A block window size is discriminately set in proportion to a mining success rate of the mining node, a block window is set indiscriminately,
Wherein the node argument (N) includes a periodic transaction amount from the transaction history information as an inverse proportion factor.
제14항 내지 제16항 중 어느 한 항에 있어서,
상기 블록윈도우 모듈의 블랙아웃 감시부가 특정 작업증명주기 동안 시스템 내에서 블록이 생성되지 않는 블랙아웃 발생여부를 감시하는 블랙아웃 감시단계와;
블랙아웃이 발생한 것을 감지할 때 상기 블랙아웃 감시부가 상기 특정 작업증명주기 이후 작업증명주기에 마이닝 노드들에 대해 이미 설정된 블록윈도우 설정을 해제하는 블록윈도우 해제모드를 설정하는 블록윈도우 해제모드 설정단계와;
상기 블랙아웃 감시부가 상기 블록윈도우 해제모드 설정단계 이후 작업증명 주기 동안 블록이 생성된 것을 감지하면 즉시 블록윈도우 해제모드를 블록윈도우 모드로 전환하고, 상기 블록윈도우 모드에 따라서 상기 블록윈도우 생성부가 상기 블록윈도우 사이즈 산출부와 연동하여 블록윈도우를 다시 생성하는 단계를;
더 포함하는 것을 특징으로 하는 가상화폐 거래 방법.
17. The method according to any one of claims 14 to 16,
A blackout monitoring step of monitoring a blackout monitoring unit of the block window module whether a blackout occurs in which no block is generated in the system during a specific job certification period;
A block window release mode setting step of setting a block window release mode in which the blackout monitoring unit releases the block window setting already set for the mining nodes in the task certification cycle after the specific task certification cycle when detecting that blackout has occurred ;
When the blackout monitoring unit detects that a block has been generated during the task verification period after the block window release mode setting step, immediately switches the block window release mode to the block window mode, and in response to the block window mode, Regenerating the block window in cooperation with the window size calculating unit;
Further comprising the steps of:
제14항 내지 제16항 중 어느 한 항에 있어서,
상기 블록윈도우 모듈의 블랙아웃 감시부가 특정 작업증명주기 동안 시스템 내에서 블록이 생성되지 않는 블랙아웃 발생여부를 감시하는 블랙아웃 감시단계와;
상기 특정 작업주기 동안 블록윈도우가 설정된 적어도 하나 이상의 마이닝 노드가 채굴시도를 수행하여 채굴이 무효화된 것을 상기 채굴이력관리부가 기록한 경우, 또한, 상기 블랙아웃 감시부가 상기 특정 작업주기 동안 블랙아웃이 발생한 것을 감지한 경우, 상기 채굴이력관리부에 기록된 해당 무효화 채굴을 유효채굴로 전환하는 언마이닝 전용모드를 설정하는 언마이닝 전용모드 설정단계와;
상기 블랙아웃 감시부가 상기 언마이닝 전용모드 설정단계 이후 작업증명 주기 동안 블록이 생성된 것을 감지하면 즉시 언마이닝 전용모드를 블록윈도우 모드로 전환하며, 상기 블록윈도우 모드에 따라서 상기 블록윈도우 생성부가 상기 블록윈도우 사이즈 산출부와 연동하여 블록윈도우를 다시 생성하는 단계를;
더 포함하는 것을 특징으로 하는 가상화폐 거래 방법.
17. The method according to any one of claims 14 to 16,
A blackout monitoring step of monitoring a blackout monitoring unit of the block window module whether a blackout occurs in which no block is generated in the system during a specific job certification period;
If the mining history management unit records that at least one mining node having a block window set by the mining node has been invalidated by mining attempt during the specific work period and that the blackout monitoring unit has generated blackout during the specific work period An unmining dedicated mode setting step of setting an unmining dedicated mode to switch the corresponding invalidation mining recorded in the mining history management unit to effective mining;
Wherein when the blackout monitoring unit detects that a block has been generated during the operation proving period after the unminifying dedicated mode setting step, the blackout monitoring unit immediately switches the unminifying dedicated mode to the block window mode, Regenerating the block window in cooperation with the window size calculating unit;
Further comprising the steps of:
제17항에 따른 블록윈도우 모듈을 프레임워크로 저장한 저장매체.17. A storage medium storing a block window module according to claim 17 as a framework. 제18항에 따른 블록윈도우 모듈을 프레임워크로 저장하여 가상화폐 거래시스템에 적용가능한 저장매체.18. A storage medium storing a block window module according to claim 18 as a framework and applicable to a virtual currency trading system. 제17항에 따른 블록윈도우 모듈을 업데이트하여 노드들에게 제공가능하고, 가상화폐 거래시스템에 물리적으로 통신포트를 통해 연결하여 적용가능한 블록윈도우 관리서버.17. A block window management server capable of updating block window modules according to claim 17 and providing them to nodes and physically connecting to a virtual currency trading system through a communication port. 제18항에 따른 블록윈도우 모듈을 업데이트하여 노드들에게 제공가능하고, 가상화폐 거래시스템에 물리적으로 통신포트를 통해 연결하여 적용가능한 블록윈도우 관리서버.18. A block window management server capable of updating a block window module according to claim 18 and providing it to nodes and physically connecting to a virtual currency trading system through a communication port.
KR1020170109485A 2017-08-29 2017-08-29 Block window module having agreement algorithm for limiting mining, managing server and virtual money exchange system and method Active KR101827373B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020170109485A KR101827373B1 (en) 2017-08-29 2017-08-29 Block window module having agreement algorithm for limiting mining, managing server and virtual money exchange system and method
PCT/KR2018/003358 WO2019045209A1 (en) 2017-08-29 2018-03-22 Block window module having agreement algorithm for limiting mining, management server, and virtual money trading system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170109485A KR101827373B1 (en) 2017-08-29 2017-08-29 Block window module having agreement algorithm for limiting mining, managing server and virtual money exchange system and method

Publications (1)

Publication Number Publication Date
KR101827373B1 true KR101827373B1 (en) 2018-02-08

Family

ID=61232338

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170109485A Active KR101827373B1 (en) 2017-08-29 2017-08-29 Block window module having agreement algorithm for limiting mining, managing server and virtual money exchange system and method

Country Status (2)

Country Link
KR (1) KR101827373B1 (en)
WO (1) WO2019045209A1 (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102000936B1 (en) * 2018-02-14 2019-07-17 주식회사 코드박스 Method to improve consensus algorithm of virtual money
KR20190100740A (en) 2018-02-21 2019-08-29 김인영 Platform system for letter crypto currency
KR20190115432A (en) 2018-04-02 2019-10-11 주식회사 큐브시스템 Cubechain type data management engine and data management method
KR20190115398A (en) 2018-04-02 2019-10-11 주식회사 큐브시스템 Messenger-based call center service method and system using cube chain
KR20190115433A (en) 2019-05-08 2019-10-11 주식회사 큐브시스템 Cubechain SNS service system and methods
KR20190115431A (en) 2019-05-08 2019-10-11 주식회사 큐브시스템 Cube type data link structure and data linking method
KR20190115354A (en) 2018-04-02 2019-10-11 주식회사 큐브시스템 Method for connecting block chain blocks
KR102061030B1 (en) * 2018-06-22 2019-12-31 광주과학기술원 a cryptocurrency system
KR102043297B1 (en) 2018-03-14 2020-01-09 주식회사 유니네트워크 A Mining System and its Operational Method
KR102130699B1 (en) * 2018-12-27 2020-07-06 아주대학교산학협력단 Block-chain based voting system operating method with distributed transaction pool
KR20200137654A (en) 2019-05-31 2020-12-09 주식회사 엠티에스컴퍼니 Behavior information proof method by block chain
WO2021020792A1 (en) * 2019-08-01 2021-02-04 주식회사 블룸테크놀로지 Dag-awtc ledger system using bft verification consensus mechanism
KR20210022422A (en) 2019-08-20 2021-03-03 김인영 System for generating online community based on search word
WO2023287181A1 (en) * 2021-07-12 2023-01-19 이승진 Mining system and mining method using chat app

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5186790B2 (en) * 2007-04-06 2013-04-24 日本電気株式会社 Electronic money transaction method and electronic money system
KR20130082854A (en) * 2011-12-20 2013-07-22 (주)네오위즈게임즈 Method and server for supervising blacklist
KR20150116477A (en) * 2014-04-07 2015-10-16 그린캣소프트(주) Method and System for Mining Digital Currency at PC-Bang
KR101673073B1 (en) * 2015-02-25 2016-11-04 이진희 Dealing method of Crypto-currency base on Blockchain System
KR102050129B1 (en) * 2016-05-03 2019-11-28 안규태 Block chain supporting multiple one-way functions used for verification of blocks

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102000936B1 (en) * 2018-02-14 2019-07-17 주식회사 코드박스 Method to improve consensus algorithm of virtual money
KR20190100740A (en) 2018-02-21 2019-08-29 김인영 Platform system for letter crypto currency
KR102043297B1 (en) 2018-03-14 2020-01-09 주식회사 유니네트워크 A Mining System and its Operational Method
KR20190115396A (en) 2018-04-02 2019-10-11 주식회사 큐브시스템 Community service method and system with Cube Chain
KR20190115398A (en) 2018-04-02 2019-10-11 주식회사 큐브시스템 Messenger-based call center service method and system using cube chain
KR20190115432A (en) 2018-04-02 2019-10-11 주식회사 큐브시스템 Cubechain type data management engine and data management method
KR20190115390A (en) 2018-04-02 2019-10-11 주식회사 큐브시스템 Data management engine and data management method for a cube chain containing indexing blocks
KR20190115389A (en) 2018-04-02 2019-10-11 주식회사 큐브시스템 Data management engine and data management method for a cube chain containing statistical blocks
KR20190115354A (en) 2018-04-02 2019-10-11 주식회사 큐브시스템 Method for connecting block chain blocks
KR20190115391A (en) 2018-04-02 2019-10-11 주식회사 큐브시스템 Data management engine and data management method for a cube chain containing escrow blocks
KR20190115397A (en) 2018-04-02 2019-10-11 주식회사 큐브시스템 Method and system of transaction service between individual and individual using cube chain
KR20190115393A (en) 2018-04-02 2019-10-11 주식회사 큐브시스템 Method for Cube Chain encryption and method for confirm coin transaction using cube chain
KR102061030B1 (en) * 2018-06-22 2019-12-31 광주과학기술원 a cryptocurrency system
KR102130699B1 (en) * 2018-12-27 2020-07-06 아주대학교산학협력단 Block-chain based voting system operating method with distributed transaction pool
KR20190115431A (en) 2019-05-08 2019-10-11 주식회사 큐브시스템 Cube type data link structure and data linking method
KR20190115433A (en) 2019-05-08 2019-10-11 주식회사 큐브시스템 Cubechain SNS service system and methods
KR20200137654A (en) 2019-05-31 2020-12-09 주식회사 엠티에스컴퍼니 Behavior information proof method by block chain
WO2021020792A1 (en) * 2019-08-01 2021-02-04 주식회사 블룸테크놀로지 Dag-awtc ledger system using bft verification consensus mechanism
KR20210022422A (en) 2019-08-20 2021-03-03 김인영 System for generating online community based on search word
WO2023287181A1 (en) * 2021-07-12 2023-01-19 이승진 Mining system and mining method using chat app

Also Published As

Publication number Publication date
WO2019045209A1 (en) 2019-03-07

Similar Documents

Publication Publication Date Title
KR101827373B1 (en) Block window module having agreement algorithm for limiting mining, managing server and virtual money exchange system and method
US12003616B2 (en) Rapid distributed consensus on blockchain
US12093938B2 (en) Transaction system and method of operation thereof
JP7181232B2 (en) Blockchain for general computation
US10795857B2 (en) Blockchain system and method thereof
JP7121047B2 (en) Secure off-chain blockchain transactions
CN109242675B (en) Asset publishing method and device based on block chain and electronic equipment
He et al. On the consensus mechanisms of blockchain/dlt for internet of things
Singh et al. Blockchain: Future of financial and cyber security
JP6794527B2 (en) Computer system using secure ledger distribution method and secure distributed ledger technology
US12341892B2 (en) Computer-implemented systems and methods relating to a binary blockchain comprising a pair of coupled blockchains
TW202016818A (en) Blockchain transaction method and device
CN117151853A (en) Method for secure point-to-point communication on a blockchain
KR20190093012A (en) The method for block generation and validation in block-chain system
KR102050087B1 (en) The block-chain system including POPS(Proof of Power specification and Stake) consensus algorithm and block generation method in the block-chain system
JP7264878B6 (en) Improved time-locking technology to protect resources in blockchain
Suliyanti et al. Evaluation of hash rate-based double-spending based on proof-of-work blockchain
KR102181098B1 (en) System and method for distributed database using block chain
Kalla Blockchain perspectives, mining, and types: An introductory tutorial
KR102332814B1 (en) The block chain system including a block chain structure for data self-sovereign identity
US20250111345A1 (en) Time-locked key hierarchy for self-executing cryptocurrency contract
CN113691569B (en) Dynamic expansion accounting method and device based on alliance chain
Syed et al. Cryptocurrency: Next Level in the Evolution of Money
KR20190086299A (en) System and method for supply chain network using block chain
KR20200052198A (en) Method, system and non-transitory computer-readable recording medium for providing rewards

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20170829

PA0201 Request for examination
PA0302 Request for accelerated examination

Patent event date: 20170831

Patent event code: PA03022R01D

Comment text: Request for Accelerated Examination

Patent event date: 20170829

Patent event code: PA03021R01I

Comment text: Patent Application

PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20170925

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20180129

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20180202

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20180202

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20201221

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20241230

Start annual number: 8

End annual number: 8