KR20200122724A - 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 딜레이드 동기화 방법 및 장치 - Google Patents

백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 딜레이드 동기화 방법 및 장치 Download PDF

Info

Publication number
KR20200122724A
KR20200122724A KR1020190045768A KR20190045768A KR20200122724A KR 20200122724 A KR20200122724 A KR 20200122724A KR 1020190045768 A KR1020190045768 A KR 1020190045768A KR 20190045768 A KR20190045768 A KR 20190045768A KR 20200122724 A KR20200122724 A KR 20200122724A
Authority
KR
South Korea
Prior art keywords
delay
node
specific
nodes
triggering information
Prior art date
Application number
KR1020190045768A
Other languages
English (en)
Other versions
KR102221366B1 (ko
Inventor
송계한
이이구
서동진
Original Assignee
주식회사 웨이투빗
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 웨이투빗 filed Critical 주식회사 웨이투빗
Priority to KR1020190045768A priority Critical patent/KR102221366B1/ko
Priority to US16/850,276 priority patent/US20200334110A1/en
Publication of KR20200122724A publication Critical patent/KR20200122724A/ko
Application granted granted Critical
Publication of KR102221366B1 publication Critical patent/KR102221366B1/ko

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
    • H04L9/3239Cryptographic 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 involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2071Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using a plurality of controllers
    • G06F11/2076Synchronous techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/085Retrieval of network configuration; Tracking network configuration history
    • H04L41/0853Retrieval of network configuration; Tracking network configuration history by actively collecting configuration information or by backing up configuration information
    • H04L41/0856Retrieval of network configuration; Tracking network configuration history by actively collecting configuration information or by backing up configuration information by backing up or archiving configuration information
    • 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
    • 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/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • 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 Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 지연 동기화 방법이 개시된다. 즉, (a) 상기 블록체인 네트워크에 포함된, 소정 관리자 단말로부터 명령 트리거링 정보를 획득함에 따라 소정 기능을 수행하도록 설정된 특정 딜레이드 노드가, 자기 자신의 초기 설정에 따라 소정의 딜레이가 유지되는 상태로 상기 블록체인 네트워크에 포함된 기존 서비스 노드들과 동기화하는 단계; 및 (b) 상기 특정 딜레이드 노드가, 상기 관리자 단말로부터 변환 트리거링 정보를 획득하면, 자신에 포함된 딜레이드 블록들을 기준으로 하여 상기 소정의 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하여 신규 서비스 노드로서 기능하도록 지원하면서, 자신이 상기 신규 서비스 노드로서 기능하도록 설정되는 적어도 하나의 프로세스를 수행하는 단계;를 포함하는 것을 특징으로 하는 방법이 개시된다.

Description

백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 딜레이드 동기화 방법 및 장치{METHOD AND DEVICE FOR RESTORING BLOCKCHAIN NETWORK WITH ITS CREDIBILITY ON BACKUP DATA MAINTAINED AND MINIMIZING RESOURCE USAGE BY USING DELAYED SYNCHRONIZATION RECYCLING NODES}
본 발명은 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 지연 동기화 방법 및 장치에 관한 것이다.
블록체인 기술이란, 관리 대상 데이터를, P2P 방식을 기반으로 생성된 인 형태의 분산 데이터 저장환경인 블록에 저장함으로써, 분산 컴퓨팅 기술 기반으로 데이터의 변조를 방지하는 기술이다.
이와 같은 블록체인 기술은, 데이터의 변조를 방지하기 위해, 블록에 한 번 기록된 데이터는 절대로 변조될 수 없도록 제한하고 있는데, 이는 서비스에 문제가 생겨 블록에 기록된 데이터에 오류가 존재하는 경우의 문제 해결을 난해하게 만드는 측면이 있다. 즉, 오류가 발생한 경우 해당 오류만을 교정하는 방법은 전술한 블록체인의 특성에 의해 사용할 수 없고, 오류 이전의 백업된 데이터를 이용해 덮어씀으로써 복구한 후 동기화를 다시 시작하는 방법만 사용할 수 있다는 것이다.
이와 같이 백업 데이터를 사용하는 방법에 있어서, 특정 시점에 동기화를 중단하고 OS 레벨에서 콜드 백업하는 방법과, 특정 블록 또는 특정 블록 구간에 대해 정보를 백업하는 것과 같은 전통적인 백업 방법을 상정할 수 있는데, 이 경우, 백업 데이터를 신뢰할 수 없게 되며, 복구 시간도 오래 걸리게 되는 단점이 존재한다.
따라서, 백업에 대한 신뢰성을 확보하면서, 오류 발생 이전의 블록까지 효과적으로 복구할 수 있는 솔루션이 필요한데, 이에 대한 연구는 전무한 것이 실정이다.
본 발명은 상술한 문제점을 해결하는 것을 목적으로 한다.
본 발명은 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하는 지연 동기화 방법을 제공하는 것을 목적으로 한다.
또한 본 발명은 관리자가 빠르고 간편하게 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구할 수 있는 지연 동기화 방법을 제공하는 것을 목적으로 한다.
또한 본 발명은 백업을 위해 사용되었던 노드를 재활용하여 신규 서비스 노드로 사용함으로써 자원 소모를 최소화하면서 블록체인 네트워크를 복구할 수 있는 지연 동기화 방법을 제공하는 것을 목적으로 한다.
상기한 바와 같은 본 발명의 목적을 달성하고, 후술하는 본 발명의 특징적인 효과를 실현하기 위한 본 발명의 특징적인 구성은 하기와 같다.
본 발명의 일 태양에 따르면, 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 지연 동기화 방법에 있어서, (a) 상기 블록체인 네트워크에 포함된, 소정 관리자 단말로부터 명령 트리거링 정보를 획득함에 따라 소정 기능을 수행하도록 설정된 특정 딜레이드 노드가, 자기 자신의 초기 설정에 따라 소정의 딜레이가 유지되는 상태로 상기 블록체인 네트워크에 포함된 기존 서비스 노드들과 동기화하는 단계; 및 (b) 상기 특정 딜레이 노드가, 상기 관리자 단말로부터 변환 트리거링 정보를 획득하면, 자신에 포함된 딜레이드 블록들을 기준으로 하여 상기 소정의 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하여 신규 서비스 노드로서 기능하도록 지원하면서, 자신이 상기 신규 서비스 노드로서 기능하도록 설정되는 적어도 하나의 프로세스를 수행하는 단계;를 포함하는 것을 특징으로 하는 방법이 개시된다.
일례로서, 상기 (b) 단계는, 상기 특정 딜레이드 노드가, 상기 복구 데이터 지원 트리거링 정보에 포함된 복구 블록 번호 및 자신의 최신 블록 번호를 참조로 하여, (i) 상기 복구 블록 번호와 자신의 최신 블록 번호가 동일한 제1 경우에 동기화를 중단한 다음 자신에 포함된 딜레이드 블록들을 기준으로 하여 상기 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하는 프로세스를 수행하고, (ii) 상기 복구 블록 번호보다 상기 최신 블록 번호가 작은 경우에 대응하는 제2 경우에 상기 기존 서비스 노드들 중 적어도 일부와 추가적인 동기화 과정을 수행한 후, 이를 통해 획득된 블록들을 추가로 포함하는 딜레이드 블록들을 기준으로 하여 상기 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하는 프로세스를 수행하는 것을 특징으로 하는 방법.
일례로서, 상기 (b) 단계에 있어서, 상기 특정 딜레이드 노드가, 상기 제2 경우에, 상기 서비스 노드들 중 적어도 하나의 서비스 노드와의 상기 추가적인 동기화 과정에서, 상기 복구 블록 번호를 참조로 하여 상기 복구 블록 번호까지의 블록들에 대한 정보를 획득하는 것을 특징으로 하는 방법이 개시된다.
일례로서, 상기 (b) 단계는, 상기 특정 딜레이드 노드가, 상기 변환 트리거링 정보가 변환 명령만을 포함하는 경우 동기화를 중단한 다음 자신에 포함된 딜레이드 블록들을 기준으로 하여 상기 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하는 프로세스를 수행하고, 상기 변환 트리거링 정보가 상기 변환 명령 외에 추가적인 동기화 명령을 포함하는 경우 상기 복구 블록 번호를 이용하여 상기 기존 서비스 노드들 중 적어도 일부와 추가적인 동기화 과정을 수행한 후, 이를 통해 획득된 블록들을 추가로 포함하는 딜레이드 블록들을 기준으로 하여 상기 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하는 프로세스를 수행하는 것을 특징으로 하는 방법이 개시된다.
일례로서, 상기 블록체인 네트워크는, 상기 관리자 단말에 의해 각각 소정의 딜레이를 가지도록 설정된, 상기 특정 딜레이드 노드를 포함하는 복수 개의 딜레이드 노드들을 포함하고, 상기 관리자 단말이 상기 특정 딜레이드 노드를 포함하는 상기 복수 개의 딜레이드 노드들 중 적어도 하나에 상기 변환 트리거링 정보를 발신하여 해당 딜레이드 노드가 신규 서비스 노드로서 기능하도록 설정함으로써 상기 블록체인 네트워크를 복구하되, 상기 변환 트리거링 정보를 획득하지 못한 적어도 일부의 딜레이드 노드들은 계속 상기 딜레이드 노드로서 기능하도록 설정되는 것을 특징으로 하는 방법이 개시된다.
본 발명의 다른 태양에 따르면, 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 지연 동기화 방법에 있어서, (a) 상기 블록체인 네트워크에 포함된, 소정 관리자 단말로부터 명령 트리거링 정보를 획득함에 따라 소정 기능을 수행하도록 설정된 특정 기존 서비스 노드가, 상기 관리자 단말로부터 초기화 트리거링 정보를 획득하면, 자기 자신을 초기화하는 단계; (b) 상기 특정 기존 서비스 노드가, (i) 동기화 재시작 트리거링 정보가 획득되면, 상기 관리자 단말로부터 변환 트리거링 정보를 획득함으로써 신규 서비스 노드로 기능하도록 변경 설정된 특정 딜레이드 노드와 동기화를 수행함으로써 새로운 데이터 체인을 완성한 뒤 신규 서비스 노드로서 기능하도록 설정되는 프로세스, (ii) 백업 트리거링 정보가 획득되면, 상기 백업 트리거링 정보에 포함된 딜레이 속성 정보를 참조로 하여, 소정 딜레이가 유지되는 상태로 상기 신규 서비스 노드들과 동기화함으로써 상기 딜레이드 노드로서 동작하도록 설정되는 프로세스 중 적어도 일부를 수행하는 단계;를 포함하는 것을 특징으로 하는 방법이 개시된다.
일례로서, 상기 (a) 단계 이전에, 상기 특정 딜레이드 노드는, 소정 딜레이가 유지되는 상태로 상기 특정 기존 서비스 노드와 동기화하고, 상기 (b) 단계는, 상기 특정 딜레이드 노드는, 상기 특정 기존 서비스 노드가 상기 동기화 재시작 트리거링 정보를 획득한 경우에, 자신에 포함된 딜레이드 블록들을 기준으로 하여 상기 소정의 딜레이 없이 상기 특정 기존 서비스 노드가 동기화되도록 지원함으로써 상기 신규 서비스 노드로서 기능하도록 하는 것을 특징으로 하는 방법이 개시된다.
본 발명의 또다른 태양에 따르면, 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 지연 동기화 방법을 수행하는, 상기 블록체인 네트워크에 포함된, 소정 관리자 단말로부터 명령 트리거링 정보를 획득함에 따라 소정 기능을 수행하도록 설정된 특정 딜레이드 노드에 있어서, 인스트럭션들을 저장하는 하나 이상의 메모리; 및 상기 인스트럭션들을 수행하도록 설정된 하나 이상의 프로세서를 포함하되, 상기 프로세서는, (I) 자기 자신의 초기 설정에 따라 소정의 딜레이가 유지되는 상태로 상기 블록체인 네트워크에 포함된 기존 서비스 노드들과 동기화하는 프로세스; 및 (II) 상기 특정 딜레이드 노드가, 상기 관리자 단말로부터 변환 트리거링 정보를 획득하면, 자신에 포함된 딜레이드 블록들을 기준으로 하여 상기 소정의 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하여 신규 서비스 노드로서 기능하도록 지원하면서, 자신이 상기 신규 서비스 노드로서 기능하도록 설정되는 적어도 하나의 프로세스를 수행하는 프로세스; 를 수행하는 것을 특징으로 하는 특정 딜레이드 노드가 개시된다.
일례로서, 상기 (II) 프로세스는, 상기 프로세서가, 상기 복구 데이터 지원 트리거링 정보에 포함된 복구 블록 번호 및 자신의 최신 블록 번호를 참조로 하여, (i) 상기 복구 블록 번호와 자신의 최신 블록 번호가 동일한 제1 경우에 동기화를 중단한 다음 자신에 포함된 딜레이드 블록들을 기준으로 하여 상기 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하는 프로세스를 수행하고, (ii) 상기 복구 블록 번호보다 상기 최신 블록 번호가 작은 경우에 대응하는 제2 경우에 상기 서비스 노드들과 추가적인 동기화 과정을 수행한 후, 이를 통해 획득된 블록들을 추가로 포함하는 딜레이드 블록들을 기준으로 하여 상기 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하는 프로세스를 수행하는 것을 특징으로 하는 특정 딜레이드 노드가 개시된다.
일례로서, 상기 (II) 프로세스에 있어서, 상기 프로세서가, 상기 제2 경우에, 상기 서비스 노드들 중 적어도 하나의 서비스 노드와의 상기 추가적인 동기화 과정에서, 상기 복구 블록 번호를 참조로 하여 상기 복구 블록 번호까지의 블록들에 대한 정보를 획득하는 것을 특징으로 하는 특정 딜레이드 노드가 개시된다.
일례로서, 상기 (II) 프로세스는, 상기 프로세서가, 상기 복구 데이터 지원 트리거링 정보가 변환 명령만을 포함하는 경우 동기화를 중단한 다음 자신에 포함된 딜레이드 블록들을 기준으로 하여 상기 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하는 프로세스를 수행하고, 상기 복구 데이터 지원 트리거링 정보가 상기 변환 명령 외에 추가적인 동기화 명령을 포함하는 경우 상기 복구 블록 번호를 이용하여 상기 서비스 노드들과 추가적인 동기화 과정을 수행한 후, 이를 통해 획득된 블록들을 추가로 포함하는 딜레이드 블록들을 기준으로 하여 상기 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하는 프로세스를 수행하는 것을 특징으로 하는 특정 딜레이드 노드가 개시된다.
일례로서, 상기 블록체인 네트워크는, 상기 관리자 단말에 의해 각각 소정의 딜레이를 가지도록 설정된, 상기 특정 딜레이드 노드를 포함하는 복수 개의 딜레이드 노드들을 포함하고, 상기 관리자 단말이 상기 특정 딜레이드 노드를 포함하는 상기 복수 개의 딜레이드 노드들 중 적어도 하나에 상기 변환 트리거링 정보를 발신하여 해당 딜레이드 노드가 신규 서비스 노드로서 기능하도록 설정함으로써 상기 블록체인 네트워크를 복구하되, 상기 변환 트리거링 정보를 획득하지 못한 적어도 일부의 딜레이드 노드들은 계속 상기 딜레이드 노드로서 기능하도록 설정되는 것을 특징으로 하는 특정 딜레이드 노드가 개시된다.
본 발명의 또다른 태양에 따르면, 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 방법을 수행하는, 상기 블록체인 네트워크에 포함된, 소정 관리자 단말로부터 명령 트리거링 정보를 획득함에 따라 소정 기능을 수행하도록 설정된 특정 기존 서비스 노드에 있어서, 인스트럭션들을 저장하는 하나 이상의 메모리; 및 상기 인스트럭션들을 수행하도록 설정된 하나 이상의 프로세서를 포함하되, 상기 프로세서는, (I) 상기 관리자 단말로부터 초기화 트리거링 정보를 획득하면, 자기 자신을 초기화하는 프로세스; (II) (i) 동기화 재시작 트리거링 정보가 획득되면, 상기 관리자 단말로부터 변환 트리거링 정보를 획득함으로써 신규 서비스 노드로 기능하도록 변경 설정된 특정 딜레이드 노드와 동기화를 수행함으로써 새로운 데이터 체인을 완성한 뒤 신규 서비스 노드로서 기능하도록 설정되는 프로세스, (ii) 백업 트리거링 정보가 획득되면, 상기 백업 트리거링 정보에 포함된 딜레이 속성 정보를 참조로 하여, 소정 딜레이가 유지되는 상태로 상기 신규 서비스 노드들과 동기화함으로써 상기 딜레이드 노드로서 동작하도록 설정되는 프로세스 중 적어도 일부를 수행하는 프로세스; 를 수행하는 것을 특징으로 하는 특정 기존 서비스 노드가 개시된다.
일례로서, 상기 (I) 프로세스 이전에, 상기 프로세서가, 소정 딜레이가 유지되는 상태로 상기 특정 기존 서비스 노드와 동기화하고, 상기 (II) 프로세스는, 상기 프로세서가, 상기 특정 기존 서비스 노드가 상기 동기화 재시작 트리거링 정보를 획득한 경우에, 자신에 포함된 딜레이드 블록들을 기준으로 하여 상기 소정의 딜레이 없이 상기 특정 기존 서비스 노드가 동기화되도록 지원함으로써 상기 신규 서비스 노드로서 기능하도록 하는 것을 특징으로 하는 특정 기존 서비스 노드가 개시된다.
본 발명은 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하는 지연 동기화 방법을 제공할 수 있는 효과가 있다.
또한 본 발명은 관리자가 빠르고 간편하게 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구할 수 있는 지연 동기화 방법을 제공할 수 있는 효과가 있다.
또한 본 발명은 백업을 위해 사용되었던 노드를 재활용하여 신규 서비스 노드로 사용함으로써 자원 소모를 최소화하면서 블록체인 네트워크를 복구할 수 있는 지연 동기화 방법을 제공할 수 있는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 지연 동기화 방법을 수행하는 특정 딜레이드 노드 및 특정 기존 서비스 노드를 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따른 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 지연 동기화 방법을 수행하는 기존 서비스 노드들 및 딜레이드 노드들 간의 관계를 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 따른 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 지연 동기화 방법을 수행하는 특정 딜레이드 노드가 제1 경우에 기존 서비스 노드들을 어떻게 지원하는지를 나타낸 예시 도면이다.
도 4는 본 발명의 일 실시예에 따른 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 지연 동기화 방법을 수행하는 특정 딜레이드 노드가 제2 경우에 기존 서비스 노드들을 어떻게 지원하는지를 나타낸 예시 도면이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 바람직한 실시예들에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 지연 동기화 방법을 수행하는 특정 딜레이드 노드 및 특정 기존 서비스 노드를 나타낸 도면이다.
도 1을 참조하면, 특정 딜레이드 노드(100-1), 특정 기존 서비스 노드(200-1) 및 관리자 단말(300)은 각각 통신부(110-1, 210-1, 310), 프로세서(120-1, 220-1, 320) 및 메모리(115-1, 215-1, 315)를 포함할 수 있다. 구체적으로, 특정 딜레이드 노드(100-1), 특정 기존 서비스 노드(200-1) 및 관리자 단말(300)의 입출력 및 연산 과정은 각각 통신부(110-1, 210-1, 310) 및 프로세서(120-1, 220-1, 320)에 의해 이루어질 수 있다. 다만 도 1에서는 통신부(110-1, 210-1, 310) 및 프로세서(120-1, 220-1, 320)의 구체적인 연결 관계를 생략하였다. 이 때, 메모리(115-1, 215-1, 315)는 후술할 여러 가지 지시들을 저장한 상태일 수 있고, 프로세서(120-1, 220-1, 320)는 메모리(115-1, 215-1, 315)에 저장된 지시들을 수행하도록 설정되되, 프로세서(120-1, 220-1, 320)는 추후 설명할 프로세스들을 수행함으로써 본 발명을 수행할 수 있다. 이와 같이 특정 딜레이드 노드(100-1), 특정 기존 서비스 노드(200-1) 및 관리자 단말(300)이 묘사되었다고 하여, 특정 딜레이드 노드(100-1), 특정 기존 서비스 노드(200-1) 및 관리자 단말(300)이 본 발명을 실시하기 위한 미디엄, 프로세서 및 메모리가 통합된 형태인 integrated 프로세서를 포함하는 경우를 배제하는 것은 아니다.
또한, 추후 도면 및 발명의 설명에서 설명될 다른 딜레이드 노드들(100-2 내지 100-K) 및 다른 기존 서비스 노드들(200-2 내지 200-N)의 구성 역시 각각 특정 딜레이드 노드(100-1) 및 특정 기존 서비스 노드(200-1)와 동일 또는 유사할 수 있다.
이와 같은 딜레이드 노드들(100-1 내지 100-K), 기존 서비스 노드들(200-1 내지 200-N) 및 관리자 단말(300)의 구성에 대해 알아본 바, 이하 딜레이드 노드들(100-1 내지 100-K), 기존 서비스 노드들(200-1 내지 200-N) 및 관리자 단말(300)의 관계 및 각각의 기능에 대해 설명하기 위해 도 2를 참조하도록 한다.
도 2는 본 발명의 일 실시예에 따른 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 지연 동기화 방법을 수행하는 기존 서비스 노드들 및 딜레이드 노드들 간의 관계를 나타낸 도면이다.
도 2를 참조로 하면, 기존 서비스 노드들(200-1 내지 200-N)은, 소정 관리자 단말(300)로부터 명령 트리거링 정보를 획득함에 따라 소정 기능을 수행하도록 설정된 상태일 수 있다. 구체적으로는, 기존 서비스 노드들(200-1 내지 200-N)은, 도면에 도시된 것과 같이 서로 간에 연결되어 지속적으로 동기화하며 블록을 생성하고, 이를 자신에 저장함으로써 분산 데이터 저장 환경을 구현하는 상태이되, 관리자 단말(300)에 의해 명령 트리거링 정보가 입력되면 이에 따라 소정 기능을 수행하도록 설정된 것일 수 있다는 것이다. 이 때, 명령 트리거링 정보는, 관리자 단말(300)을 사용하는 관리자로부터 입력되어 생성되거나, 프로그래밍된 알고리즘에 의해 자동으로 생성될 수 있다.
한편, 딜레이드 노드들(100-1 내지 100-K) 역시, 관리자 단말(300)로부터 명령 트리거링 정보를 획득함에 따라 소정 기능을 수행하도록 설정된 것일 수 있는데, 기존 서비스 노드들(200-1 내지 200-N)과 다른 점은, 초기 설정으로, 소정의 딜레이가 유지되는 상태로 기존 서비스 노드들(200-1 내지 200-N)과 동기화한다는 점이다. 소정의 딜레이를 유지시키는 것은, 딜레이드 노드들(100-1 내지 100-K)에 포함된, 지연된 동기화를 통해 획득된 블록을 이용하여 기존 서비스 노드들(200-1 내지 200-N)을 복구하기 위함인데, 구체적인 방법은 추후 설명될 것이다.
딜레이드 노드들(100-1 내지 100-K)의 경우, 관리자의 편의에 따라 서로 다른 딜레이를 가지도록 설정될 수 있다. 일 예로는, 하나의 예시 딜레이드 노드는 1일에 대응하는 블록 개수의 딜레이, 다른 하나의 예시 딜레이드 노드는 7일에 대응하는 블록 개수의 딜레이, 또다른 하나의 예시 딜레이드 노드는 30일에 대응하는 블록 개수의 딜레이를 가지도록 설정될 수 있다. 또는, 각 요일 별로 데이터가 백업되도록 하기 위해 각각 1일 내지 7일에 대응하는 블록 개수의 딜레이를 가지는 7개의 예시 딜레이드 노드들을 상정할 수 있을 것이다. 또한, 각각의 딜레이드 노드들(100-1 내지 100-K)에 설정된 각 딜레이들은 서로 다를 필요는 없으며, 같은 딜레이를 가진 딜레이드 노드들을 여러 개 설정함으로써 다중화를 꾀할 수 있을 것이다. 이와 같은 실시예들은 블록체인 네트워크를 사용하는 서비스의 상황에 맞추어 적절히 변형될 수 있다.
이상 기존 서비스 노드들(200-1 내지 200-N) 및 딜레이드 노드들(100-1 내지 100-K) 간의 관계 및 각각의 기능에 대해 설명한 바, 이하 본 발명의 구체적인 복구 방법에 대해 설명하도록 한다. 설명의 편의를 위해, 기존 서비스 노드들(200-1 내지 200-N) 및 딜레이드 노드들(100-1 내지 100-K)을 포함하는 블록체인 네트워크에서는 1초에 하나씩 블록이 생성되는 것으로 가정한다. 또한, 딜레이드 노드들은 세 개(100-1, 100-2, 100-3) 존재하며, 각각 1일, 7일 및 30일에 대응하는 블록 개수, 즉 86400, 604800, 2592000개의 딜레이가 설정된 것으로 가정한다. 그리고, 특정 딜레이드 노드(100-1) 및 특정 기존 서비스 노드(200-1)을 기준으로 설명할 것인데, 타 딜레이드 노드들 및 타 기존 서비스 노드들 역시 명령 트리거링 정보를 획득하면 같은 프로세스를 수행할 수 있음을 언급하여 둔다.
먼저, 특정 기존 서비스 노드(200-1)는, 전술한 것과 같이 타 기존 서비스 노드들과 동기화하고 있을 것이고, 특정 딜레이드 노드(100-1)는 특정 기존 서비스 노드(200-1)와 기설정된 초기 딜레이인 1일에 대응하는 블록 개수, 가정에 따르면 86400개의 딜레이를 유지하는 상태로 특정 기존 서비스 노드(200-1)를 포함한 기존 서비스 노드들과 동기화할 것이다.
이 때, 관리자 단말(300)은, 전술한 명령 트리거링 정보의 일종인 초기화 트리거링 정보를 기존 서비스 노드들(200-1 내지 200-N)에 발신할 수 있다. 관리자가 특정 블록에 대한 이상을 발견하거나, 특정 시점으로 블록체인을 롤백할 필요성이 생기는 경우 이와 같이 초기화 트리거링 정보가 발신될 수 있다. 특정 기존 서비스 노드(200-1)는, 이를 획득하면, 먼저 타 기존 서비스 노드들(200-2 내지 200-N)과 동기화를 중단한 후, 자기 자신을 초기화할 수 있다.
이후 관리자 단말(300)은, 특정 딜레이드 노드(100-1)에 변환 트리거링 정보를 발신할 수 있다. 구체적으로, 여러 개의 딜레이드 노드들(200-1 내지 200-N) 중 하나의 딜레이드 노드, 일 예로 특정 딜레이드 노드(200-1)를 선택하여 변환 트리거링 정보를 발신할 수 있는데, 이와 같은 선택은 관리자에 의해 수동으로 이루어질 수도 있고, 관리자 단말(300)에 의해 자동으로 이루어질 수도 있다. 예를 들어, 관리자는 구체적으로 어떠한 딜레이드 노드를 선택할지에 여부에 대한 정보를 관리자 단말(300)에 입력함으로써 관리자 단말(300)이 변환 트리거링 정보를 발신하도록 할 수도 있고, 또는 단순히 문제가 있는 블록의 번호만을 입력하면 관리자 단말(300)이 이를 참조로 하여 적절한 딜레이드 노드를 선택하여 이에 변환 트리거링 정보를 발신하도록 할 수도 있다. 후자의 경우, 관리자 단말(300)은, 입력된 블록 번호를 참조로 하여 문제 블록이 어느 시점에 생성되었는지를 확인하고, 적절한 딜레이드 노드, 즉 해당 노드의 최신 블록의 생성 시점이 문제 블록의 생성 시점과 가장 가까우면서 문제 블록의 생성 시점보다는 이전 시점에 생성된 딜레이드 노드를 선택하여 이에 변환 트리거링 정보를 발신하도록 할 수 있다는 것이다.
이와 같이 생성된 변환 트리거링 정보를 관리자 단말(300)로부터 획득하면, 특정 딜레이드 노드(100-1)는, 이를 참조로 하여 기존 서비스 노드들(200-1 내지 200-N)의 복구를 지원하기 위해, 소정의 딜레이 없이 기존 서비스 노드들(200-1 내지 200-N) 중 적어도 일부가 특정 딜레이드 노드(100-1) 자신에 포함된 딜레이드 블록들을 기준으로 하여 동기화되도록 지원할 수 있다. 이를 통해 기존 서비스 노드들(200-1 내지 200-N) 중 적어도 일부 그리고 특정 딜레이드 노드(100-1)가 동일한 타이밍에 동기화됨으로써 기존 서비스 노드들(200-1 내지 200-N) 중 적어도 일부가 신규 서비스 노드로서 기능하도록 설정될 수 있는 것이다. 기존 서비스 노드들(200-1 내지 200-N) 중 적어도 일부가 신규 서비스 노드로서 기능하도록 설정되는 구체적 방식은 추후 설명될 것이고, 먼저 특정 딜레이드 노드(100-1)의 동작 기전부터 설명하면, 특정 딜레이드 노드(100-1)의 변환 과정에서 두 가지 실시예가 존재하는데, 먼저 특정 딜레이드 노드(100-1)가 변환 트리거링 정보를 이용하여 판단한 후 필요한 프로세스를 수행하는 실시예에 대해 설명하도록 한다. 이 경우, 변환 트리거링 정보가 제1 경우인지 제2 경우인지 판단하여 프로세스를 결정하게 된다.
먼저, 제1 경우는, 변환 트리거링 정보에 포함된 복구 블록 번호 및 자기 자신의 최신 블록 번호를 참조로 했을 때, 두 번호가 동일한 경우에 대응할 수 있다. 이와 같은 경우에는 추가적인 동기화 과정이 필요하지 않으므로 특정 딜레이드 노드(100-1)는 바로 자신에 포함된 딜레이드 블록들을 기준으로 하여 상기 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하는 프로세스를 수행하게 된다. 이에 대해 설명하기 위해 도 3을 참조하도록 한다.
도 3은 본 발명의 일 실시예에 따른 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 지연 동기화 방법을 수행하는 특정 딜레이드 노드가 제1 경우에 기존 서비스 노드들을 어떻게 지원하는지를 나타낸 예시 도면이다.
도 3에서, 문제가 생긴 블록은 2555413번 블록인데, 특정 기존 서비스 노드(200-1)의 최신 블록은 2641812번 블록인 상황이다. 이 때, 문제가 생긴 블록 이전의 최신 블록인 2555412번 블록으로부터 다시 동기화를 시작하고자 할 것이므로, 관리자 단말(300)은 2555412번 복구 블록 번호를 포함하는 변환 트리거링 정보를 특정 딜레이드 노드(100-1)에 발신할 것이다. 이후, 특정 딜레이드 노드(100-1)는, 자신의 최신 블록 번호인 2555412번(특정 기존 서비스 노드(200-1)의 최신 블록 번호에 비해 86400 작다)과 복구 블록 번호가 동일하므로, 현재 자신이 포함하고 있는 딜레이드 블록들을 기준으로 기존 서비스 노드들(200-1 내지 200-N) 중 적어도 일부가 동기화될 수 있도록 하게 될 것이다.
제1 경우는 이상과 같고, 제2 경우는, 변환 트리거링 정보에 포함된 복구 블록 번호 및 자기 자신의 최신 블록 번호를 참조로 했을 때, 복구 블록 번호가 최신 블록 번호보다 큰 경우에 대응할 수 있다. 이 경우에는, 특정 딜레이드 노드(100-1)가, 기존 서비스 노드들(200-1 내지 200-N)과 추가적인 동기화 과정을 수행하여 블록들을 추가로 획득하고, 이를 포함하는 딜레이드 블록들에 대한 정보를 기준으로 기존 서비스 노드들(200-1 내지 200-N) 중 적어도 일부가 동기화되도록 하는 프로세스를 수행할 수 있다. 추가적인 동기화 과정에서, 특정 딜레이드 노드(100-1)는 복구 블록 번호를 참조로 하여, 해당 번호까지의 블록들을 획득할 수 있을 것이다. 이에 대해 설명하기 위해 도 4를 참조하도록 한다.
도 4는 본 발명의 일 실시예에 따른 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 지연 동기화 방법 을 수행하는 특정 딜레이드 노드가 제2 경우에 기존 서비스 노드들을 어떻게 지원하는지를 나타낸 예시 도면이다.
도 4에서, 문제가 생긴 블록은 2618821번 블록인데, 특정 기존 서비스 노드(200-1)의 최신 블록은 2641812번 블록인 상황이다. 이 때, 문제가 생긴 블록 이전의 최신 블록인 2618820번 블록으로부터 다시 동기화를 시작하고자 할 것이므로, 관리자 단말(300)은 2618820번 복구 블록 번호를 포함하는 변환 트리거링 정보를 특정 딜레이드 노드(100-1)에 발신할 것이다. 이후, 특정 딜레이드 노드(100-1)는, 자신의 최신 블록 번호인 2555412번보다 복구 블록 번호인 2618820번이 더 크므로, 기존 서비스 노드들(200-1 내지 200-N)로부터 2555413번 내지 2618820번에 해당하는 블록들을 획득한 다음, 1번 내지 2618820번에 해당하는 블록들을 기준으로 기존 서비스 노드들(200-1 내지 200-N) 중 적어도 일부가 동기화되도록 할 것이다.
기존 서비스 노드들(200-1 내지 200-N)의 기전을 설명하면, 특정 기존 서비스 노드(200-1)는, 전술한 바와 같이 초기화 트리거링 정보를 획득하여 자기 자신을 초기화한 뒤, 동기화 재시작 트리거링 정보를 획득하거나, 백업 트리거링 정보를 획득함에 따라 각각의 프로세스를 수행할 수 있다.
먼저, 동기화 재시작 트리거링 정보가 획득되는 경우, 특정 기존 서비스 노드(200-1)는 신규 서비스 노드로서 기능하게 된다. 즉, 특정 기존 서비스 노드(200-1)는, 전술했던 바와 같이 초기화된 후 특정 딜레이드 노드(100-1)와 동기화를 수행함으로써 새로운 데이터 체인을 완성함으로써 복구될 수 있다. 본 과정에서의 동기화는 복구 블록 번호까지의 딜레이드 블록들을 획득하여 새로운 데이터 체인을 완성하기 위해 빠르게 수행될 것이다. 이후에는, 특정 딜레이드 노드(100-1)와 특정 기존 서비스 노드(200-1)는 딜레이 없이 서로 동기화되고, 블록체인 네트워크가 상기 노드들을 기준으로 동작하게 되므로, 신규 서비스 노드로서 동작하도록 설정된 것이라고 할 수 있다.
만일 백업 트리거링 정보가 획득되는 경우, 특정 기존 서비스 노드(200-1)는 새로운 딜레이드 노드로서 기능하게 된다. 즉, 특정 기존 서비스 노드(200-1)는, 백업 트리거링 정보에 포함된 딜레이 속성 정보를 참조로 하여, 소정 딜레이가 유지되는 상태로 신규 서비스 노드들과 동기화함으로써 딜레이드 노드로서 동작하도록 설정될 수 있다. 실시예에 따라, 특정 기존 서비스 노드(200-1)가 특정 딜레이드 노드(100-1)를 대체하는 것으로 보아, 소정 딜레이가 본디의 특정 딜레이드 노드(100-1)의 딜레이와 동일하게 설정될 수 있을 것이다.
이상 특정 딜레이드 노드(100-1)가 변환 트리거링 정보를 이용하여 판단한 후 필요한 프로세스를 수행하는 실시예에 대해 설명한 바, 관리자가 수동으로 필요한 프로세스를 수행하도록 명령어를 입력하는 실시예에 대해 설명하도록 한다.
이는 관리자가 직접 관리자 단말(300)에 특정 딜레이드 노드(100-1)가 수행할 프로세스를 구체적으로 입력하여 주는 실시예에 관련된 것으로서, 전술한 실시예와 변환 트리거링 정보의 형태가 다를 수 있다. 구체적으로, 변환 트리거링 정보가 변환 명령만을 포함하거나, 변환 명령과 함께, 추가적인 동기화 명령을 포함할 수 있다. 이 때, 추가적인 동기화 명령은, 전술한 것과 같은 복구 블록 번호에 대한 정보를 포함할 수 있다.
먼저, 변환 트리거링 정보가 데이터 송신 명령만을 포함하는 경우, 특정 딜레이드 노드(100-1)는, 동기화를 중단한 다음 자신에 포함된 딜레이드 블록들을 기준으로 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 하는 프로세스를 수행할 수 있다. 또한, 변환 트리거링 정보가 데이터 송신 명령과 함께 추가적인 동기화 명령을 포함하는 경우, 추가적인 동기화 과정을 통해 복구 블록 번호까지의 블록을 획득한 후, 이를 포함하는 딜레이드 블록들을 기준으로 상기 기존 서비스 노드들(200-1 내지 200-N) 중 적어도 일부가 동기화되도록 하는 프로세스를 수행할 수 있다. 이상의 실시예에서 세부적인 과정 및 이후의 세부적인 과정은 전술한 실시예와 유사하므로 더욱 구체적인 설명은 생략하도록 한다.
이와 같은 방법에 따라 블록체인 네트워크를 복구하면, 백업 데이터의 획득 과정 역시 블록체인 네트워크에 기록되어 있고, 백업 데이터를 옮겨 넣는 과정이 블록체인 네트워크 상의 동기화를 통해 이루어지므로 그 속도가 매우 빠른 장점이 있다. 또한, 노드를 재활용하는 방식을 사용하므로 자원 소모를 줄일 수 있는 장점도 있다.
이상 설명된 본 발명에 따른 실시예들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명이 상기 실시예들에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형을 꾀할 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다.

Claims (14)

  1. 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 딜레이드 동기화 방법에 있어서,
    (a) 상기 블록체인 네트워크에 포함된, 소정 관리자 단말로부터 명령 트리거링 정보를 획득함에 따라 소정 기능을 수행하도록 설정된 특정 딜레이드 노드가, 자기 자신의 초기 설정에 따라 소정의 딜레이가 유지되는 상태로 상기 블록체인 네트워크에 포함된 기존 서비스 노드들과 동기화하는 단계; 및
    (b) 상기 특정 딜레이드 노드가, 상기 관리자 단말로부터 변환 트리거링 정보를 획득하면, 자신에 포함된 딜레이드 블록들을 기준으로 하여 상기 소정의 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하여 신규 서비스 노드로서 기능하도록 지원하면서, 자신이 상기 신규 서비스 노드로서 기능하도록 설정되는 적어도 하나의 프로세스를 수행하는 단계;
    를 포함하는 것을 특징으로 하는 방법.
  2. 제 1항에 있어서,
    상기 (b) 단계는,
    상기 특정 딜레이드 노드가, 상기 복구 데이터 지원 트리거링 정보에 포함된 복구 블록 번호 및 자신의 최신 블록 번호를 참조로 하여, (i) 상기 복구 블록 번호와 자신의 최신 블록 번호가 동일한 제1 경우에 동기화를 중단한 다음 자신에 포함된 딜레이드 블록들을 기준으로 하여 상기 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하는 프로세스를 수행하고, (ii) 상기 복구 블록 번호보다 상기 최신 블록 번호가 작은 경우에 대응하는 제2 경우에 상기 기존 서비스 노드들 중 적어도 일부와 추가적인 동기화 과정을 수행한 후, 이를 통해 획득된 블록들을 추가로 포함하는 딜레이드 블록들을 기준으로 하여 상기 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하는 프로세스를 수행하는 것을 특징으로 하는 방법.
  3. 제 2항에 있어서,
    상기 (b) 단계에 있어서,
    상기 특정 딜레이드 노드가, 상기 제2 경우에, 상기 서비스 노드들 중 적어도 하나의 서비스 노드와의 상기 추가적인 동기화 과정에서, 상기 복구 블록 번호를 참조로 하여 상기 복구 블록 번호까지의 블록들에 대한 정보를 획득하는 것을 특징으로 하는 방법.
  4. 제 1항에 있어서,
    상기 (b) 단계는,
    상기 특정 딜레이드 노드가, 상기 변환 트리거링 정보가 변환 명령만을 포함하는 경우 동기화를 중단한 다음 자신에 포함된 딜레이드 블록들을 기준으로 하여 상기 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하는 프로세스를 수행하고, 상기 변환 트리거링 정보가 상기 변환 명령 외에 추가적인 동기화 명령을 포함하는 경우 상기 복구 블록 번호를 이용하여 상기 기존 서비스 노드들 중 적어도 일부와 추가적인 동기화 과정을 수행한 후, 이를 통해 획득된 블록들을 추가로 포함하는 딜레이드 블록들을 기준으로 하여 상기 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하는 프로세스를 수행하는 것을 특징으로 하는 방법.
  5. 제 1항에 있어서,
    상기 블록체인 네트워크는, 상기 관리자 단말에 의해 각각 소정의 딜레이를 가지도록 설정된, 상기 특정 딜레이드 노드를 포함하는 복수 개의 딜레이드 노드들을 포함하고,
    상기 관리자 단말이 상기 특정 딜레이드 노드를 포함하는 상기 복수 개의 딜레이드 노드들 중 적어도 하나에 상기 변환 트리거링 정보를 발신하여 해당 딜레이드 노드가 신규 서비스 노드로서 기능하도록 설정함으로써 상기 블록체인 네트워크를 복구하되, 상기 변환 트리거링 정보를 획득하지 못한 적어도 일부의 딜레이드 노드들은 계속 상기 딜레이드 노드로서 기능하도록 설정되는 것을 특징으로 하는 방법.
  6. 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 딜레이드 동기화 방법에 있어서,
    (a) 상기 블록체인 네트워크에 포함된, 소정 관리자 단말로부터 명령 트리거링 정보를 획득함에 따라 소정 기능을 수행하도록 설정된 특정 기존 서비스 노드가, 상기 관리자 단말로부터 초기화 트리거링 정보를 획득하면, 자기 자신을 초기화하는 단계;
    (b) 상기 특정 기존 서비스 노드가, (i) 동기화 재시작 트리거링 정보가 획득되면, 상기 관리자 단말로부터 변환 트리거링 정보를 획득함으로써 신규 서비스 노드로 기능하도록 변경 설정된 특정 딜레이드 노드와 동기화를 수행함으로써 새로운 데이터 체인을 완성한 뒤 신규 서비스 노드로서 기능하도록 설정되는 프로세스, (ii) 백업 트리거링 정보가 획득되면, 상기 백업 트리거링 정보에 포함된 딜레이 속성 정보를 참조로 하여, 소정 딜레이가 유지되는 상태로 상기 신규 서비스 노드들과 동기화함으로써 상기 딜레이드 노드로서 동작하도록 설정되는 프로세스 중 적어도 일부를 수행하는 단계;
    를 포함하는 것을 특징으로 하는 방법.
  7. 제 6항에 있어서,
    상기 (a) 단계 이전에,
    상기 특정 딜레이드 노드는, 소정 딜레이가 유지되는 상태로 상기 특정 기존 서비스 노드와 동기화하고,
    상기 (b) 단계는,
    상기 특정 딜레이드 노드는, 상기 특정 기존 서비스 노드가 상기 동기화 재시작 트리거링 정보를 획득한 경우에, 자신에 포함된 딜레이드 블록들을 기준으로 하여 상기 소정의 딜레이 없이 상기 특정 기존 서비스 노드가 동기화되도록 지원함으로써 상기 신규 서비스 노드로서 기능하도록 하는 것을 특징으로 하는 방법.
  8. 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 딜레이드 동기화 방법을 수행하는, 상기 블록체인 네트워크에 포함된, 소정 관리자 단말로부터 명령 트리거링 정보를 획득함에 따라 소정 기능을 수행하도록 설정된 특정 딜레이드 노드에 있어서,
    인스트럭션들을 저장하는 하나 이상의 메모리; 및
    상기 인스트럭션들을 수행하도록 설정된 하나 이상의 프로세서를 포함하되,
    상기 프로세서는, (I) 자기 자신의 초기 설정에 따라 소정의 딜레이가 유지되는 상태로 상기 블록체인 네트워크에 포함된 기존 서비스 노드들과 동기화하는 프로세스; 및 (II) 상기 특정 딜레이드 노드가, 상기 관리자 단말로부터 변환 트리거링 정보를 획득하면, 자신에 포함된 딜레이드 블록들을 기준으로 하여 상기 소정의 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하여 신규 서비스 노드로서 기능하도록 지원하면서, 자신이 상기 신규 서비스 노드로서 기능하도록 설정되는 적어도 하나의 프로세스를 수행하는 프로세스;
    를 수행하는 것을 특징으로 하는 특정 딜레이드 노드.
  9. 제 8항에 있어서,
    상기 (II) 프로세스는,
    상기 프로세서가, 상기 복구 데이터 지원 트리거링 정보에 포함된 복구 블록 번호 및 자신의 최신 블록 번호를 참조로 하여, (i) 상기 복구 블록 번호와 자신의 최신 블록 번호가 동일한 제1 경우에 동기화를 중단한 다음 자신에 포함된 딜레이드 블록들을 기준으로 하여 상기 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하는 프로세스를 수행하고, (ii) 상기 복구 블록 번호보다 상기 최신 블록 번호가 작은 경우에 대응하는 제2 경우에 상기 서비스 노드들과 추가적인 동기화 과정을 수행한 후, 이를 통해 획득된 블록들을 추가로 포함하는 딜레이드 블록들을 기준으로 하여 상기 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하는 프로세스를 수행하는 것을 특징으로 하는 특정 딜레이드 노드.
  10. 제 9항에 있어서,
    상기 (II) 프로세스에 있어서,
    상기 프로세서가, 상기 제2 경우에, 상기 서비스 노드들 중 적어도 하나의 서비스 노드와의 상기 추가적인 동기화 과정에서, 상기 복구 블록 번호를 참조로 하여 상기 복구 블록 번호까지의 블록들에 대한 정보를 획득하는 것을 특징으로 하는 특정 딜레이드 노드.
  11. 제 8항에 있어서,
    상기 (II) 프로세스는,
    상기 프로세서가, 상기 복구 데이터 지원 트리거링 정보가 변환 명령만을 포함하는 경우 동기화를 중단한 다음 자신에 포함된 딜레이드 블록들을 기준으로 하여 상기 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하는 프로세스를 수행하고, 상기 복구 데이터 지원 트리거링 정보가 상기 변환 명령 외에 추가적인 동기화 명령을 포함하는 경우 상기 복구 블록 번호를 이용하여 상기 서비스 노드들과 추가적인 동기화 과정을 수행한 후, 이를 통해 획득된 블록들을 추가로 포함하는 딜레이드 블록들을 기준으로 하여 상기 딜레이 없이 상기 기존 서비스 노드들 중 적어도 일부가 동기화되도록 지원하는 프로세스를 수행하는 것을 특징으로 하는 특정 딜레이드 노드.
  12. 제 8항에 있어서,
    상기 블록체인 네트워크는, 상기 관리자 단말에 의해 각각 소정의 딜레이를 가지도록 설정된, 상기 특정 딜레이드 노드를 포함하는 복수 개의 딜레이드 노드들을 포함하고,
    상기 관리자 단말이 상기 특정 딜레이드 노드를 포함하는 상기 복수 개의 딜레이드 노드들 중 적어도 하나에 상기 변환 트리거링 정보를 발신하여 해당 딜레이드 노드가 신규 서비스 노드로서 기능하도록 설정함으로써 상기 블록체인 네트워크를 복구하되, 상기 변환 트리거링 정보를 획득하지 못한 적어도 일부의 딜레이드 노드들은 계속 상기 딜레이드 노드로서 기능하도록 설정되는 것을 특징으로 하는 특정 딜레이드 노드.
  13. 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 딜레이드 동기화 방법을 수행하는, 상기 블록체인 네트워크에 포함된, 소정 관리자 단말로부터 명령 트리거링 정보를 획득함에 따라 소정 기능을 수행하도록 설정된 특정 기존 서비스 노드에 있어서,
    인스트럭션들을 저장하는 하나 이상의 메모리; 및
    상기 인스트럭션들을 수행하도록 설정된 하나 이상의 프로세서를 포함하되,
    상기 프로세서는, (I) 상기 관리자 단말로부터 초기화 트리거링 정보를 획득하면, 자기 자신을 초기화하는 프로세스; (II) (i) 동기화 재시작 트리거링 정보가 획득되면, 상기 관리자 단말로부터 변환 트리거링 정보를 획득함으로써 신규 서비스 노드로 기능하도록 변경 설정된 특정 딜레이드 노드와 동기화를 수행함으로써 새로운 데이터 체인을 완성한 뒤 신규 서비스 노드로서 기능하도록 설정되는 프로세스, (ii) 백업 트리거링 정보가 획득되면, 상기 백업 트리거링 정보에 포함된 딜레이 속성 정보를 참조로 하여, 소정 딜레이가 유지되는 상태로 상기 신규 서비스 노드들과 동기화함으로써 상기 딜레이드 노드로서 동작하도록 설정되는 프로세스 중 적어도 일부를 수행하는 프로세스;
    를 수행하는 것을 특징으로 하는 특정 기존 서비스 노드.
  14. 제 13항에 있어서,
    상기 (I) 프로세스 이전에,
    상기 프로세서가, 소정 딜레이가 유지되는 상태로 상기 특정 기존 서비스 노드와 동기화하고,
    상기 (II) 프로세스는,
    상기 프로세서가, 상기 특정 기존 서비스 노드가 상기 동기화 재시작 트리거링 정보를 획득한 경우에, 자신에 포함된 딜레이드 블록들을 기준으로 하여 상기 소정의 딜레이 없이 상기 특정 기존 서비스 노드가 동기화되도록 지원함으로써 상기 신규 서비스 노드로서 기능하도록 하는 것을 특징으로 하는 특정 기존 서비스 노드.
KR1020190045768A 2019-04-18 2019-04-18 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 딜레이드 동기화 방법 및 장치 KR102221366B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020190045768A KR102221366B1 (ko) 2019-04-18 2019-04-18 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 딜레이드 동기화 방법 및 장치
US16/850,276 US20200334110A1 (en) 2019-04-18 2020-04-16 Method for Restoring a Blockchain Network Via Synchronizations While Maintaining Reliability on Backup Data and Minimizing Resource Usage by Converting the Identities of Nodes Adaptively, and the Nodes Using the Same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190045768A KR102221366B1 (ko) 2019-04-18 2019-04-18 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 딜레이드 동기화 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20200122724A true KR20200122724A (ko) 2020-10-28
KR102221366B1 KR102221366B1 (ko) 2021-03-02

Family

ID=72829414

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190045768A KR102221366B1 (ko) 2019-04-18 2019-04-18 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 딜레이드 동기화 방법 및 장치

Country Status (2)

Country Link
US (1) US20200334110A1 (ko)
KR (1) KR102221366B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023054936A1 (ko) * 2021-09-29 2023-04-06 삼성전자 주식회사 블록체인 네트워크에서 블록 데이터를 복구하는 전자 장치 및 그의 동작 방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114095166A (zh) * 2021-11-23 2022-02-25 北京京东方技术开发有限公司 生成节点临时身份标识的方法、节点及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100891036B1 (ko) * 2008-09-08 2009-03-31 (주)데이타뱅크시스템즈 데이터베이스의 실시간 복제를 통한 자동 복구 시스템 및 그 방법
KR20090062106A (ko) * 2007-12-12 2009-06-17 한국전자통신연구원 파일 입출력과 복제의 균형적 수행을 위한 지연복제 시스템및 방법
KR20180085570A (ko) * 2017-01-19 2018-07-27 주식회사 케이티 블록 체인을 이용하여 데이터를 관리하는 장치 및 방법

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7249281B2 (en) * 2003-07-28 2007-07-24 Microsoft Corporation Method and system for backing up and restoring data of a node in a distributed system
US8676759B1 (en) * 2009-09-30 2014-03-18 Sonicwall, Inc. Continuous data backup using real time delta storage
US9280430B2 (en) * 2014-05-13 2016-03-08 Netapp, Inc. Deferred replication of recovery information at site switchover
US10198325B2 (en) * 2016-05-24 2019-02-05 Mastercard International Incorporated Method and system for desynchronization recovery for permissioned blockchains using bloom filters
US10860738B2 (en) * 2018-01-30 2020-12-08 Hewlett Packard Enterprise Development Lp Augmented metadata and signatures for objects in object stores

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090062106A (ko) * 2007-12-12 2009-06-17 한국전자통신연구원 파일 입출력과 복제의 균형적 수행을 위한 지연복제 시스템및 방법
KR100891036B1 (ko) * 2008-09-08 2009-03-31 (주)데이타뱅크시스템즈 데이터베이스의 실시간 복제를 통한 자동 복구 시스템 및 그 방법
KR20180085570A (ko) * 2017-01-19 2018-07-27 주식회사 케이티 블록 체인을 이용하여 데이터를 관리하는 장치 및 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023054936A1 (ko) * 2021-09-29 2023-04-06 삼성전자 주식회사 블록체인 네트워크에서 블록 데이터를 복구하는 전자 장치 및 그의 동작 방법

Also Published As

Publication number Publication date
US20200334110A1 (en) 2020-10-22
KR102221366B1 (ko) 2021-03-02

Similar Documents

Publication Publication Date Title
US20220066892A1 (en) Automatic configuration of a recovery service
RU2714098C1 (ru) Способ и устройство обработки данных
JP6084624B2 (ja) 高可用性クラスタにおけるスプリット・ブレイン耐性フェイルオーバ
US7139887B2 (en) Coordinated storage management operations in replication environment
US10216589B2 (en) Smart data replication recoverer
US9891849B2 (en) Accelerated recovery in data replication environments
US7831550B1 (en) Propagating results of a volume-changing operation to replicated nodes
WO2014059804A1 (zh) 数据同步方法及系统
WO2020224237A1 (zh) 区块链共识的方法、装置、设备及存储介质
KR102221366B1 (ko) 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하며, 노드를 재활용함으로써 자원 소모를 최소화하는 딜레이드 동기화 방법 및 장치
US11531604B2 (en) Methods and systems for data resynchronization in a replication environment
JP3808874B2 (ja) 分散システム及び多重化制御方法
US11372727B2 (en) Method, device, and computer-readable storage medium for managing storage system
US11726886B2 (en) Scalable low-loss disaster recovery for data stores
US8977897B2 (en) Computer-readable recording medium, data management method, and storage device
US10649862B1 (en) Reducing failback performance duration in data replication systems
KR102221350B1 (ko) 백업 데이터에 대한 신뢰성을 확보하면서도 블록체인 네트워크를 복구하는 딜레이드 동기화 방법 및 장치
US9946617B2 (en) Optimized recovery in data replication environments
CN111858076B (zh) 一种目标守护进程同步方法和装置
CN104298553B (zh) 一种虚拟机迁移的方法、vrms和系统
US11188522B2 (en) Streamlined database commit for synchronized nodes
US11748314B2 (en) Method, device and computer program product for data replication
US20240094953A1 (en) Reconfiguration framework for byzantine fault tolerant (bft) state machine replication (smr) systems
CN111966532A (zh) 数据库的管理方法和装置、电子设备和介质
JP5870174B1 (ja) データ送信システム

Legal Events

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