KR20230004295A - Method of data split storage method through the participation of storage nodes - Google Patents

Method of data split storage method through the participation of storage nodes Download PDF

Info

Publication number
KR20230004295A
KR20230004295A KR1020220077995A KR20220077995A KR20230004295A KR 20230004295 A KR20230004295 A KR 20230004295A KR 1020220077995 A KR1020220077995 A KR 1020220077995A KR 20220077995 A KR20220077995 A KR 20220077995A KR 20230004295 A KR20230004295 A KR 20230004295A
Authority
KR
South Korea
Prior art keywords
data
block
generation
blocks
participation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
KR1020220077995A
Other languages
Korean (ko)
Other versions
KR102574064B1 (en
Inventor
이정우
Original Assignee
주식회사 아티프렌즈
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 아티프렌즈 filed Critical 주식회사 아티프렌즈
Priority to PCT/KR2022/009272 priority Critical patent/WO2023277552A1/en
Priority to US18/575,066 priority patent/US20260113207A1/en
Publication of KR20230004295A publication Critical patent/KR20230004295A/en
Application granted granted Critical
Publication of KR102574064B1 publication Critical patent/KR102574064B1/en
Assigned to 분당세무서장 reassignment 분당세무서장 압류(행정)등록 Assignors: 주식회사 아티프렌즈
Assigned to 주식회사 아티프렌즈 reassignment 주식회사 아티프렌즈 압류의 말소(행정)등록 Assignors: 분당세무서장
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic 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 using cryptographic hash functions
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/275Synchronous replication
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/178Techniques for file synchronisation in file systems
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/101Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities
    • G06F21/1014Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities to tokens
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/466Transaction processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1087Peer-to-peer [P2P] networks using cross-functional networking aspects
    • H04L67/1093Some peer nodes performing special functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Power Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Data Mining & Analysis (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Storage Device Security (AREA)

Abstract

The present invention relates to a method of dividing and storing data through participation of a storage node. The method of dividing and storing data through participation of a storage node according to the present invention comprises: a step a) of forming, when the number of blocks in a blockchain reaches a preset certain number, generation blocks, which are block aggregates, by grouping a certain number of blocks into one group; a step b) of separating data of each block of generation blocks into transaction data and status data; a step c) of storing status data of the last block of a first generation block in a second generation block among the generation blocks; a step d) of storing status data of the last block of the second generation block in a third generation block among the generation blocks; and a step e) of repeating a process of storing status data of the last block of a previous generation block in a subsequent generation block on the same principle as the step c) and the step d) until an N^th generation block. According to the present invention, serial expansion of a blockchain network can be guaranteed.

Description

스토리지 노드의 참여를 통한 데이터 분할 보관 방법{Method of data split storage method through the participation of storage nodes}Method of data split storage method through the participation of storage nodes}

본 발명은 데이터 분할 보관 방법에 관한 것으로서, 더 상세하게는 블록 데이터를 제너레이션 블록 데이터로 분할하고, 각 제너레이션 블록 데이터의 연결점을 제공하는 스토리지 노드(arbiter)를 구축함으로써, 블록체인 네트워크의 직렬 확장을 보장할 수 있는 스토리지 노드의 참여를 통한 데이터 분할 보관 방법에 관한 것이다.The present invention relates to a method for partitioning and storing data, and more particularly, by dividing block data into generation block data and constructing a storage node (arbiter) that provides a connection point for each generation block data, serial expansion of a blockchain network is achieved. It relates to a data partition storage method through the participation of storage nodes that can be guaranteed.

블록체인(blockchain)의 사용량 증가에 따라서 발생하는 블록체인 팽창은 양면성을 띠고 있다. 블록체인 팽창 문제를 겪고 있다는 것은 특정 블록체인의 트랜잭션(transaction) 수가 급격히 증가하고 있다는 것을 의미하기 때문에 좋은 현상으로 볼 수 있다. 더 많은 트랜잭션이 발생한다는 것은 결국 해당 블록체인을 사용하는 사용자의 수가 증가한다는 것을 의미하기 때문이다. 이는 다른 블록체인 기술에 비해 비트코인(Bitcoin)과 이더리움(Ethereum)의 블록체인 크기가 빠르게 증가하게 된 이유로 설명할 수 있다.The expansion of the blockchain that occurs as the usage of the blockchain increases is ambivalent. Having a blockchain bloat is a good thing because it means that the number of transactions on a particular blockchain is rapidly increasing. Because more transactions occur means that the number of users using the blockchain will increase. This can be explained by the rapid increase in the size of the blockchains of Bitcoin and Ethereum compared to other blockchain technologies.

종래 블록체인 기술인 비트코인과 이더리움의 각각의 누적 데이터의 증가에 따른 저장 공간 부족 문제를 해결하기 위한 방안들 및 그와 관련된 해결되지 않은 문제점들에 대해 살펴보기로 한다.Let's take a look at methods for solving the problem of insufficient storage space due to the increase in accumulated data of Bitcoin and Ethereum, which are conventional block chain technologies, and unresolved problems related thereto.

블록체인에 한번 기록된 데이터는 임의로 변경이 불가능하고 누적되기 때문에 블록에 저장되는 데이터의 양이 지속적으로 증가할 수밖에 없다. 실제로 비트코인의 경우 블록체인 거래장부 데이터 용량만 187GB(2018.10월 기준)에 육박한 상태이고 점점 증가할 것으로 예상된다. 이런 문제를 해결하기 위해 보안이 중요한 데이터는 블록체인에 저장하고, 그 외의 위·변조가 크게 중요하지 않거나 블록체인에 저장할 때 삭제가 불가능하여 향후 문제가 될 수 있는 개인정보 등의 민감한 데이터는 블록체인의 외부에 저장하는 방식으로 이원화하여 저장함으로써, 블록체인의 저장 문제를 해결할 수 있다고 전망하기도 하지만, 아직까지 해당 방식이 적용된 상태는 아니다.Since data once recorded on the blockchain cannot be arbitrarily changed and accumulates, the amount of data stored in the block is bound to increase continuously. In fact, in the case of Bitcoin, only the block chain transaction ledger data capacity is approaching 187GB (as of October 2018), and it is expected to increase gradually. In order to solve this problem, data where security is important is stored in the blockchain, and other sensitive data such as personal information that is not very important to forgery or falsification or cannot be deleted when stored in the blockchain and can become a problem in the future is blocked. It is predicted that the storage problem of the block chain can be solved by storing it in a dual way by storing it outside the chain, but the method has not yet been applied.

이더리움의 경우 기본 저장 공간에 대해 약 7TB에 육박하는 스토리지 요구사항(아카이브 노드 기준)이 있어서 진입장벽이 높은 편이다. 이 스토리지는 처리 속도 문제로 인해 반드시 SSD(Solid State Drive)가 필요하므로, 하드웨어의 비용 측면에서 하드웨어의 양적 증가에 어려움을 동반한다. 이러한 저장공간 문제를 해결하기 위해 이더리움에서는 파편화(sharding)라는 방법을 도입하려 하는데, 이에 대해 간략히 설명해 보기로 한다.In the case of Ethereum, the entry barrier is high because it has storage requirements (based on archive nodes) of about 7TB for basic storage space. Since this storage necessarily requires a solid state drive (SSD) due to processing speed, it is difficult to increase the amount of hardware in terms of hardware cost. To solve this storage space problem, Ethereum is trying to introduce a method called sharding, which will be briefly explained.

파편화(sharding)는 말 그대로 L1 블록체인을 여러 개의 체인, 혹은 파편 (shard)으로 쪼개는 것을 의미한다. 다시 말해서, 이더리움 체인을 여러 개의 하위 체인(shard)들로 분할한 뒤, 노드들을 그룹 별로 나누어 파편(shard)당 한 그룹씩 배치시키는 것이다. 이때, 노드들은 소속되어 있는 파편(shard)의 트랜젝션만 검증하고 저장하면 되므로, 결과적으로 네트워크 부담을 줄이고 효율성은 증가하는 효과가 생긴다. 하지만 파편화(sharding) 블록체인의 처리 용량이 10배 증가할 겨우, 필요한 최소 노드 수 또한 10배 증가하는 문제가 발생할 수 있기 때문에, 이 방식의 적용 또한 진행 중에 있다. 여기서, 이상과 같은 이더리움의 저장 공간 확장을 위한 샤딩(sharding) 기법과 관련하여 조금 더 설명을 부가해 보기로 한다.Sharding literally means splitting the L1 blockchain into multiple chains or shards. In other words, after splitting the Ethereum chain into several sub-chains (shards), nodes are divided into groups and placed one group per shard. At this time, nodes only need to verify and store the transactions of the shards they belong to, resulting in reduced network burden and increased efficiency. However, if the processing capacity of the sharding blockchain increases 10 times, the minimum number of nodes required may also increase 10 times, so the application of this method is also in progress. Here, we will add a little more explanation regarding the sharding technique for expanding the storage space of Ethereum as described above.

도 1은 이더리움의 저장 공간 확장을 위한 샤딩(sharding) 기법을 도식적으로 나타낸 도면이다.1 is a diagram schematically illustrating a sharding technique for expanding the storage space of Ethereum.

도 1을 참조하면, 비콘 체인(Beacon Chain)(110)은 이더리움 2.0의 핵심으로 채굴자(miner) 없이도 검증자(validator)들이 지분 시스템(staking system)을 활용하여 블록 체인을 구축해 나가는 형태의 블록 체인이다.Referring to Figure 1, the Beacon Chain (110) is the core of Ethereum 2.0, and validators build a block chain by utilizing a staking system without a miner. It is a block chain.

샤드 체인(Shard Chains)(120)은 어떠한 연산도 처리하지 않으며, 오직 임의의 데이터만 저장하는 기능만 수행한다. B1∼B5는 임의의 데이터가 각 블록 용량대로 저장된 블록을 의미한다.Shard Chains 120 do not process any calculations, and perform only the function of storing arbitrary data. B1 to B5 refer to blocks in which arbitrary data is stored according to each block capacity.

"Shard 64"(130)는 이더리움 2.0에 도입될 샤드(shard) 체인의 수를 의미하며, 도입 당시에는 1024개로 예정되었으나, 구조를 단순화하여 Phase1에서는 64개로 개수가 조정되었다."Shard 64" (130) refers to the number of shard chains to be introduced in Ethereum 2.0, and was scheduled to be 1024 at the time of introduction, but the number was adjusted to 64 in Phase 1 by simplifying the structure.

한편, 한국 공개특허공보 제10-2021-0126453호(특허문헌 1)에는 "대용량 데이터 저장을 위한 블록체인 기반 분산 데이터 저장 장치 및 방법"이 개시되어 있는 바, 이에 따른 대용량 데이터 저장을 위한 블록체인 기반 분산 데이터 저장 방법은, 로컬 스토리지가 마련된 2 이상의 노드 스토리지를 포함하는 분산 모듈로 데이터를 입력 저장하거나 데이터가 저장된 노드 스토리지로부터 데이터를 읽어 출력하는 데이터 입출력 모듈을 통해 데이터를 입출력하는 단계; 상기 분산 모듈 내의 노드 스토리지로 데이터가 입력되거나 출력될 때 암복호화 모듈을 통해 해당 데이터를 암호화하거나 복호화하는 암복호화 단계; 상기 데이터 입출력 모듈을 통해 입출력되는 데이터를 기초로 데이터 분석 및 관리모듈을 통해 분산 모듈 내의 노드 스토리지의 현황을 분석하고 이를 이용하여 분산 모듈 내의 데이터 저장을 효율적으로 관리하는 데이터 분석 및 관리단계;를 포함하되, 상기 데이터를 입출력하는 단계에서, 데이터가 입출력 될 때마다 입출력 되는 데이터 중 상기 데이터가 분산 모듈 내의 노드 스토리지에 저장된 위치와 상기 암복호화 모듈에서 암/복호화에 필요한 데이터와 데이터 입출력의 권한을 판단할 데이터를 포함하는 블록데이터를 분산 모듈 내의 모든 노드 스토리지에 저장/갱신하는 단계를 더 포함하는 것을 특징으로 한다.On the other hand, Korean Patent Publication No. 10-2021-0126453 (Patent Document 1) discloses "a block chain-based distributed data storage device and method for storing large amounts of data", which is a block chain for storing large amounts of data. The based distributed data storage method includes inputting and storing data into a distributed module including two or more node storages provided with local storage, or inputting/outputting data through a data input/output module that reads and outputs data from the node storage in which data is stored; an encryption/decryption step of encrypting or decrypting corresponding data through an encryption/decryption module when data is input or output to the node storage in the distribution module; A data analysis and management step of analyzing the current status of node storage in the distribution module through a data analysis and management module based on the data input and output through the data input/output module and efficiently managing data storage in the distribution module by using this; However, in the step of inputting/outputting the data, the location where the data is stored in the node storage in the distribution module among the input/output data whenever data is input/output and the data required for encryption/decryption in the encryption/decryption module and data input/output authority are determined It is characterized in that it further comprises the step of storing / updating block data including data to be done in all node storages in the distribution module.

이상과 같은 특허문헌 1의 경우, 데이터가 저장되는 노드의 현황을 실시간으로 반영하고 노드의 저장 패턴을 인공지능을 통해 학습하여 복제 데이터가 저장되는 노드의 개수를 조절함으로써 데이터 저장의 효율을 극대화할 수 있는 장점이 있기는 하나, 데이터가 저장되는 노드의 현황을 수집 및 분석하고, 데이터 저장의 패턴을 인공지능을 통해 학습함에 따라 데이터의 처리 시간이 길어질 수밖에 없고, 시스템의 운용 메커니즘이 복잡한 문제점을 내포하고 있다.In the case of Patent Document 1 as described above, the efficiency of data storage can be maximized by reflecting the status of nodes where data is stored in real time and learning the storage patterns of nodes through artificial intelligence to adjust the number of nodes where replicated data is stored. However, as data is collected and analyzed, and patterns of data storage are learned through artificial intelligence, data processing time is inevitably lengthened, and the operating mechanism of the system is complicated. contains

한국 공개특허공보 제10-2021-0126453호(2021.10.20.)Korean Patent Publication No. 10-2021-0126453 (2021.10.20.)

본 발명은 상기와 같은 사항을 종합적으로 감안하여 창출된 것으로서, 블록체인의 각 블록의 데이터를 스테이터스(status) 데이터와 트랜잭션(transaction) 데이터를 분리하고, 블록 데이터를 제너레이션(generation) 블록 데이터로 분할하며, 각 제너레이션 블록 데이터의 연결점을 제공하는 스토리지 노드 역할을 하는 아비터(arbiter)를 구축함으로써, 블록체인 네트워크의 직렬 확장을 보장할 수 있는 스토리지 노드의 참여를 통한 데이터 분할 보관 방법을 제공함에 그 목적이 있다.The present invention was created in consideration of the above matters comprehensively, and separates the data of each block of the blockchain into status data and transaction data, and divides the block data into generation block data. By building an arbiter that serves as a storage node that provides a connection point for each generation block data, it provides a method for partitioning and storing data through the participation of storage nodes that can ensure serial expansion of the blockchain network. there is

상기의 목적을 달성하기 위하여 본 발명의 일 실시예에 따른 스토리지 노드의 참여를 통한 데이터 분할 보관 방법은,In order to achieve the above object, a data partition storage method through participation of a storage node according to an embodiment of the present invention,

각 단계가 컴퓨터 시스템에 의해 수행되는 것으로, 블록체인에서 스토리지 노드의 참여를 통해 데이터를 분할 보관하는 방법으로서,Each step is performed by a computer system, and as a method of dividing and storing data through the participation of storage nodes in a blockchain,

a) 블록체인에서 블록의 개수가 미리 설정한 일정 개수에 도달하면, 그 일정 개수의 블록을 하나의 그룹으로 각각 묶어 블록 집합체인 제너레이션(Generation) 블록들을 형성하는 단계;a) when the number of blocks in the blockchain reaches a predetermined number, forming generation blocks, which are block aggregates, by grouping the blocks of the predetermined number into one group;

b) 상기 제너레이션 블록들의 각 블록의 데이터를 트랜잭션(Transaction) 데이터와 스테이터스(Status) 데이터로 분리하는 단계;b) separating the data of each block of the generation blocks into transaction data and status data;

c) 상기 제너레이션 블록들에서 제2 제너레이션(Generation 2) 블록에 제1 제너레이션(Generation 1) 블록의 마지막 블록이 가지는 스테이터스(Status) 데이터를 보관하는 단계;c) storing status data of the last block of the first generation block in a second generation block among the generation blocks;

d) 상기 제너레이션 블록들에서 제3 제너레이션(Generation 3) 블록에 제2 제너레이션(Generation 2) 블록의 마지막 블록이 가지는 스테이터스(Status) 데이터를 보관하는 단계; 및d) storing status data of a last block of a second generation (Generation 2) block in a third generation (Generation 3) block among the generation blocks; and

e) 상기 단계 c) 및 d)와 동일한 원리로 후속 제너레이션 블록에 직전 제너레이션 블록의 마지막 블록이 가지는 스테이터스(Status) 데이터를 보관하는 일련의 과정을 제N 제너레이션(Generation N) 블록에 이르기까지 반복 수행하는 단계를 포함하는 점에 그 특징이 있다.e) A series of processes of storing the status data of the last block of the previous generation block in the next generation block on the same principle as steps c) and d) are repeated up to the N-th generation block. Its feature is that it includes the steps of

여기서, 상기 단계 e) 이후에, 신규 블록체인 네트워크의 진입자들이 상기 제너레이션 블록들을 검증하며 동기화하는 단계를 더 포함할 수 있다.Here, after step e), a step of verifying and synchronizing the generation blocks by entrants of the new blockchain network may be further included.

이때, 상기 신규 블록체인 네트워크의 진입자들이 상기 제너레이션 블록들을 검증하며 동기화함에 있어서, 제1 제너레이션(Generation 1) 블록부터 제N 제너레이션(Generation N) 블록까지 모든 제너레이션 블록을 검증하며 동기화하거나, 마지막 제너레이션 블록의 스테이터스 데이터로부터 블록을 검증하며 동기화할 수 있다.At this time, when the entrants of the new blockchain network verify and synchronize the generation blocks, they verify and synchronize all generation blocks from the first generation block to the Nth generation block, or the last generation block. Blocks can be verified and synchronized from the status data of

또한, 상기 단계 a)에서 상기 블록의 개수의 상기 일정 개수는 256개 일 수 있다.In addition, the predetermined number of the number of blocks in step a) may be 256.

또한, 상기 단계 b)에서 상기 각 블록의 데이터를 트랜잭션(Transaction) 데이터와 스테이터스(Status) 데이터로 분리함에 있어서, 각 블록의 트랜잭션 (Transaction) 데이터의 개수가 일정 개수 이상으로 길어진 상태를 하나의 묶음으로 잘라서 제너레이션(Generation) 블록으로 분리하고, 분리된 상태의 상태값들을 스테이터스(Status) 데이터로 분리할 수 있다.In addition, in the step b), in dividing the data of each block into transaction data and status data, the state in which the number of transaction data of each block is longer than a certain number is bundled It can be cut and separated into generation blocks, and the state values in the separated state can be separated into status data.

또한, 상기 단계 b)에서 상기 스테이터스(Status) 데이터를 컨트랙트 (contract)의 처리를 위해 필요한 데이터로 지정할 수 있다.In addition, in step b), the status data can be designated as data necessary for contract processing.

또한, 상기 단계 c) 내지 e)에서 현재의 제너레이션 블록을 보관할, 각 제너레이션 블록 데이터의 연결점을 제공하는 스토리지 노드 역할을 하는 아비터 (Arbiter)가 지정되어 있을 경우, 블록체인 네트워크 참여자들에게 이전 제너레이션 블록에 해당하는 블록 데이터를 삭제할 수 있는 권한이 주어질 수 있다.In addition, if an arbiter serving as a storage node providing a connection point for each generation block data to store the current generation block is designated in steps c) to e) above, participants in the blockchain network are notified of the previous generation block. The right to delete block data corresponding to may be given.

이때, 또한 블록체인 네트워크를 운영하는 검증자(Validator) 노드들은 자신의 필요에 따라 아비터(Arbiter)를 구축하여 운영할 수 있다.At this time, validator nodes that operate the blockchain network can build and operate an arbiter according to their needs.

또한, 상기의 목적을 달성하기 위하여 본 발명의 다른 실시예에 따른 스토리지 노드의 참여를 통한 데이터 분할 보관 방법은,In addition, in order to achieve the above object, a data partition storage method through participation of a storage node according to another embodiment of the present invention,

각 단계가 컴퓨터 시스템에 의해 수행되는 것으로, 블록체인에서 스토리지 노드의 참여를 통해 데이터를 분할 보관하는 방법으로서,Each step is performed by a computer system, and as a method of dividing and storing data through the participation of storage nodes in a blockchain,

a) 블록체인에서 블록의 개수가 미리 설정한 일정 개수에 도달하면, 그 일정 개수의 블록을 하나의 그룹으로 각각 묶어 블록 집합체인 제너레이션(Generation) 블록들을 형성하는 단계;a) when the number of blocks in the blockchain reaches a predetermined number, forming generation blocks, which are block aggregates, by grouping the blocks of the predetermined number into one group;

b) 상기 제너레이션 블록들의 각 블록의 데이터를 트랜잭션(Transaction) 데이터와 스테이터스(Status) 데이터로 분리하는 단계; 및b) separating the data of each block of the generation blocks into transaction data and status data; and

c) 상기 제너레이션 블록들에서 제n+1번째 제너레이션(Generation n+1) 블록에 제n번째 제너레이션(Generation n) 블록의 마지막 블록이 가지는 스테이터스 (Status) 데이터를 보관하는 단계를 포함하는 점에 그 특징이 있다.c) storing status data of the last block of the nth generation block in the n+1th generation block of the generation blocks. It has a characteristic.

여기서, 신규 블록체인 네트워크의 진입자들이 상기 제너레이션 블록들을 검증하며 동기화하는 단계를 더 포함할 수 있다.Here, the step of verifying and synchronizing the generation blocks by entrants of the new blockchain network may be further included.

이와 같은 본 발명에 의하면, 블록체인의 각 블록의 데이터를 스테이터스(status) 데이터와 트랜잭션(transaction) 데이터를 분리하고, 블록 데이터를 제너레이션(generation) 블록 데이터로 분할하며, 각 제너레이션 블록 데이터의 연결점을 제공하는 스토리지 노드 역할을 하는 아비터(arbiter)를 구축함으로써, 블록체인 네트워크의 직렬 확장을 보장할 수 있는 장점이 있다.According to the present invention, the data of each block of the blockchain is divided into status data and transaction data, the block data is divided into generation block data, and the connection point of each generation block data is By building an arbiter that acts as a storage node that provides data, it has the advantage of ensuring serial expansion of the blockchain network.

도 1은 이더리움의 저장 공간 확장을 위한 샤딩(sharding) 기법을 도식적으로 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따른 스토리지 노드의 참여를 통한 데이터 분할 보관 방법의 실행 과정을 나타낸 흐름도이다.
도 3은 본 발명에 따른 스토리지 노드의 참여를 통한 데이터 분할 보관 방법에 채용되는 사슬(SASEUL)의 블록 데이터 구조를 나타낸 도면이다.
도 4는 본 발명의 다른 실시예에 따른 스토리지 노드의 참여를 통한 데이터 분할 보관 방법의 실행 과정을 나타낸 흐름도이다.
1 is a diagram schematically illustrating a sharding technique for expanding the storage space of Ethereum.
2 is a flowchart illustrating an execution process of a data partition storage method through participation of a storage node according to an embodiment of the present invention.
3 is a diagram showing a block data structure of a chain (SASEUL) employed in a data partition storage method through participation of a storage node according to the present invention.
4 is a flowchart illustrating an execution process of a data partition storage method through participation of a storage node according to another embodiment of the present invention.

본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정되어 해석되지 말아야 하며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야 한다.The terms or words used in this specification and claims should not be construed as being limited to their usual or dictionary meanings, and the inventors can properly define the concept of terms in order to best explain their invention. Based on the principle, it should be interpreted as meaning and concept consistent with the technical idea of the present invention.

명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다. 또한, 명세서에 기재된 "…부", "…기", "모듈", "장치" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.Throughout the specification, when a certain component is said to "include", it means that it may further include other components without excluding other components unless otherwise stated. In addition, terms such as "...unit", "...unit", "module", and "device" described in the specification mean a unit that processes at least one function or operation, which is hardware or software, or a combination of hardware and software. can be implemented as

이하 첨부된 도면을 참조하여 본 발명의 실시예를 상세히 설명한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 2는 본 발명의 일 실시예에 따른 스토리지 노드의 참여를 통한 데이터 분할 보관 방법의 실행 과정을 나타낸 흐름도이고, 도 3은 본 발명에 따른 스토리지 노드의 참여를 통한 데이터 분할 보관 방법에 채용되는 사슬(SASEUL)의 블록 데이터 구조를 나타낸 도면이다.2 is a flowchart illustrating an execution process of a data partition storage method through participation of a storage node according to an embodiment of the present invention, and FIG. 3 is a chain employed in the data partition storage method through participation of a storage node according to the present invention. It is a diagram showing the block data structure of (SASEUL).

도 2 및 도 3을 참조하면, 본 발명의 일 실시예에 따른 스토리지 노드의 참여를 통한 데이터 분할 보관 방법은, 각 단계가 컴퓨터 시스템에 의해 수행되는 것으로, 블록체인에서 스토리지 노드의 참여를 통해 데이터를 분할 보관하는 방법으로서, 먼저 블록체인에서 블록의 개수가 미리 설정한 일정 개수에 도달하면, 그 일정 개수의 블록을 하나의 그룹으로 각각 묶어 블록 집합체인 제너레이션(Generation) 블록들(310)을 형성한다(단계 S201). 여기서, 상기 블록의 개수의 상기 일정 개수는 256개 일 수 있다.Referring to FIGS. 2 and 3 , in the data partition storage method through participation of a storage node according to an embodiment of the present invention, each step is performed by a computer system, and data is stored through participation of a storage node in a block chain. As a method of dividing and storing, first, when the number of blocks in the blockchain reaches a predetermined number, the blocks of a certain number are grouped together to form generation blocks 310, which are block aggregates. (Step S201). Here, the predetermined number of the number of blocks may be 256.

이렇게 하여 제너레이션(Generation) 블록들(310)의 형성이 완료되면, 그 제너레이션 블록들(310)의 각 블록의 데이터를 도 3에 도시된 바와 같이, 트랜잭션(Transaction) 데이터와 스테이터스(Status) 데이터로 분리한다(단계 S202). 여기서, 상기 각 블록의 데이터를 트랜잭션(Transaction) 데이터와 스테이터스 (Status) 데이터로 분리함에 있어서, 각 블록의 트랜잭션(Transaction) 데이터의 개수가 일정 개수(예를 들면, 256개) 이상으로 길어진 상태를 하나의 묶음으로 잘라서 전술한 바와 같이 제너레이션(Generation) 블록으로 분리하고, 분리된 상태의 상태값들을 스테이터스(Status) 데이터(Status 1∼Status N)로 분리할 수 있다. 여기서, 또한 상기 스테이터스(Status) 데이터(Status 1∼Status N)를 컨트랙트 (contract)의 처리를 위해 필요한 데이터로 지정할 수 있다.When the formation of the generation blocks 310 is completed in this way, the data of each block of the generation blocks 310 is converted into transaction data and status data as shown in FIG. Separation (step S202). Here, in dividing the data of each block into transaction data and status data, the state in which the number of transaction data of each block is longer than a certain number (eg, 256) It can be cut into one bundle and separated into generation blocks as described above, and the separated state values can be separated into status data (Status 1 to Status N). Here, the status data (Status 1 to Status N) can also be designated as data necessary for contract processing.

이상에 의해 각 블록의 데이터를 트랜잭션(Transaction) 데이터와 스테이터스(Status) 데이터로 분리한 후, 상기 제너레이션 블록들(310)에서 제2 제너레이션 (Generation 2) 블록에 제1 제너레이션(Generation 1) 블록의 마지막 블록이 가지는 스테이터스(Status) 데이터를 보관한다(단계 S203).After the data of each block is separated into transaction data and status data by the above, the generation blocks 310 to the second generation (Generation 2) block and the first generation (Generation 1) block The status data of the last block is stored (step S203).

그리고 마찬가지로 상기 제너레이션 블록들(310)에서 제3 제너레이션 (Generation 3) 블록에 제2 제너레이션(Generation 2) 블록의 마지막 블록이 가지는 스테이터스(Status) 데이터를 보관한다(단계 S204).Similarly, among the generation blocks 310, status data of the last block of the second generation block is stored in the third generation block (step S204).

이후, 상기 단계 S203 및 S204와 동일한 원리로 후속 제너레이션 블록에 직전 제너레이션 블록의 마지막 블록이 가지는 스테이터스(Status) 데이터를 보관하는 일련의 과정을 제N 제너레이션(Generation N) 블록에 이르기까지 반복적으로 수행한다(단계 S205).Thereafter, a series of processes of storing the status data of the last block of the previous generation block in the next generation block are repeatedly performed on the same principle as in steps S203 and S204 until the Nth generation block. (Step S205).

이상과 같은 본 발명의 일 실시예에 따른 스토리지 노드의 참여를 통한 데이터 분할 보관 방법은 상기 단계 S205 이후에, 신규 블록체인 네트워크의 진입자들이 상기 제너레이션 블록들(310)을 검증하며 동기화하는 단계(S206)를 더 포함할 수 있다.In the method for partitioning and storing data through participation of storage nodes according to an embodiment of the present invention as described above, after step S205, entrants of a new blockchain network verify and synchronize the generation blocks 310 (S206). ) may be further included.

이때, 상기 신규 블록체인 네트워크의 진입자들이 상기 제너레이션 블록들(310)을 검증하며 동기화함에 있어서, 제1 제너레이션(Generation 1) 블록부터 제N 제너레이션(Generation N) 블록까지 모든 제너레이션 블록을 검증하며 동기화하거나, 마지막 제너레이션 블록(여기서는 Generation N)의 스테이터스 데이터로부터 블록을 검증하며 동기화할 수 있다.At this time, in verifying and synchronizing the generation blocks 310 by the entrants of the new blockchain network, all generation blocks from the Generation 1 block to the Generation N block are verified and synchronized, or , Blocks can be verified and synchronized from the status data of the last generation block (Generation N in this case).

또한, 상기 단계 S203∼S205에서 현재의 제너레이션 블록을 보관할, 각 제너레이션 블록 데이터의 연결점을 제공하는 스토리지 노드(Storage node) 역할을 하는 아비터(Arbiter)(320)가 지정되어 있을 경우, 블록체인 네트워크 참여자들에게 이전 제너레이션 블록에 해당하는 블록 데이터를 삭제할 수 있는 권한이 주어질 수 있다.In addition, when an arbiter 320 serving as a storage node providing a connection point for each generation block data to store the current generation block in the above steps S203 to S205 is designated, the blockchain network participant may be given permission to delete block data corresponding to the previous generation block.

이때, 또한 블록체인 네트워크를 운영하는 검증자(Validator) 노드들은 자신의 필요에 따라 아비터(Arbiter)를 구축하여 운영할 수 있다.At this time, validator nodes that operate the blockchain network can build and operate an arbiter according to their needs.

한편, 도 4는 본 발명의 다른 실시예에 따른 스토리지 노드의 참여를 통한 데이터 분할 보관 방법의 실행 과정을 나타낸 흐름도이다.Meanwhile, FIG. 4 is a flowchart illustrating an execution process of a data partition storage method through participation of a storage node according to another embodiment of the present invention.

도 4를 참조하면, 본 발명의 다른 실시예에 따른 스토리지 노드의 참여를 통한 데이터 분할 보관 방법은, 각 단계가 컴퓨터 시스템에 의해 수행되는 것으로, 블록체인에서 스토리지 노드의 참여를 통해 데이터를 분할 보관하는 방법으로서, 먼저 블록체인에서 블록의 개수가 미리 설정한 일정 개수에 도달하면, 그 일정 개수의 블록을 하나의 그룹으로 각각 묶어 블록 집합체인 제너레이션(Generation) 블록들(310)(도 3 참조)을 형성한다(단계 S401).Referring to FIG. 4 , in a method for dividing and storing data through participation of storage nodes according to another embodiment of the present invention, each step is performed by a computer system, and data is divided and stored through participation of storage nodes in a block chain. As a method of doing this, first, when the number of blocks in the blockchain reaches a predetermined number, the block collection chain Generation Blocks 310 (see FIG. 3) by tying the predetermined number of blocks into one group. is formed (step S401).

그런 후, 상기 제너레이션 블록들(310)의 각 블록의 데이터를 트랜잭션 (Transaction) 데이터와 스테이터스(Status) 데이터로 분리한다(단계 S402).Then, the data of each block of the generation blocks 310 is separated into transaction data and status data (step S402).

여기서, 이상과 같은 단계 S401 및 S402는 앞에서 제1 실시예에 대해 설명하면서 참조한 도 2의 단계 S201 및 S202와 동일하므로, 단계 S401 및 S402와 관련한 상세한 설명은 앞에서의 단계 S201 및 S202와 관련한 설명으로 갈음하기로 한다.Here, since the above steps S401 and S402 are the same as the steps S201 and S202 of FIG. 2 referred to while describing the first embodiment, the detailed description of the steps S401 and S402 is the description related to the previous steps S201 and S202. let's change

이상에 의해 각 블록의 데이터를 트랜잭션(Transaction) 데이터와 스테이터스(Status) 데이터로 분리한 후, 상기 제너레이션 블록들(310)에서 제n+1번째 제너레이션(Generation n+1) 블록에 제n번째 제너레이션(Generation n) 블록의 마지막 블록이 가지는 스테이터스(Status) 데이터를 보관한다(단계 S403). 예를 들면, 제16번째 제너레이션(Generation 16) 블록에 제15번째 제너레이션 (Generation 15) 블록의 마지막 블록이 가지는 스테이터스(Status) 데이터를 보관하고, 제120번째 제너레이션(Generation 120) 블록에 제119번째 제너레이션 (Generation 119) 블록의 마지막 블록이 가지는 스테이터스(Status) 데이터를 보관하는 것이다.After the data of each block is separated into transaction data and status data as described above, the nth generation is performed in the n+1th generation block 310 in the generation blocks 310. (Generation n) Stores status data of the last block of the block (step S403). For example, the status data of the last block of the 15th generation block is stored in the 16th generation block, and the 119th block is stored in the 120th generation block. It stores the status data of the last block of the Generation 119 block.

이상과 같은 본 발명의 다른 실시예에 따른 스토리지 노드의 참여를 통한 데이터 분할 보관 방법은 더 나아가 신규 블록체인 네트워크의 진입자들이 상기 제너레이션 블록들(310)을 검증하며 동기화하는 단계(S404)를 더 포함할 수 있다.The method for partitioning and storing data through participation of storage nodes according to another embodiment of the present invention as described above further includes a step (S404) of verifying and synchronizing the generation blocks 310 by entrants of a new blockchain network. can do.

이상의 설명과 같이, 본 발명에 따른 스토리지 노드의 참여를 통한 데이터 분할 보관 방법은 블록체인의 각 블록의 데이터를 스테이터스(status) 데이터와 트랜잭션(transaction) 데이터를 분리하고, 블록 데이터를 제너레이션(generation) 블록 데이터로 분할하며, 각 제너레이션 블록 데이터의 연결점을 제공하는 스토리지 노드 역할을 하는 아비터(arbiter)를 구축함으로써, 블록체인 네트워크의 직렬 확장을 보장할 수 있는 장점이 있다.As described above, the data division storage method through participation of the storage node according to the present invention separates the data of each block of the blockchain into status data and transaction data, and generates block data. By building an arbiter that acts as a storage node that divides into block data and provides a connection point for each generation block data, it has the advantage of ensuring serial expansion of the blockchain network.

이상, 바람직한 실시예를 통하여 본 발명에 관하여 상세히 설명하였으나, 본 발명은 이에 한정되는 것은 아니며, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 다양하게 변경, 응용될 수 있음은 당해 기술분야의 통상의 기술자에게 자명하다. 따라서, 본 발명의 진정한 보호 범위는 다음의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술적 사상은 본 발명의 권리 범위에 포함되는 것으로 해석되어야 할 것이다.Although the present invention has been described in detail through preferred embodiments, 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 for technicians Therefore, the true scope of protection of the present invention should be construed by the following claims, and all technical ideas within the scope equivalent thereto should be construed as being included in the scope of the present invention.

110: 비콘 체인(Beacon Chain) 120: 샤드 체인(Shard Chains)
130: Shard 64 310: 제너레이션(Generation) 블록
320: 아비터(Arbiter)
110: Beacon Chain 120: Shard Chains
130: Shard 64 310: Generation Block
320: Arbiter

Claims (10)

각 단계가 컴퓨터 시스템에 의해 수행되는 것으로, 블록체인에서 스토리지 노드의 참여를 통해 데이터를 분할 보관하는 방법으로서,
a) 블록체인에서 블록의 개수가 미리 설정한 일정 개수에 도달하면, 그 일정 개수의 블록을 하나의 그룹으로 각각 묶어 블록 집합체인 제너레이션(Generation) 블록들을 형성하는 단계;
b) 상기 제너레이션 블록들의 각 블록의 데이터를 트랜잭션(Transaction) 데이터와 스테이터스(Status) 데이터로 분리하는 단계;
c) 상기 제너레이션 블록들에서 제2 제너레이션(Generation 2) 블록에 제1 제너레이션(Generation 1) 블록의 마지막 블록이 가지는 스테이터스(Status) 데이터를 보관하는 단계;
d) 상기 제너레이션 블록들에서 제3 제너레이션(Generation 3) 블록에 제2 제너레이션(Generation 2) 블록의 마지막 블록이 가지는 스테이터스(Status) 데이터를 보관하는 단계; 및
e) 상기 단계 c) 및 d)와 동일한 원리로 후속 제너레이션 블록에 직전 제너레이션 블록의 마지막 블록이 가지는 스테이터스(Status) 데이터를 보관하는 일련의 과정을 제N 제너레이션(Generation N) 블록에 이르기까지 반복 수행하는 단계를 포함하는 스토리지 노드의 참여를 통한 데이터 분할 보관 방법.
Each step is performed by a computer system, and as a method of dividing and storing data through the participation of storage nodes in a blockchain,
a) when the number of blocks in the blockchain reaches a predetermined number, forming generation blocks, which are block aggregates, by grouping the blocks of the predetermined number into one group;
b) separating the data of each block of the generation blocks into transaction data and status data;
c) storing status data of the last block of the first generation block in a second generation block among the generation blocks;
d) storing status data of a last block of a second generation (Generation 2) block in a third generation (Generation 3) block among the generation blocks; and
e) A series of processes of storing the status data of the last block of the previous generation block in the next generation block on the same principle as steps c) and d) are repeated up to the N-th generation block. A data partition storage method through participation of a storage node comprising the steps of:
제1항에 있어서,
상기 단계 e) 이후에, 신규 블록체인 네트워크의 진입자들이 상기 제너레이션 블록들을 검증하며 동기화하는 단계를 더 포함하는 스토리지 노드의 참여를 통한 데이터 분할 보관 방법.
According to claim 1,
After the step e), the step of verifying and synchronizing the generation blocks by the entrants of the new blockchain network.
제2항에 있어서,
상기 신규 블록체인 네트워크의 진입자들이 상기 제너레이션 블록들을 검증하며 동기화함에 있어서, 제1 제너레이션(Generation 1) 블록부터 제N 제너레이션 (Generation N) 블록까지 모든 제너레이션 블록을 검증하며 동기화하거나, 마지막 제너레이션 블록의 스테이터스 데이터로부터 블록을 검증하며 동기화하는 것을 특징으로 하는 스토리지 노드의 참여를 통한 데이터 분할 보관 방법.
According to claim 2,
When the entrants of the new blockchain network verify and synchronize the generation blocks, they verify and synchronize all generation blocks from the Generation 1 block to the Generation N block, or the status of the last generation block A data partition storage method through participation of a storage node, characterized in that blocks are verified and synchronized from data.
제1항에 있어서,
상기 단계 a)에서 상기 블록의 개수의 상기 일정 개수는 256개인 것을 특징으로 하는 스토리지 노드의 참여를 통한 데이터 분할 보관 방법.
According to claim 1,
Data partition storage method through participation of a storage node, characterized in that the predetermined number of the number of blocks in step a) is 256.
제1항에 있어서,
상기 단계 b)에서 상기 각 블록의 데이터를 트랜잭션(Transaction) 데이터와 스테이터스(Status) 데이터로 분리함에 있어서, 각 블록의 트랜잭션(Transaction) 데이터의 개수가 일정 개수 이상으로 길어진 상태를 하나의 묶음으로 잘라서 제너레이션(Generation) 블록으로 분리하고, 분리된 상태의 상태값들을 스테이터스 (Status) 데이터로 분리하는 것을 특징으로 하는 스토리지 노드의 참여를 통한 데이터 분할 보관 방법.
According to claim 1,
In step b), in dividing the data of each block into transaction data and status data, the state in which the number of transaction data of each block is longer than a certain number is cut into one bundle A method for partitioning and storing data through participation of a storage node, characterized in that it is divided into generation blocks and separated state values are separated into status data.
제1항에 있어서,
상기 단계 b)에서 상기 스테이터스(Status) 데이터를 컨트랙트(contract)의 처리를 위해 필요한 데이터로 지정하는 것을 특징으로 하는 스토리지 노드의 참여를 통한 데이터 분할 보관 방법.
According to claim 1,
In step b), the status data is designated as data necessary for contract processing.
제1항에 있어서,
상기 단계 c) 내지 e)에서 현재의 제너레이션 블록을 보관할, 각 제너레이션 블록 데이터의 연결점을 제공하는 스토리지 노드 역할을 하는 아비터(Arbiter)가 지정되어 있을 경우, 블록체인 네트워크 참여자들에게 이전 제너레이션 블록에 해당하는 블록 데이터를 삭제할 수 있는 권한이 주어지는 것을 특징으로 하는 스토리지 노드의 참여를 통한 데이터 분할 보관 방법.
According to claim 1,
In the above steps c) to e), if an arbiter serving as a storage node that stores the current generation block and provides a connection point for each generation block data is designated, blockchain network participants are assigned to the previous generation block. A data partition storage method through participation of a storage node, characterized in that the right to delete block data is given.
제7항에 있어서,
블록체인 네트워크를 운영하는 검증자(Validator) 노드들은 자신의 필요에 따라 아비터(Arbiter)를 구축하여 운영하는 것을 특징으로 하는 스토리지 노드의 참여를 통한 데이터 분할 보관 방법.
According to claim 7,
A method of partitioning and storing data through the participation of storage nodes, characterized in that the validator nodes operating the blockchain network build and operate an arbiter according to their needs.
각 단계가 컴퓨터 시스템에 의해 수행되는 것으로, 블록체인에서 스토리지 노드의 참여를 통해 데이터를 분할 보관하는 방법으로서,
a) 블록체인에서 블록의 개수가 미리 설정한 일정 개수에 도달하면, 그 일정 개수의 블록을 하나의 그룹으로 각각 묶어 블록 집합체인 제너레이션(Generation) 블록들을 형성하는 단계;
b) 상기 제너레이션 블록들의 각 블록의 데이터를 트랜잭션(Transaction) 데이터와 스테이터스(Status) 데이터로 분리하는 단계; 및
c) 상기 제너레이션 블록들에서 제n+1번째 제너레이션(Generation n+1) 블록에 제n번째 제너레이션(Generation n) 블록의 마지막 블록이 가지는 스테이터스 (Status) 데이터를 보관하는 단계를 포함하는 스토리지 노드의 참여를 통한 데이터 분할 보관 방법.
Each step is performed by a computer system, and as a method of dividing and storing data through the participation of storage nodes in a blockchain,
a) when the number of blocks in the blockchain reaches a predetermined number, forming generation blocks, which are block aggregates, by grouping the blocks of the predetermined number into one group;
b) separating the data of each block of the generation blocks into transaction data and status data; and
c) storing status data of the last block of the n-th generation block in an n+1-th generation block of the generation blocks; How to keep partitions of data through participation.
제9항에 있어서,
신규 블록체인 네트워크의 진입자들이 상기 제너레이션 블록들을 검증하며 동기화하는 단계를 더 포함하는 스토리지 노드의 참여를 통한 데이터 분할 보관 방법.
According to claim 9,
A data partition storage method through participation of a storage node, further comprising the step of verifying and synchronizing the generation blocks by entrants of the new blockchain network.
KR1020220077995A 2021-06-30 2022-06-27 Method of data split storage method through the participation of storage nodes Active KR102574064B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/KR2022/009272 WO2023277552A1 (en) 2021-06-30 2022-06-29 Data segmentation and storage method through participation of storage node
US18/575,066 US20260113207A1 (en) 2021-06-30 2022-06-29 Data segmentation storage method through participation of storage nodes

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20210085986 2021-06-30
KR1020210085986 2021-06-30

Publications (2)

Publication Number Publication Date
KR20230004295A true KR20230004295A (en) 2023-01-06
KR102574064B1 KR102574064B1 (en) 2023-09-04

Family

ID=84923995

Family Applications (6)

Application Number Title Priority Date Filing Date
KR1020210138643A Active KR102777257B1 (en) 2021-06-30 2021-10-18 Token issuance service apparatus and method for media content based on blockchain
KR1020220075845A Active KR102562293B1 (en) 2021-06-30 2022-06-21 Blockchain network using a smart contract-based multi-chain technique and parallel expansion method thereof
KR1020220075846A Ceased KR20230004271A (en) 2021-06-30 2022-06-21 Method for uploading and managing a single data with a capacity larger than the maximum block size on the blockchain
KR1020220077995A Active KR102574064B1 (en) 2021-06-30 2022-06-27 Method of data split storage method through the participation of storage nodes
KR1020220077996A Ceased KR20230004296A (en) 2021-06-30 2022-06-27 Method for improving processing speed of transaction in blockchain network
KR1020220079223A Ceased KR20230004312A (en) 2021-06-30 2022-06-28 System for authentication and identification of personal information using DID(Decentralized Identifiers) without collection of personal information and method thereof

Family Applications Before (3)

Application Number Title Priority Date Filing Date
KR1020210138643A Active KR102777257B1 (en) 2021-06-30 2021-10-18 Token issuance service apparatus and method for media content based on blockchain
KR1020220075845A Active KR102562293B1 (en) 2021-06-30 2022-06-21 Blockchain network using a smart contract-based multi-chain technique and parallel expansion method thereof
KR1020220075846A Ceased KR20230004271A (en) 2021-06-30 2022-06-21 Method for uploading and managing a single data with a capacity larger than the maximum block size on the blockchain

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020220077996A Ceased KR20230004296A (en) 2021-06-30 2022-06-27 Method for improving processing speed of transaction in blockchain network
KR1020220079223A Ceased KR20230004312A (en) 2021-06-30 2022-06-28 System for authentication and identification of personal information using DID(Decentralized Identifiers) without collection of personal information and method thereof

Country Status (1)

Country Link
KR (6) KR102777257B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102772288B1 (en) * 2023-01-19 2025-02-26 (주)내스타일 Avatar authenticate method for metaverse using non-fungible token
KR20250081197A (en) * 2023-11-29 2025-06-05 (주)드림시큐리티 Method and apparatus for login user authentication using verifiable credential based on decentralized identifier
KR102909863B1 (en) * 2023-12-21 2026-01-09 서강대학교 산학협력단 Device and method for metaverse service connectivity

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200100472A (en) * 2019-02-18 2020-08-26 아주대학교산학협력단 Blockchain Network Node and Method for Processing Transaction
KR20210003234A (en) * 2018-04-27 2021-01-11 엔체인 홀딩스 리미티드 Maintaining blocks of a blockchain in a segmented blockchain network
KR20210029865A (en) * 2019-09-06 2021-03-17 주식회사 커먼컴퓨터 System and method for serverless computing based on blockchain
KR20210126453A (en) 2020-04-11 2021-10-20 주식회사 퓨처글로벌 Block-chain based distributed data storage apparatus and method for storing large data

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SG11201400184YA (en) 2011-08-25 2014-08-28 Docusign Inc Mobile solution for signing and retaining third-party documents
US11915332B2 (en) 2015-10-02 2024-02-27 Loyyal Holdings Incorporated System and process for tokenization and management of liability
US10062130B2 (en) 2015-11-12 2018-08-28 Adobe Systems Incorporated Generating authenticated instruments for oral agreements
KR20190009958A (en) 2017-07-20 2019-01-30 주식회사 더블체인 Extendable block chain system and block chain extending method
WO2019158228A1 (en) * 2018-02-14 2019-08-22 Lexigogo Bvba Method and system for video contracts
KR102288045B1 (en) 2018-05-21 2021-08-10 성신여자대학교 연구 산학협력단 Method and apparatus for managing subject data based on blockchain
KR102130651B1 (en) * 2018-08-13 2020-07-06 포항공과대학교 산학협력단 Method and apparatus for authenticating user based on blockchain
KR102017675B1 (en) * 2019-04-26 2019-09-04 에스지에이블록체인 주식회사 A block-chain bridge system for sharing data between independent block-chain networks
KR102090025B1 (en) * 2019-05-29 2020-03-17 (주)가민정보시스템 Blockchain network system for Internetworking in Heterogeneous Platforms and Method for Generating Block Chain
KR102228214B1 (en) 2019-07-22 2021-03-16 에이치엔핀코어 주식회사 Node device that can improve transaction processing speed by propagating transactions before generating blocks in a block-chain network and operating method thereof
KR20220075723A (en) 2020-11-30 2022-06-08 다이브 주식회사 Personal authentication method and system using decentralized identifiers

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210003234A (en) * 2018-04-27 2021-01-11 엔체인 홀딩스 리미티드 Maintaining blocks of a blockchain in a segmented blockchain network
KR20210003213A (en) * 2018-04-27 2021-01-11 엔체인 홀딩스 리미티드 Dividing the blockchain network
KR20200100472A (en) * 2019-02-18 2020-08-26 아주대학교산학협력단 Blockchain Network Node and Method for Processing Transaction
KR20210029865A (en) * 2019-09-06 2021-03-17 주식회사 커먼컴퓨터 System and method for serverless computing based on blockchain
KR20210126453A (en) 2020-04-11 2021-10-20 주식회사 퓨처글로벌 Block-chain based distributed data storage apparatus and method for storing large data

Also Published As

Publication number Publication date
KR102562293B1 (en) 2023-08-01
KR20230004296A (en) 2023-01-06
KR20230004270A (en) 2023-01-06
KR102777257B1 (en) 2025-03-07
KR20230004312A (en) 2023-01-06
KR20230004271A (en) 2023-01-06
KR20230004216A (en) 2023-01-06
KR102574064B1 (en) 2023-09-04

Similar Documents

Publication Publication Date Title
KR102574064B1 (en) Method of data split storage method through the participation of storage nodes
Hashim et al. Sharding for scalable blockchain networks
Xu et al. SlimChain: Scaling blockchain transactions through off-chain storage and parallel processing
CN111061769B (en) Consensus method of block chain system and related equipment
KR102017739B1 (en) Blockchain system and method of creating blockchain
TW201901481A (en) Blockchain system and data managing method using blockchain
JP7553554B2 (en) Synchronization processing method and related device
CN114138414A (en) Incremental compression method and system for container mirror image
Garay et al. Proof-of-work-based consensus in expected-constant time
Smith et al. A stochastic integer programming approach to solving a synchronous optical network ring design problem
CN121190001A (en) A domestically developed large-scale edge cloud collaborative management platform and adaptive optimization method based on a quantum-classical hybrid architecture.
US20260113207A1 (en) Data segmentation storage method through participation of storage nodes
Xu et al. Poster: Unanimous-majority-pushing blockchain sharding throughput to its limit
Li et al. SP-Chain: Boosting intra-shard and cross-shard security and performance in blockchain sharding
Monrat et al. Addressing the performance of blockchain by discussing sharding techniques
CN113810185A (en) Anti-trapdoor leakage on-chain data restoration system and method
KR101873879B1 (en) Data distribution storage apparatus and method using relative difference set generated from the group having the two-dimensional element
KR20190020721A (en) Blockchain system and method of creating blockchain
Yang et al. Adapted PBFT consensus protocol for sharded blockchain
Grybniak et al. Virtually unlimited sharding for scalable distributed ledgers
Zhu et al. Blockchain technology and application
Barney Ultrafilters on the natural numbers
Yin et al. Fountain: DAG-Based Separate BFT Consensus Made Hashgraph Practical
Song et al. Grape: Efficient Hybrid Consensus Protocol Using DAG
Çulha Binary Tree Blockchain of Decomposed Transactions

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20220627

PA0201 Request for examination
PA0302 Request for accelerated examination

Patent event date: 20221018

Patent event code: PA03022R01D

Comment text: Request for Accelerated Examination

Patent event date: 20220627

Patent event code: PA03021R01I

Comment text: Patent Application

PG1501 Laying open of application
E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20230710

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20230830

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20230830

End annual number: 3

Start annual number: 1

PG1601 Publication of registration