Skip to main content

What is Prysm?

Prysm is an Ethereum consensus client, written in Go and maintained by Offchain Labs. It is open source under the GPL-3.0 license and has run on mainnet since the Beacon Chain launched in December 2020.

What you run​

An Ethereum node is two programs working together. If you stake, you add a third.

ProgramWhat it doesWho provides it
Execution clientRuns transactions and keeps the account and contract state.Another team: Geth, Nethermind, Besu, Erigon, Reth or Ethrex
Beacon nodeFollows the proof-of-stake chain and tells the execution client which block is the head.Prysm (beacon-chain)
Validator clientHolds your validator keys and signs attestations and blocks. Only needed to stake.Prysm (validator)
How Prysm fits into an Ethereum nodeThe Prysm validator client connects to the Prysm beacon node over the Beacon API. The beacon node connects to an execution client over the authenticated Engine API. Both the beacon node and the execution client talk to their own peer-to-peer networks.Consensus P2P networkExecution P2P networkBeacon nodePrysmExecution clientGeth, Nethermind, Besu, Reth…Validator clientEngine APIport 8551, JWT secretBeacon API or gRPCoptional: only if you stake

You always run the execution client and the beacon node together, usually on the same machine. They share a secret file (jwt.hex) so only your beacon node can control your execution client.

The validator client talks only to the beacon node. It never needs to be reachable from the internet. Your validator earns rewards for signing on time. It loses a little when it's offline, and a lot if the same keys ever run in two places at once.

For how staking works in more depth (deposits, activation, rewards and exits), see How staking works.

What you need​

MinimumRecommended
CPU4 cores4 cores / 8 threads, or 8 cores / 16 threads if you validate
Memory16 GB32 GB, or 64 GB if you validate
Disk2 TB NVMe SSD4 TB NVMe SSD
Internet25 Mbit/s, no tight data cap50 Mbit/s down, 15–25 Mbit/s up

These figures cover the execution client and beacon node together. The validator client itself adds little.