Specification
The normative specification is SPEC.md in the protocol repo.
It is the source of truth for:
- Data structure shapes (
DelegationCert,ProofBundle,RevocationList,HumanRoot,AgentIdentity,HybridPublicKey,HybridPrivateKey,HybridSignature) - The canonical JSON serialization algorithm
- The signing functions (
delegationSignBytes,challengeSignBytes) - The hybrid signature pair (Ed25519 + ML-DSA-65)
- The verifier algorithm (every check, every fail-closed branch, every status code)
- The 52-scope canonical vocabulary plus the 14 wildcards and the
custom:extension - Constraint encoding (geo, temporal, version)
- The revocation list format and verifier behavior
- Versioning rules (when fixture bytes are allowed to change)
How to read it
Section titled “How to read it”The spec is structured for two audiences:
Implementers start at §5 (data structures) and §7 (signing functions). Read straight through to §11 (revocation). The 59 conformance fixtures verify everything in those sections; if your implementation matches the bytes, it matches the spec.
Reviewers and auditors start at §2 (threat model) and §3 (security goals). §4 covers the hybrid signature rationale. §12 documents non-goals — what Ratify explicitly does NOT solve (transport security, key recovery without backup, hardware attestation).
Spec license
Section titled “Spec license”The specification text is licensed under CC-BY-4.0. You can copy, redistribute, adapt, and build upon the spec for any purpose, including commercial, as long as you give attribution.
The reference code (SDKs, CLI, fixture generator) is licensed under Apache-2.0. Different license; same repo.
Related normative documents
Section titled “Related normative documents”| Document | What it specifies |
|---|---|
| SPEC.md | The protocol |
| docs/EXPLAINED.md | Threat model + worked attack scenarios |
| docs/AGENT_TO_AGENT.md | A2A patterns (mutual, sub-delegation, receipts) |
| docs/SDKS.md | Conformance contract for new SDKs |
| docs/RELEASES.md | Release process and version coordination |
Trademark
Section titled “Trademark”Ratify Protocol™ and identities.ai™ are trademarks of Identities AI, Inc. The trademark and patent rights are not licensed under either the Apache-2.0 or CC-BY-4.0 licenses governing the code or spec. See docs/LICENSES.md for the full per-asset license breakdown. U.S. patent application pending.
Where to next
Section titled “Where to next”- Conformance suite — what implementations must pass
- Versioning — when the spec is allowed to change
- Glossary — every term used in the spec, defined