Architecture

The core design of Colibri.stateless is composed of two functional components:

  1. Proofer – Responsible for generating verifiable proofs and encapsulating them in an SSZ-encoded data structure. The Proofer can run as a service on a remote server and be queried by the Colibri.stateless client. This setup remains fully trustless: a proof is either valid and verifiable or it fails to match the request. A proof of incorrect data cannot be produced or verified. Alternatively, the Proofer can run locally within the client. In this mode, the client performs the necessary queries and assembles the proofs itself, requiring more network interactions but maintaining full self-containment.

  2. Verifier – Responsible for validating proofs and extracting the requested blockchain data. The Verifier performs full cryptographic verification of both consensus and execution proofs without depending on a persistent chain state.

A second configuration shows the setup where the Proofer runs locally within the client:

The Verifier does not need to store the sync committee state permanently. However, for performance reasons, it is efficient to cache the most recent sync committee information to avoid reconstructing it for every verification request. Depending on available resources, this cache can be minimized or omitted entirely, allowing a fully stateless operation if required.

This approach enables independent, deterministic verification on any device, eliminating the need to process or store every block header as required by traditional light clients. Colibri.stateless, thus achieves full trustless verification with minimal resource usage and without continuous synchronization.

Last updated