Skip to main content
The trust bundle names every fleet member a consumer may trust, with the keys each one publishes per epoch. The SDK, the allocator, the verifier and the on-chain claim check all read it.

Contents

Each member is pinned by chip ID, image measurement and key epoch. Pinning the chip, not only the image, matters because a compromised chip can forge attestation reports for any firmware version.

Claim keys

A verifier makes a fresh Ed25519 claim key for each epoch inside the enclave. The key is never stored or exported, so a new epoch is a new key. The verifier’s public key reaches consumers through the bundle before the verifier signs with it.

Rules for consumers

  • Pin the operator key. It is configuration, never fetched. A bundle is believed only if this key signed it.
  • Never go backwards. Keep the highest version you accepted and refuse a lower one, so a stale copy cannot undo a revocation.
  • Stay fresh. Backends fetch at least every 60 seconds and stop accepting claims after 30 minutes without a fresh copy. Apps refetch before their copy is 30 minutes old.
  • Revocation wins. A claim from a revoked member, or from a closed epoch, fails even before its expires_at.