KR20180113139A - Method for calculating confirmation reliability for blockchain based transaction and Blockchain network monitoring system for performing the method - Google Patents
Method for calculating confirmation reliability for blockchain based transaction and Blockchain network monitoring system for performing the method Download PDFInfo
- Publication number
- KR20180113139A KR20180113139A KR1020170109258A KR20170109258A KR20180113139A KR 20180113139 A KR20180113139 A KR 20180113139A KR 1020170109258 A KR1020170109258 A KR 1020170109258A KR 20170109258 A KR20170109258 A KR 20170109258A KR 20180113139 A KR20180113139 A KR 20180113139A
- Authority
- KR
- South Korea
- Prior art keywords
- block
- transaction
- chain
- reliability
- data
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/562—Brokering proxy services
-
- H04L67/2809—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
- G06Q20/4016—Transaction verification involving fraud or risk level assessment in transaction processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- H04L67/125—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
-
- H04L67/16—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
본 발명은 블록체인 기반 거래에 대한 확정 신뢰도 산출 방법 및 그 방법을 수행하는 블록체인 네트워크 모니터링 시스템에 관한 것이다. 보다 자세하게는, 블록체인 데이터 상에서 특정 거래 데이터가 기록된 블록의 위치가 변경되지 않을 확률을 가리키는 거래 확정 신뢰도를 산출하는 방법과 그 방법을 수행하기 위해 블록체인 네트워크를 구성하는 복수의 블록체인 노드를 모니터링하는 블록체인 네트워크 모니터링 시스템에 관한 것이다.The present invention relates to a reliable reliability calculation method for a block-chain-based transaction and a block-chain network monitoring system for performing the method. More particularly, the present invention relates to a method for calculating a transaction-committed reliability indicating a probability that a position of a block in which specific transaction data is recorded on a block chain data is unchanged, and a method for calculating a transaction reliability using a plurality of block chain nodes constituting a block- Block chain network monitoring system.
블록체인(blockchain)은 지속적으로 증가하는 데이터를 특정 단위의 블록에 기록하고, P2P(peer-to-peer) 네트워크를 구성하는 각각의 노드들이 상기 블록을 체인 형태의 자료 구조로 관리하는 데이터 관리 기술 또는 상기 체인 형태의 자료 구조로 구성된 데이터 그 자체를 의미한다. 이때, 체인 형태의 자료 구조로 구성된 블록체인 데이터는, 도 1 및 도 2에 비교 도시한 바와 같이, 중앙 시스템 없이 각각의 노드에서 분산 원장(distributed ledger) 형태로 운영된다.A block chain is a data management technique in which continuously increasing data is recorded in blocks of a specific unit and each node constituting a peer-to-peer (P2P) network manages the blocks in a data structure of a chain type Or data itself constituted by a data structure of the chain type. At this time, the block chain data composed of the data structure of the chain type is operated in the form of a distributed ledger at each node without a central system as shown in comparison with FIG. 1 and FIG.
블록체인 기술은, 분산 데이터 관리 또는 데이터 위변조 방지를 위해 다양한 분야에 응용될 수 있다. 예를 들어, 블록체인 기술이 금융 분야에 응용되는 경우, 신뢰를 보증하는 중앙 금융기관이 없어도, 분산된 각각의 블록체인 노드가 관리하는 분산 원장을 통해 거래 당사자가 안전하게 거래를 수행할 수 있다.The block chain technique can be applied to various fields for managing distributed data or preventing forgery of data. For example, when a block chain technique is applied to the financial sector, a transaction party can safely conduct a transaction through a distributed ledger managed by each block chain node without a central financial institution that guarantees trust.
분산 원장을 통해서 안전한 거래가 수행될 수 있는 이유 중 하나는 해시 연산 기반으로 구성되는 체인 형태의 자료 구조에서 찾을 수 있다. 구체적으로, 블록체인 네트워크를 구성하는 각각의 블록체인 노드는 도 3에 도시된 자료 구조로 블록들을 관리하는데, 각 블록에는 이전 블록에 대한 해시 값이 기록되며, 상기 해시 값을 통해 이전 블록이 참조될 수 있다. 따라서, 블록이 쌓일수록 블록 내에 기록된 거래 데이터의 위변조는 어려워지고, 각 블록에 기록된 거래 데이터의 신뢰도가 향상될 수 있는 것이다.One of the reasons that a secure transaction can be performed through a distributed ledger can be found in a chain-like data structure consisting of hash operations. Specifically, each block chain node constituting the block-chain network manages blocks with the data structure shown in FIG. 3. In each block, a hash value for the previous block is recorded, . Therefore, as the blocks are piled up, it is difficult for forgery and falsification of the transaction data recorded in the block, and the reliability of the transaction data recorded in each block can be improved.
하지만, 현재까지 고안된 블록체인 기술은 다음과 같은 문제점으로 인해 엄격한 통제가 요구되는 금융 분야 또는 기업 환경에 곧바로 적용되기는 어렵다.However, the block chain technology, which has been designed so far, is not immediately applicable to financial or business environments that require strict control due to the following problems.
먼저, 블록체인 기술은 탈중앙화에 기반한 기술이기 때문에, 전체 시스템이 잘못된 방향으로 움직일 경우 이에 대한 관측 및 대응이 쉽지 않다는 문제가 있다. 특히, 51% 공격과 같이, 전체 네트워크 성능 대비 특정 비율 이상의 컴퓨팅 능력을 확보한 노드들에 의해 데이터의 위변조가 가능하기 때문에, 높은 수준의 보안성이 요구되는 금융 분야 또는 기업 환경에 상기 블록체인 기술이 그대로 적용되기에는 무리가 있다.First, since the block chain technique is based on decentralization, there is a problem in that it is not easy to observe and cope with the case where the entire system moves in the wrong direction. In particular, since data forgery and falsification can be performed by nodes having a computing capability equal to or higher than a specific ratio with respect to the total network performance, such as a 51% attack, the block chain technology It is unreasonable to apply it as it is.
또한, 블록체인 데이터 상에 때때로 분기(branch)가 발생하게 되고, 이에 따라 해당 블록에 기록된 거래 정보를 확인할 수 없는 경우가 발생될 수 있으나, 현재 블록체인 기술은 이에 대한 예측 및 대응이 쉽지 않다는 문제가 있다. 예를 들어, 도 4에 도시된 바와 같이, 블록체인 데이터 상에서 제1 체인(20)을 가장 긴 메인 체인으로 판단하고 블록을 생성하던 제1 노드는 블록체인 동기화 과정에서 뒤늦게 제1 체인(20)보다 길이가 더 긴 제2 체인(10)을 발견하는 경우가 발생될 수 있다. 이와 같은 경우, 상기 제1 노드는 최신 블록인 "블록 #5"로 블록체인 데이터를 갱신하게 되는데, 상기 갱신 과정에서 제1 체인의 블록 #3'(21)에 기록된 거래 데이터(e.g. 트랜잭션 #1)의 블록 위치가 다른 블록(11)으로 변경될 수 있다.In addition, a branch sometimes occurs on the block-chain data, and accordingly, the transaction information recorded in the corresponding block may not be confirmed. However, it is difficult to predict and cope with the current block chain technique there is a problem. For example, as shown in FIG. 4, the first node, which has determined that the
즉, 분기가 발생됨에 따라, 해당 거래 데이터를 확인하기 위해 참조되는 블록 정보가 변경되어, 소정의 시간 동안 해당 거래 데이터를 확인할 수 없는 문제가 발생될 수 있으나, 현재까지 고안된 블록체인 기술은 분기 발생에 따른 블록 위치 변경 여부를 체계적으로 예측할 수 없기 때문에, 이에 대한 대응이 어렵다는 문제가 있다.That is, as the branch is generated, the block information referred to for checking the transaction data may change, and the problem may occur that the corresponding transaction data can not be confirmed for a predetermined period of time. However, It is difficult to systematically predict whether or not the block position is changed according to the change of the block position.
따라서, 금융 분야 또는 기업 환경에 블록체인 기술을 적용하기 위해서는, 분산된 각 블록체인 노드에 대한 모니터링 방법이 요구되고, 블록체인 데이터 상에 형성되는 분기에 따라 특정 거래 데이터의 블록 위치 변경 여부를 예측할 수 있는 방법이 요구된다.Therefore, in order to apply the block chain technology to the financial field or the business environment, a monitoring method for each dispersed block chain node is required, and it is necessary to predict whether or not to change the block position of the specific transaction data according to the branch formed on the block chain data A method is required.
본 발명이 해결하고자 하는 기술적 과제는, 특정 거래 데이터가 기록된 블록의 위치가 변경되지 않을 확률을 가리키는 거래 확정 신뢰도를 산출하는 방법 및 그 방법을 수행하는 장치를 제공하는 것이다.SUMMARY OF THE INVENTION It is an object of the present invention to provide a method for calculating a transaction-determined reliability indicating a probability that a position of a block in which specific transaction data is recorded is unchanged, and an apparatus for performing the method.
본 발명이 해결하고자 하는 다른 기술적 과제는, 상기 거래 확정 신뢰도를 산출하기 위하여, 블록체인 데이터 상에 형성되는 분기 상태를 모니터링할 수 있는 방법 및 그 방법을 수행하는 장치 및 시스템을 제공하는 것이다.Another object of the present invention is to provide a method and apparatus for monitoring the branching state formed on block chain data in order to calculate the transaction confirmation reliability.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명의 기술분야에서의 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The technical objects of the present invention are not limited to the above-mentioned technical problems, and other technical subjects not mentioned can be clearly understood by those skilled in the art from the following description.
상기 기술적 과제를 해결하기 위한, 본 발명의 일 실시예에 따른 거래 확정 신뢰도 산출 방법은, 거래 확정 신뢰도 산출 장치에 의해서 수행되는 블록체인 기반 거래에 대한 거래 확정 신뢰도 산출 방법에 있어서, 블록체인 데이터 상에 형성된 분기(branch)에 관한 정보를 획득하는 단계, 상기 분기에 관한 정보를 기초로, 상기 블록체인 데이터의 현재 블록 높이에 해당하는 대상 블록과 분기 상태에 있지 않은 비분기 상태 블록과의 블록 높이 차이를 산출하는 단계 및 상기 블록 높이 차이를 기초로, 상기 대상 블록에 기록된 거래 데이터에 대한 거래 확정 신뢰도를 산출하는 단계를 포함하되, 상기 거래 확정 신뢰도는, 상기 대상 블록 이후로 k개(단, k는 1 이상의 자연수)의 블록이 더 연결됨에 따라, 상기 거래 데이터가 기록된 블록의 위치가 변경되지 않을 확률을 가리킬 수 있다.According to another aspect of the present invention, there is provided a method for calculating a transaction reliability of a block chain based transaction performed by a transaction reliability determination apparatus, A block height of a target block corresponding to a current block height of the block chain data and a non-branching state block not in a branching state, based on the information about the branching, Calculating a trade-established reliability for the transaction data recorded in the target block based on the block height difference, wherein the transaction-determined reliability includes k , k is a natural number equal to or greater than 1), the position of the block in which the transaction data is recorded is not changed Can indicate the probability.
일 실시예에서, 상기 대상 블록과 분기 상태에 놓여있지 않은 이전 블록과의 블록 높이 차이를 결정하는 단계는, 상기 대상 블록의 이전 블록 방향으로, 동일 블록 높이를 갖는 블록 중에서 상이한 해시 값을 갖는 블록의 개수가 연속적으로 1이 되는 블록 구간을 탐색하는 단계, 상기 블록 구간에 포함된 블록 중에서, 최초로 탐색된 노드를 상기 비분기 상태 블록으로 결정하는 단계 및 상기 대상 블록과 상기 결정된 비분기 상태 블록과의 블록 높이 차이를 산출하는 단계를 포함할 수 있다.In one embodiment, the step of determining a block height difference between the target block and a previous block that is not in the branch state may include determining a block height difference between the target block and the previous block, The method comprising the steps of: searching for a block period in which the number of consecutive non-branching state blocks and the number of consecutive non-branching state blocks are consecutively equal to 1, determining a first-detected node as the non-branching state block among the blocks included in the block period, And calculating a block height difference of the block.
일 실시예에서, 상기 대상 블록에 기록된 거래 데이터에 대한 거래 확정 신뢰도를 산출하는 단계는, 상기 블록 높이 차이를 기초로, 포아송 분포(poission distribution)를 이용하여, 상기 거래 확정 신뢰도를 예측하는 단계를 포함할 수 있다.In one embodiment, the step of calculating the transaction confirmation reliability for the transaction data recorded in the target block may include estimating the transaction confirmation reliability using a Poisson distribution based on the block height difference . ≪ / RTI >
일 실시예에서, 상기 블록체인 데이터는 제1 블록체인 데이터이고, 제2 블록체인 데이터 상에 형성된 분기에 관한 정보를 획득하되, 상기 제2 블록체인 데이터는 상기 제1 블록체인 데이터에 상기 k개의 블록이 더 연결된 블록체인 데이터인 것인, 단계 및 상기 제2 블록체인 데이터 상에 형성된 분기에 관한 정보를 기초로, 상기 산출된 거래 확정 신뢰도를 확정하는 단계를 더 포함할 수 있다.In one embodiment, the block-chain data is first block-chain data, and information about the branch formed on the second block-chain data is obtained, and the second block-chain data includes the k- And determining the calculated transaction-determined reliability based on information about the branch, which is a block-chain-connected data, and information about branching formed on the second block-chain data.
일 실시예에서, 상기 거래 확정 신뢰도를 산출하는 단계는, k의 값을 변경해가며, k개의 블록이 연결되는 경우 각각에 대한 거래 확정 신뢰도를 산출하는 단계를 포함하고, 상기 거래 확정 신뢰도가 지정된 값 이상이 되는 k 값을 결정하는 단계를 더 포함할 수 있다.In one embodiment, the step of calculating the transaction-defined reliability includes calculating a transaction-determined reliability for each of the k blocks when the value of k is changed, K < / RTI > which is equal to or greater than < RTI ID = 0.0 >
상술한 기술적 과제를 해결하기 위한 본 발명의 다른 실시예에 따른 거래 확정 신뢰도 산출 장치는, 하나 이상의 프로세서, 네트워크 인터페이스, 상기 프로세서에 의하여 수행되는 컴퓨터 프로그램을 로드(Load)하는 메모리 및 상기 컴퓨터 프로그램을 저장하는 스토리지를 포함하되, 상기 컴퓨터 프로그램은, 블록체인 데이터 상에 형성된 분기(branch)에 관한 정보를 획득하는 오퍼레이션, 상기 분기에 관한 정보를 기초로, 상기 블록체인 데이터의 현재 블록 높이에 해당하는 대상 블록과 분기 상태에 있지 않은 비분기 상태 블록과의 블록 높이 차이를 산출하는 오퍼레이션 및 상기 블록 높이 차이를 기초로, 상기 대상 블록에 기록된 거래 데이터에 대한 거래 확정 신뢰도를 산출하는 오퍼레이션을 포함하되, 상기 거래 확정 신뢰도는, 상기 대상 블록 이후로 k개(단, k는 1 이상의 자연수)의 블록이 더 연결됨에 따라, 상기 거래 데이터가 기록된 블록 위치가 변경되지 않을 확률을 가리키는 것일 수 있다.According to another aspect of the present invention, there is provided a transaction confirmation reliability calculation apparatus comprising at least one processor, a network interface, a memory for loading a computer program executed by the processor, Wherein the computer program comprises: an operation for obtaining information about a branch formed on block-chain data; an operation for obtaining information about a branch corresponding to a current block height of the block- An operation for calculating a block height difference between a target block and a non-branching state block that is not in a branch state, and an operation for calculating transaction reliability of transaction data recorded in the target block based on the difference in block height , The transaction confirmation reliability is determined such that the target block In the k may be pointing, the probability transaction data is not recorded block position is changed in accordance with the block (where, k is a natural number of 1 or more), further connected.
상술한 기술적 과제를 해결하기 위한 본 발명의 또 다른 실시예에 따른 컴퓨터 프로그램은, 컴퓨팅 장치와 결합되어, 블록체인 데이터 상에 형성된 분기(branch)에 관한 정보를 획득하는 단계, 상기 분기에 관한 정보를 기초로, 상기 블록체인 데이터의 현재 블록 높이에 해당하는 대상 블록과 분기 상태에 있지 않은 비분기 상태 블록과의 블록 높이 차이를 산출하는 단계 및 상기 블록 높이 차이를 기초로, 상기 대상 블록에 기록된 거래 데이터에 대한 거래 확정 신뢰도를 산출하되, 상기 거래 확정 신뢰도는 상기 대상 블록 이후로 k개(단, k는 1 이상의 자연수)의 블록이 더 연결됨에 따라, 상기 거래 데이터가 기록된 블록 위치가 변경되지 않을 확률을 가리키는 것인, 단계를 실행시키기 위하여 기록 매체에 저장될 수 있다.According to another aspect of the present invention, there is provided a computer program product, which includes a computer-readable recording medium storing a program for causing a computer to execute: obtaining information about a branch formed on block-chain data; Calculating a block height difference between a target block corresponding to a current block height of the block chain data and a non-branching state block not in a branching state based on the block height difference, (K is a natural number greater than or equal to 1) blocks are connected after the target block, and the block location where the transaction data is recorded is determined as the transaction confirmation reliability of the transaction data The probability of not changing is stored in the recording medium in order to execute the step.
상술한 기술적 과제를 해결하기 위한 본 발명의 또 다른 실시예에 따른 블록체인 네트워크 모니터링 시스템은 블록체인 네트워크를 구성하고, 블록체인 데이터를 분산 관리하며, 신규 블록을 생성하고, 상기 신규 블록을 상기 블록체인 네트워크 상에 전파하는 복수의 블록체인 노드, 상기 블록체인 네트워크를 구성하고, 상기 블록체인 네트워크 상에서 전파되는 신규 블록을 실시간으로 모니터링하는 모니터링 노드 및 상기 모니터링 노드로부터, 실시간으로 신규 블록에 대한 정보를 수신하고, 상기 신규 블록에 대한 정보를 기초로 상기 블록체인 데이터 상의 분기 발생 상태를 모니터링하는 블록체인 네트워크 모니터링 장치를 포함할 수 있다.According to another aspect of the present invention, there is provided a block-chained network monitoring system comprising a block-chain network, distributedly managing block-chain data, generating a new block, A plurality of block chain nodes that propagate on a chain network, a monitoring node that configures the block-chain network, monitors a new block propagated on the block-chain network in real time, and a monitoring node And a block-chain network monitoring apparatus for monitoring a branch occurrence state on the block-chain data based on the information on the new block.
상술한 본 발명에 따르면, 포아송 분포에 기초하여 특정 거래 데이터가 기록된 블록 위치가 변경되지 않을 확률을 가리키는 거래 확정 신뢰도가 산출될 수 있다. 이에 따라, 특정 거래 데이터의 기록 위치 변경 여부에 대한 체계적인 예측 및 대응이 가능할 수 있다.According to the present invention described above, it is possible to calculate the transaction-determined reliability indicating the probability that the block position in which the specific transaction data is recorded is not changed based on the Poisson distribution. Accordingly, it is possible to systematically predict and respond to whether or not the recording position of specific transaction data is changed.
또한, 모니터링 기능만을 수행하는 특수 노드를 이용하여, 블록체인 네트워크를 구성하는 각각의 블록체인 노드에 대한 모니터링이 기능이 제공될 수 있다. 이에 따라, 블록체인 기반 시스템이 잘못된 방향으로 나아가는지에 대한 관측이 가능하며, 금융 분야 또는 기업 분야에서 요구되는 상세 모니터링 기능 또한 제공될 수 있다.In addition, monitoring can be provided for each block chain node constituting a block-chain network by using special nodes that perform only the monitoring function. As a result, it is possible to observe whether the block-chain-based system is moving in the wrong direction, and detailed monitoring functions required in the financial or business field can be provided.
또한, 서로 다른 네트워크 간의 데이터 교환 기능을 제공하는 특수 노드인 브로커 노드를 통해, 이질적인 네트워크 상에 위치한 노드 간에 하나의 블록체인 네트워크가 구성될 수 있다. 이에 따라, 다수의 기업 환경에서 동일한 블록체인 기반 시스템이 구축될 수 있는 바, 더욱 다양한 분야에 블록체인 기술이 활용될 수 있다.In addition, a block-chain network can be configured between nodes located on a heterogeneous network through a broker node which is a special node that provides a data exchange function between different networks. Accordingly, since the same block chain-based system can be constructed in a plurality of enterprise environments, the block chain technology can be utilized in a wide variety of fields.
본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned can be clearly understood to those of ordinary skill in the art from the following description.
도 1은 종래 중앙 원장을 나타내는 개념도이다.
도 2는 블록체인 기반의 분산 원장을 나타내는 개념도이다.
도 3은 블록체인 네트워크를 구성하는 각 블록체인 노드에 의해 유지되는 블록체인 데이터의 구조를 설명하기 위한 도면이다.
도 4는 블록체인 데이터에 분기가 형성됨에 따라 거래 데이터가 기록된 블록 위치가 변경되는 문제를 설명하기 위한 도면이다.
도 5는 본 발명의 제1 실시예에 따른 블록체인 네트워크 모니터링 시스템의 구성도이다.
도 6은 본 발명의 제2 실시예에 따른 블록체인 네트워크 모니터링 시스템의 구성도이다.
도 7은 본 발명의 다른 실시예에 따른 거래 확정 신뢰도 산출 장치를 나타내는 블록도이다.
도 8은 본 발명의 또 다른 실시예에 따른 거래 확정 신뢰도 산출 장치의 하드웨어 구성도이다.
도 9는 본 발명의 또 다른 실시예에 따른 거래 확정 신뢰도 산출 방법의 흐름도이다.
도 10은 본 발명의 몇몇 실시예에서 참조될 수 있는 블록 높이와 블록 깊이의 개념을 비교 설명하기 위한 도면이다.
도 11 및 도 12는 도 9에 도시된 거래 확정 신뢰도 예측 단계(S300)를 설명하기 위한 도면이다.
도 13은 도 9에 도시된 거래 확정 신뢰도 확정 단계(S500)의 상세 순서도이다.1 is a conceptual diagram showing a conventional central ledger.
2 is a conceptual diagram showing a distributed branch based on a block chain.
3 is a diagram for explaining the structure of block chain data held by each block chain node constituting a block-chain network.
4 is a diagram for explaining a problem in which a block position in which transaction data is recorded is changed due to branching in block chain data.
5 is a block diagram of a block-chain network monitoring system according to a first embodiment of the present invention.
6 is a block diagram of a block-chain network monitoring system according to a second embodiment of the present invention.
7 is a block diagram illustrating a transaction confirmation reliability calculation apparatus according to another embodiment of the present invention.
8 is a hardware configuration diagram of a transaction confirmation reliability calculation apparatus according to another embodiment of the present invention.
FIG. 9 is a flowchart of a method for calculating the transaction confirmation reliability according to another embodiment of the present invention.
10 is a diagram for explaining the concept of block height and block depth which can be referred to in some embodiments of the present invention.
FIGS. 11 and 12 are diagrams for explaining the transaction-determined reliability prediction step (S300) shown in FIG.
FIG. 13 is a detailed flowchart of the transaction confirmation reliability determination step (S500) shown in FIG.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention, and the manner of achieving them, will be apparent from and elucidated with reference to the embodiments described hereinafter in conjunction with the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. To fully disclose the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims. Like reference numerals refer to like elements throughout the specification.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.Unless defined otherwise, all terms (including technical and scientific terms) used herein may be used in a sense commonly understood by one of ordinary skill in the art to which this invention belongs. Also, commonly used predefined terms are not ideally or excessively interpreted unless explicitly defined otherwise. The terminology used herein is for the purpose of illustrating embodiments and is not intended to be limiting of the present invention. In the present specification, the singular form includes plural forms unless otherwise specified in the specification.
명세서에서 사용되는 "포함한다 (comprises)" 및/또는 "포함하는 (comprising)"은 언급된 구성 요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성 요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.It is noted that the terms "comprises" and / or "comprising" used in the specification are intended to be inclusive in a manner similar to the components, steps, operations, and / Or additions.
본 명세서에 대한 설명에 앞서, 본 명세서에서 사용되는 몇몇 용어들에 대하여 명확하게 하기로 한다.Prior to the description of the present specification, some terms used in this specification will be clarified.
본 명세서에서, 블록체인 데이터란 블록체인 네트워크를 구성하는 각각의 블록체인 노드가 유지하는 데이터로, 적어도 하나의 블록이 체인 형태의 자료 구조를 이루는 데이터를 의미한다. 각 블록에 기록된 데이터가 트랜잭션 데이터인 경우, 상기 블록체인 데이터는 분산 원장으로 이용될 수 있다. 다만, 각 블록에 기록되는 데이터는 어떠한 종류이더라도 무방하다. 상기 블록체인 데이터의 구조는 도 3을 참조하도록 한다.In this specification, block chain data refers to data held by each block chain node constituting a block-chain network, in which at least one block constitutes a data structure of a chain type. If the data recorded in each block is transaction data, the block-chain data can be used as a distributed general ledger. However, any data may be recorded in each block. The structure of the block chain data is described with reference to FIG.
본 명세서에서, 블록체인 네트워크란, 블록체인 알고리즘에 따라 동작되는 복수의 블록체인 노드에 의해 구성된 P2P 구조의 네트워크를 의미한다.In this specification, a block-chained network means a network of a P2P structure constituted by a plurality of block-chain nodes operated according to a block-chain algorithm.
본 명세서에서, 블록체인 노드란, 블록체인 네트워크를 구성하고 블록체인 알고리즘에 기초하여 블록체인 데이터를 유지하고 관리하는 주체를 의미한다. 상기 블록체인 노드는 단일 컴퓨팅 장치로 구현될 수 있으나, 가상 머신(virtual machine) 등으로 구현될 수도 있다. 가상 머신으로 구현되는 경우, 단일 컴퓨팅 장치에 복수의 블록체인 노드가 존재할 수 있다.In the present specification, a block chain node means a subject that constitutes a block-chain network and maintains and manages the block-chain data based on the block-chain algorithm. The block-chain node may be implemented as a single computing device, but may also be implemented as a virtual machine or the like. When implemented in a virtual machine, there may be multiple block-chain nodes in a single computing device.
본 명세서에서, 블록 생성 노드란, 블록체인 네트워크를 구성하는 블록체인 노드 중 채굴(mining)을 통해 신규 블록을 생성하는 노드를 의미한다.In this specification, a block generating node means a node that generates a new block through mining among block chain nodes constituting a block-chain network.
본 명세서에서, 거래 확정 신뢰도란, 현재 블록 높이에 해당하는 대상 블록 이후로 k개(단, k는 1 이상의 자연수)의 블록이 더 연결됨에 따라, 상기 대상 블록에 기록된 거래 데이터의 블록 위치가 변경되지 않을 확률을 의미한다. 즉, 상기 거래 확정 신뢰도는 상기 대상 블록에 신규 블록이 더 추가되더라도 분기가 형성되지 않고 메인 체인으로 유지될 확률을 가리키는 것으로 이해될 수 있다.In this specification, since the k pieces of blocks (k is a natural number of 1 or more) are connected after the target block corresponding to the current block height, the block position of the transaction data recorded in the target block is It means the probability of not changing. That is, it can be understood that the transaction commitment reliability indicates a probability that a branch will not be formed but will be maintained in the main chain even if a new block is added to the target block.
이하, 본 발명의 몇몇 실시예들에 대하여 첨부된 도면에 따라 상세하게 설명한다.Hereinafter, some embodiments of the present invention will be described in detail with reference to the accompanying drawings.
먼저, 도 5 및 도 6을 참조하여, 본 발명의 몇몇 실시예에 따른 블록체인 네트워크 모니터링 시스템에 대하여 설명하도록 한다.First, with reference to Figs. 5 and 6, a block-chained network monitoring system according to some embodiments of the present invention will be described.
도 5는 본 발명의 제1 실시예에 따른 블록체인 네트워크 모니터링 시스템의 구성도이다.5 is a block diagram of a block-chain network monitoring system according to a first embodiment of the present invention.
도 5를 참조하면, 상기 제1 실시예에 따른 블록체인 네트워크 모니터링 시스템은 블록체인 네트워크 모니터링 장치(100) 및 블록체인 네트워크(200)를 포함하도록 구성될 수 있다. 단, 이는 본 발명의 목적을 달성하기 위한 바람직한 실시예일뿐이며, 필요에 따라 일부 구성 요소가 추가되거나 삭제될 수 있음은 물론이다. 또한, 도 5에 도시된 블록체인 네트워크 모니터링 시스템의 각각의 구성 요소들은 기능적으로 구분되는 기능 요소들을 나타낸 것으로서, 적어도 하나의 구성 요소가 실제 물리적 환경에서는 서로 통합되는 형태로 구현될 수도 있음에 유의한다.Referring to FIG. 5, the block-chained network monitoring system according to the first embodiment may be configured to include a block-chained
상기 제1 실시예에서, 블록체인 네트워크 모니터링 장치(100)는 블록체인 네트워크를 구성하는 복수의 블록체인 노드의 상태 및 동작, 블록체인 데이터 등의 각종 정보를 모니터링하는 컴퓨팅 장치이다. 여기서, 상기 컴퓨팅 장치는, 노트북, 데스크톱(desktop), 랩탑(laptop) 등이 될 수 있으나, 이에 국한되는 것은 아니며 연산 수단 및 통신 수단이 구비된 모든 종류의 장치를 포함할 수 있다.In the first embodiment, the block-chaining
블록체인 네트워크 모니터링 장치(100)는 예를 들어 각 블록체인 노드에 탑재된 모니터링 에이전트로부터 각 블록체인 노드의 상태 및 동작, 각 블록체인 노드에 보관된 블록체인 데이터에 대한 정보를 수신할 수 있다. 상기 모니터링 에이전트는 데몬(daemon) 형태로 각 블록체인 노드를 모니터링하는 소프트웨어 모듈로 이해될 수 있다.The block-chaining
또한, 블록체인 네트워크 모니터링 장치(100)는 블록체인 네트워크(200)를 구성하는 노드 중 하나인 모니터링 노드(210)로부터 네트워크 상에 전파되는 거래 데이터 및 신규 블록을 실시간으로 수신할 수 있다. 여기서, 모니터링 노드(210)는 특수한 유형의 블록체인 노드로, 블록체인 네트워크(200) 상에서 전파되는 각종 데이터를 인터셉트(intercept)하여 실시간으로 전달하는 노드로 이해될 수 있다.In addition, the block-chain
블록체인 네트워크 모니터링 장치(100)는 상기와 같이 수집된 각종 정보를 다양한 사용자 인터페이스를 통해 시각화된 형태로 제공할 수 있다.The block-chaining
본 발명의 실시예에 따르면, 블록체인 네트워크 모니터링 장치(100)는 모니터링 에이전트로부터 각각의 블록체인 노드가 관리하는 블록체인 데이터의 체인 구조 정보를 실시간으로 수신하고, 각각의 블록체인 노드 별 블록체인 데이터의 체인 구조 정보를 비교하여, 실시간으로 블록체인 데이터 상의 분기 발생 상태를 모니터링할 수 있다.According to the embodiment of the present invention, the block-chaining
또는, 블록체인 네트워크 모니터링 장치(100)는 모니터링 노드(210)로부터 블록체인 네트워크 상에 전파되는 신규 블록을 수신하고, 상기 신규 블록의 번호 및 해시 값의 일치 여부를 비교하여, 실시간으로 블록체인 데이터 상의 분기 발생 상태를 모니터링할 수 있다.Alternatively, the block-chaining
본 발명의 실시예에 따르면, 블록체인 네트워크 모니터링 장치(100)는 상기 블록체인 데이터 상에 형성된 분기 상태에 기초하여, 대상 블록에 기록된 거래 데이터에 대한 거래 확정 신뢰도를 산출할 수 있다. 이와 같은 실시예에 한하여, 블록체인 네트워크 모니터링 장치(100)는 거래 확정 신뢰도 산출 장치(100)로 명명될 수 있다. 여기서, 상기 대상 블록은 현재 블록 높이에 해당하는 최신 블록을 의미한다. 이하에서도, 다른 언급이 없는 한 상기 대상 블록은 최신 블록을 가리키는 의미로 사용되고, 상기 블록 높이의 개념은 도 10을 참조하도록 한다. 본 실시예에 따르면, 본래 대상 블록에 기록된 특정 거래 데이터의 블록 위치 변경 여부에 대한 체계적인 예측 및 대응이 가능할 수 있다. 거래 확정 신뢰도 산출 장치(100)가 거래 확정 신뢰도를 산출하는 방법에 대한 자세한 설명은 도 9 내지 도 13을 참조하여 후술하도록 한다.According to the embodiment of the present invention, the block-chaining
상기 제1 실시예에서, 블록체인 네트워크(200)는 복수의 블록체인 노드로 구성된 P2P 구조의 네트워크이다. 블록체인 네트워크(200)를 구성하는 블록체인 노드는 블록체인 알고리즘에 기초하여 블록 생성, 전파, 검증, 기록 등의 동작을 수행한다. 또한, 각각의 블록체인 노드는 동일한 블록체인 데이터를 유지한다.In the first embodiment, the block-chain network 200 is a P2P-structured network composed of a plurality of block-chain nodes. The block-chain node constituting the block-chain network 200 performs operations such as block generation, propagation, verification, and recording based on a block-chaining algorithm. In addition, each block chain node maintains the same block chain data.
본 발명의 실시예에 따르면, 블록체인 네트워크(200)는 모니터링 노드(210)를 포함하도록 구성될 수 있다. 모니터링 노드(210)는 전술한 바와 같이 특수한 유형의 노드이며, 블록체인 네트워크 상에 전파되는 거래 데이터 및 신규 블록을 실시간으로 수집하여 블록체인 네트워크 모니터링 장치(100)로 전달할 수 있다.According to an embodiment of the present invention, the block-chained network 200 may be configured to include a
본 발명의 몇몇 실시예에 따른 블록체인 네트워크 모니터링 시스템에서, 각각의 구성 요소는 네트워크를 통해 통신할 수 있다. 여기서, 상기 네트워크는 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network; WAN), 이동 통신망(mobile radio communication network), Wibro(Wireless Broadband Internet) 등과 같은 모든 종류의 유/무선 네트워크로 구현될 수 있다.In a block-chain network monitoring system according to some embodiments of the present invention, each component may communicate over a network. Here, the network may be any kind of wired / wireless network such as a local area network (LAN), a wide area network (WAN), a mobile radio communication network, a wibro Can be implemented.
지금까지, 본 발명의 제1 실시예에 따른 블록체인 네트워크 모니터링 시스템에 대하여 설명하였다. 다음으로, 도 6을 참조하여, 본 발명의 제2 실시예에 따른 블록체인 네트워크 모니터링 시스템에 대하여 설명하도록 한다.The block-chain network monitoring system according to the first embodiment of the present invention has been described so far. Next, a block-chain network monitoring system according to a second embodiment of the present invention will be described with reference to FIG.
도 6은 본 발명의 제2 실시예에 따른 블록체인 네트워크 모니터링 시스템의 구성도이다.6 is a block diagram of a block-chain network monitoring system according to a second embodiment of the present invention.
도 6을 참조하면, 상기 제2 실시예에서, 블록체인 네트워크(200)는 서로 다른 네트워크 환경에 기반하여 구축될 수 있다. 구체적으로, 복수의 블록체인 노드가 복수의 제1 블록체인 노드 및 복수의 제2 블록체인 노드를 포함할 때, 상기 복수의 제1 블록체인 노드는 제1 네트워크 상에 위치하고, 상기 복수의 제2 블록체인 노드는 상기 제2 네트워크에 위치하며, 상기 제1 네트워크와 상기 제2 네트워크는 이질적인 네트워크 환경으로 구성될 수 있다.Referring to FIG. 6, in the second embodiment, the block-chained network 200 may be constructed based on different network environments. Specifically, when a plurality of block-chain nodes include a plurality of first block-chain nodes and a plurality of second block-chain nodes, the plurality of first block-chain nodes are located on a first network, The block chain node is located in the second network, and the first network and the second network may be configured in a heterogeneous network environment.
구체적으로, 상기 제1 네트워크 및 상기 제2 네트워크는 물리적으로 구분되는 네트워크 또는 논리적으로 구분되는 네트워크일 수 있다. 예를 들어, 상기 제1 네트워크 및 상기 제2 네트워크는 서로 다른 통신 프로토콜을 이용하여 통신이 수행되는 네트워크, 서로 다른 VPN(virtual private network)으로 구축된 네트워크 등이 될 수 있다. 도 6에는 상기 제1 네트워크 및 상기 제2 네트워크가 각각 서로 다른 VPN(200a, 200b)으로 구축된 것이 예로써 도시되었다.In particular, the first network and the second network may be physically separate networks or logically distinct networks. For example, the first network and the second network may be networks in which communication is performed using different communication protocols, networks constructed in different virtual private networks (VPNs), and the like. FIG. 6 shows an example in which the first network and the second network are constructed as VPNs 200a and 200b, respectively, which are different from each other.
특히 보안이 중요한 금융 분야 또는 기업 환경에서, 제1 기업의 인트라넷 상에 위치한 제1 블록체인 노드와 제2 기업의 인트라넷 상에 위치한 제2 블록체인 노드는 동일한 블록체인 네트워크를 구성하더라도 통신이 불가능할 수 있다. 이와 같은 문제를 해결하기 위해, 상기 제2 실시예에 따른 블록체인 네트워크 모니터링 시스템은 브로커 노드(220)를 더 포함하도록 구성될 수 있다.Particularly, in a financial or business environment in which security is important, a first block-chain node located on the intranet of the first company and a second block-chain node located on the intranet of the second enterprise may constitute the same block-chain network, have. In order to solve such a problem, the block-chain network monitoring system according to the second embodiment may be configured to further include a
브로커 노드(220)는 서로 다른 네트워크(200a, 200b) 상에 위치한 블록체인 노드 간의 데이터 교환을 수행할 수 있다. 예를 들어, 브로커 노드(220)는 각각의 통신 프로토콜에 적합하게 데이터 포맷을 변환할 수 있다. 또는, 브로커 노드(200)는 단순히 데이터를 중계하는 역할만 수행할 수도 있다. 또는, 브로커 노드(200)는 소정의 보안 정책에 따라 데이터 검사, 접근 제어 등을 수행할 수도 있다.The
지금까지, 도 6을 참조하여 본 발명의 제2 실시예에 따른 블록체인 네트워크 모니터링 시스템에 대하여 설명하였다. 다음으로, 도 7 및 도 8을 참조하여, 본 발명의 다른 실시예에 따른 거래 확정 신뢰도 산출 장치(100)의 구성 및 동작에 대하여 설명하도록 한다.The block-chain network monitoring system according to the second embodiment of the present invention has been described with reference to FIG. Next, with reference to FIG. 7 and FIG. 8, the configuration and operation of the apparatus for calculating committed
도 7은 본 발명의 실시예에 따른 거래 확정 신뢰도 산출 장치(100)를 나타내는 블록도이다.7 is a block diagram showing a transaction confirmation
도 7을 참조하면, 거래 확정 신뢰도 산출 장치(100)는 모니터링부(110), 거래 확정 신뢰도 예측부(130) 및 거래 확정 신뢰도 확정부(150)를 포함하도록 구성될 수 있다. 다만, 도 7에는 본 발명의 실시예와 관련 있는 구성요소들만이 도시되어 있다. 따라서, 본 발명이 속한 기술분야의 통상의 기술자라면 도 7에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다. 또한, 도 7에 도시된 거래 확정 신뢰도 산출 장치의 각각의 구성 요소들은 기능적으로 구분되는 기능 요소들을 나타낸 것으로서, 적어도 하나의 구성 요소가 실제 물리적 환경에서는 서로 통합되는 형태로 구현될 수도 있음에 유의한다.Referring to FIG. 7, the
각 구성 요소를 살펴보면, 모니터링부(110)는 블록체인 네트워크를 구성하는 각각의 블록체인 노드의 블록체인 데이터에 대한 모니터링 정보를 실시간으로 획득한다. 이때, 상기 모니터링 정보는 블록체인 데이터 상에 형성된 분기에 관한 정보를 포함할 수 있다.Referring to the respective components, the
거래 확정 신뢰도 예측부(130)는 모니터링부(110)가 제공하는 제1 시점의 분기에 관한 정보를 토대로 대상 블록에 기록된 거래 데이터에 대한 거래 확정 신뢰도를 예측한다. 거래 확정 신뢰도 예측부(130)의 동작에 대한 자세한 설명은 도 9, 도 11 및 도 12를 참조하여 후술하도록 한다.The transaction
거래 확정 신뢰도 확정부(150)는 모니터링부(110)가 제공하는 제2 시점의 분기에 관한 정보를 토대로 거래 확정 신뢰도 예측부(130)에 의해 예측된 거래 확정 신뢰도를 조정하거나 확정한다. 즉, 거래 확정 신뢰도 확정부(150)는 상기 제1 시점의 분기에 관한 정보를 토대로 분기 발생 여부를 예측한 값과 상기 제2 시점의 실제 관측 정보와 비교하여 상기 예측된 거래 확정 신뢰도를 조정하거나 확정한다. 거래 확정 신뢰도 확정부(150)의 동작에 대한 자세한 설명은 도 13을 참조하여 후술하도록 한다.The transaction confirmation
도 7에 도시된 거래 확정 신뢰도 산출 장치(100)의 각 구성 요소는 소프트웨어(Software) 또는, FPGA(Field Programmable Gate Array)나 ASIC(Application-Specific Integrated Circuit)과 같은 하드웨어(Hardware)를 의미할 수 있다. 그렇지만, 상기 구성 요소들은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, 어드레싱(Addressing)할 수 있는 저장 매체에 있도록 구성될 수도 있고, 하나 또는 그 이상의 프로세서들을 실행시키도록 구성될 수도 있다. 상기 구성 요소들 안에서 제공되는 기능은 더 세분화된 구성 요소에 의하여 구현될 수 있으며, 복수의 구성 요소들을 합하여 특정한 기능을 수행하는 하나의 구성 요소로 구현될 수도 있다.Each component of the transaction
도 8은 본 발명의 실시예에 따른 거래 확정 신뢰도 산출 장치(100)의 하드웨어 구성도이다.FIG. 8 is a hardware configuration diagram of a transaction confirmation
도 8을 참조하면, 거래 확정 신뢰도 산출 장치(100)는 하나 이상의 프로세서(101), 버스(105), 네트워크 인터페이스(107), 프로세서(101)에 의하여 수행되는 컴퓨터 프로그램을 로드(load)하는 메모리(103)와, 거래 확정 신뢰도 산출 소프트웨어(109a)를 저장하는 스토리지(109)를 포함할 수 있다. 다만, 도 8에는 본 발명의 실시예와 관련 있는 구성요소들만이 도시되어 있다. 따라서, 본 발명이 속한 기술분야의 통상의 기술자라면 도 8에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다.8, the transaction confirmation
프로세서(101)는 거래 확정 신뢰도 산출 장치(100)의 각 구성의 전반적인 동작을 제어한다. 프로세서(101)는 CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), GPU(Graphic Processing Unit) 또는 본 발명의 기술 분야에 잘 알려진 임의의 형태의 프로세서를 포함하여 구성될 수 있다. 또한, 프로세서(101)는 본 발명의 실시예들에 따른 방법을 실행하기 위한 적어도 하나의 애플리케이션 또는 프로그램에 대한 연산을 수행할 수 있다. 거래 확정 신뢰도 산출 장치(100)는 하나 이상의 프로세서를 구비할 수 있다.The
메모리(103)는 각종 데이터, 명령 및/또는 정보를 저장한다. 메모리(103)는 본 발명의 실시예들에 따른 거래 확정 신뢰도 산출 방법을 실행하기 위하여 스토리지(109)로부터 하나 이상의 프로그램(109a)을 로드할 수 있다. 도 8에서 메모리(103)의 예시로 RAM이 도시되었다.The
버스(105)는 거래 확정 신뢰도 산출 장치(100)의 구성 요소 간 통신 기능을 제공한다. 버스(105)는 주소 버스(Address Bus), 데이터 버스(Data Bus) 및 제어 버스(Control Bus) 등 다양한 형태의 버스로 구현될 수 있다.The
네트워크 인터페이스(107)는 거래 확정 신뢰도 산출 장치(100)의 유무선 인터넷 통신을 지원한다. 또한, 네트워크 인터페이스(107)는 인터넷 통신 외의 다양한 통신 방식을 지원할 수도 있다. 이를 위해, 네트워크 인터페이스(107)는 본 발명의 기술 분야에 잘 알려진 통신 모듈을 포함하여 구성될 수 있다.The
스토리지(109)는 상기 하나 이상의 프로그램(109a)을 비임시적으로 저장할 수 있다. 도 8에서 상기 하나 이상의 프로그램(109a)의 예시로 거래 확정 신뢰도 산출 소프트웨어(109a)가 도시되었다.The
스토리지(109)는 ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리 등과 같은 비휘발성 메모리, 하드 디스크, 착탈형 디스크, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터로 읽을 수 있는 기록 매체를 포함하여 구성될 수 있다.The
거래 확정 신뢰도 산출 소프트웨어(109a)는 후술할 거래 확정 신뢰도 산출 방법을 실행할 수 있다. 구체적으로, 거래 확정 신뢰도 산출 소프트웨어(109a)는 메모리(103)에 로드되어, 하나 이상의 프로세서(101)에 의해, 블록체인 데이터 상에 형성된 분기(branch)에 관한 정보를 획득하는 오퍼레이션, 상기 분기에 관한 정보를 기초로, 상기 블록체인 데이터의 현재 블록 높이에 해당하는 대상 블록과 분기 상태에 있지 않은 비분기 상태 블록과의 블록 높이 차이를 산출하는 오퍼레이션 및 상기 블록 높이 차이를 기초로, 상기 대상 블록에 기록된 거래 데이터에 대한 거래 확정 신뢰도를 산출하는 오퍼레이션을 실행할 수 있다.The transaction confirmation
지금까지, 도 7 및 도 8을 참조하여 본 발명의 실시예에 따른 거래 확정 신뢰도 산출 장치(100)의 구성 및 동작에 대하여 설명하였다. 다음으로, 도 9 내지 도 13을 참조하여 본 발명의 또 다른 실시예에 따른 거래 확정 신뢰도 산출 방법에 대하여 상세하게 설명한다.Up to now, the configuration and operation of the transaction confirmation
후술할 본 발명의 실시예에 따른 거래 확정 신뢰도 산출 방법의 각 단계는, 컴퓨팅 장치에 의해 수행될 수 있다. 예를 들어, 상기 컴퓨팅 장치는 거래 확정 신뢰도 산출 장치(100)일 수 있다. 다만, 설명의 편의를 위해, 상기 거래 확정 신뢰도 산출 방법에 포함되는 각 단계의 동작 주체는 그 기재가 생략될 수도 있다. 또한, 거래 확정 신뢰도 산출 방법의 각 단계는 거래 확정 신뢰도 산출 소프트웨어(109a)가 프로세서(101)에 의해 실행됨으로써, 거래 확정 신뢰도 산출 장치(100)에서 수행되는 오퍼레이션일 수 있다.Each step of the transaction confirmation reliability calculation method according to an embodiment of the present invention to be described later can be performed by the computing device. For example, the computing device may be the transaction confirmation
도 9는 거래 확정 신뢰도 산출 방법의 흐름도이다. 단, 이는 본 발명의 목적을 달성하기 위한 바람직한 실시예일뿐이며, 필요에 따라 일부 단계가 추가되거나 삭제될 수 있음은 물론이다.9 is a flowchart of a transaction confirmation reliability calculation method. However, it should be understood that the present invention is not limited thereto and that some steps may be added or deleted as needed.
먼저, 거래 확정 신뢰도 산출 장치(100)는 블록체인 데이터에 대한 제1 모니터링 정보 획득한다(S100). 여기서, 상기 제1 모니터링 정보는 블록체인 데이터 상에 형성된 분기에 관한 정보를 포함한다. 상기 분기에 관한 정보를 획득하는 방법은 어떠한 방식이 되더라도 무방하다. 예를 들어, 거래 확정 신뢰도 산출 장치(100)는 블록체인 네트워크 상에서 각각의 블록체인 노드에 탑재된 모니터링 에이전트로부터 블록체인 데이터의 체인 구조 정보를 수신하고, 상기 블록체인 데이터의 체인 구조 정보의 일치 여부를 검사하여, 상기 분기에 관한 정보를 획득할 수 있다. 또는, 모니터링 노드로부터 블록체인 네트워크 상에 전파되는 신규 블록을 실시간으로 수집하고, 상기 신규 블록의 번호 및 해시 값을 비교하여 상기 분기에 관한 정보를 획득할 수도 있다.First, the transaction confirmation
다음으로, 거래 확정 신뢰도 산출 장치(100)는 상기 분기에 관한 정보에 기초하여 대상 블록과 비분기 상태 블록과의 블록 높이 차이를 산출한다(S200). 여기서, 상기 블록 높이 차이는 대상 블록부터 더 이상 분기가 발생하지 않는 지점에 위치한 이전 블록(즉, 비분기 상태 블록)까지의 거리를 의미하는 것으로 이해될 수 있다. 블록 높이의 개념은 도 10을 참조하도록 하며, 이는 당해 기술 분야의 통상의 기술자에게 자명한 개념인 바, 이에 대한 설명은 생략하도록 한다.Next, the transaction confirmation
상기 비분기 상태 블록은 분기 상태에 있지 않은 블록을 의미하며, 분기 상태에 있는 블록은 도 11에 도시된 바와 같이 동일한 블록 높이 또는 번호를 갖는 블록이 복수일 때, 상기 복수의 블록 각각은 분기 상태에 있는 블록으로 이해될 수 있다. 도 11에서, 각 점선이 관통하는 블록이 동일한 블록 높이 또는 번호를 갖는 블록을 의미한다.The non-branching state block means a block that is not in a branch state. When a block in a branch state has a plurality of blocks having the same block height or number as shown in FIG. 11, ≪ / RTI > In Fig. 11, a block through which each dotted line passes has the same block height or number.
도 11을 참조하여, 단계(S200)에 대하여 부연 설명하도록 한다.Referring to Fig. 11, step S200 will be described in detail.
대상 블록과 비분기 상태 블록과의 블록 높이 차이를 산출하기 위해, 먼저 상기 비분기 상태 블록의 위치가 결정되어야 한다. 이를 위해, 거래 확정 신뢰도 산출 장치(100)는 대상 블록(321)을 기준으로 이전 블록 방향으로 탐색을 수행하며, 각 블록이 분기 상태에 있는지 또는 비분기 상태에 있는지를 판정한다. 상기 판정은, 동일 블록 높이 또는 번호를 갖는 블록의 해시 값을 비교하는 방식으로 수행될 수 있다. 구체적으로, 상이한 해시 값을 갖는 블록의 개수가 1을 초과하는 경우, 해당 블록 높이에 해당하는 블록은 분기 상태에 있는 것으로 판정될 수 있다. 구체적인 예를 들어, 대상 블록(321)의 바로 이전 블록은 상이한 해시 값을 갖는 블록의 수가 "2"이므로 분기 상태에 있는 것으로 판정될 수 있고, 블록(311)은 상이한 해시 값을 갖는 블록의 수가 "1"이므로 비분기 상태 있는 것으로 판정될 수 있다. 여기서, 상기 해시 값은, 예를 들어, 각 블록에 포함된 이전 블록의 해시 값 또는 머클 루트 필드에 기록된 해시 값 등 어떠한 해시 값이 이용되더라도 무방하다.In order to calculate the block height difference between the target block and the non-branching state block, the position of the non-branching state block must be determined first. To this end, the transaction
거래 확정 신뢰도 산출 장치(100)는 동일 높이의 블록 중에서 상이한 해시 값을 갖는 블록의 개수가 기 설정된 횟수 이상 연속적으로 "1"이 되는 블록 구간(310)이 발견될 때까지 탐색을 수행한다. 또한, 거래 확정 신뢰도 산출 장치(100)는 블록 구간(310)에 포함된 블록 중에서, 최초로 탐색된 비분기 상태 블록(311)과 대상 블록과의 블록 높이 차이를 산출한다.The transaction confirmation
다시 도 9를 참조하면, 거래 확정 신뢰도 산출 장치(100)는 단계(S200)에서 산출된 블록 높이 차이를 기초로 거래 확정 신뢰도를 예측한다(S300).Referring again to FIG. 9, the transaction confirmation
본 발명의 실시예에 따르면, 상기 거래 확정 신뢰도는 포아송 분포(poisson distribution)에 기초하여 예측될 수 있다. 블록체인 네트워크에서 각 블록 생성 노드에 의해 수행되는 신규 블록 생성은 상호 독립적인 사건으로 포아송 분포를 따르게 된다. 동일한 이유로, 대상 블록을 기준으로 더 이상 분기가 발생하지 않는 비분기 상태 블록까지의 블록 높이 차이 또한 포아송 분포를 따르게 된다.According to an embodiment of the present invention, the transaction confirmation reliability can be predicted based on a poisson distribution. In the block-chain network, new block generation performed by each block generation node follows a Poisson distribution as mutually independent events. For the same reason, the block height difference up to the non-branching state block where no further branching occurs with respect to the target block also follows the Poisson distribution.
따라서, 거래 확정 신뢰도 산출 장치(100)는 포아송 분포를 가리키는 하기의 수학식 1과 누적 포아송 분포를 가리키는 수학식 2를 이용하여, 대상 블록 이후로 신규 블록이 추가됨에 따른 거래 확정 신뢰도를 예측할 수 있다. 자세하게는, k개의 신규 블록이 더 추가되는 경우, 대상 블록에 기록된 거래 데이터에 대한 거래 확정 신뢰도는 1개의 신규 블록 추가에 따른 제1 거래 확정 확률 내지 k개의 신규 블록 추가에 따른 제k 거래 확정 확률의 누적 값이 될 것이므로, 하기 수학식 2에 따른 누적 포아송 분포에 기초하여 거래 확정 신뢰도가 산출된다. 또한, 각각의 거래 확정 확률은 하기의 수학식 1에 따라 산출된다.Accordingly, the transaction-commitment
하기의 수학식 1 및 2에서, λ는 포아송 분포의 모수를 가리키고, n은 상기 대상 블록 이후로 추가되는 블록의 개수를 가리킨다.In the following equations (1) and (2),? Denotes a parameter of the Poisson distribution, and n denotes the number of blocks added after the target block.
상기 수학식 1 및 상기 수학식 2를 이용하여, 거래 확정 신뢰도를 예측하기 위해서는, 포아송 분포의 모수가 선행적으로 결정되어야 한다.In order to predict the transaction confirmation reliability using Equations (1) and (2) above, the parameters of the Poisson distribution must be determined proactively.
일 실시예에서, 거래 확정 신뢰도 산출 장치(100)는 단계(S200)에서 산출된 블록 높이 차이를 모수로 하여 거래 확정 신뢰도를 산출할 수 있다.In one embodiment, the transaction confirmation
다른 실시예에서, 거래 확정 신뢰도 산출 장치(100)는 도 12에 도시된 바와 같이 블록 시퀀스 번호의 평균을 모수로 하여 거래 확정 신뢰도를 예측할 수 있다. 여기서, 상기 블록 시퀀스 번호는 대상 블록을 기준으로 이전 블록 방향으로 부여되는 블록 번호를 의미한다.In another embodiment, the transaction settlement
도 12를 참조하여 구체적으로 살펴보면, 거래 확정 신뢰도 산출 장치(100)는 단계(S200)에서 산출된 블록 높이 차이를 기초로, 대상 블록(321)부터 비분기 상태(311)까지의 블록 구간에 포함된 블록 각각에 블록 시퀀스 번호를 부여할 수 있다. 상기 블록 시퀀스 번호는 도 12의 상단에 표시되어 있다. 다음으로, 거래 확정 신뢰도 산출 장치(100)는 상기 블록 각각에 부여된 블록 시퀀스 번호의 평균을 산출하고, 산출된 평균 값을 포아송 분포의 모수로 이용할 수 있다. 도 12의 경우, 블록 시퀀스 번호의 평균(AVG)이 "3"으로 산출되는 것을 확인할 수 있다.12, the transaction confirmation
다시 도 9를 참조하면, 거래 확정 신뢰도 산출 장치(100)는 블록체인 데이터에 대한 제2 모니터링 정보를 획득하고, 상기 제2 모니터링 정보를 기초로 거래 확정 신뢰도를 조정하거나 확정한다(S400, S500). 이때, 상기 제2 모니터링 정보는 제1 모니터링 정보가 획득된 시점 이후로 블록체인 데이터 상에 형성된 분기에 관한 정보를 포함한다.Referring again to FIG. 9, the transaction confirmation
즉, 거래 확정 신뢰도 산출 장치(100)는 단계(S500)에서 상기 제2 모니터링 정보에 포함된 실제 관측 정보를 토대로 단계(S300)에서 예측된 거래 확정 신뢰도 값을 조정하거나 확정한다. 이하, 단계(S500)에 대해서 도 13을 참조하여 부연 설명하도록 한다.That is, the transaction confirmation
도 13은 거래 확정 신뢰도 조정 단계(S500)의 상세 흐름도이다.13 is a detailed flowchart of the transaction confirmation reliability adjustment step (S500).
도 13을 참조하면, 거래 확정 신뢰의 예측 값이 "100%"가 아닌 경우, 거래 확정 신뢰도 산출 장치(100)는 분기 발생 여부에 관계 없이 예측 값 그대로 거래 확정 신뢰도를 확정한다(S510, S570).Referring to FIG. 13, when the predicted value of the transaction confirmation trust is not "100%", the transaction confirmation
이와 반대로, 거래 확정 신뢰도의 예측 값이 "100%"인 경우, 거래 확정 신뢰도 산출 장치(100)는 상기 제2 모니터링 정보로부터 블록체인 데이터 상에 분기가 발생했는지 확인하고, 분기기 발생한 경우 거래 확정 신뢰도를 본래 예측 값보다 낮은 값으로 조정하여 확정한다(S530, S550). 보다 자세하게는, k개의 신규 블록이 추가되었을 때, 거래 확정 신뢰도의 예측 값이 "100%"였다면, 제2 모니터링 정보로부터 k개의 신규 블록이 추가되는 동안 분기가 발생한 경우, 거래 확정 신뢰도의 예측 값을 더 낮은 값으로 조정하게 된다. 즉, 단계(S530, S550)의 동작은 확률적으로 분기가 발생하지 않을 것으로 예측된 상황(즉, 거래 확정 신뢰도가 "100%")에서, 실제 관측 결과 분기가 발생한 경우 적절하게 거래 확정 신뢰도를 조정하는 동작으로 이해될 수 있다.On the other hand, when the predicted value of the transaction confirmation reliability is "100% ", the transaction confirmation
거래 확정 신뢰의 예측 값이 "100%"이고, 예측대로 분기가 발생하지 않은 경우는, 예측 값이 정확한 것이므로, 거래 확정 신뢰 산출 장치(100)는 예측 값 그대로 거래 확정 신뢰도를 확정한다(S530, S570).If the predicted value of the transaction confirmation trust is "100% ", and the branch does not occur as expected, the transaction confirmation
한편, 본 발명의 실시예에 따르면, 거래 확정 신뢰도 산출 장치(100)는 대상 블록에 기록된 거래 데이터에 대하여, 역으로 거래 확정 신뢰도가 기준 값 이상이 되기 위해서는 몇 개의 신규 블록이 추가되어야 하는 지에 대한 정보를 제공할 수 있다. 예를 들어, 거래 확정 신뢰도 산출 장치(100)는 신규 블록의 개수 k의 값을 변경해가며, k개의 블록이 연결되는 경우 각각에 대한 거래 확정 신뢰도를 예측하고, 예측된 거래 확정 신뢰도가 상기 기준 값 이상이 되는 k 값을 결정함으로써, 추가되어야 하는 신규 블록의 개수인 k 값을 제공할 수 있다.Meanwhile, according to the embodiment of the present invention, the transaction confirmation
지금까지, 도 9 내지 도 13을 참조하여 본 발명의 또 다른 실시예에 따른 거래 확정 신뢰도 산출 방법에 대하여 설명하였다. 상술한 방법에 따르면, 포아송 분포에 기초하여 특정 거래 데이터가 기록된 블록 위치가 변경되지 않을 확률을 가리키는 거래 확정 신뢰도가 산출될 수 있다. 이에 따라, 특정 거래 데이터의 기록 위치 변경 여부에 대한 체계적인 예측 및 대응이 가능할 수 있다. 예를 들어, 거래 확정 신뢰도가 임계 값 이하인 경우, 상기 거래 확정 신뢰도가 상기 임계 값 이상이 될 때까지 해당 거래 데이터를 별도의 저장소에 보관하고, 상기 별도의 저장소에서 해당 거래 데이터를 조회함으로써, 블록 위치 변경에 따라 거래 정보 확인이 불가한 상황을 미연에 방지할 수 있다.Up to now, a transaction confirmation reliability calculation method according to another embodiment of the present invention has been described with reference to FIG. 9 to FIG. According to the above-described method, based on the Poisson distribution, the transaction-determined reliability indicating the probability that the block position in which the specific transaction data is recorded is not changed can be calculated. Accordingly, it is possible to systematically predict and respond to whether or not the recording position of specific transaction data is changed. For example, if the transaction confirmation reliability is equal to or less than the threshold value, the transaction data is stored in a separate storage until the transaction confirmation reliability reaches the threshold value or more, It is possible to prevent the situation in which the transaction information can not be confirmed according to the position change.
지금까지 도 5 내지 도 13을 참조하여 설명된 본 발명의 개념은 컴퓨터가 읽을 수 있는 매체 상에 컴퓨터가 읽을 수 있는 코드로 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체는, 예를 들어 이동형 기록 매체(CD, DVD, 블루레이 디스크, USB 저장 장치, 이동식 하드 디스크)이거나, 고정식 기록 매체(ROM, RAM, 컴퓨터 구비 형 하드 디스크)일 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체에 기록된 상기 컴퓨터 프로그램은 인터넷 등의 네트워크를 통하여 다른 컴퓨팅 장치에 전송되어 상기 다른 컴퓨팅 장치에 설치될 수 있고, 이로써 상기 다른 컴퓨팅 장치에서 사용될 수 있다.The concepts of the present invention described above with reference to Figures 5 to 13 can be implemented in computer readable code on a computer readable medium. The computer readable recording medium may be, for example, a removable recording medium (CD, DVD, Blu-ray disk, USB storage device, removable hard disk) . The computer program recorded on the computer-readable recording medium may be transmitted to another computing device via a network such as the Internet and installed in the other computing device, thereby being used in the other computing device.
도면에서 동작들이 특정한 순서로 도시되어 있지만, 반드시 동작들이 도시된 특정한 순서로 또는 순차적 순서로 실행되어야만 하거나 또는 모든 도시 된 동작들이 실행되어야만 원하는 결과를 얻을 수 있는 것으로 이해되어서는 안 된다. 특정 상황에서는, 멀티태스킹 및 병렬 처리가 유리할 수도 있다. 더욱이, 위에 설명한 실시예들에서 다양한 구성들의 분리는 그러한 분리가 반드시 필요한 것으로 이해되어서는 안 되고, 설명된 프로그램 컴포넌트들 및 시스템들은 일반적으로 단일 소프트웨어 제품으로 함께 통합되거나 다수의 소프트웨어 제품으로 패키지 될 수 있음을 이해하여야 한다.Although the operations are shown in the specific order in the figures, it should be understood that the operations need not necessarily be performed in the particular order shown or in a sequential order, or that all of the illustrated operations must be performed to achieve the desired result. In certain situations, multitasking and parallel processing may be advantageous. Moreover, the separation of the various configurations in the above-described embodiments should not be understood as such a separation being necessary, and the described program components and systems may generally be integrated together into a single software product or packaged into multiple software products .
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다.While the present invention has been described in connection with what is presently considered to be practical exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, I can understand that. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive.
Claims (14)
블록체인 데이터 상에 형성된 분기(branch)에 관한 정보를 획득하는 단계;
상기 분기에 관한 정보를 기초로, 상기 블록체인 데이터의 현재 블록 높이에 해당하는 대상 블록과 분기 상태에 있지 않은 비분기 상태 블록과의 블록 높이 차이를 산출하는 단계; 및
상기 블록 높이 차이를 기초로, 상기 대상 블록에 기록된 거래 데이터에 대한 거래 확정 신뢰도를 산출하는 단계를 포함하되,
상기 거래 확정 신뢰도는,
상기 대상 블록 이후로 k개(단, k는 1 이상의 자연수)의 블록이 더 연결됨에 따라, 상기 거래 데이터가 기록된 블록의 위치가 변경되지 않을 확률을 가리키는 것을 특징으로 하는,
거래 확정 신뢰도 산출 방법.A transaction confirmation reliability calculation method for a block chain based transaction performed by a transaction confirmation reliability calculation device,
Obtaining information on a branch formed on the block chain data;
Calculating a block height difference between a target block corresponding to a current block height of the block chain data and a non-branching block not in a branching state based on the information about the branching; And
Calculating transaction reliability of transaction data recorded in the target block based on the block height difference,
The transaction-
(K is a natural number greater than or equal to 1) blocks after the target block, the probability that the position of the block in which the transaction data is recorded is not changed.
Transaction Confirmation Reliability Calculation Method.
상기 대상 블록과 분기 상태에 놓여있지 않은 이전 블록과의 블록 높이 차이를 결정하는 단계는,
상기 대상 블록의 이전 블록 방향으로, 동일 블록 높이를 갖는 블록 중에서 상이한 해시 값을 갖는 블록의 개수가 연속적으로 1이 되는 블록 구간을 탐색하는 단계;
상기 블록 구간에 포함된 블록 중에서, 최초로 탐색된 노드를 상기 비분기 상태 블록으로 결정하는 단계; 및
상기 대상 블록과 상기 결정된 비분기 상태 블록과의 블록 높이 차이를 산출하는 단계를 포함하는 것을 특징으로 하는,
거래 확정 신뢰도 산출 방법.The method according to claim 1,
Wherein the step of determining a block height difference between the target block and a previous block that is not in the branch state comprises:
Searching for a block segment in which the number of blocks having different hash values is continuously 1 among blocks having the same block height in the previous block direction of the target block;
Determining as a non-branching state block a node first searched out among the blocks included in the block period; And
And calculating a block height difference between the target block and the determined non-branching state block.
Transaction Confirmation Reliability Calculation Method.
상기 대상 블록에 기록된 거래 데이터에 대한 거래 확정 신뢰도를 산출하는 단계는,
상기 블록 높이 차이를 기초로, 포아송 분포(poission distribution)를 이용하여, 상기 거래 확정 신뢰도를 예측하는 단계를 포함하는 것을 특징으로 하는,
거래 확정 신뢰도 산출 방법.The method according to claim 1,
Wherein the step of calculating transaction reliability for transaction data recorded in the target block comprises:
And predicting the transaction commitment reliability using a Poisson distribution based on the block height difference.
Transaction Confirmation Reliability Calculation Method.
상기 포아송 분포를 이용하여, 상기 거래 확정 신뢰도를 예측하는 단계는,
상기 블록 높이 차이를 기초로, 상기 대상 블록부터 상기 비분기 상태 블록까지의 블록 구간에 포함된 블록 각각에 블록 시퀀스 번호를 부여하는 단계;
상기 블록 각각에 부여된 블록 시퀀스 번호의 평균을 산출하는 단계; 및
상기 블록 시퀀스 번호의 평균이 모수(λ)로 설정된 포아송 분포를 이용하여, 상기 거래 확정 신뢰도를 예측하는 단계를 포함하는 것을 특징으로 하는,
거래 확정 신뢰도 산출 방법.The method of claim 3,
The step of predicting the transaction confirmation reliability using the Poisson distribution includes:
Assigning a block sequence number to each block included in a block interval from the target block to the non-branching block based on the block height difference;
Calculating an average of the block sequence numbers assigned to each of the blocks; And
And predicting the transaction confirmation reliability using a Poisson distribution in which an average of the block sequence numbers is set to a parameter ([lambda]).
Transaction Confirmation Reliability Calculation Method.
상기 포아송 분포를 이용하여, 상기 거래 확정 신뢰도를 예측하는 단계는,
상기 포아송 분포를 기초로, 상기 k개의 블록이 연결되는 경우에 대한 누적 확률을 산출하고, 상기 산출된 누적 확률을 상기 거래 확정 신뢰도로 예측하는 단계를 포함하는 것을 특징으로 하는,
거래 확정 신뢰도 산출 방법.The method of claim 3,
The step of predicting the transaction confirmation reliability using the Poisson distribution includes:
Calculating a cumulative probability of connecting the k blocks based on the Poisson distribution and predicting the calculated cumulative probability with the transaction-defined reliability;
Transaction Confirmation Reliability Calculation Method.
상기 블록체인 데이터는 제1 블록체인 데이터이고,
제2 블록체인 데이터 상에 형성된 분기에 관한 정보를 획득하되, 상기 제2 블록체인 데이터는 상기 제1 블록체인 데이터에 상기 k개의 블록이 더 연결된 블록체인 데이터인 것인, 단계; 및
상기 제2 블록체인 데이터 상에 형성된 분기에 관한 정보를 기초로, 상기 산출된 거래 확정 신뢰도를 확정하는 단계를 더 포함하는 것을 특징으로 하는,
거래 확정 신뢰도 산출 방법.The method according to claim 1,
Wherein the block chain data is first block chain data,
Wherein the second block chain data is block-chain data in which the k blocks are further connected to the first block chain data; And
Further comprising the step of determining the calculated transaction reliability determined based on the information about the branch formed on the second block chain data.
Transaction Confirmation Reliability Calculation Method.
상기 산출된 거래 확정 신뢰도를 확정하는 단계는,
상기 산출된 거래 확정 신뢰도가 100%이고, 상기 제2 블록체인 상에서, 상기 대상 블록 이후 분기가 형성된 경우, 상기 산출된 거래 확정 신뢰도를 현재 값보다 낮은 값으로 확정하는 단계를 포함하는 것을 특징으로 하는,
거래 확정 신뢰도 산출 방법.The method according to claim 6,
Wherein the step of establishing the calculated transaction-
And determining the calculated transaction reliability to be a value lower than the current value when the calculated transaction reliability is 100% and the branch after the target block is formed on the second block chain. ,
Transaction Confirmation Reliability Calculation Method.
상기 산출된 거래 확정 신뢰도를 확정하는 단계는,
상기 산출된 거래 확정 신뢰도가 100%이고, 상기 제2 블록체인 상에서, 상기 대상 블록 이후 분기가 형성되지 않은 경우, 상기 산출된 거래 확정 신뢰도를 현재 값으로 확정하는 단계를 포함하는 것을 특징으로 하는,
거래 확정 신뢰도 산출 방법.The method according to claim 6,
Wherein the step of establishing the calculated transaction-
And determining the calculated transaction reliability to be a current value when the calculated transaction reliability is 100% and the branch after the target block is not formed on the second block chain.
Transaction Confirmation Reliability Calculation Method.
상기 산출된 거래 확정 신뢰도를 확정하는 단계는,
상기 산출된 거래 확정 신뢰도가 100% 미만이면, 상기 산출된 거래 확정 신뢰도를 현재 값으로 확정하는 단계를 포함하는 것을 특징으로 하는,
거래 확정 신뢰도 산출 방법.The method according to claim 6,
Wherein the step of establishing the calculated transaction-
And determining the calculated transaction-determined reliability as a current value if the calculated transaction-determined reliability is less than 100%.
Transaction Confirmation Reliability Calculation Method.
상기 거래 확정 신뢰도를 산출하는 단계는,
k의 값을 변경해가며, k개의 블록이 연결되는 경우 각각에 대한 거래 확정 신뢰도를 산출하는 단계를 포함하고,
상기 거래 확정 신뢰도가 지정된 값 이상이 되는 k 값을 결정하는 단계를 더 포함하는 것을 특징으로 하는,
거래 확정 신뢰도 산출 방법.The method according to claim 1,
The step of calculating the transaction confirmation reliability may include:
changing the value of k and calculating the transaction confirmation reliability for each of the k blocks when the k blocks are concatenated,
Further comprising the step of determining a value of k at which the transaction confirmation reliability is equal to or greater than a specified value.
Transaction Confirmation Reliability Calculation Method.
상기 분기에 관한 정보를 획득하는 단계는,
대상 블록체인 네트워크 상에 전파되는 신규 블록을 실시간으로 수신하는 단계; 및
상기 실시간으로 수신된 신규 블록의 번호 및 상기 신규 블록의 해시 값의 일치 여부를 비교하여, 상기 분기에 관한 정보를 생성하는 단계를 포함하는 것을 특징으로 하는,
거래 확정 신뢰도 산출 방법.The method according to claim 1,
Wherein the step of acquiring information about the branch comprises:
Receiving a new block propagated on a target block chain network in real time; And
And comparing the number of the new block received in the real time and the hash value of the new block with each other to generate information about the branch.
Transaction Confirmation Reliability Calculation Method.
상기 블록체인 네트워크를 구성하고, 상기 블록체인 네트워크 상에서 전파되는 신규 블록을 실시간으로 모니터링하는 모니터링 노드; 및
상기 모니터링 노드로부터, 실시간으로 신규 블록에 대한 정보를 수신하고, 상기 신규 블록에 대한 정보를 기초로 상기 블록체인 데이터 상의 분기 발생 상태를 모니터링하는 블록체인 네트워크 모니터링 장치를 포함하는 것을 특징으로 하는,
블록체인 네트워크 모니터링 시스템.A plurality of block chain nodes constituting a block-chain network, distributing block-chain data, generating new blocks, and propagating the new blocks onto the block-chain network;
A monitoring node that configures the block-chain network and monitors a new block propagated on the block-chain network in real time; And
And a block-chain network monitoring apparatus for receiving information on a new block from the monitoring node in real time and monitoring a branch occurrence status on the block-chain data based on the information on the new block.
Block Chain Network Monitoring System.
상기 복수의 블록체인 노드는 복수의 제1 블록체인 노드 및 복수의 제2 블록체인 노드를 포함하고,
상기 복수의 제1 블록체인 노드는 제1 네트워크 상에 위치하고, 상기 복수의 제2 블록체인 노드는 제2 네트워크 상에 위치하며,
상기 제1 네트워크와 상기 제2 네트워크는 서로 다른 네트워크 환경으로 구성되되,
상기 제1 네트워크 및 상기 제2 네트워크 간에 데이터 교환을 수행하는 브로커 노드를 더 포함하는 것을 특징으로 하는,
블록체인 네트워크 모니터링 시스템.13. The method of claim 12,
Wherein the plurality of block chain nodes comprises a plurality of first block chain nodes and a plurality of second block chain nodes,
Wherein the plurality of first block chain nodes are located on a first network and the plurality of second block chain nodes are located on a second network,
Wherein the first network and the second network are configured in different network environments,
Further comprising a broker node for exchanging data between the first network and the second network.
Block Chain Network Monitoring System.
상기 블록체인 네트워크 모니터링 장치는,
상기 모니터링된 분기 발생 상태를 기초로, 현재 블록 높이에 해당하는 대상 블록에 기재된 거래 데이터에 대한 거래 확정 신뢰도를 산출하되,
상기 거래 확정 신뢰도는,
상기 대상 블록 이후로 k개(단, k는 1 이상의 자연수)의 블록이 더 연결됨에 따라, 상기 거래 데이터가 기록된 블록 위치가 변경되지 않을 확률을 가리키는 것을 특징으로 하는,
블록체인 네트워크 모니터링 시스템.13. The method of claim 12,
Wherein the block-chain network monitoring apparatus comprises:
Calculating transaction reliability of the transaction data described in the target block corresponding to the current block height based on the monitored branch occurrence state,
The transaction-
Wherein a block position in which the transaction data is recorded is not changed as k blocks (where k is a natural number greater than or equal to 1) are further concatenated after the object block.
Block Chain Network Monitoring System.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/933,592 US10922692B2 (en) | 2017-04-05 | 2018-03-23 | Method for calculating confirmation reliability for blockchain based transaction and blockchain network monitoring system for performing the method |
SG10201802605SA SG10201802605SA (en) | 2017-04-05 | 2018-03-28 | Method for calculating confirmation reliability for blockchain based transaction and Blockchain network monitoring system for performing the method |
CN201810289278.3A CN108694587A (en) | 2017-04-05 | 2018-04-03 | Transaction determines confidence level computational methods and block chain network monitoring system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20170044313 | 2017-04-05 | ||
KR1020170044313 | 2017-04-05 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20180113139A true KR20180113139A (en) | 2018-10-15 |
KR102303427B1 KR102303427B1 (en) | 2021-09-23 |
Family
ID=63865929
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170109258A KR102303427B1 (en) | 2017-04-05 | 2017-08-29 | Method for calculating confirmation reliability for blockchain based transaction and Blockchain network monitoring system for performing the method |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR102303427B1 (en) |
SG (1) | SG10201802605SA (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200063295A (en) * | 2018-11-19 | 2020-06-05 | (주)기술과가치 | The abcd-type apparatus and method of block chain for management of research funds by using randomized mesh blockchain type verifier module and smart tcv type blockchain mediation module |
KR20200083145A (en) * | 2018-12-28 | 2020-07-08 | 연세대학교 산학협력단 | Fault tolerance consensus method for eliminating interference factors in blockchain networks |
CN111858580A (en) * | 2019-04-24 | 2020-10-30 | 国际信任机器股份有限公司 | Verification system and method for link data |
KR20210046659A (en) * | 2019-10-15 | 2021-04-28 | 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 | Blockchain network-based data processing method and apparatus, electronic device, and storage medium |
CN112988751A (en) * | 2019-04-22 | 2021-06-18 | 网易(杭州)网络有限公司 | Timing task scheduling method and device based on block chain |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150144645A (en) * | 2014-06-17 | 2015-12-28 | 어준선 | Method for creating, providing and replaying digital content by using information on digital currency and terminal and computer-readable recording medium using the same |
KR20160095720A (en) * | 2015-02-03 | 2016-08-12 | 한양대학교 에리카산학협력단 | Method and apparatus for protecting transasction of encrypted currency |
KR20160114749A (en) * | 2015-02-25 | 2016-10-06 | 이진희 | Dealing method of Crypto-currency base on Blockchain System |
KR20160150278A (en) | 2016-06-15 | 2016-12-29 | 주식회사 코인플러그 | Financial institution document verification system that is based on the block chain |
-
2017
- 2017-08-29 KR KR1020170109258A patent/KR102303427B1/en active IP Right Grant
-
2018
- 2018-03-28 SG SG10201802605SA patent/SG10201802605SA/en unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150144645A (en) * | 2014-06-17 | 2015-12-28 | 어준선 | Method for creating, providing and replaying digital content by using information on digital currency and terminal and computer-readable recording medium using the same |
KR20160095720A (en) * | 2015-02-03 | 2016-08-12 | 한양대학교 에리카산학협력단 | Method and apparatus for protecting transasction of encrypted currency |
KR20160114749A (en) * | 2015-02-25 | 2016-10-06 | 이진희 | Dealing method of Crypto-currency base on Blockchain System |
KR20160150278A (en) | 2016-06-15 | 2016-12-29 | 주식회사 코인플러그 | Financial institution document verification system that is based on the block chain |
Non-Patent Citations (1)
Title |
---|
Nakamoto, Satoshi, "Bitcoin:A Peer-to-Peer Electronic Cash System"[Online] Bitcoin.org(URL: https://arxiv.org/pdf/1505.05343.pdf(Year:2015)* * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200063295A (en) * | 2018-11-19 | 2020-06-05 | (주)기술과가치 | The abcd-type apparatus and method of block chain for management of research funds by using randomized mesh blockchain type verifier module and smart tcv type blockchain mediation module |
KR20200083145A (en) * | 2018-12-28 | 2020-07-08 | 연세대학교 산학협력단 | Fault tolerance consensus method for eliminating interference factors in blockchain networks |
CN112988751A (en) * | 2019-04-22 | 2021-06-18 | 网易(杭州)网络有限公司 | Timing task scheduling method and device based on block chain |
CN111858580A (en) * | 2019-04-24 | 2020-10-30 | 国际信任机器股份有限公司 | Verification system and method for link data |
KR20210046659A (en) * | 2019-10-15 | 2021-04-28 | 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 | Blockchain network-based data processing method and apparatus, electronic device, and storage medium |
Also Published As
Publication number | Publication date |
---|---|
SG10201802605SA (en) | 2018-11-29 |
KR102303427B1 (en) | 2021-09-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10922692B2 (en) | Method for calculating confirmation reliability for blockchain based transaction and blockchain network monitoring system for performing the method | |
KR20180113139A (en) | Method for calculating confirmation reliability for blockchain based transaction and Blockchain network monitoring system for performing the method | |
EP3516574B1 (en) | Enterprise graph method of threat detection | |
US11223625B2 (en) | System and method for detecting malicious device by using a behavior analysis | |
US10728103B2 (en) | Edge device resourcing using recursive ledger chaining | |
JP2022502738A (en) | Data processing methods based on smart contracts, data processing equipment, node equipment, and computer programs | |
US9596251B2 (en) | Method and system for providing security aware applications | |
US10860406B2 (en) | Information processing device and monitoring method | |
US9479528B2 (en) | Signature rule processing method, server, and intrusion prevention system | |
US20170155676A1 (en) | Systems and methods for security management of multi-client based distributed storage | |
US20160173524A1 (en) | Method and system for providing an efficient asset management and verification service | |
JP7333814B2 (en) | Automated assessment of information security risks | |
CN110336784A (en) | Network attack identification prediction system, method and storage medium based on big data | |
JP2019515388A (en) | System and method for determining security risk profile | |
CN110009759A (en) | Work attendance method, attendance checking system and Work attendance device based on block chain | |
US11392821B2 (en) | Detecting behavior patterns utilizing machine learning model trained with multi-modal time series analysis of diagnostic data | |
US9954759B2 (en) | Detecting proxy-based communications | |
CN111641715A (en) | Data processing method, device, equipment and medium based on block chain | |
Lamb et al. | Towards robust trust in software defined networks | |
US9880855B2 (en) | Start-up control program, device, and method | |
Tapwal et al. | PerBlocks: A reconfigurable blockchain for service provisioning in industrial environment | |
CN114765555A (en) | Network threat processing method and communication device | |
WO2020139072A1 (en) | A method of migrating virtual machines | |
US20240031393A1 (en) | Ai-based security risk prediction system and method for targets to be protected in cloud environment | |
KR102013027B1 (en) | Method for calculating reliability of peer and method for updating peer evaluation data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |