Petrichor: An Efficient Consensus Protocol Leveraging DAG and Sharding for Asynchronous BFT
摘要
As a core component of blockchain technology, the consensus mechanism provides the foundation for ensuring the trustworthiness and security of blockchain networks. However, existing consensus protocols suffer from low transaction throughput, high latency, and poor scalability. To address these challenges, we present Petrichor, an asynchronous Byzantine fault-tolerant consensus protocol based on Directed Acyclic Graph (DAG) and empowered with a sharding technique. Petrichor achieves significant performance improvements by dividing the blockchain network into multiple shards, allowing each shard to process transactions and generate blocks in parallel. We introduce the application of DAG within each shard to fully leverage its parallel propagation and multi-path confirmation properties. Within each shard, Petrichor employs a structured DAG, enabling transactions to propagate through multiple paths rather than relying on a single chain-like structure. This parallel propagation reduces transaction confirmation time and minimizes transaction latency. Furthermore, we propose a leader block election mechanism driven by random seeds, aiming to achieve fast consensus within each shard. With this mechanism, nodes within a shard can independently reach consensus without the need for direct communication, thereby facilitating efficient consensus within shards. We demonstrate the feasibility of Petrichor through theoretical analysis and validate its ability to meet the high throughput and low latency requirements of blockchain networks through extensive experiments.