Crypto glossary

Consensus layer and execution layer

Definition

Since the Merge, an Ethereum node runs two programs: an execution client that processes transactions and a consensus client that agrees on blocks via staking.

Ethereum split its node software in two when it moved to proof of stake. The execution layer runs the EVM, keeps account balances and contract state, and gossips transactions; clients include Geth, Nethermind, Besu, Erigon and Reth. The consensus layer, the former Beacon Chain, handles validators, proposals, attestations and finality; its clients include Prysm, Lighthouse, Teku, Nimbus, Lodestar and Grandine. The two talk through a local interface called the Engine API.

Anyone running a full node or a validator needs one client of each kind, and the mix matters. If a single client with a bug ran most of the network, it could finalise an invalid chain, so operators are encouraged to choose minority clients. Upgrade names also follow the split: each hard fork has an execution name and a consensus name.

The terms are specific to Ethereum's architecture. In modular blockchain debates, "execution layer" can also mean rollups that execute on top of a base chain, which is a different idea. Validators do not need a third program, but the validator client is often counted separately from the consensus node.

Example

A home staker pairs Nethermind as execution client with Lighthouse as consensus client, connected by a shared secret file for the Engine API.

Related terms