Skip to main content
QUICK REVIEW

[论文解读] SeF: A Secure Fountain Architecture for Slashing Storage Costs in Blockchains

Swanand Kadhe, Jichan Chung|arXiv (Cornell University)|Jun 28, 2019
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 架构在不同区块链工作负载(如高吞吐量系统如 Ripple)中的可扩展性如何?

主要发现

  • SeF 在比特币区块链上实现了 1000 倍的存储成本降低,将 191GB 的数据压缩为平均 195MB,使用参数为 (k=10,000, s=10) 的 SeF 编码。
  • 新节点需联系约 1100 个诚实滴落节点才能恢复完整区块链,仅比 1000× 存储节省的理论最低值 1000 高出 10%。
  • 通过按需下载滴落,带宽开销显著降低:当区块合并为 10MB 时,自适应下载在 k=10,000 且 s=10 的 SeF 编码下仅产生 2.35% 的开销。
  • 链式头部机制可在解码过程中高效检测恶意编码区块,确保对无感知敌对者的安全性。
  • 动态重编码策略使滴落节点能够随时间将旧数据重新编码为更高效的编码,提升长期存储效率,同时不牺牲可用性。
  • 该架构支持从存储节省到引导成本的连续权衡,可在不同网络条件与节点能力下灵活部署。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。