Attestation Station
- Name: Attestation Station (ATST)
- URL: https://github.com/ethereum-optimism/optimism-starter/blob/main/attestation-station.md
- Category: minimal attestation registry / onchain key-value claims store / Optimism identity primitive
- Tags: ethereum-ecosystem
- Summary: Attestation Station is a bare claims log. It stores
creator / subject / key / value, lets anyone write, and leaves schema discipline, issuer filtering, indexing, and trust interpretation to everything around it. Useful floor case, nothing more. - What it does:
- Stores attestations in a three-level mapping keyed by creator, subject (
about), andbytes32key - Lets any caller write a single attestation or batch multiple attestations in one transaction
- Treats the attested payload as arbitrary bytes, so the contract does not enforce a shared schema format
- Emits an
AttestationCreatedevent for each write, making external indexing and interpretation straightforward - Provides a lightweight SDK / CLI / hackathon-oriented integration surface in Optimism’s starter materials
- Encourages ecosystem-specific keys, conventions, and indexers rather than embedding resolver logic or issuer governance onchain
- Stores attestations in a three-level mapping keyed by creator, subject (
- Key claims:
- The official Optimism starter docs describe Attestation Station as being “as simple as possible,” which is the main reason to keep it: it is minimal claims infrastructure, not a full identity stack.
- Every record is just Creator, About, Key, and Val. That makes the note useful because it shows the lower bound underneath richer attestation systems.
- The reviewed contract stores data in
mapping(address => mapping(address => mapping(bytes32 => bytes))), so the base layer only tracks who said something, about whom, under which key, with what raw bytes. - Anyone can call
attest, and batching is supported. Issuer admission is therefore open at the contract layer; trust filtering happens elsewhere. - The contract has no schema registry, resolver hook, native revocation system, or issuer allowlist. That absence is the point.
- Writes overwrite the same creator/about/key slot, so this behaves more like a mutable namespaced claim store than an immutable credential ledger.
- The starter materials surface SDK, CLI, and indexer tooling, which reinforces the real model: many downstream readers, not one canonical frontend.
- Whitepaper: No standalone Attestation Station whitepaper or litepaper surfaced in this pass. The strongest primary materials were the official Optimism starter documentation and the reviewed contract source collected in
../../whitepapers/attestation-station-primary-sources-2026-05-11.md. - Sources:
Internal linkages
- Best upward comparison points for richer attestation rails: ethereum-attestation-service and verax.
Practical control points
-
Control is mostly outside the contract: key naming conventions, issuer allowlists, indexer policy, and which readers decide a given
creator / subject / key / valuetuple means anything. -
That is why the note is worth keeping. It shows how much of
attestation infrastructureusually lives outside the contract. -
Last reviewed: 2026-06-13 UTC