SeF: A Secure Fountain Architecture for Slashing Storage Costs in Blockchains

by   Swanand Kadhe, et al.

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


page 23

page 24


securePrune:Secure block pruning in UTXO based blockchains using Accumulators

In this paper, we propose a scheme called securePrune for reducing the s...

Erasure code-based low storage blockchain node

The concept of a decentralized ledger usually implies that each node of ...

Achieving Almost All Blockchain Functionalities with Polylogarithmic Storage

In current blockchain systems, full nodes that perform all of the availa...

Secure Regenerating Codes for Reducing Storage and Bootstrap Costs in Sharded Blockchains

Blockchain is a distributed ledger with wide applications. Due to the in...

Dietcoin: shortcutting the Bitcoin verification process for your smartphone

Blockchains have a storage scalability issue. Their size is not bounded ...

Transparent Downsampling Blockchain Algorithm

With the development of blockchain, the huge history data limits the sca...

Downsampling and Transparent Coding for Blockchain

With the development of blockchain, the huge history data limits the sca...

Please sign up or login with your details

Forgot password? Click here to reset