Abstract:
Blockchain technology solves the fundamental problem of building trust in an untrusted environment, which is regarded as a new disruptive technology after clouding computing, the IoT, and the artificial intelligence. However, the current public blockchains face two serious problems: on one hand, the low system throughput cannot meet the needs of large-scale applications; on the other hand, the ever-growing nature of blockchain could be quite cumbersome for validators since they consume much disk and RAM resources. Existing works were often used to improve system throughput, ignoring the increasingly serious problem of blockchain data growth for long run. Thus, in this work, we propose the PocketChain, a scalable and storage-friendly lightweight protocol that can achieve high throughput and low storage without sacrificing decentralization and security. Firstly, PocketChain uses a stateless client design, using the RSA accumulator to combine the large state into one short commitment, so that the validators can only store the block headers, greatly reducing the disk and RAM requirements. Secondly, PocketChain applies the stateless client to the sharding technology, which not only improves the system throughput, but overcomes the state migration problem caused by periodical reshuffling of sharding technology. This can further increase the security of sharding by improving the reshuffling frequency. The experiment results show that the PocketChain can reduce the storage overhead of validators and linearly improve the system throughput.