Replacing Tendermint with Narwhal and Bullshark in Cosmos
Summary
The document describes a proof of concept that replaces Tendermint, Cosmos’s consensus engine, with Narwhal and Bullshark while retaining compatibility with Cosmos applications through an ABCI and RPC shim. It explains how a Cosmos node normally passes agreed transactions to an application, which executes them in a consistent order across network nodes. The prototype connected Narwhal and Bullshark to an EVM application and demonstrated transaction ordering and replicated state updates.
The authors describe potential advantages of the DAG-based consensus design, including high throughput, latency tied to actual network delay, and less sensitivity to faults or network disruptions than some leader-based protocols. A double-spend demonstration showed nodes agreeing on which of two conflicting transfers to execute. This is an integration demonstration, not a performance evaluation: the document reports no throughput benchmarks. It also notes that ABCI assumes a conventional block structure and that the prototype omits parts of the interface needed for full Cosmos SDK support, along with features such as validator-set changes and light-client support.
Key ideas
- Narwhal and Bullshark can be connected to a Cosmos application through a shim that translates client requests and delivers consensus results over ABCI.
- The prototype demonstrated that an EVM application could execute an ordered transaction ledger consistently across nodes.
- The authors argue that DAG-based consensus can offer responsiveness and resilience to network delays and faulty behavior.
- The proof of concept did not include performance benchmarks or a complete Cosmos SDK integration.
- ABCI’s assumptions about block structure may need to change to support newer consensus designs.
Tags
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.