Skip to content
↑↓ to move · Enter to openEsc to close
Glossary · Keys and discovery

Authority key: the key that would sign what was checked

Updated

An operator key signs what the operator declares. An authority key signs what someone else has checked: that a domain is controlled, that an organization matches its registration. The two roles never substitute for each other.

This is the part of AgenID that turns DECLARED into VERIFIED. It is specified and testable in the protocol, and not yet operating in the reference deployment.

Definition

An authority key is an Ed25519 key with role authority, held by a verification authority and used to sign verification assertions. In AgenID no authority key has been created yet, so no assertion can be issued.

Also known as: authority-role key

How it works in AgenID

A verification authority is named agenid:authority:<node>. Its key document declares role authority with the authority as controller, and is discoverable at the authority's own /.well-known/agenid/keys.json. A verifier checks a verification assertion against that key and must also decide whether it recognizes the authority; a valid signature from an unrecognized authority is authority_untrusted, not VERIFIED. The registry refuses an authority-role key at agent registration.

Every assertion names the key_id that signed it, and an authority key follows the same lifecycle rules as an operator key: its own ULID, a status field, and resolvability for as long as signatures made with it need checking.

Why it matters

Separate roles stop self-verification. If one key could sign both the declaration and the check, an operator could vouch for itself. The model also admits authorities other than AgenID's own without a protocol change, so verification need not depend on a single vendor.

What it does not mean today

The reference deployment issues nothing above L1_REGISTERED. L2 and higher require a VerificationAssertion signed by a root authority key, and that key has not been created yet, so L2, L3 and L4 describe the model rather than anything obtainable. Even when assertions exist, an authority's signature covers one claim in one scope; it says nothing about what the agent is allowed to do.

Frequently asked questions

Can I become a verification authority?

The model admits other authorities, but none is recognized today, and the authority registry is not published because the root key that would sign it does not exist.

Why is there no authority key yet?

Creating the trust root is an operational key ceremony that has not taken place. The trust page explains what is live.

What can I do in the meantime?

Register at /issue and record domain-control evidence at /verify/domain. That evidence raises nothing above L1.

What agenid.com issues today

The reference deployment at agenid.com issues DECLARED and L1_REGISTERED only. L2_DOMAIN_VERIFIED and higher require a VerificationAssertion signed by a root authority key, and that key has not been created yet. L5 is reserved by the specification and is not issuable at all.

Identity is not permission

Which agent is acting and who declared it is one question. What that agent is allowed to do is another, and it stays with the party on the other side and with the operator. Protocol v1.1.1 defines no signed authorization object.

Sources

  1. AgenID protocol specification (public repository)

Give your agent an identity

Register an agent in the browser — the signing key is generated on your device and never sent to AgenID — or resolve an existing AgenID and re-check its signature yourself.