Skip to content
HomeAboutServicesContact

L1 and L2 infrastructure audit

The chain itself, not just what runs on it.

What it is

Running your own chain or rollup means owning a class of risk that contract audits never touch: consensus safety and liveness, client implementation bugs, the economics that keep validators honest, and for a rollup, the sequencer and the escape hatch.

We review the layer everything else depends on, including the parts that only fail under adversarial conditions.

CHAIN HEAD4,102,879finalised4,102,880finalised4,102,881unfinalisedVALIDATOR SET6 honest3 colluding = 33% stakefinality 12s · slashing 5% · unbonding 21dreorg depth 2 observed under load

What we examine

  • Consensus parameters and their safety and liveness implications.
  • Client implementation review: state transition, mempool, p2p handling.
  • Validator economics: staking, slashing, rewards, and whether attacks pay.
  • Rollup specifics: sequencer powers, forced inclusion, escape hatches, proof systems.
  • Data availability assumptions, stated plainly rather than assumed.
  • Upgrade and governance mechanics for the chain itself.
  • Node and RPC configuration, including what an operator exposes by default.

What you get

01

Findings across consensus, client, economics and operator configuration.

02

An explicit statement of the trust and liveness assumptions your design makes.

03

Attack costings: what a hostile validator or sequencer would have to spend.

04

A re-audit of your fixes, included.

How the engagement runs

  1. 01

    Scope

    Chain design, client, validator set and rollup architecture. Fixed quote.

  2. 02

    Model

    Safety, liveness and economic assumptions written down and challenged.

  3. 03

    Review

    Client code and parameters, tested under partition, halt and hostile stake.

  4. 04

    Report

    Findings with severity and attack cost, then verification of your fixes.

What we cover

Languages

  • Solidity
  • Vyper
  • Rust
  • Move
  • Cairo
  • Go
  • TypeScript
  • Huff
  • Yul

Chains

  • Ethereum
  • Solana
  • BNB Chain
  • Polygon
  • Avalanche
  • Arbitrum
  • Base
  • TRON
  • Optimism
  • Cardano
  • Polkadot
  • Cosmos
  • NEAR
  • Aptos
  • Sui
  • TON
  • Hedera
  • Algorand
  • Stellar
  • Starknet
  • ZKsync Era
  • Linea
  • Sei
  • Sonic
  • Scroll
  • Mantle
  • Injective
  • Cronos
  • Celo
  • Gnosis
  • Fantom
  • Kaia
  • Ronin
  • Immutable
  • Blast
  • Berachain
  • Monad
  • Hyperliquid EVM
  • Stacks
  • Rootstock
  • Kava
  • Osmosis
  • MultiversX
  • Conflux
  • Telos
  • Theta
  • Chiliz
  • XDC Network
  • Filecoin FVM
  • Ontology
  • WEMIX
  • Fuel
  • Taiko
  • Polygon zkEVM
  • BOB
  • Fraxtal
  • Mode
  • ZetaChain
  • Metis
  • Manta Pacific
  • IOTA EVM
  • Neo X
  • Unichain
  • World Chain
  • Soneium
  • Abstract
  • Ink
  • Movement
  • Plume
  • Etherlink
  • EOS
  • Flow
  • Zilliqa
  • Harmony
  • Moonbeam
  • Astar
  • Aurora

Not listed? Ask. If it runs smart contracts, we almost certainly review it.

Questions we get asked

We forked an existing client. Is that safer?

Safer than writing one, and still not safe. The findings in forked clients are almost always in the parameters that were changed and the upstream fixes that were never merged.

Do you review the sequencer for our rollup?

Yes, including what the sequencer can do to users and whether the forced-inclusion path genuinely works when the sequencer refuses to.

Can you review before mainnet?

That is the point. Consensus parameters are close to impossible to change once a live validator set depends on them.

Often bought with

Tell us what you are building and when you launch. Fixed quote in 48 hours.

Get a fixed quote