Skip to content

Registry resolution and key rotation #4

Description

@Faux16

Context

The sdk-python README lists this under "Does NOT implement yet (Phase 1+)":

Registry resolution and key rotation

Today, verifying a signed event requires the verifier to know the signer's public key out-of-band. In production, the plane wants to look up the vendor's actor entry in the registry, pin a key by key_id, and handle rotation when the vendor publishes a new key.

Goal

Ship openagp.registry (resolver-side library) with:

  • Resolver. Fetch an actor entry from openagp/registry by FQDN (or from a mirror — configurable base URL).
  • Verify the entry's signature against a configured trust root before trusting the keys.
  • Key cache keyed by (fqdn, key_id) with a configurable TTL.
  • Rotation handling. When a verify() call fails because the key_id isn't in the cache, re-fetch the actor entry once before returning InvalidSignature.

Out of scope

  • Federation between multiple registries (tracked in the registry governance RFC).
  • Revocation feeds (separate issue once revocation semantics are decided).

Pointers

Metadata

Metadata

Assignees

No one assigned

    Labels

    status:needs-triageNewly opened, not yet assessed by a maintainertype:featureAdditive change — new functionality

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions