Skip to content

About

The crypto-agility manifest: a proposed well-known-URL convention for publishing a project's post-quantum cryptographic posture, plus a survey of the crypto-agility standards it builds on.

Resources

Contributing

Stars

2 stars

Watchers

0 watching

Forks

Repository files navigation

Crypto-Agility Manifest

A discoverable JSON contract for declared cryptographic capabilities, migration plans and evidence references at /.well-known/crypto-agility.json. This is an individual Internet-Draft proposal, not an IETF standard. A declaration, digest, signature or compatibility result does not prove comprehensive security or quantum resistance.

Current contract

The authoritative RFCXML, readable specification, JSON Schema, minimal example and complete example define the contract with version: 2. The Internet-Draft revision suffix and the JSON contract version are separate identifiers. Consumers reject unsupported versions; the qScan adapter explicitly handles supported input with version: 1 without treating source declarations as runtime evidence.

A manifest identifies one independently authorized subject. It contains generation and expiry timestamps, declared endpoint profiles, observations and migration records, with optional evidence, policies and exceptions. Evidence is bound to its exact bytes and subject. Declarations, authenticated collector statements and independent measurements are distinct assurance levels. Key establishment and authentication are assessed separately. The contract grants no authority to change a system.

Reference components

Component Responsibility
tools.verifier Bounded schema and semantic assessment; no implicit trust or passing security certification
tools.tls_probe Actual TLS 1.3 negotiation with certificate and reference-identity validation
tools.observatory_ingestion Authenticated collector provenance, endpoint, transcript and freshness checks
tools.attestation Compact JWS verification, explicit issuer/key/subject/audience/purpose policy and durable replay rejection
tools.discovery Allowlisted HTTPS retrieval, bounded conditional caching and exact response bytes
tools.qscan Deterministic offline adaptation of supported qScan source evidence
tools.monitor Repeated assessment, historical regression baseline and durable alert occurrences
tools.consumer Immutable bundle selection, local trust/status enforcement and persistent supervision
tools.kms_status Bounded authenticated internal key-status refresh using an existing identity
tools.alert_delivery Persistent delivery intent, provider receipt verification and exact acknowledgment

The reference signature profile supports Ed25519 and ML-DSA-65 under independently provisioned algorithm/key policies. Ed25519 is classical. A hybrid TLS exchange does not establish post-quantum certificate authentication. Declared compatibility is a conservative profile comparison, not representative device execution or fleet certification.

Use and validation

Install requirements.txt and npm ci --ignore-scripts, then follow implementation status for the complete required test environment. A deterministic example assessment is:

python -m tools.verifier examples/crypto-agility-v2.json --now 2026-10-12T00:00:00Z
python -m tools.render_draft --check
xml2rfc --no-network --text draft/draft-acosta-crypto-agility-manifest-03.xml

The example intentionally reports fallback risks and exits 1. Read runtime evidence, signed observations, collector integration, consumer deployment and the security review before relying on evidence. Production acceptance and its limits are in implementation status; submission status and requirements are in IETF readiness.

Code, schemas and examples use Apache-2.0. Internet-Drafts carry IETF Trust provisions (trust200902). Author contact: leon@quantakrypto.com. See CONTRIBUTING.md.

About

The crypto-agility manifest: a proposed well-known-URL convention for publishing a project's post-quantum cryptographic posture, plus a survey of the crypto-agility standards it builds on.

Resources

Contributing

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages