WO2023200279A1 - Method for increasing block data generation speed through double chain structure in blockchain - Google Patents

Method for increasing block data generation speed through double chain structure in blockchain Download PDF

Info

Publication number
WO2023200279A1
WO2023200279A1 PCT/KR2023/005045 KR2023005045W WO2023200279A1 WO 2023200279 A1 WO2023200279 A1 WO 2023200279A1 KR 2023005045 W KR2023005045 W KR 2023005045W WO 2023200279 A1 WO2023200279 A1 WO 2023200279A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
data
blockchain
block data
transaction
Prior art date
Application number
PCT/KR2023/005045
Other languages
French (fr)
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
Priority claimed from KR1020230047794A external-priority patent/KR20230148110A/en
Application filed by 주식회사 아티프렌즈 filed Critical 주식회사 아티프렌즈
Publication of WO2023200279A1 publication Critical patent/WO2023200279A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials

Definitions

  • the present invention relates to blockchain, and more specifically, to increase the speed of block data creation through a double chain structure in a blockchain, which can speed up the creation of block data while maintaining decentralization through a double chain structure in a blockchain. It's about method.
  • Bitcoin which is called the first generation blockchain technology
  • Ethereum which is called the second generation blockchain technology
  • Hyperledger which is called the 2.5 generation blockchain technology. There is technology.
  • Bitcoin and Ethereum guarantee complete decentralization and have the advantage of strong security as they can connect multiple nodes, but it takes at least 1 hour for Bitcoin and about 2 minutes for Ethereum to confirm a transaction. .
  • the 2.5 generation blockchain technology which was developed to overcome these limitations, has the advantage of short transaction confirmation time, but security has been weakened by giving up decentralization and connecting only a small number of nodes.
  • PoW Proof of Work
  • PoW processes transactions through competition among network participants, and uses the computing power of all network participants to confirm one block data. It is a method of investing for a certain period of time. To forge/falsify data confirmed through this method, you must invest computing power equal to the amount of computing power consumed to confirm it and recalculate it to create block data. Therefore, as the number of such blocks increases, the difficulty in forging/tampering with the block data increases and the security becomes increasingly secure.
  • Bitcoin, the first generation blockchain technology, and Ethereum, the second generation blockchain technology have the disadvantage that transaction confirmation speed is very slow to be used in real life.
  • Bitcoin takes at least 1 hour for one transaction to be confirmed, and can process up to 3 transactions per second.
  • Ethereum takes at least 1 minute and 30 seconds for one transaction to be confirmed, and can process up to 20 transactions per second.
  • PoW Proof of Work
  • blockchain technologies that adopt the role of a verifier have the problem that there is no way to control if a network participant performing the role of a verifier engages in malicious behavior, and the method of selecting the verifier is such as stake, authentication, etc. If a method other than a method that a computer can automatically process is adopted, a human, rather than a pure computing algorithm, must frequently intervene in the network settings to manage the network. If such management is stopped, the blockchain network may be destroyed or threatened. /There is a problem with it being tampered with.
  • Patent Document 1 discloses “a signature and verification system and method based on a public key infrastructure that supports privacy protection in a DID environment,” and the resulting decentralized identity verification
  • a signature and verification method based on a public key infrastructure in an environment includes the steps of a holder terminal notifying an agenda; A step where the issuer terminal transmits an electronically signed transaction expressing the opinion regarding the matter to the blockchain network using a public certificate issued by the authenticator terminal; Aggregating the transactions in an aggregation contract of the blockchain network and storing them in blockchain storage; transmitting the number counted for the agenda to an agenda manager contract; Communicating whether preset conditions for the agenda are satisfied to a verification contract;
  • the verification contract includes verifying the electronic signature included in the transaction with a public key corresponding to the public certificate delivered from the authentication chain contract; And when verification is confirmed, it is characterized in that it includes the step of transmitting to the verifier terminal.
  • Patent Document 1 it is applicable to a system in which an individual performs the role of a valid issuer in a DID (Decentralized IDentity) environment and the holder secures majority support by obtaining the individual's consent, and the account It can respond to Sybil attacks, which attack by creating a large number of , and has the advantage of solving privacy issues (i.e., decentralization and security issues can be solved), but speed and expansion in blockchain It does not provide a solution to the gender problem.
  • DID Decentralized IDentity
  • the present invention was created by comprehensively considering the above matters, and adopts a method of having a validator node to enhance speed and scalability, and a method of selecting a validator node to strengthen decentralization and security. It uses the PoW (Proof of Work) algorithm, but introduces a main chain to process data and an auxiliary chain to select verifiers to speed up the creation of block data while maintaining decentralization in the blockchain through a dual chain structure. The purpose is to provide a method to increase the speed of block data creation through a double chain structure in blockchain.
  • the method of increasing the block data generation speed through a double chain structure in the blockchain according to the present invention is,
  • a validator collects transaction data propagated by network users and hashes it;
  • the network participants generate block data of the auxiliary blockchain using the block hash of the previous block and the received data of the final main block;
  • step a when the verifier collects and hashes the transaction data, the block hash of the previous block, transaction data (TX data), and the time that the transaction to be recorded in the block will have. It can be hashed by applying the upper limit of the value (Standard Timestamp) and the validator's signature data discovered during the consensus process to the hash function to generate a block hash of the current block.
  • TX data transaction data
  • Standard Timestamp the validator's signature data discovered during the consensus process
  • the consistency of the block data can be verified through the public key of the verifier.
  • step c) the network participants verify the consistency of the block data and decide whether to synchronize the block data to their own blockchain
  • TX Data Transaction data
  • TX Data transaction data
  • step c-3) If the signature value of the verifier's signature data is correct in the determination of step c-2) and all verifiers are verifiers, determining whether the signatures of all verifiers have been collected;
  • step c-4 If the signatures of all verifiers were not collected in the determination of step c-3), determining whether more than half of the signatures share the same data (i.e., a block adopted by the majority); and
  • step c-5 In the determination of step c-4), if the signatures sharing the same data are not more than the majority, the data is resynchronized and the process returns to step c-1), and if the signatures sharing the same data are more than the majority, the network participants It can be configured to include the step of synchronizing the corresponding block data to the blockchain you own.
  • step c-5 when synchronizing the block data in step c-5), if the priority cannot be determined among the block data generated by the verifiers, the network participants give priority to the block data held by other participants in the main Blockchain synchronization can be performed.
  • the main blockchain can be synchronized by randomly selecting one block data.
  • the corresponding block data can be synchronized to the blockchain held by the network participant.
  • step d) the network participants generate block data of the auxiliary blockchain using the block hash of the previous block and the received data of the final main block,
  • the step of changing the nonce may be included.
  • step e) when the network participants adopt the network participant who created the block in which the transaction was confirmed as a verifier, the network participants confirm the transaction from the time of confirmation of the final block to a plurality of previous blocks in the auxiliary blockchain. After setting it as a confirmed block, any network participant who created the block in which the transaction was confirmed can be adopted as a validator.
  • the present invention by using a dual chain structure that organically connects the main blockchain that uses a block creation algorithm by a verifier and the auxiliary blockchain that uses a PoW algorithm that generates blocks by consuming computing power, It has the advantage of solving the trilemma of blockchain technology, which was pointed out as a problem of the conventional technology, and of improving speed and scalability by quickly processing transactions while sufficiently securing and maintaining decentralization and security.
  • Figure 1 is a flowchart showing the execution process of a method for increasing block data generation speed through a dual chain structure in a blockchain according to the present invention.
  • Figure 2 is a diagram showing the process of generating a block hash in the main blockchain in the method of increasing the block data generation speed through a double chain structure in the blockchain according to the present invention.
  • Figure 3 is a diagram showing block data recorded in the main blockchain in the method of increasing the block data generation speed through a double chain structure in the blockchain according to the present invention.
  • Figure 4 is a diagram showing a subroutine for verifying block data in the method of increasing the block data generation speed through the double chain structure in the blockchain according to the present invention.
  • Figure 5 is a diagram showing the process of generating block data in an auxiliary blockchain in the method of increasing the block data generation speed through a double chain structure in the blockchain according to the present invention.
  • Figure 6 is a diagram showing block data generated by network participants in an auxiliary blockchain in the method of increasing the block data generation speed through a double chain structure in the blockchain according to the present invention.
  • Figure 7 is a diagram showing a method of adopting a verifier in an auxiliary blockchain in the method of increasing the block data generation speed through a double chain structure in the blockchain according to the present invention.
  • Figure 8 is a diagram showing a case where all validators are adopted in one region in the method of increasing the block data generation speed through a dual chain structure in the blockchain according to the present invention.
  • Figure 9 is a diagram showing a case where validators are distributed in all nine regions around the world in the method of increasing the block data generation speed through a dual chain structure in the blockchain according to the present invention.
  • Figure 1 is a flowchart showing the execution process of a method for increasing block data generation speed through a dual chain structure in a blockchain according to an embodiment of the present invention.
  • the method of increasing the block data generation speed through a double chain structure in the blockchain first involves a validator in the main blockchain collecting transaction data propagated by network users. Hash it (step S101).
  • the verifier collects and hashes the transaction data, as shown in FIG. 2, the previous block's block hash (Previous Blockhash) 210 and transaction data (TX data) 220 ), the upper limit of the time value of the transaction to be recorded in the block (Standard Timestamp) (230), and the validator's signature data (Seal) (240) discovered during the consensus process are applied to the Hash Function. It can be hashed by creating a blockhash (250) of the current block.
  • the verifier adds the verifier's signature to the hashed transaction data to generate block data 310 of the main blockchain as shown in FIG. 3 (step S102).
  • 'Height' represents the block number.
  • step S103 network participants verify the consistency of the block data and decide whether to synchronize the block data to their own blockchain.
  • the network participants verify the consistency of the block data, they can verify the consistency of the block data through the public key of the verifier.
  • determining whether to synchronize the block data will be described again later.
  • the network participants use the block hash of the previous block and the received data of the final main block to generate block data 610 of the auxiliary blockchain as shown in FIG. 6 (step S104 ).
  • the block data of this auxiliary blockchain includes the block number (Height), the time value of the transaction to be recorded in the block (Timestamp), the block hash of the previous block (Previous Blockhash), and the block hash of the current block. ), Nonce, Difficulty, Main Block Height, Main Block Blockhash, Validator, Miner, Package of received data (Receipt Data) may be included.
  • the creation of block data for this auxiliary blockchain will be explained later.
  • the network participants adopt a random network participant who created the block in which the transaction was confirmed as a verifier (step S105).
  • the network participants receive a plurality of (e.g., For example, after setting up to 6 previous blocks as transaction-confirmed blocks, any network participant who created the transaction-confirmed block can be adopted as a verifier.
  • Figure 4 is a diagram showing a subroutine for verifying block data in the method of increasing the block data generation speed through the double chain structure in the blockchain according to the present invention.
  • this is a subroutine for the step in step S103 of FIG. 1 where the network participants verify the consistency of the block data and decide whether to synchronize the block data to their own blockchain.
  • TX Data transaction data
  • step S402 if the signature value of the verifier's signature data is correct and all verifiers are verifiers, it is determined whether the signatures of all verifiers have been collected (step S403).
  • step S404 If the signatures of all verifiers have not been collected in the determination in step S403, it is determined whether more than half of the signatures share the same data (i.e., a block adopted by the majority) (step S404).
  • step S404 if more than half of the signatures share the same data, the data is resynchronized (step S405) and the process returns to step S401. And if more than half of the signatures share the same data, the corresponding block data is synchronized to the blockchain held by the network participant (step S406).
  • step S406 when synchronizing block data in step S406, if the priority cannot be determined among the block data generated by verifiers, the network participants prioritize the block data held by other participants in the main blockchain. Synchronization can be performed.
  • the main blockchain can be synchronized by randomly selecting one block data.
  • the corresponding block data can be synchronized to the blockchain held by the network participant.
  • Figure 5 is a diagram showing the process of generating block data in an auxiliary blockchain in the method of increasing the block data generation speed through a double chain structure in the blockchain according to the present invention.
  • this shows the process in which the network participants generate block data of the auxiliary blockchain using the block hash of the previous block and the received data of the final main block in step S104 of FIG. 1.
  • the previous block The block hash (510), the received data (530) of the final main block (520), the time value of the transaction to be recorded in the block (Timestamp) (540), the nonce, etc. are stored in the hash function. Apply it to obtain the block hash value (step S506).
  • step S507 it is determined whether the obtained block hash value has a value smaller than the difficulty hash.
  • step S507 If the block hash value is smaller than the difficulty hash in the determination in step S507, the block data is confirmed (step S508).
  • step S509 if the block hash value does not have a value smaller than the difficulty hash in the determination in step S507, the nonce is changed (step S509).
  • Figure 8 is a diagram showing a case where all validators are adopted in one region in the method of increasing the block data generation speed through a double chain structure in the blockchain according to the present invention
  • Figure 9 is a diagram showing the case where all validators are adopted in the blockchain according to the present invention. This is a diagram showing a method of increasing block data generation speed through a dual chain structure, where validators are distributed across 9 regions around the world.
  • FIGS. 8 and 9 shows the simulation results of a method for increasing the block data generation speed through a double chain structure in the blockchain according to the present invention, for example, western United States, eastern United States, Canada, Brazil, United Kingdom, and Korea.
  • a simulation experiment was conducted by building a total of 900 nodes, 100 each in 9 regions of Japan, Germany, and Singapore, and loading the blockchain engine "Chain” implemented with the corresponding algorithm on a computer.
  • the term “check round” refers to the time taken for the first verifier to check the location of another verifier, and is proportional to the physical distance from the first verifier to the other verifier.
  • check tracker is the time taken for all verifiers to complete checking the locations of other validators
  • collectApiChunk is the time taken for all verifiers to confirm signatures on block data, and is the time block data was confirmed
  • collectBroadcastChunk refers to the time it takes for network participants to receive block data broadcast, and represents the time it takes for service users to actually recognize the block data.
  • Figure 8 is a case where all verifiers are adopted in one region (Best Case).
  • time required for verifier confirmation of the first verifier 0.016 seconds
  • verifier confirmation required for all verifiers Time: 0.03 seconds
  • this verification shows that the number of transactions included in the block to be registered in the main blockchain: 707
  • block confirmation time 0.241 seconds
  • block confirmation recognition time 0.269 seconds
  • maximum number of transactions per second that can be processed 2628. there is.
  • Figure 9 shows the worst case where the verifiers are distributed in all 9 regions around the world.
  • the time required for verification of the first verifier 0.408 seconds, verification of all verifiers.
  • Verification time 0.82 seconds
  • number of transactions included in the block to be registered in the main blockchain in this verification 7182
  • block confirmation time 6.115 seconds
  • block confirmation recognition time 6.932 seconds
  • maximum number of transactions per second possible 1036 You can see that it is.
  • Bitcoin takes at least 1 hour for one transaction to be confirmed, on average it takes 2 to 6 hours, and a maximum of 3 transactions can be processed per second.
  • Ethereum takes at least 1 minute and 30 seconds for one transaction to be confirmed, on average it takes 2 to 5 minutes, and can process up to 20 transactions per second.
  • the blockchain technology using the method according to the present invention takes at least 1 second for one transaction to be confirmed, and on average, it takes about 2 to 6 seconds. It has the advantage of being able to process up to 2000 transactions per second.
  • the method of increasing the speed of block data generation through a double chain structure in the blockchain according to the present invention uses a main blockchain that uses a block creation algorithm by a verifier and a PoW algorithm that generates blocks by consuming computing power.
  • a dual chain structure that organically connects the auxiliary blockchains used the trilemma of blockchain technology, which was pointed out as a problem with conventional technology, is solved and transactions are processed quickly while sufficiently securing and maintaining decentralization and security. This has the advantage of improving speed and scalability.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

A method for increasing block data generation speed through a double chain structure in a blockchain, according to the present invention, comprises the steps of: by a validator, in a main blockchain, collecting and hashing transaction data propagated by network users; by the validator, adding a signature of the validator to the transaction data hashed and generating block data for the main blockchain; by network participants, verifying the consistency of the block data and determining whether to synchronize the corresponding block data with their own blockchains; by the network participants, in an auxiliary blockchain, generating block data for the auxiliary blockchain by using a block hash of a previous block and received data of a final main block; and by the network participants, adopting, as a validator, any network participant who created a block in which a transaction is confirmed.

Description

블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법How to increase block data creation speed through dual chain structure in blockchain
본 발명은 블록체인에 관한 것으로서, 더 상세하게는 블록체인에서 이중 체인 구조를 통해 탈중앙화를 유지하면서 블록 데이터의 생성속도를 빠르게 할 수 있는, 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법에 관한 것이다.The present invention relates to blockchain, and more specifically, to increase the speed of block data creation through a double chain structure in a blockchain, which can speed up the creation of block data while maintaining decentralization through a double chain structure in a blockchain. It's about method.
종래 블록체인 기술로는 1세대 블록체인 기술로 불리는 비트코인(bitcoin), 2세대 블록체인 기술로 불리는 이더리움(Ethereum), 그리고 2.5세대 블록체인 기술로 불리는 하이퍼레저(Hyperledger)를 비롯한 여러 블록체인 기술이 있다.Conventional blockchain technologies include Bitcoin, which is called the first generation blockchain technology, Ethereum, which is called the second generation blockchain technology, and Hyperledger, which is called the 2.5 generation blockchain technology. There is technology.
비트코인과 이더리움은 완전한 탈중앙화를 보장하며 다수의 노드를 연결할 수 있어 보안성이 강력하다는 장점이 있지만, 트랜잭션 확정을 위해 비트코인은 최소 1시간, 이더리움은 2분 정도의 시간이 소요된다. 이러한 한계를 극복하기 위해 나온 2.5세대 블록체인 기술은 트랜잭션 확정 시간이 짧다는 장점이 있지만, 탈중앙화를 포기하고 소수의 노드만을 연결하여 보안성이 약화되었다.Bitcoin and Ethereum guarantee complete decentralization and have the advantage of strong security as they can connect multiple nodes, but it takes at least 1 hour for Bitcoin and about 2 minutes for Ethereum to confirm a transaction. . The 2.5 generation blockchain technology, which was developed to overcome these limitations, has the advantage of short transaction confirmation time, but security has been weakened by giving up decentralization and connecting only a small number of nodes.
비트코인과 이더리움은 트랜잭션 확정을 위헤 PoW(Proof of Work) 알고리즘을 사용하고 있는데, PoW는 네트워크 참여자들의 경쟁을 통해 트랜잭션을 처리하며, 하나의 블록 데이터를 확정하기 위해 네트워크 참여자 전체의 컴퓨팅 파워를 일정 시간동안 투자하는 방식이다. 이 방식을 통해 확정된 데이터를 위/변조하려면 확정하기 위해 소모된 컴퓨팅 파워만큼의 컴퓨팅 파워를 투자하여 다시 계산을 하여 블록 데이터를 생성해야 한다. 따라서, 이러한 블록이 점점 많아질수록 블록 데이터를 위/변조하기 위한 난이도가 점점 높아져 보안이 점점 더 안전해진다.Bitcoin and Ethereum use the PoW (Proof of Work) algorithm to confirm transactions. PoW processes transactions through competition among network participants, and uses the computing power of all network participants to confirm one block data. It is a method of investing for a certain period of time. To forge/falsify data confirmed through this method, you must invest computing power equal to the amount of computing power consumed to confirm it and recalculate it to create block data. Therefore, as the number of such blocks increases, the difficulty in forging/tampering with the block data increases and the security becomes increasingly secure.
다만, 데이터를 확정하기 위해 일정한 시간이 소모되는 단점이 있어 속도를 증진시키기 위해 이후 2.5세대 블록체인 기술들은 PoS(Proof of Stake), PBFT (Practical Byzantine Fault Tolerance) 등의 알고리즘을 채택했다. 이 알고리즘들은 트랜잭션 확정을 위한 소수의 네트워크 참여자를 채택하여 그들에게 데이터 확정을 위한 검증자 역할을 맡긴다. 채택된 소수의 검증자들은 데이터 확정 처리를 고속으로 수행하며, 이 검증자 수가 많아질수록 트랜잭션 확정 속도가 느려진다.However, there is a disadvantage in that it takes a certain amount of time to confirm data, so to improve speed, later 2.5 generation blockchain technologies adopted algorithms such as PoS (Proof of Stake) and PBFT (Practical Byzantine Fault Tolerance). These algorithms adopt a small number of network participants to confirm transactions and assign them the role of verifiers to confirm data. The small number of validators adopted perform data confirmation processing at high speed, and as the number of validators increases, the transaction confirmation speed becomes slower.
1세대 블록체인 기술인 비트코인과 2세대 블록체인 기술인 이더리움은 실생활에서 사용하기에는 트랜잭션 확정 속도가 실생활에서 사용하기에는 매우 느리다는 단점을 가지고 있다. 비트코인은 하나의 트랜잭션이 확정되기까지는 최소 1시간의 시간이 소요되며, 최대 1초에 3개 정도의 트랜잭션을 처리할 수 있다. 이더리움은 하나의 트랜잭션이 확정되기까지는 최소 1분 30초의 시간이 소요되며, 최대 1초에 20개 정도의 트랜잭션을 처리할 수 있다. 이는 트랜잭션 확정을 위해 PoW(Proof of Work) 알고리즘을 사용하고 있기 때문이며, 그 단점을 해결하기 위해 등장한 2.5세대 블록체인 기술들은 블록체인의 가장 강력한 요소인 탈중앙화와 보안성을 포기하였다는 문제점을 안고 있다.Bitcoin, the first generation blockchain technology, and Ethereum, the second generation blockchain technology, have the disadvantage that transaction confirmation speed is very slow to be used in real life. Bitcoin takes at least 1 hour for one transaction to be confirmed, and can process up to 3 transactions per second. Ethereum takes at least 1 minute and 30 seconds for one transaction to be confirmed, and can process up to 20 transactions per second. This is because the PoW (Proof of Work) algorithm is used to confirm transactions, and the 2.5 generation blockchain technologies that emerged to solve the shortcomings have the problem of giving up decentralization and security, the most powerful elements of blockchain. there is.
특히, 검증자 역할을 채택하는 방식의 블록체인 기술들은 검증자 역할을 수행하는 네트워크 참여자가 악의적인 행동을 하는 경우 그것을 제어할 방법이 없다는 문제점을 가지고 있으며, 검증자를 선정하는 방식을 지분, 인증 등의 컴퓨터가 자동으로 처리할 수 있는 방법이 아닌 다른 방식을 채택하는 경우에는 순수 컴퓨팅 알고리즘이 아니라 인간이 수시로 네트워크 설정에 개입하여 네트워크를 관리하여야 하고, 이러한 관리가 멈추면 블록체인 네트워크가 파괴되거나 위/변조된다는 문제점이 있다.In particular, blockchain technologies that adopt the role of a verifier have the problem that there is no way to control if a network participant performing the role of a verifier engages in malicious behavior, and the method of selecting the verifier is such as stake, authentication, etc. If a method other than a method that a computer can automatically process is adopted, a human, rather than a pure computing algorithm, must frequently intervene in the network settings to manage the network. If such management is stopped, the blockchain network may be destroyed or threatened. /There is a problem with it being tampered with.
예를 들어, 검증자가 이미 블록 데이터를 생성한 상태에서, 다시 서명을 생성하여 해당 블록 데이터를 덮어쓰려는 시도를 한다면 제3자의 입장에서는 두 블록 데이터가 모두 올바르기 때문에 어떤 블록 데이터를 동기화하여야 하는지 판단이 불가능하다. 이 상황에서는 블록체인 네트워크가 하나의 데이터를 결정하지 못하고 포크(fork)되며, 인위적인 개입 없이는 블록체인 네트워크 전체가 파괴되는 사태가 초래된다.For example, if the verifier has already created block data and attempts to overwrite the block data by creating a signature again, the third party will not know which block data should be synchronized since both block data are correct. Judgment is impossible. In this situation, the blockchain network cannot decide on a single piece of data and forks, resulting in the entire blockchain network being destroyed without artificial intervention.
현재의 기술들은 결국 PoW 방식을 채택하여 속도와 확장성을 포기하고 탈중앙화와 보안성을 강화하느냐, 또는 기타 방식을 채택하여 탈중앙화와 보안성을 포기하고 속도와 확장성을 강화하느냐로 분류된다. 따라서, 종래 블록체인 기술에서는 이러한 문제들, 즉 탈중앙화, 보안성, 확장성을 동시에 만족하는 것은 불가능한 문제로 보고 있으며, 이를 트릴레마(trilemma)라고 부르고 있다.Current technologies are ultimately classified into either adopting the PoW method and giving up speed and scalability and strengthening decentralization and security, or adopting other methods and giving up decentralization and security and strengthening speed and scalability. . Therefore, in conventional blockchain technology, it is considered impossible to simultaneously satisfy these problems, namely decentralization, security, and scalability, and this is called a trilemma.
한편, 한국 등록특허공보 제10-2173426호(특허문헌 1)에는 "DID 환경의 프라이버시 보호를 지원하는 공개키 인프라구조 기반 서명 및 검증 시스템과 방법"이 개시되어 있는 바, 이에 따른 탈중앙화 신원증명 환경 하에서의 공개키 인프라구조 기반 서명 및 검증 방법은, 소지자 단말이 안건을 공지하는 단계; 발급자 단말이 상기 안건에 대한 의사표현을 인증자 단말에서 발행한 공인인증서를 이용하여 전자서명한 트랜잭션을 블록체인 네트워크에 전송하는 단계; 상기 블록체인 네트워크의 집계 컨트랙트에서 상기 트랜잭션을 집계하고 블록체인 저장소에 저장하는 단계; 상기 안건에 대해 카운팅된 수를 안건 관리자 컨트랙트에 전달하는 단계; 상기 안건에 대해 미리 설정된 조건의 만족 여부를 검증 컨트랙트에 전달하는 단계; 상기 검증 컨트랙트는 인증 체인 컨트랙트로부터 전달된 상기 공인인증서에 상응하는 공개키로 상기 트랜잭션에 포함된 전자서명을 검증하는 단계; 및 검증이 확인되면, 검증자 단말에게 전달하는 단계를 포함하는 것을 특징으로 한다.Meanwhile, Korean Patent Publication No. 10-2173426 (Patent Document 1) discloses “a signature and verification system and method based on a public key infrastructure that supports privacy protection in a DID environment,” and the resulting decentralized identity verification A signature and verification method based on a public key infrastructure in an environment includes the steps of a holder terminal notifying an agenda; A step where the issuer terminal transmits an electronically signed transaction expressing the opinion regarding the matter to the blockchain network using a public certificate issued by the authenticator terminal; Aggregating the transactions in an aggregation contract of the blockchain network and storing them in blockchain storage; transmitting the number counted for the agenda to an agenda manager contract; Communicating whether preset conditions for the agenda are satisfied to a verification contract; The verification contract includes verifying the electronic signature included in the transaction with a public key corresponding to the public certificate delivered from the authentication chain contract; And when verification is confirmed, it is characterized in that it includes the step of transmitting to the verifier terminal.
이상과 같이 상기 특허문헌 1의 경우, DID(Decentralized IDentity, 탈중앙화 신원증명) 환경 하에서 개인이 유효한 발급자 역할을 수행하여 소지자가 개인의 동의를 얻어서 다수의 지지를 확보하는 시스템에 적용 가능하고, 계정을 다수 생성하여 공격하는 시빌 공격(Sybil attack)에 대응 가능하며, 프라이버시 문제를 해결할 수 있는 장점이 있기는 하나(즉, 탈중앙화와 보안성 문제는 해결할 수 있으나), 블록체인에서의 속도와 확장성 문제에 대한 해결책은 제시하지 못하고 있다.As described above, in the case of Patent Document 1, it is applicable to a system in which an individual performs the role of a valid issuer in a DID (Decentralized IDentity) environment and the holder secures majority support by obtaining the individual's consent, and the account It can respond to Sybil attacks, which attack by creating a large number of , and has the advantage of solving privacy issues (i.e., decentralization and security issues can be solved), but speed and expansion in blockchain It does not provide a solution to the gender problem.
본 발명은 이상과 같은 사항을 종합적으로 감안하여 창출된 것으로서, 속도와 확장성을 강화하기 위해 검증자 노드를 두는 방식을 채택하고, 탈중앙화와 보안성을 강화하기 위해 검증자 노드를 선정하는 방식으로 PoW(Proof of Work) 알고리즘을 활용하되, 데이터를 처리할 메인 체인과 검증자를 선정하기 위한 보조 체인을 도입하여 이중 체인 구조를 통해 블록체인에서 탈중앙화를 유지하면서 블록 데이터의 생성속도를 빠르게 할 수 있는, 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법을 제공함에 그 목적이 있다.The present invention was created by comprehensively considering the above matters, and adopts a method of having a validator node to enhance speed and scalability, and a method of selecting a validator node to strengthen decentralization and security. It uses the PoW (Proof of Work) algorithm, but introduces a main chain to process data and an auxiliary chain to select verifiers to speed up the creation of block data while maintaining decentralization in the blockchain through a dual chain structure. The purpose is to provide a method to increase the speed of block data creation through a double chain structure in blockchain.
상기의 목적을 달성하기 위하여 본 발명에 따른 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법은,In order to achieve the above purpose, the method of increasing the block data generation speed through a double chain structure in the blockchain according to the present invention is,
a) 메인 블록체인에서 검증자(validator)가 네트워크 이용자들이 전파하는 트랜잭션 데이터를 수집하여 해시(hash)화하는 단계;a) In the main blockchain, a validator collects transaction data propagated by network users and hashes it;
b) 상기 검증자가 해시화된 트랜잭션 데이터에 검증자의 서명을 부가하여 메인 블록체인의 블록 데이터를 생성하는 단계;b) the verifier adding the verifier's signature to the hashed transaction data to generate block data of the main blockchain;
c) 네트워크 참여자들이 상기 블록 데이터의 정합성을 검증하고, 자신이 보유한 블록체인에 해당 블록 데이터를 동기화할지 여부를 결정하는 단계;c) network participants verifying the consistency of the block data and deciding whether to synchronize the block data to their own blockchain;
d) 보조 블록체인에서 상기 네트워크 참여자들이 이전 블록의 블록해시와 최종 메인 블록의 수신 데이터를 이용하여 보조 블록체인의 블록 데이터를 생성하는 단계; 및d) in the auxiliary blockchain, the network participants generate block data of the auxiliary blockchain using the block hash of the previous block and the received data of the final main block; and
e) 상기 네트워크 참여자들이 트랜잭션이 확정된 블록을 생성한 임의의 네트워크 참여자를 검증자로 채택하는 단계를 포함하는 점에 그 특징이 있다.e) It is characterized in that it includes the step of the network participants adopting a random network participant who created the block in which the transaction was confirmed as a verifier.
여기서, 상기 단계 a)에서 상기 검증자가 상기 트랜잭션 데이터를 수집하여 해시(hash)화함에 있어서, 이전 블록의 블록해시(blockhash), 트랜잭션 데이터들 (TX datas), 블록에 기록될 트랜잭션이 가질 시간값의 상한선(Standard Timestamp) 및 합의 과정에서 발견된 검증자(Validator)의 서명 데이터를 해시함수에 적용하여 현재 블록의 블록해시를 생성함에 의해 해시화할 수 있다.Here, in step a), when the verifier collects and hashes the transaction data, the block hash of the previous block, transaction data (TX data), and the time that the transaction to be recorded in the block will have. It can be hashed by applying the upper limit of the value (Standard Timestamp) and the validator's signature data discovered during the consensus process to the hash function to generate a block hash of the current block.
또한, 상기 단계 c)에서 상기 네트워크 참여자들이 상기 블록 데이터의 정합성을 검증함에 있어서, 상기 검증자의 공개키를 통해 상기 블록 데이터의 정합성을 검증할 수 있다.Additionally, when the network participants verify the consistency of the block data in step c), the consistency of the block data can be verified through the public key of the verifier.
또한, 상기 단계 c)에서 상기 네트워크 참여자들이 상기 블록 데이터의 정합성을 검증하고, 자신이 보유한 블록체인에 해당 블록 데이터를 동기화할지 여부를 결정하는 단계는,In addition, in step c), the network participants verify the consistency of the block data and decide whether to synchronize the block data to their own blockchain,
c-1) 트랜잭션 데이터(TX Data)가 처리하기에 적합한 데이터뿐인지를 판별하는 단계;c-1) Determining whether the transaction data (TX Data) is suitable for processing;
c-2) 상기 판별에서 트랜잭션 데이터(TX Data)가 처리하기에 적합한 데이터뿐이면, 검증자의 서명 데이터의 서명값이 올바르며, 모두 검증자인지를 판별하는 단계;c-2) If the transaction data (TX Data) is only data suitable for processing in the above determination, determining whether the signature value of the verifier's signature data is correct and whether all verifiers are verifiers;
c-3) 상기 단계 c-2)의 판별에서 검증자의 서명 데이터의 서명값이 올바르며, 모두 검증자이면, 모든 검증자의 서명을 수집하였는지를 판별하는 단계;c-3) If the signature value of the verifier's signature data is correct in the determination of step c-2) and all verifiers are verifiers, determining whether the signatures of all verifiers have been collected;
c-4) 상기 단계 c-3)의 판별에서 모든 검증자의 서명을 수집하지 않았으면, 같은 데이터를 공유하는 서명이 과반 이상인지(즉, 다수가 채택한 블록인지)를 판별하는 단계; 및c-4) If the signatures of all verifiers were not collected in the determination of step c-3), determining whether more than half of the signatures share the same data (i.e., a block adopted by the majority); and
c-5) 상기 단계 c-4)의 판별에서, 같은 데이터를 공유하는 서명이 과반 이상이 아니면, 데이터를 재동기화하여 프로세스 진행을 상기 단계 c-1)로 회귀하고, 과반 이상이면 상기 네트워크 참여자 자신이 보유한 블록체인에 해당 블록 데이터를 동기화하는 단계를 포함하여 구성될 수 있다.c-5) In the determination of step c-4), if the signatures sharing the same data are not more than the majority, the data is resynchronized and the process returns to step c-1), and if the signatures sharing the same data are more than the majority, the network participants It can be configured to include the step of synchronizing the corresponding block data to the blockchain you own.
이때, 상기 단계 c-5)에서 블록 데이터를 동기화함에 있어서, 검증자들이 생성한 블록 데이터들 중 우선순위를 결정할 수 없는 경우에는 상기 네트워크 참여자들은 다른 참여자들이 가장 많이 보유한 블록 데이터를 우선으로 하여 메인 블록체인의 동기화를 수행할 수 있다.At this time, when synchronizing the block data in step c-5), if the priority cannot be determined among the block data generated by the verifiers, the network participants give priority to the block data held by other participants in the main Blockchain synchronization can be performed.
이때, 또한 블록 데이터들이 동률인 경우에는 랜덤으로 하나의 블록 데이터를 선택하여 메인 블록체인을 동기화할 수 있다.At this time, if the block data are tied, the main blockchain can be synchronized by randomly selecting one block data.
이때, 또한 상기 단계 c-3)의 판별에서 모든 검증자의 서명을 수집하였으면, 상기 네트워크 참여자 자신이 보유한 블록체인에 해당 블록 데이터를 동기화할 수 있다.At this time, if the signatures of all verifiers have been collected in the determination in step c-3), the corresponding block data can be synchronized to the blockchain held by the network participant.
또한, 상기 단계 d)에서 상기 네트워크 참여자들이 이전 블록의 블록해시와 최종 메인 블록의 수신 데이터를 이용하여 보조 블록체인의 블록 데이터를 생성하는 단계는, In addition, in step d), the network participants generate block data of the auxiliary blockchain using the block hash of the previous block and the received data of the final main block,
d-1) 이전 블록의 블록해시, 최종 메인 블록의 수신 데이터, 블록에 기록될 트랜잭션이 가질 시간값(Timestamp) 등을 해시함수에 적용하여 블록해시 값을 구하는 단계;d-1) Obtaining the block hash value by applying the block hash of the previous block, the received data of the final main block, and the time value (Timestamp) of the transaction to be recorded in the block to the hash function;
d-2) 상기 구해진 블록해시 값이 난이도 해시(difficulty hash)보다 작은 값을 가지는지를 판별하는 단계;d-2) determining whether the obtained block hash value has a value smaller than the difficulty hash;
d-3) 상기 판별에서 상기 블록해시 값이 난이도 해시(difficulty hash)보다 작은 값을 가지면, 블록 데이터를 확정하는 단계; 및d-3) If the block hash value is smaller than the difficulty hash in the determination, confirming the block data; and
d-4) 상기 판별에서 상기 블록해시 값이 난이도 해시(difficulty hash)보다 작은 값을 가지지 않으면, 난스(nonce)를 변경하는 단계를 포함할 수 있다.d-4) If the block hash value does not have a value smaller than the difficulty hash, the step of changing the nonce may be included.
또한, 상기 단계 e)에서 상기 네트워크 참여자들이 트랜잭션이 확정된 블록을 생성한 네트워크 참여자를 검증자로 채택함에 있어서, 상기 네트워크 참여자들이 보조 블록체인에서 최종 블록의 확인 시점으로부터 복수 개 이전 블록까지를 트랜잭션이 확정된 블록으로 설정한 후, 트랜잭션이 확정된 블록을 생성한 임의의 네트워크 참여자를 검증자로 채택할 수 있다.In addition, in step e), when the network participants adopt the network participant who created the block in which the transaction was confirmed as a verifier, the network participants confirm the transaction from the time of confirmation of the final block to a plurality of previous blocks in the auxiliary blockchain. After setting it as a confirmed block, any network participant who created the block in which the transaction was confirmed can be adopted as a validator.
이와 같은 본 발명에 의하면, 검증자에 의한 블록 생성 알고리즘을 사용하는 메인 블록체인과 컴퓨팅 파워를 소모하여 블록을 생성하는 PoW 알고리즘을 사용하는 보조 블록체인을 유기적으로 연결한 이중 체인 구조를 사용함으로써, 종래 기술의 문제점으로 지적되었던 블록체인 기술의 트릴레마를 해결하고 탈중앙화와 보안성을 충분히 확보하여 유지하는 상태로 트랜잭션을 빠르게 처리하여 속도와 확장성을 증진할 수 있는 장점이 있다.According to the present invention, by using a dual chain structure that organically connects the main blockchain that uses a block creation algorithm by a verifier and the auxiliary blockchain that uses a PoW algorithm that generates blocks by consuming computing power, It has the advantage of solving the trilemma of blockchain technology, which was pointed out as a problem of the conventional technology, and of improving speed and scalability by quickly processing transactions while sufficiently securing and maintaining decentralization and security.
도 1은 본 발명에 따른 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법의 실행 과정을 나타낸 흐름도이다.Figure 1 is a flowchart showing the execution process of a method for increasing block data generation speed through a dual chain structure in a blockchain according to the present invention.
도 2는 본 발명에 따른 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법에 있어서, 메인 블록체인에서 블록해시를 생성하는 과정을 나타낸 도면이다.Figure 2 is a diagram showing the process of generating a block hash in the main blockchain in the method of increasing the block data generation speed through a double chain structure in the blockchain according to the present invention.
도 3은 본 발명에 따른 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법에 있어서, 메인 블록체인에 기록되는 블록 데이터를 나타낸 도면이다.Figure 3 is a diagram showing block data recorded in the main blockchain in the method of increasing the block data generation speed through a double chain structure in the blockchain according to the present invention.
도 4는 본 발명에 따른 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법에 있어서, 블록 데이터를 검증하기 위한 서브 루틴을 나타낸 도면이다.Figure 4 is a diagram showing a subroutine for verifying block data in the method of increasing the block data generation speed through the double chain structure in the blockchain according to the present invention.
도 5는 본 발명에 따른 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법에 있어서, 보조 블록체인에서 블록 데이터를 생성하는 과정을 나타낸 도면이다.Figure 5 is a diagram showing the process of generating block data in an auxiliary blockchain in the method of increasing the block data generation speed through a double chain structure in the blockchain according to the present invention.
도 6은 본 발명에 따른 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법에 있어서, 보조 블록체인에서 네트워크 참여자가 생성한 블록 데이터를 나타낸 도면이다.Figure 6 is a diagram showing block data generated by network participants in an auxiliary blockchain in the method of increasing the block data generation speed through a double chain structure in the blockchain according to the present invention.
도 7은 본 발명에 따른 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법에 있어서, 보조 블록체인에서 검증자를 채택하는 방식을 나타낸 도면이다.Figure 7 is a diagram showing a method of adopting a verifier in an auxiliary blockchain in the method of increasing the block data generation speed through a double chain structure in the blockchain according to the present invention.
도 8은 본 발명에 따른 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법에 있어서, 검증자들이 한 지역에서 모두 채택된 경우를 나타낸 도면이다.Figure 8 is a diagram showing a case where all validators are adopted in one region in the method of increasing the block data generation speed through a dual chain structure in the blockchain according to the present invention.
도 9는 본 발명에 따른 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법에 있어서, 검증자들이 전 세계 9개 지역에 모두 분산되어 있는 경우를 나타낸 도면이다.Figure 9 is a diagram showing a case where validators are distributed in all nine regions around the world in the method of increasing the block data generation speed through a dual chain structure in the blockchain according to the present invention.
이하 첨부된 도면을 참조하여 본 발명의 실시예를 상세히 설명한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the attached drawings.
도 1은 본 발명의 실시예에 따른 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법의 실행 과정을 나타낸 흐름도이다.Figure 1 is a flowchart showing the execution process of a method for increasing block data generation speed through a dual chain structure in a blockchain according to an embodiment of the present invention.
도 1을 참조하면, 본 발명에 따른 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법은, 먼저 메인 블록체인에서 검증자(validator)가 네트워크 이용자들이 전파하는 트랜잭션(transaction) 데이터를 수집하여 해시(hash)화한다(단계 S101). 여기서, 상기 검증자가 상기 트랜잭션 데이터를 수집하여 해시(hash)화함에 있어서, 도 2에 도시된 바와 같이, 이전 블록의 블록해시(Previous Blockhash)(210), 트랜잭션 데이터들(TX datas)(220), 블록에 기록될 트랜잭션이 가질 시간값의 상한선(Standard Timestamp)(230) 및 합의 과정에서 발견된 검증자(Validator)의 서명 데이터(Seal)(240)를 해시 함수(Hash Function)에 적용하여 현재 블록의 블록해시(Blockhash)(250)를 생성함에 의해 해시화할 수 있다.Referring to Figure 1, the method of increasing the block data generation speed through a double chain structure in the blockchain according to the present invention first involves a validator in the main blockchain collecting transaction data propagated by network users. Hash it (step S101). Here, when the verifier collects and hashes the transaction data, as shown in FIG. 2, the previous block's block hash (Previous Blockhash) 210 and transaction data (TX data) 220 ), the upper limit of the time value of the transaction to be recorded in the block (Standard Timestamp) (230), and the validator's signature data (Seal) (240) discovered during the consensus process are applied to the Hash Function. It can be hashed by creating a blockhash (250) of the current block.
또한, 상기 검증자는 해시화된 트랜잭션 데이터에 검증자의 서명을 부가하여 도 3에 도시된 바와 같은 메인 블록체인의 블록 데이터(310)를 생성한다(단계 S102). 도 3의 블록 데이터(310)에서 'Height'는 블록의 번호를 나타낸다.Additionally, the verifier adds the verifier's signature to the hashed transaction data to generate block data 310 of the main blockchain as shown in FIG. 3 (step S102). In the block data 310 of FIG. 3, 'Height' represents the block number.
이렇게 하여 블록 데이터가 생성되면, 네트워크 참여자들이 상기 블록 데이터의 정합성을 검증하고, 자신이 보유한 블록체인에 해당 블록 데이터를 동기화할지 여부를 결정한다(단계 S103). 여기서, 상기 네트워크 참여자들이 상기 블록 데이터의 정합성을 검증함에 있어서, 상기 검증자의 공개키를 통해 상기 블록 데이터의 정합성을 검증할 수 있다. 여기서, 또한 상기 블록 데이터를 동기화할지 여부를 결정하는 것에 대해서는 뒤에서 다시 설명하기로 한다.When block data is created in this way, network participants verify the consistency of the block data and decide whether to synchronize the block data to their own blockchain (step S103). Here, when the network participants verify the consistency of the block data, they can verify the consistency of the block data through the public key of the verifier. Here, determining whether to synchronize the block data will be described again later.
이후, 보조 블록체인에서 상기 네트워크 참여자들이 이전 블록의 블록해시와 최종 메인 블록의 수신 데이터 등을 이용하여, 도 6에 도시된 바와 같은 보조 블록체인의 블록 데이터(610)를 생성한다(단계 S104). 여기서, 이와 같은 보조 블록체인의 블록 데이터는 블록의 번호(Height), 블록에 기록될 트랜잭션이 가질 시간값(Timestamp), 이전 블록의 블록해시(Previous Blockhash), 현재 블록의 블록해시(Blockhash), 난스(Nonce), 난이도(Difficult), 메인 블록의 번호(Main Block Height), 메인 블록의 블록해시(Main Block Blockhash), 검증자(Validator), 채굴자(Miner), 수신 데이터의 꾸러미(Receipt Datas)를 포함할 수 있다. 여기서, 또한이와 같은 보조 블록체인의 블록 데이터를 생성하는 것에 대해서는 뒤에서 다시 설명하기로 한다.Thereafter, in the auxiliary blockchain, the network participants use the block hash of the previous block and the received data of the final main block to generate block data 610 of the auxiliary blockchain as shown in FIG. 6 (step S104 ). Here, the block data of this auxiliary blockchain includes the block number (Height), the time value of the transaction to be recorded in the block (Timestamp), the block hash of the previous block (Previous Blockhash), and the block hash of the current block. ), Nonce, Difficulty, Main Block Height, Main Block Blockhash, Validator, Miner, Package of received data (Receipt Data) may be included. Here, the creation of block data for this auxiliary blockchain will be explained later.
이상에 의해 보조 블록체인의 블록 데이터가 생성된 후, 상기 네트워크 참여자들은 트랜잭션이 확정된 블록을 생성한 임의의 네트워크 참여자를 검증자로 채택한다(단계 S105). 여기서, 상기 네트워크 참여자들이 트랜잭션이 확정된 블록을 생성한 네트워크 참여자를 검증자로 채택함에 있어서, 도 7에 도시된 바와 같이, 상기 네트워크 참여자들이 보조 블록체인에서 최종 블록의 확인 시점으로부터 복수 개(예를 들면, 6개) 이전 블록까지를 트랜잭션이 확정된 블록으로 설정한 후, 트랜잭션이 확정된 블록을 생성한 임의의 네트워크 참여자를 검증자로 채택할 수 있다.After the block data of the auxiliary blockchain is created as described above, the network participants adopt a random network participant who created the block in which the transaction was confirmed as a verifier (step S105). Here, when the network participants adopt the network participant who created the block in which the transaction was confirmed as the verifier, as shown in FIG. 7, the network participants receive a plurality of (e.g., For example, after setting up to 6 previous blocks as transaction-confirmed blocks, any network participant who created the transaction-confirmed block can be adopted as a verifier.
도 4는 본 발명에 따른 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법에 있어서, 블록 데이터를 검증하기 위한 서브 루틴을 나타낸 도면이다.Figure 4 is a diagram showing a subroutine for verifying block data in the method of increasing the block data generation speed through the double chain structure in the blockchain according to the present invention.
도 4를 참조하면, 이는 도 1의 단계 S103에서 상기 네트워크 참여자들이 상기 블록 데이터의 정합성을 검증하고, 자신이 보유한 블록체인에 해당 블록 데이터를 동기화할지 여부를 결정하는 단계에 대한 서브 루틴으로서, 먼저 트랜잭션 데이터(TX Data)가 처리하기에 적합한 데이터뿐인지를 판별한다(단계 S401).Referring to FIG. 4, this is a subroutine for the step in step S103 of FIG. 1 where the network participants verify the consistency of the block data and decide whether to synchronize the block data to their own blockchain. First, It is determined whether the transaction data (TX Data) is suitable for processing (step S401).
상기 판별에서 트랜잭션 데이터(TX Data)가 처리하기에 적합한 데이터뿐이면, 검증자의 서명 데이터의 서명값이 올바른지, 그리고 모두 검증자인지를 판별한다(단계 S402).In the above determination, if the transaction data (TX Data) is only data suitable for processing, it is determined whether the signature value of the verifier's signature data is correct and whether they are all verifiers (step S402).
상기 단계 S402의 판별에서 검증자의 서명 데이터의 서명값이 올바르며, 모두 검증자이면, 모든 검증자의 서명을 수집하였는지를 판별한다(단계 S403).In step S402, if the signature value of the verifier's signature data is correct and all verifiers are verifiers, it is determined whether the signatures of all verifiers have been collected (step S403).
상기 단계 S403의 판별에서 모든 검증자의 서명을 수집하지 않았으면, 같은 데이터를 공유하는 서명이 과반 이상인지(즉, 다수가 채택한 블록인지)를 판별한다(단계 S404).If the signatures of all verifiers have not been collected in the determination in step S403, it is determined whether more than half of the signatures share the same data (i.e., a block adopted by the majority) (step S404).
상기 단계 S404의 판별에서, 같은 데이터를 공유하는 서명이 과반 이상이 아니면, 데이터를 재동기화하여(단계 S405) 프로세스 진행을 상기 단계 S401로 회귀한다. 그리고 같은 데이터를 공유하는 서명이 과반 이상이면, 상기 네트워크 참여자 자신이 보유한 블록체인에 해당 블록 데이터를 동기화한다(단계 S406).In the determination in step S404, if more than half of the signatures share the same data, the data is resynchronized (step S405) and the process returns to step S401. And if more than half of the signatures share the same data, the corresponding block data is synchronized to the blockchain held by the network participant (step S406).
이때, 상기 단계 S406에서 블록 데이터를 동기화함에 있어서, 검증자들이 생성한 블록 데이터들 중 우선순위를 결정할 수 없는 경우에는 상기 네트워크 참여자들은 다른 참여자들이 가장 많이 보유한 블록 데이터를 우선으로 하여 메인 블록체인의 동기화를 수행할 수 있다.At this time, when synchronizing block data in step S406, if the priority cannot be determined among the block data generated by verifiers, the network participants prioritize the block data held by other participants in the main blockchain. Synchronization can be performed.
이때, 또한 블록 데이터들이 동률인 경우에는 랜덤으로 하나의 블록 데이터를 선택하여 메인 블록체인을 동기화할 수 있다.At this time, if the block data are tied, the main blockchain can be synchronized by randomly selecting one block data.
이때, 또한 상기 단계 S403의 판별에서 모든 검증자의 서명을 수집하였으면, 상기 네트워크 참여자 자신이 보유한 블록체인에 해당 블록 데이터를 동기화할 수 있다.At this time, if the signatures of all verifiers have been collected in the determination in step S403, the corresponding block data can be synchronized to the blockchain held by the network participant.
도 5는 본 발명에 따른 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법에 있어서, 보조 블록체인에서 블록 데이터를 생성하는 과정을 나타낸 도면이다.Figure 5 is a diagram showing the process of generating block data in an auxiliary blockchain in the method of increasing the block data generation speed through a double chain structure in the blockchain according to the present invention.
도 5를 참조하면, 이는 도 1의 단계 S104에서 상기 네트워크 참여자들이 이전 블록의 블록해시와 최종 메인 블록의 수신 데이터를 이용하여 보조 블록체인의 블록 데이터를 생성하는 과정을 나타낸 것으로서, 먼저 이전 블록의 블록해시 (510), 최종 메인 블록(520)의 수신 데이터(530), 블록에 기록될 트랜잭션이 가질 시간값(Timestamp)(540), 난스(Nonce) 등을 해시함수(Hash Function)에 적용하여 블록해시 값(Blockhash Value)을 구한다(단계 S506).Referring to FIG. 5, this shows the process in which the network participants generate block data of the auxiliary blockchain using the block hash of the previous block and the received data of the final main block in step S104 of FIG. 1. First, the previous block The block hash (510), the received data (530) of the final main block (520), the time value of the transaction to be recorded in the block (Timestamp) (540), the nonce, etc. are stored in the hash function. Apply it to obtain the block hash value (step S506).
그런 후, 상기 구해진 블록해시 값이 난이도 해시(difficulty hash)보다 작은 값을 가지는지를 판별한다(단계 S507).Then, it is determined whether the obtained block hash value has a value smaller than the difficulty hash (step S507).
상기 단계 S507의 판별에서 상기 블록해시 값이 난이도 해시(difficulty hash)보다 작은 값을 가지면, 블록 데이터를 확정한다(단계 S508).If the block hash value is smaller than the difficulty hash in the determination in step S507, the block data is confirmed (step S508).
그리고 상기 단계 S507의 판별에서 상기 블록해시 값이 난이도 해시 (difficulty hash)보다 작은 값을 가지지 않으면, 난스(nonce)를 변경한다(단계 S509).And if the block hash value does not have a value smaller than the difficulty hash in the determination in step S507, the nonce is changed (step S509).
한편, 도 8은 본 발명에 따른 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법에 있어서, 검증자들이 한 지역에서 모두 채택된 경우를 나타낸 도면이고, 도 9는 본 발명에 따른 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법에 있어서, 검증자들이 전 세계 9개 지역에 모두 분산되어 있는 경우를 나타낸 도면이다.Meanwhile, Figure 8 is a diagram showing a case where all validators are adopted in one region in the method of increasing the block data generation speed through a double chain structure in the blockchain according to the present invention, and Figure 9 is a diagram showing the case where all validators are adopted in the blockchain according to the present invention. This is a diagram showing a method of increasing block data generation speed through a dual chain structure, where validators are distributed across 9 regions around the world.
도 8 및 도 9를 참조하면, 은 본 발명에 따른 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법의 시뮬레이션 결과를 나타낸 것으로서, 예컨대, 미국 서부, 미국 동부, 캐나다, 브라질, 영국, 한국, 일본, 독일, 싱가폴 9개 지역에 각 100개씩 총 900개의 노드를 구축하고 해당 알고리즘으로 구현된 블록체인 엔진 "사슬"을 컴퓨터에 탑재하여 모의 실험을 실시했다. 도 8 및 도 9에서 용어 "check round"는 최초의 검증자가 다른 검증자의 위치를 확인하기까지 소요된 시간으로, 최초의 검증자로부터 다른 검증자까지의 물리적 거리에 비례한다. "check tracker"는 모든 검증자가 다른 검증자의 위치를 확인 완료하기까지 소요된 시간, "collectApiChunk"는 블록 데이터에 모든 검증자가 서명을 확정할 때까지 소요된 시간으로 블록 데이터가 확정된 시간, "collectBroadcastChunk"는 네트워크 참여자들이 블록 데이터를 브로드캐스트받을 때까지 소요된 시간으로 실제로 서비스 이용자가 블록 데이터를 인식하기까지 소요되는 시간을 각각 나타낸다.Referring to Figures 8 and 9, shows the simulation results of a method for increasing the block data generation speed through a double chain structure in the blockchain according to the present invention, for example, western United States, eastern United States, Canada, Brazil, United Kingdom, and Korea. , a simulation experiment was conducted by building a total of 900 nodes, 100 each in 9 regions of Japan, Germany, and Singapore, and loading the blockchain engine "Chain" implemented with the corresponding algorithm on a computer. In FIGS. 8 and 9, the term “check round” refers to the time taken for the first verifier to check the location of another verifier, and is proportional to the physical distance from the first verifier to the other verifier. "check tracker" is the time taken for all verifiers to complete checking the locations of other validators, "collectApiChunk" is the time taken for all verifiers to confirm signatures on block data, and is the time block data was confirmed, "collectBroadcastChunk" " refers to the time it takes for network participants to receive block data broadcast, and represents the time it takes for service users to actually recognize the block data.
도 8은 검증자들이 한 지역에서 모두 채택되어 있는 경우(Best Case)로서, 도 8의 화면에서 볼 수 있는 바와 같이, 최초 검증자의 검증자 확인 소요시간: 0.016초, 모든 검증자의 검증자 확인 소요시간: 0.03초, 이번 검증에서 메인 블록체인에 등록될 블록에 포함된 트랜잭션의 수: 707, 블록 확정 시간: 0.241초, 블록 확정 인식 시간: 0.269초, 초당 최대 트랜잭션 처리 가능 수: 2628임을 알 수 있다.Figure 8 is a case where all verifiers are adopted in one region (Best Case). As can be seen in the screen of Figure 8, time required for verifier confirmation of the first verifier: 0.016 seconds, verifier confirmation required for all verifiers. Time: 0.03 seconds, this verification shows that the number of transactions included in the block to be registered in the main blockchain: 707, block confirmation time: 0.241 seconds, block confirmation recognition time: 0.269 seconds, maximum number of transactions per second that can be processed: 2628. there is.
도 9는 검증자들이 전 세계 9개 지역에 모두 분산되어 있는 경우(Worst Case)로서, 도 9의 화면에서 볼 수 있는 바와 같이, 최초 검증자의 검증자 확인 소요시간: 0.408초, 모든 검증자의 검증자 확인 소요시간: 0.82초, 이번 검증에서 메인 블록체인에 등록될 블록에 포함된 트랜잭션의 수: 7182, 블록 확정 시간: 6.115초, 블록 확정 인식 시간: 6.932초, 초당 최대 트랜잭션 처리 가능 수: 1036임을 알 수 있다.Figure 9 shows the worst case where the verifiers are distributed in all 9 regions around the world. As can be seen in the screen of Figure 9, the time required for verification of the first verifier: 0.408 seconds, verification of all verifiers. Verification time: 0.82 seconds, number of transactions included in the block to be registered in the main blockchain in this verification: 7182, block confirmation time: 6.115 seconds, block confirmation recognition time: 6.932 seconds, maximum number of transactions per second possible: 1036 You can see that it is.
비트코인은 하나의 트랜잭션이 확정되기까지 최소 1시간의 시간이 소요되며, 평균적으로 2시간에서 6시간 정도의 시간이 소요되고 최대 1초에 3개 정도의 트랜잭션을 처리할 수 있다. 이더리움은 하나의 트랜잭션이 확정되기까지는 최소 1분 30초의 시간이 소요되며, 평균적으로 2분에서 5분 정도의 시간이 소요되고 최대 1초에 20개 정도의 트랜잭션을 처리할 수 있다. Bitcoin takes at least 1 hour for one transaction to be confirmed, on average it takes 2 to 6 hours, and a maximum of 3 transactions can be processed per second. Ethereum takes at least 1 minute and 30 seconds for one transaction to be confirmed, on average it takes 2 to 5 minutes, and can process up to 20 transactions per second.
그러나 본 발명에 따른 방법을 적용한 블록체인 기술은 위의 시뮬레이션 결과를 통해서도 알 수 있는 바와 같이, 하나의 트랜잭션이 확정되기까지 최소 1초의 시간이 소요되며, 평균적으로 2초에서 6초 정도의 시간이 소요되고 최대 1초에 2000개의 트랜잭션을 처리할 수 있는 장점이 있다.However, as can be seen from the simulation results above, the blockchain technology using the method according to the present invention takes at least 1 second for one transaction to be confirmed, and on average, it takes about 2 to 6 seconds. It has the advantage of being able to process up to 2000 transactions per second.
이상의 설명과 같이, 본 발명에 따른 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법은 검증자에 의한 블록 생성 알고리즘을 사용하는 메인 블록체인과 컴퓨팅 파워를 소모하여 블록을 생성하는 PoW 알고리즘을 사용하는 보조 블록체인을 유기적으로 연결한 이중 체인 구조를 사용함으로써, 종래 기술의 문제점으로 지적되었던 블록체인 기술의 트릴레마를 해결하고 탈중앙화와 보안성을 충분히 확보하여 유지하는 상태로 트랜잭션을 빠르게 처리하여 속도와 확장성을 증진할 수 있는 장점이 있다.As described above, the method of increasing the speed of block data generation through a double chain structure in the blockchain according to the present invention uses a main blockchain that uses a block creation algorithm by a verifier and a PoW algorithm that generates blocks by consuming computing power. By using a dual chain structure that organically connects the auxiliary blockchains used, the trilemma of blockchain technology, which was pointed out as a problem with conventional technology, is solved and transactions are processed quickly while sufficiently securing and maintaining decentralization and security. This has the advantage of improving speed and scalability.
이상, 바람직한 실시예를 통하여 본 발명에 관하여 상세히 설명하였으나, 본 발명은 이에 한정되는 것은 아니며, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 다양하게 변경, 응용될 수 있음은 당해 기술분야의 통상의 기술자에게 자명하다. 따라서, 본 발명의 진정한 보호 범위는 다음의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술적 사상은 본 발명의 권리 범위에 포함되는 것으로 해석되어야 할 것이다.Above, the present invention has been described in detail through preferred embodiments, but the present invention is not limited thereto, and various changes and applications can be made without departing from the technical spirit of the present invention. Self-explanatory to technicians. Therefore, the true scope of protection of the present invention should be interpreted in accordance with the following claims, and all technical ideas within the equivalent scope should be interpreted as being included in the scope of rights of the present invention.

Claims (10)

  1. a) 메인 블록체인에서 검증자(validator)가 네트워크 이용자들이 전파하는 트랜잭션 데이터를 수집하여 해시(hash)화하는 단계;a) In the main blockchain, a validator collects transaction data propagated by network users and hashes it;
    b) 상기 검증자가 해시화된 트랜잭션 데이터에 검증자의 서명을 부가하여 메인 블록체인의 블록 데이터를 생성하는 단계;b) the verifier adding the verifier's signature to the hashed transaction data to generate block data of the main blockchain;
    c) 네트워크 참여자들이 상기 블록 데이터의 정합성을 검증하고, 자신이 보유한 블록체인에 해당 블록 데이터를 동기화할지 여부를 결정하는 단계;c) network participants verifying the consistency of the block data and deciding whether to synchronize the block data to their own blockchain;
    d) 보조 블록체인에서 상기 네트워크 참여자들이 이전 블록의 블록해시와 최종 메인 블록의 수신 데이터를 이용하여 보조 블록체인의 블록 데이터를 생성하는 단계; 및d) in the auxiliary blockchain, the network participants generate block data of the auxiliary blockchain using the block hash of the previous block and the received data of the final main block; and
    e) 상기 네트워크 참여자들이 트랜잭션이 확정된 블록을 생성한 임의의 네트워크 참여자를 검증자로 채택하는 단계를 포함하는 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법.e) A method of increasing the speed of block data generation through a dual chain structure in a blockchain, including the step of the network participants adopting a random network participant who created a block in which a transaction is confirmed as a verifier.
  2. 제1항에 있어서,According to paragraph 1,
    상기 단계 a)에서 상기 검증자가 상기 트랜잭션 데이터를 수집하여 해시(hash)화함에 있어서, 이전 블록의 블록해시(blockhash), 트랜잭션 데이터들 (TX datas), 블록에 기록될 트랜잭션이 가질 시간값의 상한선(Standard Timestamp) 및 합의 과정에서 발견된 검증자(Validator)의 서명 데이터를 해시함수에 적용하여 현재 블록의 블록해시를 생성함에 의해 해시화하는 것을 특징으로 하는 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법.In step a), when the verifier collects and hashes the transaction data, the block hash of the previous block, transaction data (TX data), and the time value of the transaction to be recorded in the block are used. In a blockchain characterized by hashing by applying the upper limit (Standard Timestamp) and the validator's signature data discovered during the consensus process to a hash function to generate a block hash of the current block, through a double chain structure. How to increase block data creation speed.
  3. 제1항에 있어서,According to paragraph 1,
    상기 단계 c)에서 상기 네트워크 참여자들이 상기 블록 데이터의 정합성을 검증함에 있어서, 상기 검증자의 공개키를 통해 상기 블록 데이터의 정합성을 검증하는 것을 특징으로 하는 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법.In step c), when the network participants verify the consistency of the block data, the consistency of the block data is verified through the public key of the verifier. Block data generation speed through a double chain structure in a blockchain. How to promote.
  4. 제1항에 있어서,According to paragraph 1,
    상기 단계 c)에서 상기 네트워크 참여자들이 상기 블록 데이터의 정합성을 검증하고, 자신이 보유한 블록체인에 해당 블록 데이터를 동기화할지 여부를 결정하는 단계는,In step c), the network participants verify the consistency of the block data and decide whether to synchronize the block data to their own blockchain,
    c-1) 트랜잭션 데이터(TX Data)가 처리하기에 적합한 데이터뿐인지를 판별하는 단계;c-1) Determining whether the transaction data (TX Data) is suitable for processing;
    c-2) 상기 판별에서 트랜잭션 데이터(TX Data)가 처리하기에 적합한 데이터뿐이면, 검증자의 서명 데이터의 서명값이 올바르며, 모두 검증자인지를 판별하는 단계;c-2) If the transaction data (TX Data) is only data suitable for processing in the above determination, determining whether the signature value of the verifier's signature data is correct and whether all verifiers are verifiers;
    c-3) 상기 단계 c-2)의 판별에서 검증자의 서명 데이터의 서명값이 올바르며, 모두 검증자이면, 모든 검증자의 서명을 수집하였는지를 판별하는 단계;c-3) If the signature value of the verifier's signature data is correct in the determination of step c-2) and all verifiers are verifiers, determining whether the signatures of all verifiers have been collected;
    c-4) 상기 단계 c-3)의 판별에서 모든 검증자의 서명을 수집하지 않았으면, 같은 데이터를 공유하는 서명이 과반 이상인지를 판별하는 단계; 및c-4) If the signatures of all verifiers were not collected in the determination of step c-3), determining whether more than half of the signatures share the same data; and
    c-5) 상기 단계 c-4)의 판별에서, 같은 데이터를 공유하는 서명이 과반 이상이 아니면, 데이터를 재동기화하여 프로세스 진행을 상기 단계 c-1)로 회귀하고, 과반 이상이면 상기 네트워크 참여자 자신이 보유한 블록체인에 해당 블록 데이터를 동기화하는 단계를 포함하여 구성되는 것을 특징으로 하는 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법.c-5) In the determination of step c-4), if the signatures sharing the same data are not more than the majority, the data is resynchronized and the process returns to step c-1), and if the signatures sharing the same data are more than the majority, the network participants A method of increasing the speed of block data creation through a dual chain structure in a blockchain, which includes the step of synchronizing the corresponding block data to the blockchain owned by the user.
  5. 제4항에 있어서,According to paragraph 4,
    상기 단계 c-5)에서 블록 데이터를 동기화함에 있어서, 검증자들이 생성한 블록 데이터들 중 우선순위를 결정할 수 없는 경우에는 상기 네트워크 참여자들은 다른 참여자들이 가장 많이 보유한 블록 데이터를 우선으로 하여 메인 블록체인의 동기화를 수행하는 것을 특징으로 하는 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법.When synchronizing block data in step c-5), if the priority cannot be determined among the block data generated by verifiers, the network participants prioritize the block data held by other participants in the main blockchain. A method of increasing the speed of block data creation through a dual chain structure in a blockchain, characterized by performing synchronization.
  6. 제5항에 있어서,According to clause 5,
    상기 블록 데이터들이 동률인 경우에는 랜덤으로 하나의 블록 데이터를 선택하여 메인 블록체인을 동기화하는 것을 특징으로 하는 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법.If the block data are tied, a method of increasing the speed of block data generation through a double chain structure in a blockchain, characterized in that one block data is randomly selected and the main blockchain is synchronized.
  7. 제4항에 있어서,According to paragraph 4,
    상기 단계 c-3)의 판별에서 모든 검증자의 서명을 수집하였으면, 상기 네트워크 참여자 자신이 보유한 블록체인에 해당 블록 데이터를 동기화하는 것을 특징으로 하는 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법.If the signatures of all verifiers have been collected in the determination in step c-3), the block data is synchronized to the blockchain held by the network participant. A method of increasing the speed of block data generation through a double chain structure in a blockchain. .
  8. 제1항에 있어서,According to paragraph 1,
    상기 단계 d)에서 상기 네트워크 참여자들이 이전 블록의 블록해시와 최종 메인 블록의 수신 데이터를 이용하여 보조 블록체인의 블록 데이터를 생성하는 단계는,In step d), the network participants generate block data of the auxiliary blockchain using the block hash of the previous block and the received data of the final main block,
    d-1) 이전 블록의 블록해시, 최종 메인 블록의 수신 데이터, 블록에 기록될 트랜잭션이 가질 시간값(Timestamp) 등을 해시함수에 적용하여 블록해시 값을 구하는 단계;d-1) Obtaining the block hash value by applying the block hash of the previous block, the received data of the final main block, and the time value (Timestamp) of the transaction to be recorded in the block to the hash function;
    d-2) 상기 구해진 블록해시 값이 난이도 해시(difficulty hash)보다 작은 값을 가지는지를 판별하는 단계;d-2) determining whether the obtained block hash value has a value smaller than the difficulty hash;
    d-3) 상기 판별에서 상기 블록해시 값이 난이도 해시(difficulty hash)보다 작은 값을 가지면, 블록 데이터를 확정하는 단계; 및d-3) If the block hash value is smaller than the difficulty hash in the determination, confirming the block data; and
    d-4) 상기 판별에서 상기 블록해시 값이 난이도 해시(difficulty hash)보다 작은 값을 가지지 않으면, 난스(nonce)를 변경하는 단계를 포함하는 것을 특징으로 하는 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법.d-4) If the block hash value does not have a value smaller than the difficulty hash in the determination, changing the nonce is a block through a double chain structure in the blockchain. How to increase data generation speed.
  9. 제1항에 있어서,According to paragraph 1,
    상기 단계 e)에서 상기 네트워크 참여자들이 트랜잭션이 확정된 블록을 생성한 네트워크 참여자를 검증자로 채택함에 있어서, 상기 네트워크 참여자들이 보조 블록체인에서 최종 블록의 확인 시점으로부터 복수 개 이전 블록까지를 트랜잭션이 확정된 블록으로 설정한 후, 트랜잭션이 확정된 블록을 생성한 임의의 네트워크 참여자를 검증자로 채택하는 것을 특징으로 하는 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법.In step e), when the network participants adopt the network participant who created the block in which the transaction was confirmed as a verifier, the network participants have confirmed the transaction in the auxiliary blockchain from the time of confirmation of the final block to a plurality of previous blocks. A method of increasing the speed of block data generation through a dual chain structure in a blockchain, characterized by adopting a random network participant who created a block with a confirmed transaction as a verifier after setting it as a block.
  10. 제1항에 있어서,According to paragraph 1,
    상기 단계 d)에서 보조 블록체인에서 상기 네트워크 참여자들이 이전 블록의 블록해시와 최종 메인 블록의 수신 데이터를 이용하여 생성하는 상기 보조 블록체인의 블록 데이터는 블록의 번호(Height), 블록에 기록될 트랜잭션이 가질 시간값(Timestamp), 이전 블록의 블록해시(Previous Blockhash), 현재 블록의 블록해시(Blockhash), 난스(Nonce), 난이도(Difficult), 메인 블록의 번호(Main Block Height), 메인 블록의 블록해시(Main Block Blockhash), 검증자(Validator), 채굴자(Miner), 수신 데이터의 꾸러미(Receipt Datas)를 포함하는 것을 특징으로 하는 블록체인에서 이중 체인 구조를 통한 블록 데이터 생성속도 증진 방법.In step d), the block data of the auxiliary blockchain generated by the network participants in the auxiliary blockchain using the block hash of the previous block and the received data of the final main block includes the block number (Height) and the block data to be recorded in the block. Time value of the transaction (Timestamp), previous block's blockhash, current block's blockhash, nonce, difficulty, main block number (Main Block Height, Block data generation through a double chain structure in a blockchain characterized by including the main block blockhash, validator, miner, and receipt data. How to increase speed.
PCT/KR2023/005045 2022-04-15 2023-04-13 Method for increasing block data generation speed through double chain structure in blockchain WO2023200279A1 (en)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
KR20220046875 2022-04-15
KR10-2022-0046875 2022-04-15
KR20230044741 2023-04-05
KR10-2023-0044741 2023-04-05
KR1020230047794A KR20230148110A (en) 2022-04-15 2023-04-11 Method for accelerating block data generation speed through double chain structure in blockchain
KR10-2023-0047794 2023-04-11

Publications (1)

Publication Number Publication Date
WO2023200279A1 true WO2023200279A1 (en) 2023-10-19

Family

ID=88330033

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2023/005045 WO2023200279A1 (en) 2022-04-15 2023-04-13 Method for increasing block data generation speed through double chain structure in blockchain

Country Status (1)

Country Link
WO (1) WO2023200279A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101701131B1 (en) * 2016-04-28 2017-02-13 주식회사 라피 Data recording and validation methods and systems using the connecting of blockchain between different type
KR20190093011A (en) * 2018-01-31 2019-08-08 지송학 The block-chain system with enhanced security and the method of generating a data block using a double block-chain structure
KR20200063034A (en) * 2019-08-09 2020-06-04 안종현 IoT CERTIFICATION SYSTEM BASED ON BLOCK CHAIN
WO2020244197A1 (en) * 2019-06-06 2020-12-10 西安安盟智能科技股份有限公司 Distributed consensus algorithm and apparatus for rapidly generating block

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101701131B1 (en) * 2016-04-28 2017-02-13 주식회사 라피 Data recording and validation methods and systems using the connecting of blockchain between different type
KR20190093011A (en) * 2018-01-31 2019-08-08 지송학 The block-chain system with enhanced security and the method of generating a data block using a double block-chain structure
WO2020244197A1 (en) * 2019-06-06 2020-12-10 西安安盟智能科技股份有限公司 Distributed consensus algorithm and apparatus for rapidly generating block
KR20200063034A (en) * 2019-08-09 2020-06-04 안종현 IoT CERTIFICATION SYSTEM BASED ON BLOCK CHAIN

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ABADIN, ZAIN UI ET AL.: "A Pattern for Proof of Work Consensus Algorithm in Blockchain", EUROPLOP'21: 26TH EUROPEAN CONFERENCE ON PATTERN LANGUAGES OF PROGRAMS, July 2021 (2021-07-01), XP058870201 *

Similar Documents

Publication Publication Date Title
CN106878000B (en) Alliance chain consensus method and system
CN108717630B (en) Block output method and implementation system thereof
CN109493050B (en) Transfer method based on block chain main chain and parallel multiple sub-chains
WO2017192007A2 (en) Block chain for supporting plurality of one-way functions for verification of blocks
WO2018080207A1 (en) Method for issuing currency and making payment by managing balance database for each block in blockchain and server using same
Li et al. PoV: An efficient voting-based consensus algorithm for consortium blockchains
Li et al. Agentchain: A decentralized cross-chain exchange system
WO2020138532A1 (en) Dynamic blind voting-based blockchain consensus method for internet of things environment
WO2019045209A1 (en) Block window module having agreement algorithm for limiting mining, management server, and virtual money trading system and method
CN109493052B (en) Cross-chain contract system based on main chain and parallel multiple sub-chains
CN112118239B (en) Block chain consensus method and device, electronic equipment and storage medium
WO2018080206A1 (en) Method for issuing currency and making payment using merkle tree structure in utxo-based protocol and server using same
CN109447602B (en) Multi-center collaborative distributed digital currency mixing method for protecting privacy
WO2019184155A1 (en) Blockchain node authority control method, blockchain system and storage medium
CN112287034B (en) Data synchronization method, equipment and computer readable storage medium
CN111556049B (en) Block chain privacy protection method based on group isolation of consensus nodes
CN112398956B (en) Data processing method, device and equipment based on block chain and readable storage medium
CN113067707B (en) Data processing method, device and equipment based on block chain and readable storage medium
WO2020213763A1 (en) Method and system for verifying block-chain data stored in storage having different format from block-chain
WO2020158973A1 (en) Hypothesis acceptance protocol-2 mode blockchain consensus system and method
WO2023200279A1 (en) Method for increasing block data generation speed through double chain structure in blockchain
CN116827957B (en) Information processing method, device, equipment and medium based on multi-block chain
WO2018080205A1 (en) Method for issuing currency and making payment using utxo-based protocol and sever using same
CN110535629B (en) Block-out consensus method under asynchronous network condition
CN113377869B (en) Block chain sharing information balanced storage method

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23788628

Country of ref document: EP

Kind code of ref document: A1