Computational cryptography › Live on mainnet today
Ethereum component

P2P network

In plain words

The network Ethereum nodes use to find each other and share blocks and transactions.

The idea: Nodes find each other through a discovery protocol, connect with authenticated key exchanges, and gossip blocks and transactions. Every block and vote carries its own signature, so even a compromised connection can't forge consensus messages. What attackers gain is the ability to spy on traffic or isolate a node.

Why it matters: Breaking its cryptography hurts privacy and resilience, not consensus directly.

The details

On the map: devp2p, discv5, libp2p gossip

The networks Ethereum nodes use to find each other (discv5)[1], exchange transactions and blocks (devp2p)[2] and gossip consensus messages (libp2p)[3].

Their cryptography authenticates peers and encrypts links. Breaking it lets attackers impersonate peers, read traffic and more easily isolate nodes (eclipse attacks)[4], but blocks and votes carry their own signatures, so it doesn't directly break consensus.

Rests on

If any of these breaks, this breaks too.

If it falls

If this breaks, these break with it.

Nothing on the map depends on it: it is an end point, something people use directly.

References

  1. devp2p authors. Node Discovery Protocol v5. ethereum/devp2p, 2021. github.com/ethereum/devp2p/blob/master/discv5/discv5.md
  2. devp2p authors. The RLPx Transport Protocol. ethereum/devp2p, 2019. github.com/ethereum/devp2p/blob/master/rlpx.md
  3. libp2p authors. noise-libp2p: Secure Channel Handshake. libp2p/specs, 2020. github.com/libp2p/specs/blob/master/noise/README.md
  4. Low-Resource Eclipse Attacks on Ethereum's Peer-to-Peer Network. IACR Cryptology ePrint Archive, Paper 2018/236. eprint.iacr.org/2018/236