Skip to main content
QUICK REVIEW

[논문 리뷰] SeF: A Secure Fountain Architecture for Slashing Storage Costs in Blockchains

Swanand Kadhe, Jichan Chung|arXiv (Cornell University)|2019. 06. 28.
Blockchain Technology Applications and Security참고 문헌 30인용 수 26
한 줄 요약

이 논문은 레이트리스 에러코드를 활용하여 블록체인 스토리지 비용을 수십만 분의 일로 줄이는 SeF라는 보안성 있는 펌페이트 코딩 아키텍처를 제안한다. 이로 인해 전체 블록체인을 소수의 코딩된 '드롭렛' 블록으로 압축할 수 있으며, 스토리지 절감과 부트스트랩 비용 사이에 거의 최적의 트레이드오프를 달성한다. 실험 결과, 비트코인 기반으로 1000배의 스토리지 감소(191GB → 195MB)를 기록했으며, 부트스트랩 비용은 약 1100개의 신뢰할 수 있는 노드를 필요로 하여 이론적 최소값(1000)보다 10% 높게 나타났다.

ABSTRACT

Full nodes, which synchronize the entire blockchain history and independently validate all the blocks, form the backbone of any blockchain network by playing a vital role in ensuring security properties. On the other hand, a user running a full node needs to pay a heavy price in terms of storage costs. E.g., the Bitcoin blockchain size has grown over 215GB, in spite of its low throughput. The ledger size for a high throughput blockchain Ripple has already reached 9TB, and it is growing at an astonishing rate of 12GB per day! In this paper, we propose an architecture based on 'fountain codes', a class of erasure codes, that enables any full node to 'encode' validated blocks into a small number of 'coded blocks', thereby reducing its storage costs by orders of magnitude. In particular, our proposed "Secure Fountain (SeF)" architecture can achieve a near-optimal trade-off between the storage savings per node and the 'bootstrap cost' in terms of the number of (honest) storage-constrained nodes a new node needs to contact to recover the blockchain. A key technical innovation in SeF codes is to make fountain codes secure against adversarial nodes that can provide maliciously formed coded blocks. Our idea is to use the header-chain as a 'side-information' to check whether a coded block is maliciously formed while it is getting decoded. Further, the 'rateless property' of fountain codes helps in achieving high decentralization and scalability. Our experiments demonstrate that SeF codes tuned to achieve 1000x storage savings enable full nodes to encode the 191GB Bitcoin blockchain into 195MB on average. A new node can recover the blockchain from an arbitrary set of storage-constrained nodes as long as the set contains ~1100 honest nodes on average. Note that for a 1000x storage savings, the fundamental bound on the number of honest nodes to contact is 1000: we need about 10% more in practice.

연구 동기 및 목표

  • 무엇보다도 무르의 법칙을 뛰어넘는 속도로 증가하는 블록체인 스토리지 비용 문제를 해결함으로써 탈중앙화와 노드 지속 가능성에 위협을 가하는 것을 목표로 한다.
  • SPV 클라이언트나 프루닝된 노드와 같은 기존 솔루션의 한계를 극복함으로써 보안성이나 탈중앙화를 희생시키지 않도록 한다.
  • 스토리지 제약이 있는 노드가 무결성을 훼손하지 않은 채 블록체인 부트스트랩에 기여할 수 있는 확장성 있고 보안성 있으며 탈중앙화된 아키텍처를 설계한다.
  • 스토리지 절감과 신규 노드가 부트스트랩 중에 접촉해야 할 신뢰할 수 있는 노드 수 사이의 거의 최적의 트레이드오프를 달성한다.

제안 방법

  • 검증된 블록체인 블록을 소수의 코딩된 블록(드롭렛)으로 압축하기 위해 펌페이트 코드—특히 레이트리스 에러코드—를 활용함으로써 각 노드의 스토리지 요구량을 극적으로 감소시킨다.
  • 암호화된 블록이 악성으로 생성되었는지 검출하고 거부하기 위해 부가 정보로 헤더체인을 도입함으로써, 악성 노드에 대한 보안을 확보한다.
  • 이중 레이어 인코딩 전략을 적용한다: 작은 에포크는 높은 부복잡도(예: k=10,000, s=10)로 인코딩하고, 일정 기간 후에 더 큰, 더 효율적인 에포크(예: k=50,000, s=5)로 재인코딩하여 장기적인 스토리지 효율성을 향상시킨다.
  • 가용성에 따라 드롭렛을 다운로드하는 전략적 방식을 구현한다: 새로운 노드(버킷 노드)는 먼저 드롭렛 인덱스를 요청한 후, 누락된 블록만 다운로드함으로써 대역폭 오버헤드를 최소화한다.
  • 암묵적인 적대자에 대한 보안을 확보하기 위해, 많은 수의 신뢰할 수 있는 드롭렛 노드가 손상되지 않은 이상 복원 실패가 발생할 가능성이 매우 낮음을 증명한다.
  • 동적 재인코딩 메커니즘을 설계하여 드롭렛 노드가 오래된, 효율성이 떨어지는 드롭렛을 복원하고 재인코딩한 후 삭제함으로써 시간이 지남에 따라 스토리지와 대역폭 간의 트레이드오프를 최적화한다.

실험 결과

연구 질문

  • RQ1펌페이트 코드는 블록체인 시스템에 적합하게 조정될 수 있는가? 이는 보안성과 탈중앙화를 유지하면서 스토리지 비용을 줄이는 데 성공할 수 있는가?
  • RQ2스토리지 절감과 신규 노드가 블록체인 복원을 위해 접촉해야 할 신뢰할 수 있는 노드 수 사이의 기본적인 트레이드오프는 무엇인가?
  • RQ3악성으로 생성된 코딩된 블록을 주입하는 악성 노드로부터 펌페이트 코드를 어떻게 보호할 수 있는가?
  • RQ4가용성에 따라 드롭렛을 다운로드하고 재인코딩하는 전략은 실질적으로 대역폭과 스토리지 오버헤드를 줄일 수 있는가?
  • RQ5제안된 SeF 아키텍처는 높은 처리량을 요구하는 시스템(예: 리플)과 같은 다양한 블록체인 워크로드 환경에서 얼마나 잘 확장될 수 있는가?

주요 결과

  • SeF는 비트코인 블록체인에서 스토리지 비용을 1000배 감소시켰으며, 매개변수 (k=10,000, s=10)를 가진 SeF 코드를 사용해 191GB의 데이터를 평균 195MB로 압축하였다.
  • 신규 노드는 전체 블록체인을 복원하기 위해 약 1100개의 신뢰할 수 있는 드롭렛 노드와 접촉해야 하며, 이는 1000× 절감을 위한 이론적 최소값(1000)보다 10% 높은 수준이다.
  • 가용성에 따라 드롭렛을 다운로드하는 방식으로 대역폭 오버헤드가 크게 감소하였다: 블록이 10MB로 연결된 경우 SeF 코드(k=10,000, s=10)를 사용할 때 약 2.35%의 오버헤드를 기록하였다.
  • 헤더체인 메커니즘이 복원 과정에서 악성으로 생성된 코딩된 블록을 효율적으로 탐지할 수 있어, 암묵적인 적대자에 대한 보안을 확보하였다.
  • 동적 재인코딩 전략을 통해 드롭렛 노드는 오래된 데이터를 시간이 지남에 따라 더 효율적인 코드로 재인코딩함으로써 장기적인 스토리지 효율성을 향상시키며, 가용성 손실 없이도 가능하다.
  • 이 아키텍처는 스토리지 절감과 부트스트랩 비용 사이의 연속적인 트레이드오프를 지원하여, 다양한 네트워크 조건과 노드 능력에 맞는 배포가 가능하다.

더 나은 연구,지금 바로 시작하세요

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.