KR102650336B1 - 외부 저장소와 pbft 합의 알고리즘을 이용한 경량화 블록체인 제공 방법 및 장치 - Google Patents

외부 저장소와 pbft 합의 알고리즘을 이용한 경량화 블록체인 제공 방법 및 장치 Download PDF

Info

Publication number
KR102650336B1
KR102650336B1 KR1020210058061A KR20210058061A KR102650336B1 KR 102650336 B1 KR102650336 B1 KR 102650336B1 KR 1020210058061 A KR1020210058061 A KR 1020210058061A KR 20210058061 A KR20210058061 A KR 20210058061A KR 102650336 B1 KR102650336 B1 KR 102650336B1
Authority
KR
South Korea
Prior art keywords
block
lightweight
verification
blockchain
general
Prior art date
Application number
KR1020210058061A
Other languages
English (en)
Other versions
KR20220150728A (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 KR1020210058061A priority Critical patent/KR102650336B1/ko
Publication of KR20220150728A publication Critical patent/KR20220150728A/ko
Application granted granted Critical
Publication of KR102650336B1 publication Critical patent/KR102650336B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/1737Details of further file system functions for reducing power consumption or coping with limited storage space, e.g. in mobile devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F16/1834Distributed file systems implemented based on peer-to-peer networks, e.g. gnutella
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • 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/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
    • 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)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Power Engineering (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

외부 저장소와 PBFT 합의 알고리즘을 이용한 경량화 블록체인 제공 방법 및 장치가 개시된다. 블록체인 노드들 중 리더 노드가 수행하는 경량화 블록체인 제공 방법은 신규 트랜잭션 데이터에 기초하여 일반 블록을 생성하는 단계; 상기 일반 블록을 상기 리더 노드를 제외한 나머지 블록체인 노드들인 검증 노드들로 전송하여 프랙티컬 비잔틴 장애 허용(Practical Byzantine Fault Tolerance, 이하 PBFT) 검증을 요청하는 단계; 상기 검증 노드들로부터 상기 일반 블록에 대한 검증이 완료된 경우, 상기 일반 블록을 외부 저장소로 업로드 하는 단계; 및 상기 외부 저장소로부터 상기 일반 블록에 대한 주소를 반환 받아 신규 경량화 블록을 생성하는 단계를 포함할 수 있다.

Description

외부 저장소와 PBFT 합의 알고리즘을 이용한 경량화 블록체인 제공 방법 및 장치{METHOD AND APPARATUS FOR PROVIDING LIGHTWEIGHT BLOCKCHAIN USING EXTERNAL STRORAGE AND PBFT CONSENSUS ALGORITHM}
본 발명은 경량화 블록체인 제공 방법 및 장치에 관한 것으로, 보다 구체적으로는 한정적인 하드웨어 성능을 가진 경량화 블록체인 제공 장치의 블록 생성 방법 및 블록 간 연결 방법에 관한 것이다.
종래의 블록체인 기술은 합의 알고리즘을 통한 데이터 신뢰성과 모든 노드가 같은 블록체인 원장을 보유하여 위변조 가능성을 없애는 기능을 한다. 단말기 또는 사물인터넷 기기와 같은 한정적인 하드웨어를 가진 기기에서는 블록체인에서 요구되는 저장 용량과 연산 능력 때문에 동작이 적합하지 않다.
따라서, 이와 같은 한정적인 하드웨어를 가진 기기에서 블록체인 용량을 감소시킬 수 있는 기술과 연산 능력을 요구하지 않는 합의 알고리즘이 적용된 블록체인이 필요하다.
본 발명은 낮은 저장 용량을 가진 기기에서 블록체인을 제공하기 위하여 블록의 헤더 영역 및 바디 영역에 존재하는 데이터를 전부 또는 일부만 추출한 후 외부 저장소에 업로드 함으로써 블록체인을 경량화하는 방법 및 장치를 제공한다.
또한, 본 발명은 낮은 연산 능력을 가진 기기에서 블록체인을 제공하기 위하여 프랙티컬 비잔틴 장애 허용(Practical Byzantine Fault Tolerance, 이하 PBFT) 합의 알고리즘을 통해 연산 능력이 요구되지 않는 합의 방법을 이용함으로써 블록의 생성과 검증을 수행하는 방법 및 장치를 제공한다.
또한, 본 발명은 블록을 생성하는 과정에서 개인키를 통해 데이터를 암호화함으로써 개인의 데이터가 블록체인 내에서 공개되지 않도록 하는 방법 및 장치를 제공한다.
본 발명의 일실시예에 따른 블록체인 노드들 중 리더 노드가 수행하는 경량화 블록체인 제공 방법은 신규 트랜잭션 데이터에 기초하여 일반 블록을 생성하는 단계; 상기 일반 블록을 상기 리더 노드를 제외한 나머지 블록체인 노드들인 검증 노드들로 전송하여 프랙티컬 비잔틴 장애 허용(Practical Byzantine Fault Tolerance, 이하 PBFT) 검증을 요청하는 단계; 상기 검증 노드들로부터 상기 일반 블록에 대한 검증이 완료된 경우, 상기 일반 블록을 외부 저장소로 업로드 하는 단계; 및 상기 외부 저장소로부터 상기 일반 블록에 대한 주소를 반환 받아 신규 경량화 블록을 생성하는 단계를 포함할 수 있다.
상기 일반 블록을 생성하는 단계는 상기 신규 트랜잭션 데이터를 개인키를 이용하여 암호화함으로써 상기 일반 블록을 생성할 수 있다.
상기 PBFT 검증을 요청하는 단계는 상기 일반 블록과 함께 Prepare 메시지 및 Commit 메시지를 상기 검증 노드들로 전송하고, 상기 검증 노드들은 상기 리더 노드로부터 상기 일반 블록과 함께 Prepare 메시지 및 Commit 메시지를 수신한 경우, 상기 일반 블록의 이전 블록해시 값과 상기 검증 노드들의 원장에 기록된 마지막 경량화 블록의 주소를 통해 식별된 상기 일반 블록의 직전 블록에 대한 블록해시 값을 비교함으로써 상기 일반 블록에 대한 PBFT 검증을 수행할 수 있다.
상기 검증 노드들은 상기 일반 블록에 대한 검증 결과 상기 일반 블록이 위변조 되지 않았다고 판단되면, 상기 Prepare 메시지 및 Commit 메시지에 개인키로 서명을 하여 상기 리더 노드로 검증 결과를 전송할 수 있다.
상기 일반 블록을 외부 저장소로 업로드 하는 단계는 상기 일반 블록의 헤더 영역 및 바디 영역에 존재하는 데이터를 전부 또는 일부만 추출하여 상기 외부 저장소로 전송할 수 있다.
상기 경량화 블록을 생성하는 단계는 상기 신규 경량화 블록에 대한 헤더 블록 번호, 상기 외부 저장소로부터 반환된 상기 일반 블록에 대한 주소 및 상기 신규 경량화 블록의 직전 경량화 블록에 대응하는 이전 헤더 블록해시 값을 이용하여 상기 신규 경량화 블록에 대한 헤더 블록해시 값을 결정함으로써 경량화 블록들 사이를 연결할 수 있다.
상기 일반 블록은 블록 번호, 블록해시 값, 이전 블록해시 값 및 트랜잭션 데이터 중 적어도 하나를 포함하고, 상기 경량화 블록은 헤더 블록 번호, 상기 일반 블록에 대한 외부 저장소의 주소, 헤더 블록해시 값 및 이전 헤더 블록해시 값 중 적어도 하나를 포함할 수 있다.
본 발명의 일실시예에 따른 경량화 블록체인 제공 방법을 수행하는 경량화 블록체인 제공 장치는 프로세서를 포함하고, 상기 프로세서는 신규 트랜잭션 데이터에 기초하여 일반 블록을 생성하고, 상기 일반 블록을 상기 리더 노드를 제외한 나머지 블록체인 노드들인 검증 노드들로 전송하여 프랙티컬 비잔틴 장애 허용(Practical Byzantine Fault Tolerance, 이하 PBFT) 검증을 요청하며, 상기 검증 노드들로부터 상기 일반 블록에 대한 검증이 완료된 경우, 상기 일반 블록을 외부 저장소로 업로드 하고, 상기 외부 저장소로부터 상기 일반 블록에 대한 주소를 반환 받아 경량화 블록을 생성할 수 있다.
상기 프로세서는 상기 신규 트랜잭션 데이터를 개인키를 이용하여 암호화함으로써 상기 일반 블록을 생성할 수 있다.
상기 프로세서는 상기 일반 블록과 함께 Prepare 메시지 및 Commit 메시지를 상기 검증 노드들로 전송하여 PBFT 검증을 요청하고, 상기 검증 노드들은 상기 리더 노드로부터 상기 일반 블록과 함께 Prepare 메시지 및 Commit 메시지를 수신한 경우, 상기 일반 블록의 이전 블록해시 값과 상기 검증 노드들의 원장에 기록된 마지막 경량화 블록의 주소를 통해 식별된 상기 일반 블록의 직전 블록에 대한 블록해시 값을 비교함으로써 상기 일반 블록에 대한 PBFT 검증을 수행할 수 있다.
상기 검증 노드들은 상기 일반 블록에 대한 검증 결과 상기 일반 블록이 위변조 되지 않았다고 판단되면, 상기 Prepare 메시지 및 Commit 메시지에 개인키로 서명을 하여 상기 리더 노드로 검증 결과를 전송할 수 있다.
상기 프로세서는 상기 일반 블록을 구성하는 헤더 영역 및 바디 영역에 존재하는 데이터를 전부 또는 일부만 추출하여 상기 외부 저장소로 전송할 수 있다.
상기 프로세서는 상기 신규 경량화 블록에 대한 헤더 블록 번호, 상기 외부 저장소로부터 반환된 상기 일반 블록에 대한 주소 및 상기 신규 경량화 블록의 직전 경량화 블록에 대응하는 이전 헤더 블록해시 값을 이용하여 상기 신규 경량화 블록에 대한 헤더 블록해시 값을 결정함으로써 상기 경량화 블록들 사이를 연결할 수 있다.
상기 일반 블록은 블록 번호, 블록해시 값, 이전 블록해시 값 및 트랜잭션 데이터 중 적어도 하나를 포함하고, 상기 경량화 블록은 헤더 블록 번호, 상기 일반 블록에 대한 외부 저장소의 주소, 헤더 블록해시 값 및 이전 헤더 블록해시 값 중 적어도 하나를 포함할 수 있다.
본 발명은 낮은 저장 용량을 가진 기기에서 블록체인을 제공하기 위하여 블록의 헤더 영역 및 바디 영역에 존재하는 데이터를 전부 또는 일부만 추출한 후 외부 저장소에 업로드 함으로써 블록체인을 경량화할 수 있다.
또한, 본 발명은 낮은 연산 능력을 가진 기기에서 블록체인을 제공하기 위하여 PBFT 합의 알고리즘을 통해 연산 능력이 요구되지 않는 합의 방법을 이용함으로써 블록의 생성과 검증을 수행할 수 있다.
또한, 본 발명은 블록을 생성하는 과정에서 개인키를 통해 데이터를 암호화함으로써 개인의 데이터가 블록체인 내에서 공개되지 않도록 할 수 있다.
도 1은 본 발명의 일실시예에 따른 경량화 블록체인 시스템을 나타낸 도면이다.
도 2는 본 발명의 일실시예에 따른 경량화 블록체인 시스템(100)의 블록 생성 및 검증을 위한 합의 과정을 플로우차트로 나타낸 도면이다.
도 3은 본 발명의 일실시예에 따른 경량화 블록체인 시스템(100)의 경량화 블록 생성 과정을 플로우차트로 나타낸 도면이다.
도 4는 본 발명의 일실시예에 따른 경량화 블록체인 시스템이 제공하는 블록 구조를 나타낸 도면이다.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일실시예에 따른 경량화 블록체인 시스템을 나타낸 도면이다.
도 1을 참고하면, 경량화 블록체인 시스템(100)은 모바일 기기 및 사물 인터넷 등의 한정된 하드웨어 성능을 가진 기기에서 블록체인 기술을 적용하기 위한 경량화된 블록체인의 블록 생성 방법을 제공할 수 있다. 보다 구체적으로 경량화 블록체인 시스템(100)은 리더 노드(110)와 검증 노드들(120, 130)로 구성된 복수의 블록체인 노드들 및 외부 저장소(140)로 구성될 수 있다. 이때, 블록체인 노드들은 한정된 저장 공간과 연산 능력을 가진 기기로써 일례로, 휴대폰 등과 같은 모바일 기기일 수 있다. 본 발명에서 이와 같은 블록체인 노드들은 경량화 블록체인 제공 장치로 표현될 수 있으며, 도 1의 예에서는 3개의 블록체인 노드들이 표현되어 있으나 블록체인 노드들의 개수는 이에 한정되지 않고 확장 가능할 수 있다.
경량화 블록체인 시스템(100)은 한정된 저장 공간을 가지는 경량화 블록체인 제공 장치에서 블록체인 기술을 적용하기 위하여 새로 생성되는 일반 블록에 포함되는 데이터의 전체 또는 일부만 추출하여 외부 저장소(140)에 업로드 할 수 있다. 이때, 일반 블록은 블록 번호, 블록해시 값, 이전 블록해시 값 및 트랜잭션 데이터 중 적어도 하나를 포함할 수 있으며, 이와 같은 일반 블록의 데이터가 업로드 되는 외부 저장소(140)는 분산형 파일 시스템, 일례로, IPFS(InterPlanetary File System)나 기업 클라우드 서버, 이더리움 Swarm 및 NAS(Network-Attached Storage) 등이 이용될 수 있다.
이후 경량화 블록체인 시스템(100)은 외부 저장소(140)로부터 일반 블록에 대한 주소를 반환 받아 새로운 경량화 블록을 생성할 수 있다. 이때, 생성되는 경량화 블록은 헤더 블록 번호, 주소, 헤더 블록해시 값 및 이전 헤더 블록해시 값 중 적어도 하나를 포함할 수 있다.
즉, 경량화 블록체인 시스템(100)은 용량을 많이 차지하는 일반 블록의 정보들을 외부 저장소(140)에 업로드 하고, 일반 블록의 정보들이 업로드된 외부 저장소(140)의 주소만을 이용하여 새로운 경량화 블록을 생성함으로써 한정된 저장 공간을 가지는 경량화 블록체인 제공 장치에서 원활히 블록체인 기술을 제공할 수 있다. 이때, 각각의 노드에 대응하는 경량화 블록체인 제공 장치는 경량화 블록에 포함된 외부 저장소(140)의 주소를 이용하여 해당 주소에 대응하는 일반 블록을 호출하는 것이 가능하다.
또한, 경량화 블록체인 시스템(100)은 낮은 연산 능력을 가지는 경량화 블록체인 제공 장치에서 블록체인 기술을 적용하기 위하여 PBFT 합의 알고리즘을 통해 연산 능력이 요구되지 않는 합의 방법을 이용함으로써 일반 블록의 생성과 검증을 수행할 수 있다.
한편, 경량화 블록체인 시스템(100)은 일반 블록이 생성되는 과정에서 개인키(150)를 통해 데이터를 암호화함으로써 블록체인 내에서 개인의 데이터에 대한 보안을 강화할 수 있다.
도 2는 본 발명의 일실시예에 따른 경량화 블록체인 시스템(100)의 블록 생성 및 검증을 위한 합의 과정을 플로우차트로 나타낸 도면이다.
경량화 블록체인 시스템(100)의 블록체인 노드들(110~130) 중 리더 노드(110)는 단계(210)에서, 트랜잭션 데이터가 발생된 경우 새로운 일반 블록을 생성할 수 있다. 이때, 리더 노드(110)가 생성하는 일반 블록은 종래의 블록체인 시스템에서 생성되는 블록과 같이 블록 번호, 블록해시 값, 이전 블록해시 값 및 트랜잭션 데이터 중 적어도 하나를 포함할 수 있다.
단계(220)에서, 리더 노드(110)는 생성된 일반 블록을 나머지 블록체인 노드들인 검증 노드들(120, 130)로 전송하여 PBFT 합의 알고리즘을 통한 일반 블록의 검증을 요청할 수 있다. 이때, 리더 노드(110)는 일반 블록에 대한 2단계 검증을 시행할 수 있으며, 각각에 단계에서 위변조 방지를 위한 BFT(Byzantine Fault Tolerance)와 네트워크 오류로 인한 에러 방지를 위한 CFT(Crash Fault Tolerance)가 수행될 수 있다. 즉, 리더 노드(110)는 일반 블록과 함께 BFT를 위한 Prepare 메시지 및 CFT를 위한 Commit 메시지를 검증 노드들(120, 130)로 전송함으로써 일반 블록에 대한 검증을 요청할 수 있다.
검증 노드들(120, 130) 각각은 리더 노드(110)로부터 검증 요청을 받은 일반 블록에 대해 PBFT 합의 알고리즘을 이용하여 검증을 수행할 수 있다. 보다 구체적으로 검증 노드들(120, 130) 각각은 일반 블록에 포함된 이전 블록해시 값과 자신의 원장에 기록된 마지막 경량화 블록에 포함된 주소를 이용하여 일반 블록에 대한 검증을 수행할 수 있다.
보다 구체적으로 검증 노드들(120, 130)은 자신의 원장에 기록된 마지막 경량화 블록의 주소를 이용하여 해당 주소에 대응하는 직전 블록을 외부 저장소(140)로부터 불러올 수 있다.
이후 검증 노드들(120, 130)은 리더 노드(110)에서 수신된 일반 블록의 이전 블록해시 값과 외부 저장소(140)에서 수신된 직전 블록의 블록해시 값을 비교하여 두 블록해시 값이 동일한지 여부를 식별할 수 있다.
이때, 검증 노드들(120, 130)은 일반 블록의 이전 블록해시 값과 직전 블록의 블록해시 값이 동일한 것으로 식별되면, 해당 일반 블록이 위변조되지 않았다고 판단할 수 있다. 이와는 달리 검증 노드들(120, 130) 각각은 일반 블록의 이전 블록해시 값과 직전 블록의 블록해시 값이 서로 다른 경우, 해당 일반 블록이 위변조되었다고 판단할 수 있다.
단계(240)에서, 검증 노드들(120, 130) 각각은 일반 블록에 대한 검증 결과를 리더 노드(110)로 전송할 수 있다. 이때, 검증 노드들(120, 130) 각각은 일반 블록의 이전 블록해시 값과 직전 블록의 블록해시 값이 동일한 경우, 리더 노드(110)로부터 전달된 Prepare 메시지 및 Commit 메시지에 개인키로 서명을 하여 리더 노드(110)로 검증 결과를 전송할 수 있다.
단계(250)에서, 리더 노드(110)는 검증 노드들(120, 130)로부터 수신된 일반 블록에 대한 검증 결과에 기초하여 일반 블록을 외부 저장소(140)에 업로드할 지 여부를 판단할 수 있다. 보다 구체적으로 리더 노드(110)는 검증 노드들(120, 130)로부터 수신된 검증 결과에 기초하여 2/3 이상의 검증 노드들이 일반 블록에 대해 검증 완료(위변조 되지 않음을 의미)한 것으로 식별되면, 해당 일반 블록을 외부 저장소(140)에 업로드하는 것으로 결정할 수 있다. 이때, 리더 노드(110)는 PBFT 합의 알고리즘을 이용하여 검증을 수행하므로 단계(220) 내지 단계(250)을 1회 반복하여 재수행함으로써 일반 블록의 외부 저장소(140) 업로드 여부를 최종 판단할 수 있다.
단계(260)에서, 리더 노드(110)는 일반 블록을 외부 저장소(140)에 업로드 하는 것으로 판단된 경우, 일반 블록의 헤더 영역 및 바디 영역에 존재하는 데이터를 전부 또는 일부만 추출하여 외부 저장소(140)로 업로드 할 수 있다. 이때, 리더 노드(110)는 일반 블록 중 제네시스 블록에 대해 바디 영역만 업로드 한 경우, 제네시스 블록 이후 생성되는 모든 일반 블록에 대한 바디 영역만을 추출하여 외부 저장소(140)에 업로드 할 수 있다. 이와는 달리 리더 노드(110)는 일반 블록 중 제네시스 블록에 대해 헤더 영역 및 바디 영역을 포함하는 블록 전체를 업로드 한 경우, 제네시스 블록 이후 생성되는 모든 일반 블록의 블록 전체를 외부 저장소(140)에 업로드 할 수 있다.
마지막으로 단계(270)에서, 리더 노드(110)는 외부 저장소(140)로부터 업로드 된 일반 블록에 대한 주소를 반환 받을 수 있다. 일례로, 외부 저장소(140)가 IPFS(InterPlanetary File System) 인 경우, 리더 노드(110)는 외부 저장소(140)로부터 IPFS 해시 값을 반환 받을 수 있다.
도 3은 본 발명의 일실시예에 따른 경량화 블록체인 시스템(100)의 경량화 블록 생성 과정을 플로우차트로 나타낸 도면이다.
도 3을 참고하면, 단계(310)에서, 리더 노드(110)는 외부 저장소(140)로부터 반환 받은 일반 블록에 대한 주소를 식별할 수 있다. 위에서 언급한 바와 같이 외부 저장소(140)가 IPFS(InterPlanetary File System) 인 경우, 리더 노드(110)는 외부 저장소(140)로부터 반환 받은 IPFS 해시 값을 식별할 수 있다.
단계(320)에서, 리더 노드(110)는 외부 저장소(140)로부터 반환 받은 일반 블록에 대한 주소를 이용하여 신규 경량화 블록을 생성할 수 있다. 보다 구체적으로 리더 노드(110)는 생성하고자 하는 신규 경량화 블록의 헤더 블록 번호, 외부 저장소(140)로부터 반환된 일반 블록에 대한 주소 및 신규 경량화 블록의 직전 경량화 블록에 대응하는 이전 헤더 블록해시 값을 이용하여 신규 경량화 블록의 헤더 블록해시 값을 결정할 수 있다. 즉, 경량화 블록들은 이와 같이 결정된 헤더 블록해시 값을 통해 연결될 수 있다.
단계(330)에서, 리더 노드(110)는 새로 생성된 신규 경량화 블록을 검증 노드들(120, 130)로 전달할 수 있으며, 단계(340)에서, 검증 노드들(120, 130)은 리더 노드(110)로부터 전달된 신규 경량화 블록을 자신의 원장에 추가할 수 있다.
도 4는 본 발명의 일실시예에 따른 경량화 블록체인 시스템이 제공하는 블록 구조를 나타낸 도면이다.
도 4를 참고하면, 본 발명의 경량화 블록체인 시스템(100)은 비교적 용량이 큰 일반 블록이 외부 저장소(140)의 저장공간에 저장되고, 용량이 작은 경량화 블록이 블록체인 노드의 저장공간에 저장될 수 있다.
이때, 경량화 블록은 외부 저장소(140)에 저장된 일반 블록의 주소와 헤더 블록 번호 및 직전 경량화 블록에 대응하는 이전 헤더 블록해시 값을 이용하여 헤더 블록해시 값이 결정될 수 있으며, 이와 같이 결정된 헤더 블록해시 값을 통해 경량화 블록들 사이가 연결될 수 있다.
한편, 본 발명에 따른 방법은 컴퓨터에서 실행될 수 있는 프로그램으로 작성되어 마그네틱 저장매체, 광학적 판독매체, 디지털 저장매체 등 다양한 기록 매체로도 구현될 수 있다.
본 명세서에 설명된 각종 기술들의 구현들은 디지털 전자 회로조직으로, 또는 컴퓨터 하드웨어, 펌웨어, 소프트웨어로, 또는 그들의 조합들로 구현될 수 있다. 구현들은 데이터 처리 장치, 예를 들어 프로그램가능 프로세서, 컴퓨터, 또는 다수의 컴퓨터들의 동작에 의한 처리를 위해, 또는 이 동작을 제어하기 위해, 컴퓨터 프로그램 제품, 즉 정보 캐리어, 예를 들어 기계 판독가능 저장 장치(컴퓨터 판독가능 매체) 또는 전파 신호에서 유형적으로 구체화된 컴퓨터 프로그램으로서 구현될 수 있다. 상술한 컴퓨터 프로그램(들)과 같은 컴퓨터 프로그램은 컴파일된 또는 인터프리트된 언어들을 포함하는 임의의 형태의 프로그래밍 언어로 기록될 수 있고, 독립형 프로그램으로서 또는 모듈, 구성요소, 서브루틴, 또는 컴퓨팅 환경에서의 사용에 적절한 다른 유닛으로서 포함하는 임의의 형태로 전개될 수 있다. 컴퓨터 프로그램은 하나의 사이트에서 하나의 컴퓨터 또는 다수의 컴퓨터들 상에서 처리되도록 또는 다수의 사이트들에 걸쳐 분배되고 통신 네트워크에 의해 상호 연결되도록 전개될 수 있다.
컴퓨터 프로그램의 처리에 적절한 프로세서들은 예로서, 범용 및 특수 목적 마이크로프로세서들 둘 다, 및 임의의 종류의 디지털 컴퓨터의 임의의 하나 이상의 프로세서들을 포함한다. 일반적으로, 프로세서는 판독 전용 메모리 또는 랜덤 액세스 메모리 또는 둘 다로부터 명령어들 및 데이터를 수신할 것이다. 컴퓨터의 요소들은 명령어들을 실행하는 적어도 하나의 프로세서 및 명령어들 및 데이터를 저장하는 하나 이상의 메모리 장치들을 포함할 수 있다. 일반적으로, 컴퓨터는 데이터를 저장하는 하나 이상의 대량 저장 장치들, 예를 들어 자기, 자기-광 디스크들, 또는 광 디스크들을 포함할 수 있거나, 이것들로부터 데이터를 수신하거나 이것들에 데이터를 송신하거나 또는 양쪽으로 되도록 결합될 수도 있다. 컴퓨터 프로그램 명령어들 및 데이터를 구체화하는데 적절한 정보 캐리어들은 예로서 반도체 메모리 장치들, 예를 들어, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광 기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-Optical Media), 롬(ROM, Read Only Memory), 램(RAM, Random Access Memory), 플래시 메모리, EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM) 등을 포함한다. 프로세서 및 메모리는 특수 목적 논리 회로조직에 의해 보충되거나, 이에 포함될 수 있다.
또한, 컴퓨터 판독가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용매체일 수 있고, 컴퓨터 저장매체 및 전송매체를 모두 포함할 수 있다.
본 명세서는 다수의 특정한 구현물의 세부사항들을 포함하지만, 이들은 어떠한 발명이나 청구 가능한 것의 범위에 대해서도 제한적인 것으로서 이해되어서는 안되며, 오히려 특정한 발명의 특정한 실시형태에 특유할 수 있는 특징들에 대한 설명으로서 이해되어야 한다. 개별적인 실시형태의 문맥에서 본 명세서에 기술된 특정한 특징들은 단일 실시형태에서 조합하여 구현될 수도 있다. 반대로, 단일 실시형태의 문맥에서 기술한 다양한 특징들 역시 개별적으로 혹은 어떠한 적절한 하위 조합으로도 복수의 실시형태에서 구현 가능하다. 나아가, 특징들이 특정한 조합으로 동작하고 초기에 그와 같이 청구된 바와 같이 묘사될 수 있지만, 청구된 조합으로부터의 하나 이상의 특징들은 일부 경우에 그 조합으로부터 배제될 수 있으며, 그 청구된 조합은 하위 조합이나 하위 조합의 변형물로 변경될 수 있다.
마찬가지로, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다. 또한, 상술한 실시형태의 다양한 장치 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 장치들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징 될 수 있다는 점을 이해하여야 한다.
한편, 본 명세서와 도면에 개시된 본 발명의 실시 예들은 이해를 돕기 위해 특정 예를 제시한 것에 지나지 않으며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 여기에 개시된 실시 예들 이외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 자명한 것이다.
100 : 경량화 블록체인 시스템
110 : 리더 노드
120, 130 : 검증 노드
140 : 외부 저장소
150 : 개인키

Claims (14)

  1. 블록체인 노드들 중 리더 노드가 수행하는 경량화 블록체인 제공 방법에 있어서,
    신규 트랜잭션 데이터에 기초하여 일반 블록을 생성하는 단계;
    상기 일반 블록을 상기 리더 노드를 제외한 나머지 블록체인 노드들인 검증 노드들로 전송하여 프랙티컬 비잔틴 장애 허용(Practical Byzantine Fault Tolerance, 이하 PBFT) 검증을 요청하는 단계;
    상기 검증 노드들로부터 상기 일반 블록에 대한 검증이 완료된 경우, 상기 일반 블록을 외부 저장소로 업로드 하는 단계;
    상기 외부 저장소로부터 상기 일반 블록에 대한 주소를 반환 받아 신규 경량화 블록을 생성하는 단계
    를 포함하고,
    상기 PBFT 검증을 요청하는 단계는,
    상기 일반 블록과 함께 Prepare 메시지 및 Commit 메시지를 상기 검증 노드들로 전송하고,
    상기 검증 노드들은,
    상기 리더 노드로부터 상기 일반 블록과 함께 Prepare 메시지 및 Commit 메시지를 수신한 경우, 상기 일반 블록의 이전 블록해시 값과 상기 검증 노드들의 원장에 기록된 마지막 경량화 블록의 주소를 통해 식별된 상기 일반 블록의 직전 블록에 대한 블록해시 값을 비교함으로써 상기 일반 블록에 대한 PBFT 검증을 수행하는 경량화 블록체인 제공 방법.
  2. 제1항에 있어서,
    상기 일반 블록을 생성하는 단계는,
    상기 신규 트랜잭션 데이터를 개인키를 이용하여 암호화함으로써 상기 일반 블록을 생성하는 경량화 블록체인 제공 방법.
  3. 삭제
  4. 제1항에 있어서,
    상기 검증 노드들은,
    상기 일반 블록에 대한 검증 결과 상기 일반 블록이 위변조 되지 않았다고 판단되면, 상기 Prepare 메시지 및 Commit 메시지에 개인키로 서명을 하여 상기 리더 노드로 검증 결과를 전송하는 경량화 블록체인 제공 방법.
  5. 제1항에 있어서,
    상기 일반 블록을 외부 저장소로 업로드 하는 단계는,
    상기 일반 블록의 헤더 영역 및 바디 영역에 존재하는 데이터를 전부 또는 일부만 추출하여 상기 외부 저장소로 전송하는 경량화 블록체인 제공 방법.
  6. 블록체인 노드들 중 리더 노드가 수행하는 경량화 블록체인 제공 방법에 있어서,
    신규 트랜잭션 데이터에 기초하여 일반 블록을 생성하는 단계;
    상기 일반 블록을 상기 리더 노드를 제외한 나머지 블록체인 노드들인 검증 노드들로 전송하여 프랙티컬 비잔틴 장애 허용(Practical Byzantine Fault Tolerance, 이하 PBFT) 검증을 요청하는 단계;
    상기 검증 노드들로부터 상기 일반 블록에 대한 검증이 완료된 경우, 상기 일반 블록을 외부 저장소로 업로드 하는 단계;
    상기 외부 저장소로부터 상기 일반 블록에 대한 주소를 반환 받아 신규 경량화 블록을 생성하는 단계
    를 포함하고,
    상기 신규 경량화 블록을 생성하는 단계는,
    상기 신규 경량화 블록에 대한 헤더 블록 번호, 상기 외부 저장소로부터 반환된 상기 일반 블록에 대한 주소 및 상기 신규 경량화 블록의 직전 경량화 블록에 대응하는 이전 헤더 블록해시 값을 이용하여 상기 신규 경량화 블록에 대한 헤더 블록해시 값을 결정함으로써 경량화 블록들 사이를 연결하는 경량화 블록체인 제공 방법.
  7. 제1항에 있어서,
    상기 일반 블록은,
    블록 번호, 블록해시 값, 이전 블록해시 값 및 트랜잭션 데이터 중 적어도 하나를 포함하고,
    상기 경량화 블록은,
    헤더 블록 번호, 상기 일반 블록에 대한 외부 저장소의 주소, 헤더 블록해시 값 및 이전 헤더 블록해시 값 중 적어도 하나를 포함하는 경량화 블록체인 제공 방법.
  8. 경량화 블록체인 제공 방법을 수행하는 경량화 블록체인 제공 장치에 있어서,
    상기 경량화 블록체인 제공 장치는 프로세서를 포함하고,
    상기 프로세서는,
    신규 트랜잭션 데이터에 기초하여 일반 블록을 생성하고, 상기 일반 블록과 함께 Prepare 메시지 및 Commit 메시지를 리더 노드를 제외한 나머지 블록체인 노드들인 검증 노드들로 전송하여 프랙티컬 비잔틴 장애 허용(Practical Byzantine Fault Tolerance, 이하 PBFT) 검증을 요청하며, 상기 검증 노드들로부터 상기 일반 블록에 대한 검증이 완료된 경우, 상기 일반 블록을 외부 저장소로 업로드 하고, 상기 외부 저장소로부터 상기 일반 블록에 대한 주소를 반환 받아 신규 경량화 블록을 생성하고,
    상기 검증 노드들은,
    상기 리더 노드로부터 상기 일반 블록과 함께 Prepare 메시지 및 Commit 메시지를 수신한 경우, 상기 일반 블록의 이전 블록해시 값과 상기 검증 노드들의 원장에 기록된 마지막 경량화 블록의 주소를 통해 식별된 상기 일반 블록의 직전 블록에 대한 블록해시 값을 비교함으로써 상기 일반 블록에 대한 PBFT 검증을 수행하는 경량화 블록체인 제공 장치.
  9. 제8항에 있어서,
    상기 프로세서는,
    상기 신규 트랜잭션 데이터를 개인키를 이용하여 암호화함으로써 상기 일반 블록을 생성하는 경량화 블록체인 제공 장치.
  10. 삭제
  11. 제8항에 있어서,
    상기 검증 노드들은,
    상기 일반 블록에 대한 검증 결과 상기 일반 블록이 위변조 되지 않았다고 판단되면, 상기 Prepare 메시지 및 Commit 메시지에 개인키로 서명을 하여 상기 리더 노드로 검증 결과를 전송하는 경량화 블록체인 제공 장치.
  12. 제8항에 있어서,
    상기 프로세서는,
    상기 일반 블록을 구성하는 헤더 영역 및 바디 영역에 존재하는 데이터를 전부 또는 일부만 추출하여 상기 외부 저장소로 전송하는 경량화 블록체인 제공 장치.
  13. 경량화 블록체인 제공 방법을 수행하는 경량화 블록체인 제공 장치에 있어서,
    상기 경량화 블록체인 제공 장치는 프로세서를 포함하고,
    상기 프로세서는,
    신규 트랜잭션 데이터에 기초하여 일반 블록을 생성하고, 상기 일반 블록을 리더 노드를 제외한 나머지 블록체인 노드들인 검증 노드들로 전송하여 프랙티컬 비잔틴 장애 허용(Practical Byzantine Fault Tolerance, 이하 PBFT) 검증을 요청하며, 상기 검증 노드들로부터 상기 일반 블록에 대한 검증이 완료된 경우, 상기 일반 블록을 외부 저장소로 업로드 하고, 상기 외부 저장소로부터 상기 일반 블록에 대한 주소를 반환 받아 신규 경량화 블록을 생성하고,
    상기 프로세서는,
    상기 신규 경량화 블록에 대한 헤더 블록 번호, 상기 외부 저장소로부터 반환된 상기 일반 블록에 대한 주소 및 상기 신규 경량화 블록의 직전 경량화 블록에 대응하는 이전 헤더 블록해시 값을 이용하여 상기 신규 경량화 블록에 대한 헤더 블록해시 값을 결정함으로써 경량화 블록들 사이를 연결하는 경량화 블록체인 제공 장치.
  14. 제8항에 있어서,
    상기 일반 블록은,
    블록 번호, 블록해시 값, 이전 블록해시 값 및 트랜잭션 데이터 중 적어도 하나를 포함하고,
    상기 경량화 블록은,
    헤더 블록 번호, 상기 일반 블록에 대한 외부 저장소의 주소, 헤더 블록해시 값 및 이전 헤더 블록해시 값 중 적어도 하나를 포함하는 경량화 블록체인 제공 장치.
KR1020210058061A 2021-05-04 2021-05-04 외부 저장소와 pbft 합의 알고리즘을 이용한 경량화 블록체인 제공 방법 및 장치 KR102650336B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210058061A KR102650336B1 (ko) 2021-05-04 2021-05-04 외부 저장소와 pbft 합의 알고리즘을 이용한 경량화 블록체인 제공 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210058061A KR102650336B1 (ko) 2021-05-04 2021-05-04 외부 저장소와 pbft 합의 알고리즘을 이용한 경량화 블록체인 제공 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20220150728A KR20220150728A (ko) 2022-11-11
KR102650336B1 true KR102650336B1 (ko) 2024-03-22

Family

ID=84042686

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210058061A KR102650336B1 (ko) 2021-05-04 2021-05-04 외부 저장소와 pbft 합의 알고리즘을 이용한 경량화 블록체인 제공 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102650336B1 (ko)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107317672A (zh) 2017-05-10 2017-11-03 广东网金控股股份有限公司 一种轻量终端机区块链***
CN109639406A (zh) 2018-12-24 2019-04-16 国泰君安证券股份有限公司 基于区块链和ipfs的高效信任解决方法
CN110061838A (zh) 2019-04-28 2019-07-26 广州大学 一种dns资源记录的去中心化存储***及其实现、信息检索方法
CN110351133A (zh) 2019-06-28 2019-10-18 阿里巴巴集团控股有限公司 用于区块链***中的主节点切换处理的方法及装置
CN111159288A (zh) 2019-12-16 2020-05-15 郑杰骞 链式结构数据存储、验证、实现方法、***、装置及介质
KR102141177B1 (ko) * 2019-12-12 2020-08-04 주식회사 립페이 이중 블록체인 구조 기반 미들웨어 계층에서 실행되는 트랜잭션 고속 처리 서비스 제공 방법
KR102150210B1 (ko) 2019-09-16 2020-09-01 (주) 모로보기 블록체인 네트워크
KR102152537B1 (ko) 2019-10-10 2020-09-07 (주) 모로보기 사물 인터넷 장치를 위한 블록체인 네트워크
CN111639361A (zh) 2020-05-15 2020-09-08 中国科学院信息工程研究所 一种区块链密钥管理方法、多人共同签名方法及电子装置
CN112085502A (zh) 2020-09-09 2020-12-15 江苏大学 一种基于边缘计算的轻量级区块链监管方法及***
WO2021011082A1 (en) 2019-07-12 2021-01-21 Microsoft Technology Licensing, Llc Lightweight blockchain based on split-trust
CN112395353A (zh) 2020-10-27 2021-02-23 中国电力科学研究院有限公司 一种基于联盟链的智能电能表质量数据共享方法及***

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10783272B2 (en) * 2017-12-08 2020-09-22 Nec Corporation Method and system of preserving privacy for usage of lightweight blockchain clients
KR102254127B1 (ko) * 2019-02-14 2021-05-20 주식회사 엠블럭 클라우드를 이용한 경량화된 노드를 갖는 블록체인 네트워크 및 블록체인 네트워크의 경량화된 노드
CN110998556B (zh) * 2019-03-21 2023-09-15 创新先进技术有限公司 区块链网络中的数据隔离
KR102406020B1 (ko) * 2019-06-18 2022-06-10 한국전자통신연구원 탈 중앙화된 비잔틴 오류 감내 분산 합의 장치 및 방법

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107317672A (zh) 2017-05-10 2017-11-03 广东网金控股股份有限公司 一种轻量终端机区块链***
CN109639406A (zh) 2018-12-24 2019-04-16 国泰君安证券股份有限公司 基于区块链和ipfs的高效信任解决方法
CN110061838A (zh) 2019-04-28 2019-07-26 广州大学 一种dns资源记录的去中心化存储***及其实现、信息检索方法
CN110351133A (zh) 2019-06-28 2019-10-18 阿里巴巴集团控股有限公司 用于区块链***中的主节点切换处理的方法及装置
WO2021011082A1 (en) 2019-07-12 2021-01-21 Microsoft Technology Licensing, Llc Lightweight blockchain based on split-trust
KR102150210B1 (ko) 2019-09-16 2020-09-01 (주) 모로보기 블록체인 네트워크
KR102152537B1 (ko) 2019-10-10 2020-09-07 (주) 모로보기 사물 인터넷 장치를 위한 블록체인 네트워크
KR102141177B1 (ko) * 2019-12-12 2020-08-04 주식회사 립페이 이중 블록체인 구조 기반 미들웨어 계층에서 실행되는 트랜잭션 고속 처리 서비스 제공 방법
CN111159288A (zh) 2019-12-16 2020-05-15 郑杰骞 链式结构数据存储、验证、实现方法、***、装置及介质
CN111639361A (zh) 2020-05-15 2020-09-08 中国科学院信息工程研究所 一种区块链密钥管理方法、多人共同签名方法及电子装置
CN112085502A (zh) 2020-09-09 2020-12-15 江苏大学 一种基于边缘计算的轻量级区块链监管方法及***
CN112395353A (zh) 2020-10-27 2021-02-23 中国电力科学研究院有限公司 一种基于联盟链的智能电能表质量数据共享方法及***

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Joonsuu Park et al., A Lightweight Blockchain Scheme for a Seucre Samrt Dust IoT Environment, www.mdpi.com/journal/applsci, applied sciences 2020.12.14
Joonsuu Park et al., A Two-Class Data Transmission Method Using a Lightweight Blockchain Structure for Secure Smart Dust IoT Environments, www.mdpi.com/journal/sensors, Sensors 2020.10.26*
TRIPTI Rathee, et al, "Blockchain as an IPFS (Interplanetary File System) Storage Index", International Journal of Innovations in Engineering and Technology Volume 14 Issue 2 (2019.09.30.) 1부.*

Also Published As

Publication number Publication date
KR20220150728A (ko) 2022-11-11

Similar Documents

Publication Publication Date Title
US10432411B2 (en) System and method for file time-stamping using a blockchain network
CN106534273B (zh) 区块链元数据存储***及其存储方法与检索方法
AU2019378667C1 (en) Performing map iterations in blockchain-based system
CN102170440B (zh) 适用于存储云间数据安全迁移的方法
KR20200074911A (ko) 분산 시스템 내의 네트워크 노드를 위한 복구 프로세스의 수행
CN103916483A (zh) 一种针对编码冗余存储***的自适应数据存储与重构方法
US20220083917A1 (en) Distributed and federated learning using multi-layer machine learning models
US11251969B2 (en) Performing map iterations in a blockchain-based system
US20210133047A1 (en) System and method for fast rebuild of metadata tier
JP2023542681A (ja) ブロックチェーンの許可フレームワークへのデバイスアイデンティティの統合
US20200364373A1 (en) File verification method, file verification system and file verification server
US20220318415A1 (en) Integrity auditing for multi-copy storage
CN111611622A (zh) 基于区块链的文件存储方法和电子设备
CN102282545B (zh) 存储***
KR102430135B1 (ko) 에러 정정 코드에 기초하는 동적 블록체인 데이터 저장
CN106027638A (zh) 一种基于混合编码的hadoop数据分发方法
CN112866302B (zh) 对集群数据完整性检查的方法、设备、介质及程序产品
KR102650336B1 (ko) 외부 저장소와 pbft 합의 알고리즘을 이용한 경량화 블록체인 제공 방법 및 장치
CN103729269A (zh) 一种基于云架构的网络考试数据双缓存方法
CN111464258B (zh) 一种数据校验方法、装置、计算设备及介质
CN115426106B (zh) 一种身份认证方法、装置、***、电子设备及存储介质
CN111435323B (zh) 信息的传输方法、装置、终端、服务器及存储介质
CN115955489A (zh) 一种面向云存储的机载软件持有性证明方法
You et al. Towards a delivery scheme for speedup of data backup in distributed storage systems using erasure codes
CN111949738A (zh) 基于区块链的数据存储去重方法、终端设备和存储介质

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant