Architecture
Symphony is a new consensus protocol that leverages dual proof sharding, distributed verification, and optimized committee election to reduce replicated execution and enable high-performance, resource-intensive workloads.Background
Consensus in Ethereum 2.0
Ethereum 2.0 Proof-of-Stake (PoS) consensus is powered by a combination of the Casper Friendly Finality Gadget (FFG), responsible for block proposal, validation, and finalization and the Last Message Driven Greedy Heaviest Observed Sub-Tree (LMD-GHOST) fork-choice rule that, given a subtree of blocks, determines the canonical chain. Ethereum consensus clients implement these two protocols in a peer-to-peer network responsible for handling block gossip and consensus logic, dubbed the Beacon Chain. This chain runs in tandem to the execution layer, powered by execution clients, responsible for running the Ethereum Virtual Machine (EVM) to execute smart contracts and manage the Execution State, which tracks account balances, contract code, and storage.Consensus in CometBFT
CometBFT implements a Byzantine Fault Tolerant (BFT) consensus protocol that enables state machine replication across a distributed network of validators. The protocol is based on the original Tendermint consensus algorithm, providing both safety and liveness guarantees when less than one-third of validators are Byzantine. The consensus process follows a round-based approach where validators take turns:- Proposing blocks of transactions
- Voting in two phases (pre-vote and pre-commit)
- Committing blocks when more than two-thirds of validators pre-commit for the same block
Symphony
While originally designed as an extension to Gasper, Symphony is consensus-gadget agnostic and can be used in conjunction with, e.g., aBFT protocols, which we initially target rather than Gasper.Why Symphony?
Ethereum transactions consist of a sequence of opcodes executed sequentially by the EVM. Today, these transactions (and thus, opcodes) are executed in a replicated fashion, where all execution clients, of all validators, execute all transaction opcodes to come consensus over execution state. The EVM is purposefully optimized for homogeneous, resource-constrained computation with strict resource limits (see: blockgasLimit
). This
homogeneity is what affords Ethereum the ability to perform synchronous
replicated execution across all nodes.
Ritual enables heterogeneous compute to enrich what
users can do on-chain. We enhance the EVM by introducing new operations that
enable
AI Inference,
ZK Proving & Verification,
TEE Execution, and more. Executing
these operations, unlike all EVM opcodes today, requires heterogeneous resources
that not only exceed the typical capabilities of validator nodes, but may also
take upwards of minutes or even hours to execute.
To support these heterogeneous operations, while preserving the guarantees
offered by the Ethereum blockchain, Symphony introduces three key innovations:
- Execute-once semantics
- Distributed verification via partitioned proofs
- Optimized committee election
Execute-once semantics
Symphony adopts an execute-once model for heterogeneous operations. Transaction operations are partitioned into two sets:- Homogeneous operations (existing opcodes)
- Heterogeneous operations (unique Ritual functionality)
Note that Symphony is proof-system agnostic with both model-specific and
globally transparent setups.
Distributed verification via partitioned proofs
While the execute-once model resolves scalability issues in execution, verifying proofs for heterogeneous operations remains challenging. Taking LLM Inference as an example:- Proof sizes, though succinct, grow polylogarithmically with model complexity
- Single blocks may contain many transactions, each generating multiple proofs
- This inflates block sizes, hinders network propagation, and increases verification overhead
Symphony’s verification approach is proof-system agnostic, supporting multiple
proof technologies to balance performance, security, and practical adoption:
- Trusted Execution Environments (TEEs): Our initial implementation leverages TEEs to generate attestations for sub-computations, enabling rapid verification with hardware-backed security guarantees.
- Zero-Knowledge Proofs: In parallel development, ZK-based implementations will provide enhanced cryptographic guarantees, particularly valuable for privacy-sensitive computations.
- Hybrid Approaches: Future implementations may combine TEEs and ZK proofs to optimize for both performance and security - using TEEs for rapid transaction confirmation while adding ZK proofs for additional security assurances.
- Large models are divided into smaller sub-models, each with their own sub-proofs
- Blocks contain only outputs with off-chain references to associated proofs
- Validators are assigned sub-proofs deterministically, ensuring that only a subset of validators verify each sub-proof. The network accepts sub-proofs as valid when its assigned validators agree to quorum validity