Specification / Lineage
Every agent identity is cryptographically bound to its creator through HKDF-SHA256 key derivation. The chain is immutable, offline-verifiable, and tamper-evident. Scroll to zoom from the atomic to the cosmic.
Derivation
HKDF-SHA256
Signing
Ed25519
Hashing
BLAKE3
A single Ed25519 public key. 32 bytes of entropy held by one human. This is where all trust begins.
The point resolves into a keypair. Private never leaves the holder. Public becomes the identifier.
Parent key + salt + context yields a child key. The parent signs AgentLineageProof2025 to bind them.
Two keys connected by a cryptographic derivation. Offline-verifiable. Tamper-evident. Irrevocable by design.
HMR derives ENR, ENR derives Agent, Agent derives Instance. Each link carries its own signed lineage proof.
The agent spawns siblings. Independent branches. Revoking one leaves the others untouched. Revoke a parent and the subtree cascades.
At the base, M-of-N humans govern the root key. The tree above cannot distinguish single-signer from threshold governance.
From atomic key to organizational scale. Every agent, tool, and model resolves through verifiable links to a human root.
Key Derivation Process
Read the parent entity's public key from its DID document.
Produce a context-specific salt: parent DID + child kind + timestamp.
Feed parent key material and salt into HMAC-SHA256 to produce a PRK.
Expand the PRK with info = child DID + sequence to produce 32 bytes.
Use the 32 bytes as the Ed25519 private key seed. Compute public key.
Multibase-encode (base58btc) the child public key as the DID identifier.
Parent signs AgentLineageProof2025 binding child key to itself.
Verification Rules
Every link in the lineage chain must resolve. If any intermediate entity is deactivated or missing, the entire chain fails verification.
The child key in the proof must match the child entity's verification method. Any mismatch indicates tampering.
Each proof's created timestamp must fall after the parent entity's creation and before any subsequent child proofs.
The chain must terminate at an hmr or mhr entity. Chains that loop or terminate at non-human entities are invalid.
did:oas · offline-verifiable · tamper-evident