| Internet-Draft | ACME PQC Agility Profile | September 2026 |
| Vicente | Expires 17 March 2027 | [Page] |
This document defines an Automated Certificate Management Environment (ACME) [RFC8555] profile extension that enables ACME servers and clients to express per-account and per-order post-quantum cryptographic (PQC) posture. The extension introduces a pqcAgility metadata object in the ACME directory, an optional pqcAgility member in order objects, and a server-side adequacy scoring mechanism that determines whether a given order satisfies an account's declared PQC readiness threshold.¶
The profile is designed for both public and private ACME deployments and does not modify the core ACME state machine: it adds discoverable capability metadata and per-order policy directives that servers MAY enforce. Multi-tenant ACME servers MUST implement tenant-isolation controls that prevent cross-account PQC posture leakage.¶
This document is distinguished from draft-giron-acme-pqcnegotiation [I-D.giron-acme-pqcnegotiation], which defines algorithm negotiation at the ACME protocol level. This profile operates above the negotiation layer: it defines per-account posture scoring, adequacy thresholds, hybrid policy bits, rotation epoch anchoring, and tenant-isolation requirements that apply regardless of which negotiation mechanism is used.¶
This note is to be removed before publishing as an RFC.¶
Source for this draft is maintained at https://github.com/Sanc-Admin/acme-pqc-agility-profile. A citable archival version is published at Zenodo upon each tagged release. Author ORCID: https://orcid.org/0009-0006-6395-5308.¶
Discussion of this document should occur on the ACME working group mailing list (acme@ietf.org).¶
This note is to be removed before publishing as an RFC.¶
Certain technology described in this document is covered or may be covered by pending United States patent applications owned by Sanctum SecOps LLC, including U.S. Application Nos. 64/080,137 and 19/698,870. Brian Vicente is the inventor. Patent pending.¶
Sanctum SecOps LLC is prepared to grant to all implementers, under a separate written agreement, a non-exclusive, worldwide license on reasonable and non-discriminatory terms that may include reasonable fees or royalties, under Necessary Patent Claims owned or controlled by Sanctum SecOps LLC.¶
"Necessary Patent Claims" means claims subject to the applicable IETF disclosure that would necessarily be infringed by implementing technology required by this specification and for which no technically and commercially feasible non-infringing alternative is available.¶
The license applies only to the compliant portion of a product or service implementing required technology. It does not extend to optional features, proprietary enhancements, noncompliant implementations, methods not required by the specification, unrelated Sanctum SecOps LLC products, hosted control planes, managed services, trade secrets or claims that are not Necessary Patent Claims.¶
Licensing may be conditioned on reciprocal licensing on reasonable and non-discriminatory terms for necessary claims owned or controlled by the licensee. Sanctum SecOps LLC reserves defensive suspension and available remedies if the licensee or an affiliate asserts patents against Sanctum SecOps LLC, its affiliates, licensees, customers, compliant products or compliant services, except for a defensive claim compelled by a prior assertion.¶
Nothing in this document admits or warrants issuance, validity, enforceability, infringement, essentiality, claim scope, absence of alternatives or freedom to operate. No patent license arises merely from publication of this specification. The controlling IETF Datatracker IPR disclosures remain authoritative.¶
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.¶
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.¶
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."¶
This Internet-Draft will expire on 17 March 2027.¶
Copyright (c) 2026 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.¶
ACME [RFC8555] is the dominant protocol for automated certificate issuance. As certificate deployments migrate to post-quantum cryptography (PQC) — driven by NIST FIPS 203 [FIPS203], FIPS 204 [FIPS204], and FIPS 205 [FIPS205] — ACME implementations require a uniform mechanism to express per-account PQC posture and enforce per-order PQC policy.¶
This document defines that mechanism. It is intentionally scoped to the policy and posture layer, above the algorithm negotiation layer addressed by draft-giron-acme-pqcnegotiation [I-D.giron-acme-pqcnegotiation]. The two documents are complementary: algorithm negotiation determines which PQC algorithms a server supports; this profile determines whether a given order satisfies an account's declared PQC readiness requirements and how multi-tenant isolation is maintained.¶
This document profiles the Automated Certificate Management Environment [RFC8555] for use with post-quantum and hybrid algorithms.¶
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals.¶
An ACME server supporting this profile MUST include a pqcAgility object in its directory metadata response [RFC8555] Section 7.1.1. The object has the following fields:¶
An ACME client MAY include a pqcAgility member in an order object submitted via POST to the newOrder endpoint [RFC8555] Section 7.4. The member carries the following fields:¶
The server MUST honor or reject the pqcAgility directive based on its configured policy. A rejection MUST return an ACME error of type "urn:ietf:params:acme:error:pqcPolicyViolation".¶
Servers implementing this profile MAY compute a per-order adequacy score based on the requested algorithm set, hybrid posture, and the account's declared readiness threshold. The scoring algorithm is deployment-specific and is not specified in this document; concrete scoring parameters are intentionally out of scope to preserve implementation flexibility and to avoid constraining patent-pending orchestration mechanisms.¶
Servers MUST NOT expose raw adequacy scores to clients in a way that reveals other accounts' posture information.¶
Multi-tenant ACME servers MUST ensure that pqcAgility directives from one account do not influence issuance decisions for other accounts. Specifically:¶
Concrete tenant-isolation implementation parameters are deployment-specific and are not disclosed in this document.¶
This section records the status of known implementations of the mechanisms described in this document at the time of posting, based on the proposal in [RFC7942]. A listing here does not imply endorsement by the IETF, and this section is expected to be removed by the RFC Editor before publication.¶
Observations recorded on 2026-09-12 on that implementation: the OpenSSL base, default and FIPS providers were active with the kernel FIPS indicator set; 22 end-entity certificates were issued and verified across two profiles; all certificates used ECDSA on P-384 with ecdsa-with-SHA384 signatures and carried non-sequential 20-octet serial numbers drawn from a CSPRNG; the certificate revocation list was published in DER form at the URI named in the CRL distribution points extension; and a newly issued certificate returned an OCSP status of "good" and, following revocation with reason cessationOfOperation, returned "revoked" with a matching revocation time.¶
PQC posture metadata is security-sensitive. ACME servers SHOULD treat per-account pqcAgility configuration with the same access controls as account key material. Servers MUST NOT expose aggregated tenant PQC posture information through any unauthenticated endpoint.¶
Clients SHOULD validate hybrid certificate chains end-to-end, verifying both the classical and PQC signature paths independently.¶
Harvest-now-decrypt-later (HNDL) attacks motivate the urgency of hybrid deployment. The hybridRequired field provides a mechanism for accounts that require protection against HNDL during the migration period.¶
Rotation epoch IDs SHOULD be cryptographically bound to the issuing server's current state to prevent replay of stale epoch identifiers.¶
IANA is requested to register the following ACME error type:¶
IANA is also requested to create an "ACME PQC Agility" registry for composite chain policy identifiers, with a registration policy of Specification Required.¶