<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.39 (Ruby 3.2.3) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

<!ENTITY RFC5280 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5280.xml">
<!ENTITY RFC2119 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC8174 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
<!ENTITY RFC4648 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4648.xml">
<!ENTITY RFC5912 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5912.xml">
<!ENTITY RFC6960 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6960.xml">
<!ENTITY RFC7633 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7633.xml">
<!ENTITY RFC6749 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6749.xml">
<!ENTITY RFC7942 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7942.xml">
<!ENTITY RFC9846 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9846.xml">
<!ENTITY RFC3820 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3820.xml">
<!ENTITY RFC5755 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5755.xml">
]>


<rfc ipr="trust200902" docName="draft-wei-aic-identity-cert-02" category="exp" submissionType="independent">
  <front>
    <title abbrev="AIC Certificate">AI Agent Identity Certificate (AIC) Extension for X.509 v3</title>

    <author initials="J." surname="Wei" fullname="Jijie Wei">
      <organization>Individual</organization>
      <address>
        <email>pki@varwof.com</email>
        <uri>https://varwof.com</uri>
      </address>
    </author>

    <date year="2026" month="October" day="02"/>

    
    <workgroup>Network Working Group</workgroup>
    <keyword>AI Agent</keyword> <keyword>X.509</keyword> <keyword>Certificate</keyword> <keyword>Identity</keyword> <keyword>PKI</keyword> <keyword>Accountability</keyword> <keyword>Delegation</keyword>

    <abstract>


<?line 129?>

<t>This document defines the AI Agent Identity Certificate (AIC) Extension
for X.509 v3 certificates. The AIC extension enables binding of an AI
Agent's cryptographic identity to a natural person (principal),
providing cryptographic evidence that can support attribution of
AI-autonomous actions to a principal. This
specification intentionally separates cryptographic delegation from
authorization semantics: AIC defines the cryptographic binding between
agent and principal, while all capability and policy semantics are
defined externally by vendors, industries, or regulators. The extension
is identified by the IANA Private Enterprise Number 66257
assigned to the document author's organization.</t>

<t>The AIC extension carries agent identity fields (agentId,
delegationMode), a principal identifier (principalUid) linking the
agent to the authorizing principal, a container-based
capability declaration, authorization boundary constraints, and
delegation authorization evidence with replay protection. A companion
PrincipalAuthorization extension anchors Principal-side grant
declarations and delegation policies. An authorizationConstraints
container provides offline-verifiable execution boundaries (IP range,
window). An extensibility framework allows vendor-specific and
user-specific metadata.</t>

<t>This document specifies the ASN.1 module, OID registration, field
semantics, delegation model, and extensibility framework. Security
considerations for deployment in regulated enterprise environments
are discussed.</t>



    </abstract>



  </front>

  <middle>


<?line 159?>

<section anchor="introduction"><name>Introduction</name>

<section anchor="problem-statement"><name>Problem Statement</name>

<t>Existing X.509 public key certificates, as profiled in <xref target="RFC5280"></xref>,
primarily authenticate identity through a cryptographically signed
binding between a distinguished name and a public key. Authorization
is intentionally left outside the certificate: relying parties
perform access control via external IAM policies, OAuth scopes, RBAC
databases, or policy engines evaluated after TLS connection
establishment.</t>

<t>Autonomous AI agents introduce a new requirement that existing
certificate profiles do not address. When an agent acts on behalf
of a principal, the relying party needs answers to additional
questions:</t>

<t><list style="symbols">
  <t>Who delegated this authority?</t>
  <t>What operations are authorized?</t>
  <t>Under what constraints may the agent operate?</t>
  <t>How long is the authorization valid?</t>
  <t>Who remains accountable for the actions performed?</t>
</list></t>

<t>These questions cannot be answered by identity alone. They require a
standardized mechanism to express delegation relationships, capability
constraints, authorization boundaries, and accountability chains
within the certificate itself.</t>

<t>This document defines an X.509 certificate extension that addresses
this gap. The AI Agent Identity Certificate (AIC) extension encodes
agent identity, principal binding, capability declarations, delegation
modality, authorization boundary constraints, and cryptographic
delegation authorization within a single certificate. A companion
PrincipalAuthorization extension anchors principal-side grant
declarations, authorization constraints, and delegation policies.</t>

<t>AIC is designed to complement existing identity infrastructure:</t>

<t><list style="symbols">
  <t><strong>SPIFFE/WIMSE</strong> identifies workloads via SAN URIs. AIC adds
capability containers, principal binding, and session control on
top of workload identity.</t>
  <t><strong>OAuth 2.0 and JWT-based authorization</strong> (<xref target="RFC6749"></xref>) provides
online token exchange. AIC enables offline authorization decisions
during the TLS handshake, without external identity provider
lookups.</t>
  <t><strong>Standard X.509 extensions</strong> (Certificate Policies, Extended Key
Usage) express intended use but not delegation relationships or
fine-grained capability constraints.</t>
</list></t>

<t>AIC is intended for deployments where:</t>

<t><list style="symbols">
  <t>AIC is intended to support deployments that reuse existing PKI
infrastructure (enterprise CAs, HSMs, smart cards);</t>
  <t>Emerging regulatory frameworks require cryptographic traceability
of autonomous actions to accountable principals;</t>
  <t>Offline or air-gapped environments require self-contained
certificate authorization without external database lookups;</t>
  <t>Short-lived workload identities need to be augmented with legal
accountability metadata.</t>
</list></t>

<t>This document specifies the data model, certificate profile, and
validation requirements for AIC. Deployment-specific policy,
implementation details, and performance characteristics are outside
the scope of this specification.</t>

</section>
<section anchor="scope"><name>Scope</name>

<t>This document is organized into three categories:</t>

<t><strong>Normative (Core):</strong> The following sections are normative: Delegation
Model, Certificate Profile (Data Model), AIC Extension Definition,
Validation Procedure, and PrincipalAuthorization Extension, including
their ASN.1 definitions. Implementations MUST conform to these
sections to claim AIC compliance.</t>

<t><strong>Informative (Profile):</strong> The Deployment Models section describes
recommended deployment patterns and gateway behavior. These are not
required for AIC compliance but represent best practices.</t>

<t><strong>Informative (Reference):</strong> The Implementation Status section
describes a reference implementation. These are provided as
implementation guidance and interoperability examples.</t>

<t>The core normative content intentionally separates cryptographic
delegation from authorization semantics: AIC defines the cryptographic
binding between agent and principal, while capability and policy
semantics are defined externally.</t>

<figure><sourcecode type="text"><![CDATA[
                     AIC Architecture

   +----------------+      +------------------+
   |   Principal    |      |      Agent       |
   | (User/Org)     |      | (AI Agent)       |
   | PrincipalAuth  |      | AIC Certificate  |
   | Certificate    |      | Identity +       |
   |                |      | Capabilities +   |
   +-------+--------+      | Delegation Mode  |
           |               +--------+---------+
           | Authorization           |
           | signature               |
           +-------+-----------------+
                   |
                   v
         +---------------------+
         |    Gateway (PEP)    |
         |  1. Verify Chain    |
         |  2. Parse AIC       |
         |  3. Verify DA       |
         |  4. Check PA constr |
         |  5. Check AIC constr|
         |  6. Check Caps      |
         |  7. Apply Policy    |
         |  8. Decision        |
         +---------+-----------+
                   |
         +---------v-----------+
         |     Target          |
         |   Resource / API    |
         +---------------------+
]]></sourcecode></figure>

</section>
<section anchor="design-principles"><name>Design Principles</name>

<t>This specification is guided by seven orthogonal concerns, each
addressed by a distinct layer:</t>

<texttable>
      <ttcol align='left'>Concern</ttcol>
      <ttcol align='left'>Layer</ttcol>
      <ttcol align='left'>Question</ttcol>
      <c>Identity</c>
      <c>AgentIdentity</c>
      <c>"Who are you?"</c>
      <c>Authorization</c>
      <c>PrincipalAuthorization</c>
      <c>"Who authorizes you?"</c>
      <c>Capability</c>
      <c>Capability (Container)</c>
      <c>"What are you allowed to do?"</c>
      <c>Delegation</c>
      <c>DelegationPolicy</c>
      <c>"How are you allowed to act?"</c>
      <c>Constraints</c>
      <c>authorizationConstraints</c>
      <c>"Under what boundaries?"</c>
      <c>Enforcement</c>
      <c>Gateway</c>
      <c>"Is this request allowed now?"</c>
      <c>Trust</c>
      <c>X.509 (PKI)</c>
      <c>"Is this certificate trustworthy?"</c>
      <c>Transport</c>
      <c>TLS</c>
      <c>"Is this channel secure?"</c>
</texttable>

<t>AIC does not redefine trust, transport, or cryptography. It
complements X.509 by introducing three orthogonal concepts: Agent
Identity, Principal Authorization, and Capability Container. Trust
remains in PKI, transport remains in TLS, and enforcement remains in
the Gateway.</t>

<t>AIC defines the representation and cryptographic binding of
authorization-related information (agent identity, principal binding,
capability container, constraint container, and delegation evidence).
It does not define a universal authorization language: whether an
operation is permitted is decided by the capability scheme and the
deployment policy, not by the AIC extension itself.  The Capability
Language Core <xref target="CLC"></xref> is one such external language: AIC carries the
containers and the principal binding; CLC defines a deterministic
evaluation over them.</t>

</section>
<section anchor="requirements-language"><name>Requirements Language</name>

<t>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 <xref target="RFC2119" /> <xref target="RFC8174" /> when, and
only when, they appear in all
capitals, as shown here.</t>

<t>The following terms are used throughout this document:</t>

<dl>
  <dt>AIC:</dt>
  <dd>
    <t>AI Agent Identity Certificate Extension -- the X.509 v3 extension
defined in this document.</t>
  </dd>
  <dt>Agent:</dt>
  <dd>
    <t>For the purpose of this document, an AI Agent is a software or
hardware entity capable of performing actions on behalf of a
principal with varying degrees of autonomy.</t>
  </dd>
  <dt>Principal:</dt>
  <dd>
    <t>The natural person or organizational entity that authorizes an
Agent to act on its behalf. Whether a Principal is legally
responsible for actions performed by an Agent is determined by
applicable law and deployment policy and is outside the scope of
this specification.</t>
  </dd>
  <dt>Delegation Mode:</dt>
  <dd>
    <t>The protocol-defined relationship between an Agent and its
Principal for attribution and authorization purposes. The
interpretation of these modes under applicable law is outside the
scope of this specification.
In authorized mode, the Agent acts under its own identity with
principal consent. In representative mode, the Agent acts on behalf
of the Principal within the delegated permission scope.</t>
  </dd>
  <dt>Capability:</dt>
  <dd>
    <t>A container for protocol-level operations that an Agent is
authorized to perform, defined by a scheme identifier and a
capability identifier within that scheme.</t>
  </dd>
  <dt>Capability Scheme:</dt>
  <dd>
    <t>A system identified by a scheme identifier (schemeId) that defines
the semantics of capabilities. Gateways route capability evaluation
to scheme-specific plugins by schemeId.</t>
  </dd>
  <dt>Credential Bundle:</dt>
  <dd>
    <t>The certificates presented by an Agent during the TLS handshake,
including the agent certificate chain and the principal's
certificate.</t>
  </dd>
  <dt>DelegationAuthorization:</dt>
  <dd>
    <t>Cryptographic evidence, carried within the AIC extension, that the
principal has authorized the Agent. Contains a digital signature
over a DelegationAuthTBS structure.</t>
  </dd>
  <dt>DelegationAuthTBS:</dt>
  <dd>
    <t>The To-Be-Signed structure whose DER encoding is signed by the
principal's private key to produce the DelegationAuthorization.</t>
  </dd>
  <dt>PrincipalAuthorization:</dt>
  <dd>
    <t>A companion X.509 extension (OID 1.3.6.1.4.1.66257.1.2) carried in
the Principal's certificate, declaring grants, authorization
constraints, and delegation policies.</t>
  </dd>
  <dt>authorizationConstraints:</dt>
  <dd>
    <t>An OPTIONAL container within AIC and PrincipalAuthorization that
defines authorization boundary conditions (IP ranges, concurrency
limits, time windows). Constraints are evaluated offline during
TLS handshake.</t>
  </dd>
  <dt>OID:</dt>
  <dd>
    <t>Object Identifier -- a globally unique sequence of integers used
to identify objects in the X.509 standard.</t>
  </dd>
  <dt>PEN:</dt>
  <dd>
    <t>Private Enterprise Number -- a globally unique identifier assigned
by IANA to organizations for private use in OID space.</t>
  </dd>
  <dt>SPKI:</dt>
  <dd>
    <t>Subject Public Key Info -- the ASN.1 structure defined in <xref target="RFC5280"></xref>
Section 4.1.2.7 containing the public key algorithm and subject
public key.</t>
  </dd>
</dl>

</section>
<section anchor="related-work"><name>Related Work</name>

<t>Several proposals address agent identity and authorization, either in
X.509 certificate extensions or in application-layer protocols.</t>

<t><xref target="AGTP"></xref> (draft-hood-agtp-agent-cert) defines an X.509 certificate
extension that binds an agent identifier and a principal identifier
and includes an authority-scope commitment over a set of scope
tokens. The scope tokens are carried as a flat list of strings.</t>

<t><xref target="APKI"></xref> (draft-sharif-apki-agent-pki) defines five separate X.509
extensions for agent capabilities, delegation, trust scoring,
provenance, and behavioral attestation. Each extension is encoded
independently.</t>

<t><xref target="AgentIdentity"></xref> (draft-sharif-x509-agent-identity-profile) defines a
single X.509 extension combining a trust level, a list of capability
names, a maximum delegation depth, and a kill-switch URI.</t>

<t><xref target="RFC3820"></xref> defines proxy certificates for grid computing. A proxy
certificate extends the certificate chain so that the proxy acts on
behalf of the issuer; it does not carry agent-specific identity or
authorization data.</t>

<t><xref target="RFC5755"></xref> defines attribute certificates as a separate authorization
mechanism bound to an identity certificate. Attribute certificates
carry attribute/value pairs and are issued by an attribute authority.</t>

<t><xref target="CapabilityBound"></xref> (arXiv:2603.14332) embeds a hash of a skills
manifest in an X.509 extension. Any change to the manifest requires
issuing a new certificate.</t>

<t><xref target="DAAP"></xref> (draft-mishra-oauth-agent-grants) extends OAuth 2.0 with agent
grants, using DID-based identifiers and JSON Web Tokens carried at the
application layer. It supports multi-level delegation and cascading
revocation, and depends on DID resolution.</t>

<t><xref target="AIP"></xref> (draft-singla-agent-identity-protocol) defines a
decentralized identity, delegation, and authorization framework for
autonomous agents: agent identifiers derived from public keys
(did:aip), capability manifests, delegation chains, and an online
registry for resolution and revocation.</t>

<t><xref target="OpenA2A-AIP"></xref> (draft-fane-opena2a-aip) defines the OpenA2A Agent
Identity Protocol using did:opena2a identifiers and ATX credentials
issued by registries; authorization is addressed in a companion
protocol rather than in the identity layer.</t>

<t>WIMSE and SPIFFE define workload identities using SAN URIs
(<xref target="SPIFFE"></xref>); they identify workloads and do not carry authorization
information.</t>

<t>The authorization language itself is outside this document.  A
companion draft, the Capability Language Core <xref target="CLC"></xref>, defines a
carrier-neutral language for capability identifiers, entailment,
intersection, and delegation containment.  AIC's containers can be
evaluated by that language, but this specification does not require
it.</t>

<t>This specification follows the X.509 extension approach used by
AGTP, APKI, AgentIdentity, and CapabilityBound. It differs in three
respects: (1) the authorization data is signed by the principal and
the resulting signature is covered by the certificate authority's
signature; (2) capabilities use a structured container with a scheme
identifier and a capability identifier, so that evaluation can be
routed to scheme-specific plugins; and (3) an authorization constraint
container carries offline-verifiable boundary conditions. The design
goal is to make the authorization decision fully verifiable offline
from the certificate and its credential bundle.</t>

</section>
</section>
<section anchor="delegation-model"><name>Delegation Model</name>

<section anchor="delegation-modes"><name>Delegation Modes</name>

<t>Two delegation modes are defined:</t>

<t><strong>Authorized mode (default):</strong> The Agent acts under its own identity.
The agent certificate's agentId is recorded as the actor in audit logs,
while the principalUid identifies the authorizing principal. The CA
evaluates the agent's declared capabilities against the principal's
PrincipalAuthorization.grants at issuance time, and the resulting
capability set is locked into the certificate. Gateway runtime does
not perform a further P_grants superset check for authorized mode.
Authorized mode therefore provides snapshot authorization semantics:
principal grant changes after issuance do not affect the capability
set of an already issued certificate.</t>

<t><strong>Representative mode:</strong> The Agent acts on behalf of the Principal
within the delegated permission scope. The principalUid is recorded
as the actor in audit logs, with the agentId recorded as the executor.
Representative mode is the exception to the minimal credential
bundle model: it requires the principal's certificate and its
PrincipalAuthorization extension to be present in the credential
bundle presented during the TLS handshake. Deployments that cannot
provide the complete bundle MUST use authorized mode.
The agent's declared capabilities MUST be a subset of the principal's
grants at both issuance time (CA verification) and runtime (gateway
verification), as the principal's permissions may change during the
agent certificate's lifetime.</t>

<section anchor="security-envelope-model"><name>Security Envelope Model</name>

<t>This specification uses a security-envelope heuristic: reducing
either the delegated permission scope or the credential lifetime
reduces the potential exposure of a compromised credential.</t>

<t>Authorized mode selects <strong>narrow scope x longer validity</strong> -- the
principal selects capabilities at issuance, the capability set is
locked into the certificate, and the certificate lifetime is up to
24 hours with automatic renewal. Renewal of an authorized-mode
certificate likewise requires a new principal-signed
DelegationAuthorization (Section 4.5.6); the CA MUST NOT auto-renew by
reusing a prior DelegationAuthorization.</t>

<t>Representative mode selects <strong>broad scope x shorter validity</strong> -- the
agent may exercise the full extent of the principal's permissions
(P_grants), but the certificate is short-lived and subject to runtime
per-operation P_grants intersection verification.</t>

</section>
</section>
<section anchor="permission-intersection"><name>Permission Intersection</name>

<t>The effective permission for any agent operation is governed by the
intersection of three sets:</t>

<t>The authorization model is the intersection of the principal's grants
and the agent's capabilities:</t>

<figure><artwork><![CDATA[
P_effective = P_grants (AND) C_agent
]]></artwork></figure>

<t>where P_grants is the principal's declared capability grants (in
PrincipalAuthorization.grants) and C_agent is the agent's declared
capability set (in AIC.capabilities). An operation is authorized only
if it belongs to both sets.  The meaning of "belongs to", including
grant coverage and parameter or constraint merging, is defined by the
governing authorization language; the Capability Language Core <xref target="CLC"></xref>
is one language that defines it (entailment and intersection, with
delegation containment as a separate per-hop relation).</t>

<t>In authorized mode, C_agent alone serves as the effective capability
set (P_grants intersection was already verified by the CA at issuance
time and locked into the certificate). In representative mode, the
intersection is computed at runtime for each operation.</t>

<t>Gateway-local runtime policy (T_policy) -- rate limits, timeouts,
routing, and other deployment-side controls -- is an additional
enforcement layer applied by the relying party. It is NOT part of the
authorization model defined by this specification and MUST NOT be
confused with the P (AND) C authorization intersection.</t>

</section>
<section anchor="multi-level-delegation"><name>Multi-Level Delegation</name>

<t>Single-level delegation (Principal -&gt; Agent, chainDepth = 0) is the
default and recommended deployment mode. A delegation chain of depth 1
(Principal -&gt; Agent -&gt; sub-Agent, chainDepth = 1) MAY be supported
when a deployment requires it, in which case the delegating agent
signs a DelegationAuthorization for the sub-agent:</t>

<t><list style="symbols">
  <t><strong>chainDepth = 0 (default)</strong>: direct delegation from the principal
to the agent (Principal -&gt; Agent).</t>
  <t><strong>chainDepth = 1 (optional)</strong>: one additional level (Principal -&gt;
Agent -&gt;
sub-Agent), in which the delegating agent signs a
DelegationAuthorization for the sub-agent.</t>
</list></t>

<t>Each level of the chain produces an independent
DelegationAuthorization signed by the delegator's private key, and
capabilities are recursively intersected along the chain.  The per-hop
requirement that a child grant stay within its parent is a containment
check, not an intersection; the Capability Language Core <xref target="CLC"></xref> defines
that relation and a fused chain check over it. Chain depth
is carried in a DelegationDepthControl extension with chainDepth and
maxDepth fields. In any chain, chainDepth MUST NOT exceed maxDepth.</t>

<t>Chains deeper than 1 are not prohibited by this specification, but they
are not recommended, and this revision does not define their semantics.
For the strongest accountability, deployments SHOULD keep delegation to
a single hop from the principal to the acting agent (chainDepth = 0):
authority and responsibility then rest with one named party at a known
depth.  A deployment that requires an intermediate delegator MAY use
chainDepth &gt; 1 (see the guardrails below), accepting one specific
consequence: <strong>responsibility boundaries blur as the chain grows</strong>.
Each intermediate agent acts under authority it received and then
passes it on, so the legal status of the intermediate agents and the
audit actor semantics become ambiguous; every additional level also
expands the attack surface and grows the credential bundle.  A larger
numeric depth limit (for example, the 255-level maximum in
<xref target="AgentIdentity"></xref> or the depth-10 chains in <xref target="AIP"></xref>) is not treated as a
feature.  Conformance targets the default profile (chainDepth = 0) and
the depth-1 option.  Deeper chains are outside the scope of this
revision; a future revision MAY define them only under the guardrails
below.  The accountability model of this specification is anchored to
the natural person at the top of the chain and is best preserved by a
shallow chain.</t>

<section anchor="guardrails-for-future-multi-level-chains"><name>Guardrails for Future Multi-Level Chains</name>

<t>A future revision that defines multi-level delegation (chainDepth
&gt; 1) MUST satisfy all of the following properties at every hop:</t>

<t><list style="symbols">
  <t><strong>Signed authorization per hop.</strong>  Each hop MUST carry an
independent DelegationAuthorization signed by the delegating
entity's private key.  An entity MAY delegate further only to the
extent its own DelegationAuthorization (including any delegation
policy it carries) permits further delegation, and only within the
scope it received; a hop MUST NOT expand scope or assert authority
that its delegator never held.</t>
  <t><strong>Monotonic intersection.</strong>  The capability set of each hop MUST
be a subset of the effective capabilities of the preceding hop
(C_eff = P_grants (AND) C_1 (AND) ... (AND) C_n).  The CA MUST
verify the subset relation at each issuance.</t>
  <t><strong>Bounded depth and loop prevention.</strong>  chainDepth MUST increase
monotonically and MUST NOT exceed maxDepth.  The CA MUST refuse to
issue a hop whose delegator already appears earlier in the same
chain, and deployments SHOULD enforce a limit on credential-bundle
size (the reference implementation defaults to a maximum chain
length of 8).</t>
  <t><strong>Attribution to the root principal.</strong>  Each hop MUST preserve the
root principalUid and the immediate delegator so that every
operation remains attributable to the natural or legal person at
the top of the chain; an intermediate agent is an executor for
the hops it did not itself authorize.</t>
  <t><strong>Legal basis at each hop.</strong>  Delegation by or through autonomous
agents may raise questions of authority under applicable law.
Each hop SHOULD be traceable to a consenting responsible party;
deployments that cannot establish such a basis for every hop MUST
NOT use chains deeper than 1.</t>
</list></t>

<t>Until a future revision defines multi-level delegation under these
guardrails, deployments MUST NOT rely on semantics for chainDepth
&gt; 1 that are not specified in this document, and conformance is
limited to the chainDepth = 0 profile and the chainDepth = 1 option.
The reference implementation exercises whole-chain recursive
verification, intersection, and depth/loop limits in its test suite;
interop test vectors for multi-level chains are planned together
with the future revision.</t>

</section>
</section>
</section>
<section anchor="certificate-profile-data-model"><name>Certificate Profile (Data Model)</name>

<t>A certificate carrying the AIC extension encodes the following abstract
data model:</t>

<texttable>
      <ttcol align='left'>Component</ttcol>
      <ttcol align='left'>Description</ttcol>
      <ttcol align='left'>Cardinality</ttcol>
      <c>Agent Identity</c>
      <c>Identifier of the agent</c>
      <c>Mandatory</c>
      <c>Principal Binding</c>
      <c>Link to the accountable principal</c>
      <c>Mandatory</c>
      <c>Delegation Mode</c>
      <c>Authorized or representative</c>
      <c>Mandatory</c>
      <c>Capability Set</c>
      <c>Declared operational capabilities</c>
      <c>Optional</c>
      <c>Authorization Constraints</c>
      <c>Offline-verifiable boundary conditions</c>
      <c>Optional</c>
      <c>Delegation Authorization</c>
      <c>Cryptographic evidence of principal consent</c>
      <c>Mandatory</c>
      <c>Extensions</c>
      <c>Vendor-specific or future extensions</c>
      <c>Optional</c>
</texttable>

<t>This data model is encoded as a set of X.509v3 certificate extensions,
defined in the following section.</t>

</section>
<section anchor="aic-extension-definition"><name>AIC Extension Definition</name>

<section anchor="oid-tree"><name>OID Tree</name>

<figure><artwork><![CDATA[
1.3.6.1.4.1.66257 (IANA PEN -- Varwof PKI)
+-- 1 Identity & Authorization Core
|   +-- 1 AIC (Agent Identity Certificate Extension)
|   |   +-- 1 AgentIdentity (agentId, principalUid, delegationMode)
|   |   +-- 2 DelegationAuthorization (reason, requestedLifetime,
|   |   |     timestamp, nonce, signatureAlgorithm, signatureValue)
|   |   +-- 4 DelegationDepthControl (chainDepth, maxDepth)
|   |   |   +-- 1 chainDepth
|   |   |   +-- 2 maxDepth
|   +-- 2 PrincipalAuthorization (grants, authorizationConstraints,
|   |     delegationPolicy)
|   |   +-- 4 DelegationPolicy
+-- 3 National/Industry Certification
|   +-- 1 MarketAccessId
]]></artwork></figure>

</section>
<section anchor="capability-glob-matching-syntax"><name>Capability Glob Matching Syntax</name>

<t>Capability matching uses the following matching rules:</t>

<texttable>
      <ttcol align='left'>Pattern</ttcol>
      <ttcol align='left'>Meaning</ttcol>
      <ttcol align='left'>Example</ttcol>
      <c><spanx style="verb">scheme:method:path</spanx></c>
      <c>Exact match</c>
      <c><spanx style="verb">http:GET:/api/v1/users</spanx></c>
      <c><spanx style="verb">scheme:method:path/*</spanx></c>
      <c>Single-segment wildcard (no "/")</c>
      <c><spanx style="verb">http:GET:/api/v1/*</spanx></c>
      <c><spanx style="verb">scheme:method:path/**</spanx></c>
      <c>Multi-segment wildcard (crosses "/")</c>
      <c><spanx style="verb">http:GET:/api/v1/**</spanx></c>
      <c><spanx style="verb">scheme:*:path</spanx></c>
      <c>Method wildcard</c>
      <c><spanx style="verb">http:*:/api/v1/*</spanx></c>
      <c><spanx style="verb">scheme:*</spanx></c>
      <c>Scheme-wide wildcard</c>
      <c><spanx style="verb">http:*</spanx></c>
</texttable>

<t>Matching priority (highest to lowest):
1. Exact match
2. Single-segment wildcard
3. Multi-segment wildcard
4. Method wildcard
5. Scheme-wide wildcard</t>

<t>When multiple rules match, the highest priority rule applies.
If no rule matches, the capability MUST be treated as Deny.</t>

<t>Unqualified wildcards (bare <spanx style="verb">*</spanx> without a preceding namespace and colon
separator) are NOT permitted. All wildcards MUST be scoped within a
schemeId namespace.</t>

</section>
<section anchor="asn1-module"><name>ASN.1 Module</name>

<t>This section defines the ASN.1 module for the AIC extension, using
the conventions specified in <xref target="RFC5912"></xref>.</t>

<t>Encoding tag conventions:</t>

<t><list style="symbols">
  <t>Mandatory fields use universal tags (INTEGER, UTF8String, OCTET
STRING, SEQUENCE); no context-specific tags are applied.</t>
  <t>All OPTIONAL fields use context-specific explicit tags
(<spanx style="verb">[n] EXPLICIT</spanx>), numbered from 0 in field order within each
structure. Tag numbers are unique within a structure and MAY be
reused across structures.</t>
  <t>Standard external types (AlgorithmIdentifier) follow RFC 5280
encoding conventions.</t>
  <t>DEFAULT fields MAY be omitted from DER encodings when equal to the
default value; implementations MUST accept both forms.</t>
</list></t>

<t>The AIC and PrincipalAuthorization extensions MUST be non-critical so
that systems unaware of these extensions can safely ignore them.</t>

<figure><artwork><![CDATA[
VARWOF-AIC DEFINITIONS
    { iso(1) identified-organization(3) dod(6) internet(1)
      private(4) enterprise(1) varwof(66257) modules(2)
      id-mod-varwof-aic(1) }
DEFINITIONS ::= BEGIN

-- All SEQUENCEs SHALL use DER encoding (ordered, no indefinite-length).
-- See RFC 5912 Sec. 3 for DER encoding rules.
-- Implementations MUST reject BER indefinite-length encodings.

IMPORTS
    EXTENSION
        FROM PKIX-CommonTypes-2009
        { iso(1) identified-organization(3) dod(6) internet(1)
          security(5) mechanisms(5) pkix(7) id-mod(0)
          id-mod-pkixCommonTypes-02(57) },
    AlgorithmIdentifier
        FROM PKIXAlgs-2009
        { iso(1) identified-organization(3) dod(6) internet(1)
          security(5) mechanisms(5) pkix(7) id-mod(0)
          id-mod-pkix1-algorithms2008-02(56) } ;

-- OID Assignments

id-varwof        OBJECT IDENTIFIER ::= { 1 3 6 1 4 1 66257 }
id-aic           OBJECT IDENTIFIER ::= { id-varwof 1 1 }

-- AIC Extension

aicExt EXTENSION ::= {
    SYNTAX         AIC
    IDENTIFIED BY  id-aic
    CRITICAL       FALSE
}

AIC ::= SEQUENCE {
    version                  INTEGER DEFAULT 1,
    agentId                  UTF8String (SIZE(1..256)),
    principalUid             PrincipalUid,
    capabilities             SEQUENCE SIZE(1..MAX) OF Capability,
    delegationMode           DelegationMode DEFAULT authorized,
    authorizationConstraints [0] EXPLICIT SEQUENCE
        SIZE(0..32) OF Capability OPTIONAL,
    delegationAuthorization  DelegationAuthorization,
    extensions               [1] EXPLICIT AICExtensions OPTIONAL
}

DelegationMode ::= INTEGER {
    authorized     (0),
    representative (1)
} (0..1)

PrincipalUid ::= SEQUENCE {
    version     INTEGER (0..255) DEFAULT 1,
    realm       UTF8String (SIZE(1..128)),
    identifier  UTF8String (SIZE(1..256)),
    keyHash     OCTET STRING (SIZE(1..64)),
    hashAlgo    [0] EXPLICIT AlgorithmIdentifier OPTIONAL
}
-- hashAlgo omitted defaults to SHA-256 (OID 2.16.840.1.101.3.4.2.1);
-- keyHash = hashAlgo(SPKI). Only hash algorithms with output length
-- not exceeding 64 bytes are supported (SHA-2/SHA-3 family, SM3,
-- BLAKE2/BLAKE3). keyHash length is determined by the algorithm.

Capability ::= SEQUENCE {
    schemeId        UTF8String (SIZE(1..128)),
    capabilityId    UTF8String (SIZE(1..256)),
    parameters      [0] EXPLICIT OCTET STRING (SIZE(0..4096)) OPTIONAL
}

-- Reason for delegation authorization (mandatory in
-- DelegationAuthorization / DelegationAuthTBS; not present in
-- PrincipalAuthorization)

Reason ::= SEQUENCE {
    reasonCode  UTF8String (SIZE(1..64)),
        -- controlled vocabulary, e.g., SCHEDULED_MAINTENANCE
    description UTF8String (SIZE(1..512))
        -- human-readable description
}

DelegationAuthorization ::= SEQUENCE {
    reason              Reason,
    requestedLifetime   INTEGER (1..86400),  -- SHOULD 3600-86400
    timestamp           GeneralizedTime,     -- MUST be UTC (Z form)
    nonce               OCTET STRING (SIZE(32)),
    signatureAlgorithm  AlgorithmIdentifier,
    signatureValue      OCTET STRING
}

-- DelegationAuthTBS (To-Be-Signed structure)
-- The principal's private key signs the DER encoding of this structure.

DelegationAuthTBS ::= SEQUENCE {
    version                  INTEGER { v1(1), v2(2) } DEFAULT v1,
    agentId                  UTF8String (SIZE(1..256)),
    principalUid             PrincipalUid,
    reason                   Reason,
    capabilities             SEQUENCE SIZE(1..MAX) OF Capability,
    delegationMode           DelegationMode,
    authorizationConstraints [0] EXPLICIT SEQUENCE
        SIZE(0..32) OF Capability OPTIONAL,
    requestedLifetime        INTEGER (1..86400),  -- SHOULD 3600-86400
    timestamp                GeneralizedTime,     -- MUST be UTC (Z)
    nonce                    OCTET STRING (SIZE(32)),
    agentKeyBinding          [1] EXPLICIT AgentKeyBinding OPTIONAL
}

-- Version/validation matrix (normative):
--   version = 1 (legacy): agentKeyBinding MUST be absent;
--   version = 2 (current): agentKeyBinding MUST be present and valid;
--   any other version value: rejected.
-- Newly issued DAs MUST be version 2.

AgentKeyBinding ::= SEQUENCE {
    keyHash  OCTET STRING (SIZE(1..64)),
    hashAlgo [0] EXPLICIT AlgorithmIdentifier OPTIONAL
}
-- Binds the DA to the agent's public key: keyHash = hashAlgo(SPKI DER),
-- hashAlgo omitted defaults to SHA-256 (OID 2.16.840.1.101.3.4.2.1).
-- Only hash algorithms whose output does not exceed 64 octets are
-- supported (SHA-2/SHA-3 family, SM3, BLAKE2/BLAKE3); keyHash length
-- MUST equal the declared algorithm's output length. An unknown or
-- unsupported hashAlgo MUST be rejected (no silent fallback); SHA-1
-- MUST NOT be used.

-- PrincipalAuthorization Extension (OID: 1.3.6.1.4.1.66257.1.2)
-- Carried in the Principal's certificate.

paExt EXTENSION ::= {
    SYNTAX         PrincipalAuthorization
    IDENTIFIED BY  id-principal-auth
    CRITICAL       FALSE
}
id-principal-auth OBJECT IDENTIFIER ::= { id-varwof 1 2 }

PrincipalAuthorization ::= SEQUENCE {
    version                  INTEGER DEFAULT 1,
    grants                   SEQUENCE SIZE(1..MAX) OF Capability,
    authorizationConstraints [0] EXPLICIT SEQUENCE
        SIZE(0..32) OF Capability OPTIONAL,
    delegationPolicy         [1] EXPLICIT DelegationPolicy OPTIONAL,
    extensions               [2] EXPLICIT AICExtensions OPTIONAL
}

DelegationPolicy ::= SEQUENCE {
    version             INTEGER DEFAULT 1,
    maxAgents           INTEGER DEFAULT 1,
    allowedMode         DelegationModeEnum DEFAULT authorizedOnly,
    maxSessionHours     [0] EXPLICIT INTEGER OPTIONAL
}

DelegationModeEnum ::= INTEGER {
    authorizedOnly        (0),
    representativeAllowed (1)
} (0..1)

-- Extensibility Framework

AICExtensions ::= SEQUENCE SIZE (1..MAX) OF ExtField

ExtField ::= SEQUENCE {
    extnID      OBJECT IDENTIFIER,
    critical    BOOLEAN DEFAULT FALSE,
    extnValue   OCTET STRING
}

-- DelegationDepthControl carries the delegation chain depth.
-- Placed in AIC extensions slot, OID 1.3.6.1.4.1.66257.1.1.4.
-- chainDepth MUST NOT exceed maxDepth.
-- This revision defines semantics for chainDepth = 0 and chainDepth = 1
-- only.  Deeper chains are not refused, but they are outside the scope
-- of this specification; a deployment that uses them does so under its
-- own policy and cannot claim conformance for them.

id-ddc OBJECT IDENTIFIER ::= { id-aic 4 }
DelegationDepthControl ::= SEQUENCE {
    chainDepth  INTEGER (0..255),  -- OID .1.1.4.1
    maxDepth    INTEGER (0..255)   -- OID .1.1.4.2
}

END
]]></artwork></figure>

</section>
<section anchor="example-aic-extension-encoding"><name>Example AIC Extension Encoding</name>

<t>The following example illustrates the AIC extension for an agent with
agentId "agent-1", a principal identified as "zhangsan" in the
"corp.com" realm, and a single HTTP capability:</t>

<figure><artwork><![CDATA[
AIC ::= {
    agentId         "agent-1",
    principalUid    {
        realm       "corp.com",
        identifier  "zhangsan",
        keyHash     <32-byte hash of the principal's SPKI>
    },
    capabilities    {
        { schemeId "http", capabilityId "GET:/api/v1/users" }
    },
    delegationAuthorization {
        reason      {
            reasonCode  "SCHEDULED_MAINTENANCE",
            description "temporary maintenance window"
        },
        requestedLifetime 3600,
        timestamp   "2026-08-18T00:00:00Z",
        nonce       <32-byte CSPRNG value>,
        signatureAlgorithm ecdsa-with-SHA256,
        signatureValue <DER-encoded signature over DelegationAuthTBS>
    }
}
]]></artwork></figure>

<t>In the DER encoding of this example, the DEFAULT fields (version,
delegationMode) are omitted as permitted by the ASN.1 module, and the
OPTIONAL fields (authorizationConstraints, extensions) are absent.
Each field is encoded in the order given in the ASN.1 module using DER
rules <xref target="RFC5912">RFC5280</xref>. The signatureValue is produced by the
principal's private key over the DER encoding of the corresponding
DelegationAuthTBS structure and varies per authorization.</t>

</section>
<section anchor="field-definitions"><name>Field Definitions</name>

<section anchor="agentid"><name>agentId</name>

<t>The <spanx style="verb">agentId</spanx> field contains a globally unique identifier for the AI
Agent instance. The identifier SHOULD be stable across certificate
renewals for the same agent instance. Implementations MAY use UUIDs,
URN-based identifiers, or DNS-anchored names.</t>

</section>
<section anchor="delegationmode"><name>delegationMode</name>

<t>The <spanx style="verb">delegationMode</spanx> field defines the protocol-defined relationship
between the Agent and its Principal for attribution and authorization
purposes:</t>

<dl>
  <dt>authorized (0):</dt>
  <dd>
    <t>The Agent acts under its own cryptographic identity with explicit
principal authorization. The audit trail records the agentId as the
actor. This is the default mode.</t>
  </dd>
  <dt>representative (1):</dt>
  <dd>
    <t>The Agent fully represents the Principal. Actions are attributed to
the Principal (principalUid) in the audit trail. This mode MUST
only be permitted when the Principal's certificate explicitly allows
representative delegation (allowedMode=representativeAllowed in
PrincipalAuthorization.delegationPolicy).</t>
  </dd>
</dl>

</section>
<section anchor="principaluid"><name>principalUid</name>

<t>The <spanx style="verb">principalUid</spanx> field identifies the natural person or
organizational entity that authorizes the Agent's actions. It is
encoded as an ASN.1 SEQUENCE:</t>

<figure><artwork><![CDATA[
PrincipalUid ::= SEQUENCE {
    version     INTEGER (0..255) DEFAULT 1,
    realm       UTF8String (SIZE(1..128)),
    identifier  UTF8String (SIZE(1..256)),
    keyHash     OCTET STRING (SIZE(1..64)),
    hashAlgo    [0] EXPLICIT AlgorithmIdentifier OPTIONAL
}
]]></artwork></figure>

<t>Where:</t>

<t><list style="symbols">
  <t><spanx style="verb">realm</spanx> is a globally unique namespace (e.g., an organization domain),
limited to 128 characters;</t>
  <t><spanx style="verb">identifier</spanx> is a unique identifier within the realm, limited to 256
characters;</t>
  <t><spanx style="verb">keyHash</spanx> is the hash of the SubjectPublicKeyInfo (SPKI) of the
principal's certificate computed with <spanx style="verb">hashAlgo</spanx>: <spanx style="verb">keyHash =
hashAlgo(SPKI)</spanx>. The length is determined by the hash algorithm and
MUST NOT exceed 64 bytes (SHA-256 = 32 bytes, SHA-384 = 48 bytes,
SHA-512/SHA3-512 = 64 bytes, SM3 = 32 bytes). Using the SPKI hash
rather than a certificate fingerprint allows principal certificate
renewal without invalidating existing agent authorizations, provided
the same key pair is used.</t>
  <t><spanx style="verb">hashAlgo</spanx> identifies the hash algorithm used for <spanx style="verb">keyHash</spanx>; when
omitted, SHA-256 (OID 2.16.840.1.101.3.4.2.1) is assumed. Only hash
algorithms with output length not exceeding 64 bytes are supported.</t>
</list></t>

<t>The human-readable form <spanx style="verb">{realm}:{identifier}:{keyFingerprint}</spanx>
(where keyFingerprint is the base64url encoding of keyHash per
<xref target="RFC4648"></xref> Section 5, without padding) is RECOMMENDED for display
and logging purposes only. Machine-level comparison MUST use ASN.1
structural comparison, not string parsing.</t>

<t>keyHash MAY be used as a management index (e.g., for cascading
revocation, audit, or certificate lookup by principal). Such lookups
are for management association only; authorization binding and
revocation decisions remain based on keyHash and certificate chain
validation.</t>

</section>
<section anchor="capabilities"><name>capabilities</name>

<t>The <spanx style="verb">capabilities</spanx> field is a pure container -- this specification
defines only the encoding of capabilities, not their semantics.
Capability semantics are entirely defined by the capability scheme
identified by <spanx style="verb">schemeId</spanx>. AIC implementations MUST NOT assign semantics
to unknown schemes.  The Capability Language Core <xref target="CLC"></xref> is one external
language for those semantics; it does not change the rule that an
unknown scheme is refused. Each capability entry is identified by a <spanx style="verb">schemeId</spanx>
that indicates the governing scheme, a <spanx style="verb">capabilityId</spanx> within that
scheme, and OPTIONAL parameters.</t>

<t>The <spanx style="verb">capabilityId</spanx> field supports wildcard characters for glob-based
matching: <spanx style="verb">*</spanx> matches a single path segment (no colon), <spanx style="verb">**</spanx> matches
across path segments (any depth).</t>

<t>Gateways route capability evaluation by looking up registered plugins
by <spanx style="verb">schemeId</spanx>. When the capability required by the current request
references an unknown scheme or an unknown capability, the request
MUST be treated as Deny (fail-closed). Capabilities carried in the
certificate that are not relevant to the current request do not affect
the decision.</t>

</section>
<section anchor="authorizationconstraints"><name>authorizationConstraints</name>

<t>The <spanx style="verb">authorizationConstraints</spanx> field (OPTIONAL) defines
authorization boundary conditions for the Agent. Each constraint
reuses the Capability container. The <spanx style="verb">schemeId</spanx> MUST be one of
<spanx style="verb">"varwof/constraint-v1"</spanx>; any other <spanx style="verb">schemeId</spanx> MUST be rejected.
<spanx style="verb">capabilityId</spanx> distinguishes the constraint type. The following
constraint types are defined as examples; additional constraint types
are registered through the capability scheme registry (Section IANA
Considerations) and do not require a change to the ASN.1 module:</t>

<texttable>
      <ttcol align='left'>capabilityId</ttcol>
      <ttcol align='left'>parameters Format</ttcol>
      <ttcol align='left'>Description</ttcol>
      <c><spanx style="verb">allowed-cidr</spanx></c>
      <c><spanx style="verb">["10.0.0.0/8", "192.168.0.0/16"]</spanx></c>
      <c>Allowed IP ranges</c>
      <c><spanx style="verb">max-concurrent</spanx></c>
      <c><spanx style="verb">{"max": 5}</spanx></c>
      <c>Maximum concurrent Agent instances</c>
      <c><spanx style="verb">time-window</spanx></c>
      <c><spanx style="verb">{"start": "22:00", "end": "06:00"}</spanx></c>
      <c>Allowed execution time window (UTC)</c>
</texttable>

<t>Constraint semantics MUST define the reference clock, time scale,
timezone interpretation, boundary conditions, and behavior under clock
uncertainty (e.g., for time-window).</t>

<t>Constraints are evaluated with AND logic: all constraints MUST be
satisfied for the connection to be accepted. The maximum number of
constraints is 32, with a single constraint's parameters field limited
to 512 bytes. Unknown constraint types are logged as audit warnings
and ignored by default (forward-compatible); strict rejection behavior
may be configured by the deployment.</t>

<t>Design principle: authorizationConstraints carry boundary conditions
determined by the authorizing party, varying per-principal, and changing
infrequently. Runtime policies (timeouts, retries, rate limits, routing)
are NOT carried in authorizationConstraints and remain in gateway-local
policy configuration.</t>

<t>The boundary between authorizationConstraints and gateway runtime
policy is fixed:</t>

<t><list style="symbols">
  <t>authorizationConstraints carry authorization boundary conditions
set by the authorizing party (IP ranges, concurrency limits, time
windows) that are verifiable offline.</t>
  <t>Gateway runtime policy (timeouts, retries, rate limits, routing,
logging levels) is deployment-specific and MUST NOT be carried in
authorizationConstraints.</t>
</list></t>

<t>Constraint types registered with the same capabilityId and parameters
MUST be interpreted consistently by gateways that implement them.
Gateways that do not implement a constraint type treat it as unknown
and follow the unknown-constraint handling described above.</t>

<t>The constraints within AIC.authorizationConstraints are independent of
constraints within PrincipalAuthorization.authorizationConstraints --
PA constraints limit the authorization behavior, AIC constraints limit
the execution behavior. Both are checked independently during
validation.</t>

</section>
<section anchor="delegationauthorization"><name>delegationAuthorization</name>

<t>The <spanx style="verb">delegationAuthorization</spanx> field provides cryptographic evidence
that the principal has authorized this Agent. It contains:</t>

<figure><artwork><![CDATA[
DelegationAuthorization ::= SEQUENCE {
    reason              Reason,
    requestedLifetime   INTEGER (1..86400),
    timestamp           GeneralizedTime,
    nonce               OCTET STRING (SIZE(32)),
    signatureAlgorithm  AlgorithmIdentifier,
    signatureValue      OCTET STRING
}
]]></artwork></figure>

<t>The signature algorithm and signature value are kept as two flat
fields -- <spanx style="verb">signatureAlgorithm</spanx> preceding <spanx style="verb">signatureValue</spanx> -- following
the X.509 certificate convention (RFC 5280 Section 4.1), where
<spanx style="verb">signatureAlgorithm</spanx> precedes <spanx style="verb">signatureValue</spanx> in the Certificate
structure, enabling parsers to determine the algorithm before reading
the signature bytes. They MUST NOT be merged into a nested SEQUENCE.</t>

<t><list style="symbols">
  <t><spanx style="verb">reason</spanx> (mandatory): The reason for this delegation, carried
both here and in DelegationAuthTBS (where it is covered by the
principal's signature). <spanx style="verb">reasonCode</spanx> is a controlled vocabulary value
in SCREAMING_SNAKE style (e.g., <spanx style="verb">SCHEDULED_MAINTENANCE</spanx>,
<spanx style="verb">AUTO_RENEWAL</spanx>); <spanx style="verb">description</spanx> is a human-readable explanation. Both
fields MUST be present and non-empty. <spanx style="verb">reason</spanx> does not appear in
PrincipalAuthorization.</t>
  <t><spanx style="verb">requestedLifetime</spanx>: The principal-requested certificate lifetime in
seconds. The wire value MUST be in the range 1-86400 (SHOULD
3600-86400). The CA determines the actual NotAfter as
min(requestedLifetime, local policy maximum).</t>
  <t><spanx style="verb">timestamp</spanx>: The time at which the authorization was granted. MUST be
UTC encoded as GeneralizedTime in Z form.</t>
  <t><spanx style="verb">nonce</spanx>: 32-byte CSPRNG-generated random value for replay protection.
The CA verifies nonce uniqueness at issuance time and persists it
to prevent reuse. Certificate renewal or re-issuance MUST be backed
by a new DelegationAuthorization carrying a fresh nonce; a CA MUST
NOT renew or re-issue an agent certificate by reusing a prior
DelegationAuthorization.</t>
  <t><spanx style="verb">signatureAlgorithm</spanx>: The algorithm identifier for the principal's
signature (e.g., ecdsa-with-SHA256).</t>
  <t><spanx style="verb">signatureValue</spanx>: The DER-encoded signature value produced by the
principal's private key over the DER encoding of DelegationAuthTBS.</t>
</list></t>

<t>The principal's private key signs the DER encoding of the following
DelegationAuthTBS structure:</t>

<figure><artwork><![CDATA[
DelegationAuthTBS ::= SEQUENCE {
    version                  INTEGER { v1(1), v2(2) } DEFAULT v1,
    agentId                  UTF8String (SIZE(1..256)),
    principalUid             PrincipalUid,
    reason                   Reason,
    capabilities             SEQUENCE SIZE(1..MAX) OF Capability,
    delegationMode           DelegationMode,
    authorizationConstraints [0] EXPLICIT SEQUENCE
        SIZE(0..32) OF Capability OPTIONAL,
    requestedLifetime        INTEGER (1..86400),
    timestamp                GeneralizedTime,
    nonce                    OCTET STRING (SIZE(32)),
    agentKeyBinding          [1] EXPLICIT AgentKeyBinding OPTIONAL
}

AgentKeyBinding ::= SEQUENCE {
    keyHash  OCTET STRING (SIZE(1..64)),
    hashAlgo [0] EXPLICIT AlgorithmIdentifier OPTIONAL
}
]]></artwork></figure>

<t>All fields except the two OPTIONAL containers
(<spanx style="verb">authorizationConstraints</spanx>, <spanx style="verb">agentKeyBinding</spanx>) MUST be present in the
DER encoding of DelegationAuthTBS. The <spanx style="verb">authorizationConstraints</spanx> field
uses context-specific tag [0] EXPLICIT encoding; its OPTIONAL nature
does not break backward compatibility with certificates that do not
carry constraints.</t>

<t>The <spanx style="verb">agentKeyBinding</spanx> field (context-specific tag [1] EXPLICIT) is
version-dependent, and the version/validation matrix is normative:</t>

<t><list style="symbols">
  <t><spanx style="verb">version = 1</spanx> (legacy): <spanx style="verb">agentKeyBinding</spanx> MUST be absent; a
version-1 TBS carrying the binding is malformed and MUST be
rejected;</t>
  <t><spanx style="verb">version = 2</spanx> (current): <spanx style="verb">agentKeyBinding</spanx> MUST be present and valid;
newly issued DelegationAuthorizations MUST be version 2;</t>
  <t>any other <spanx style="verb">version</spanx> value MUST be rejected.</t>
</list></t>

<t>A binding is <em>valid</em> when <spanx style="verb">keyHash</spanx> is 1-64 octets and its length
equals the output length of the declared <spanx style="verb">hashAlgo</spanx> (SHA-256 when
<spanx style="verb">[0]</spanx> is omitted); an unknown or unsupported <spanx style="verb">hashAlgo</spanx> MUST be
rejected with no silent fallback, and SHA-1 MUST NOT be used. The
binding ties the authorization to the agent's public key (SPKI hash),
so a valid DelegationAuthorization cannot be transplanted onto a
different agent key; version-1 authorizations lack this binding and
are accepted for verification only under the substitution mitigations
described in the Security Considerations.</t>

<t>The JWT counterpart in <xref target="AIC-JWT"></xref> numbers the DA claim set with a
historical offset: X.509 AIC DA v1 corresponds to AIC-JWT
<spanx style="verb">da.ver=2</spanx>, and X.509 AIC DA v2 (with <spanx style="verb">agentKeyBinding</spanx>) corresponds
to AIC-JWT <spanx style="verb">da.ver=3</spanx>.  A JWT <spanx style="verb">da.ver=3</spanx> MUST carry the equivalent
<spanx style="verb">agent_key_binding</spanx> and MUST NOT be accepted without it; a JWT
<spanx style="verb">da.ver=2</spanx> MUST NOT carry that binding.</t>

</section>
<section anchor="extensions-and-extensibility"><name>Extensions and Extensibility</name>

<t>The <spanx style="verb">extensions</spanx> field in AIC provides an extensibility mechanism for
vendor-specific and user-specific metadata, analogous to X.509 v3
extensions but scoped to the AIC context. Each extension entry is
identified by a globally unique OID.</t>

<t><list style="symbols">
  <t>Vendor-specific extensions SHOULD use OIDs under the vendor's own
IANA Private Enterprise Number.</t>
  <t>Unknown extensions with <spanx style="verb">critical = TRUE</spanx> MUST cause certificate
rejection.</t>
  <t>Unknown extensions with <spanx style="verb">critical = FALSE</spanx> (default) MAY be silently
ignored.</t>
</list></t>

</section>
<section anchor="certificate-size-constraints"><name>Certificate Size Constraints</name>

<t>Certificates MUST observe the following size limits:</t>

<t><list style="symbols">
  <t>Full-protocol safety limit: 12 KB recommended, 16 KB hard limit.
This is the DER-encoded certificate size compatible with TCP/HTTP/
DTLS/QUIC gateways. 16 KB corresponds to the QUIC
<spanx style="verb">CRYPTO_BUFFER_EXCEEDED</spanx> limit of the QUIC stacks used by the
reference implementation; exceeding it fails the handshake.</t>
  <t>Handshake certificate (AIC lightweight): 8 KB recommended, 16 KB
hard limit. Used for mTLS/DTLS/QUIC handshake. In dual-certificate
deployments it contains agentId + principalUid + delegationMode
  <list style="symbols">
      <t>DelegationAuthorization, plus at least one capability entry (the
AIC capability set MUST NOT be empty; see Section 4.5.4). The
dual-certificate deployment model is an optional deployment profile
and does not define a new TLS certificate type.</t>
    </list></t>
  <t>Full authorization certificate: 64 KB recommended, 128 KB hard
limit. Carries all capabilities, authorizationConstraints, and
extensions; transmitted at the application layer after the handshake.
Certificates exceeding 128 KB MUST be rejected.
Unlike QUIC, TCP/TLS transports do not impose the 16 KB handshake
limit: certificate messages are segmented by the TLS record layer,
so larger certificates can be carried in practice up to the hard
limit.</t>
</list></t>

<t>The number of entries in the <spanx style="verb">extensions</spanx> field SHOULD NOT exceed 32.
The ASN.1 module bounds the <spanx style="verb">capabilities</spanx> sequence with SIZE(1..MAX)
and does not fix a numeric limit on the wire format. Certificates
whose capability entries exceed 256 MUST be rejected to prevent DoS
attacks; typical deployments carry far fewer entries, and deployments
SHOULD keep the capability set as small as practical.</t>

</section>
<section anchor="capability-parameters-intersection"><name>Capability Parameters Intersection</name>

<t>When matching capabilities across P_grants and C_agent, parameter
intersection follows these rules:</t>

<t><list style="symbols">
  <t>If C_agent.parameters exceed the boundary defined in
P_grants.parameters, the capability entry is invalid (filtered
or rejected).</t>
  <t>Otherwise, C_agent.parameters are used in full (agent-specified
values within principal-defined boundaries).</t>
</list></t>

<t>Examples:</t>

<texttable>
      <ttcol align='left'>P_grants</ttcol>
      <ttcol align='left'>C_agent</ttcol>
      <ttcol align='left'>Result</ttcol>
      <c><spanx style="verb">max_rows=1000</spanx></c>
      <c><spanx style="verb">max_rows=100</spanx></c>
      <c>Accept, use <spanx style="verb">max_rows=100</spanx></c>
      <c><spanx style="verb">max_rows=1000</spanx></c>
      <c><spanx style="verb">max_rows=5000</spanx></c>
      <c>Reject (exceeds boundary)</c>
</texttable>

</section>
</section>
</section>
<section anchor="validation-procedure"><name>Validation Procedure</name>

<t>This section defines the validation procedure that a gateway or
relying party MUST perform when processing an AIC-bearing certificate.</t>

<section anchor="validation-pipeline"><name>Validation Pipeline</name>

<t>The gateway performs the following validation steps in order after
TLS handshake completion:</t>

<t><list style="numbers" type="1">
  <t><strong>Certificate Chain</strong> (<xref target="RFC5280"></xref>): Verify the certificate chain
up to a trusted root, including signature validation, validity
periods, and basic constraints.</t>
  <t><strong>Revocation Status</strong>: Verify that neither the end-entity
certificate nor any intermediate certificate in the chain has been
revoked. Implementations MAY use CRLs (<xref target="RFC5280"></xref>), OCSP
(<xref target="RFC6960"></xref>), or OCSP Must-Staple (<xref target="RFC7633"></xref>). In offline
deployments, a locally cached CRL or a short validity window MAY
serve as an alternative revocation mechanism.</t>
  <t><strong>AIC Extension Parsing</strong>: Parse the AIC SEQUENCE. If the
extension is marked critical and cannot be parsed, the certificate
MUST be rejected.</t>
  <t><strong>DelegationAuthorization Verification</strong>: Verify the principal's
signature in <spanx style="verb">delegationAuthorization.signatureValue</spanx>:
  <list style="symbols">
      <t>Reconstruct the DER encoding of DelegationAuthTBS (including
reason and authorizationConstraints if present). The TBS is
DER-encoded in the field order defined in the ASN.1 module;
DEFAULT fields MAY be omitted and are interpreted with their
default values.</t>
      <t>Use the principal's public key (identified by
principalUid.keyHash) to verify <spanx style="verb">signatureValue</spanx>.</t>
      <t>Cross-verify that hashAlgo(principal_cert.SPKI) equals
principalUid.keyHash (hashAlgo omitted means SHA-256).</t>
      <t>Verify the version/validation matrix: <spanx style="verb">version = 1</spanx> requires
<spanx style="verb">agentKeyBinding</spanx> to be absent (legacy-only, accepted under the
substitution mitigations); <spanx style="verb">version = 2</spanx> requires a valid
<spanx style="verb">agentKeyBinding</spanx>; any other version value MUST be rejected. When
the binding is present, cross-verify that
hashAlgo(agent_cert.SPKI) equals <spanx style="verb">agentKeyBinding.keyHash</spanx>
(hashAlgo omitted means SHA-256) and that the keyHash length
equals the declared algorithm's output length; an unknown or
unsupported hashAlgo MUST be rejected.</t>
      <t>Verify that the principal's certificate chain validates to the
same configured trust anchor as the agent certificate chain;
chains that terminate at different trust anchors MUST be
rejected (Fail-Close).</t>
      <t>Verify that the certificate validity period
(notAfter - notBefore) does not exceed
delegationAuthorization.requestedLifetime, and that
requestedLifetime is at most 86400 seconds (1 day).</t>
      <t>Verify that <spanx style="verb">signatureAlgorithm</spanx> is one of the permitted
algorithms: ECDSA with SHA-256 (MUST), ECDSA with SHA-384 or
SHA-512 (MAY), RSA with SHA-256 (MUST), RSA with SHA-384 or
SHA-512 (MAY), RSA-PSS with SHA-256, SHA-384, or SHA-512 (MAY),
or Ed25519 (MAY).
Any other algorithm MUST be rejected.</t>
    </list></t>
  <t><strong>PA.authorizationConstraints Check</strong>: If the
PrincipalAuthorization extension in the principal's certificate
contains authorizationConstraints, evaluate them. PA constraints
limit the authorization behavior and are independent of
AIC.authorizationConstraints.</t>
  <t><strong>AIC.authorizationConstraints Check</strong>: If
AIC.authorizationConstraints is present, evaluate each constraint
it recognizes with AND logic. All constraints MUST be satisfied.
Unknown constraint types are logged as audit warnings and ignored
(forward-compatible). This step is executed before capability
evaluation for fast rejection of unauthorized connections.</t>
  <t><strong>Delegation Mode Check</strong>: If <spanx style="verb">delegationMode</spanx> is representative:
  <list style="symbols">
      <t>Load the principal's certificate and its PrincipalAuthorization
extension.</t>
      <t>Verify allowedMode permits representative delegation.</t>
      <t>Verify that C_agent is a subset of P_grants (P (AND) C (AND) T).</t>
    </list></t>
  <t><strong>Delegation Depth Check</strong>: If a DelegationDepthControl extension
is present, verify that chainDepth does not exceed maxDepth. As a
best practice, deployments SHOULD prefer chains within the
recommended envelope (chainDepth &lt;= 1). A chain with chainDepth &gt;
1 is not refused by this specification, but its semantics are
outside the scope of this revision: a deployment that accepts one
relies on its own policy for the responsibility boundaries along
the chain.</t>
  <t><strong>Capability Evaluation</strong>: For the capability required by the
current request, route evaluation to the plugin registered for its
<spanx style="verb">schemeId</spanx>. If no plugin is registered or the capability is
unknown, the request MUST be denied. Other capabilities carried in
the certificate but not relevant to the current request do not
affect the decision.</t>
  <t><strong>Decision</strong>: If all validation steps pass, the relying party
   SHOULD allow the connection. If any step fails, the relying party
   MUST reject the request. Deployments SHOULD record the rejection
   with sufficient diagnostic information for audit purposes.</t>
</list></t>

</section>
<section anchor="offline-validation"><name>Offline Validation</name>

<t>In offline or air-gapped deployments without access to CRL or OCSP
responders, the relying party MUST accept the risk that a revoked
certificate may be accepted until the next cache refresh. Mitigations
include:</t>

<t><list style="symbols">
  <t>Short certificate validity windows (RECOMMENDED &lt;= 1 hour);</t>
  <t>Locally cached CRL shards with freshness checks;</t>
  <t>authorizationConstraints evaluated entirely offline during TLS
handshake.</t>
</list></t>

<t>The principal's certificate is obtained from the Credential Bundle
presented by the Agent during TLS handshake (TLS 1.3 allows multiple
CertificateEntry messages). If the principal's certificate is not
present in the chain and no local cache is available, the gateway MUST
reject the connection (Fail-Close). The same-trust-anchor requirement
applies in online and offline deployments alike.
The transport mechanism for the credential bundle is a deployment
detail and is not defined as a new TLS message type by this
specification.</t>

</section>
</section>
<section anchor="principalauthorization-extension"><name>PrincipalAuthorization Extension</name>

<t>The PrincipalAuthorization extension (OID <spanx style="verb">1.3.6.1.4.1.66257.1.2</spanx>) is a
companion X.509 extension carried in the Principal's certificate. It
declares the Principal's authority boundaries, including grant
declarations, authorization constraints, and delegation policies.</t>

<section anchor="asn1-definition"><name>ASN.1 Definition</name>

<figure><artwork><![CDATA[
PrincipalAuthorization ::= SEQUENCE {
    version                  INTEGER DEFAULT 1,
    grants                   SEQUENCE SIZE(1..MAX) OF Capability,
    authorizationConstraints [0] EXPLICIT SEQUENCE
        SIZE(0..32) OF Capability OPTIONAL,
    delegationPolicy         [1] EXPLICIT DelegationPolicy OPTIONAL,
    extensions               [2] EXPLICIT AICExtensions OPTIONAL
}

DelegationPolicy ::= SEQUENCE {
    version             INTEGER DEFAULT 1,
    maxAgents           INTEGER DEFAULT 1,
    allowedMode         DelegationModeEnum DEFAULT authorizedOnly,
    maxSessionHours     [0] EXPLICIT INTEGER OPTIONAL
}

DelegationModeEnum ::= INTEGER {
    authorizedOnly        (0),
    representativeAllowed (1)
} (0..1)
]]></artwork></figure>

<t>The <spanx style="verb">grants</spanx> field defines the set of capabilities the principal may
grant to agents -- serving as the upper bound (P_grants) in the
permission intersection model.</t>

<t>The <spanx style="verb">authorizationConstraints</spanx> field carries principal-level
authorization boundary constraints, reusing the Capability container
with <spanx style="verb">schemeId="varwof/constraint-v1"</spanx>. PA constraints and AIC
constraints are
evaluated independently -- they operate at different semantic layers
and are not in a subset relationship.</t>

<t>The <spanx style="verb">delegationPolicy</spanx> field defines the Principal's delegation
boundary: how many concurrent agents are permitted (maxAgents),
which delegation modes are allowed (allowedMode), and optionally
the maximum session hours (maxSessionHours).</t>

<t>maxAgents (in DelegationPolicy) and the max-concurrent constraint (in
authorizationConstraints) have distinct semantics: maxAgents limits
how many Agent instances the Principal may delegate to concurrently,
whereas max-concurrent limits how many concurrent connections a single
Agent may establish. They are enforced at different layers (policy
boundary vs execution boundary) and are not interchangeable.</t>

</section>
<section anchor="principal-key-rotation"><name>Principal Key Rotation</name>

<t>When the principal's private key is compromised and a new key pair is
generated, the SPKI hash in <spanx style="verb">principalUid.keyHash</spanx> changes, causing all
existing representative-mode agent certificates to fail authorization
checks. This is an intentional design: when the key pair changes, all
associated agent certificates are automatically invalidated through a
key management operation rather than a revocation broadcast. When the
principal renews their certificate using the same key pair, the SPKI
remains unchanged and existing agent authorizations continue without
requiring re-issuance.</t>

</section>
</section>
<section anchor="deployment-models"><name>Deployment Models</name>

<section anchor="enterpriseregulated-model"><name>Enterprise/Regulated Model</name>

<t><list style="symbols">
  <t>The <spanx style="verb">principalUid</spanx> field MUST be populated with a verifiable natural
person identifier.</t>
  <t>The <spanx style="verb">delegationAuthorization</spanx> field MUST be present and
cryptographically validated.</t>
  <t>Representative mode MUST only be used with explicit
PrincipalAuthorization delegation grants.</t>
  <t>The agent certificate chain and the principal certificate chain
MUST validate to the same configured trust anchor (the agent CA and
the principal CA MUST belong to the same trust domain).</t>
  <t>Certificate validity SHOULD be short-lived (hours to days).</t>
  <t>authorizationConstraints SHOULD carry IP range, concurrency, and
time window boundaries.</t>
  <t>All AIC-bearing connections SHOULD be logged.</t>
</list></t>

</section>
<section anchor="consumerindividual-model"><name>Consumer/Individual Model</name>

<t><list style="symbols">
  <t>The <spanx style="verb">principalUid</spanx> MAY be omitted or contain a pseudonymous
identifier.</t>
  <t>The <spanx style="verb">delegationAuthorization</spanx> field MAY be omitted for low-risk
operations.</t>
  <t>Representative mode SHOULD NOT be used.</t>
  <t>Deployments in this model prioritize consumer privacy protections
over granular identity binding.</t>
  <t>When a DelegationAuthorization is present, the same-trust-anchor
requirement of Section 5 applies.</t>
</list></t>

</section>
</section>
<section anchor="extensibility-framework"><name>Extensibility Framework</name>

<t>The <spanx style="verb">extensions</spanx> field in AIC provides an extensibility mechanism for
vendor-specific and user-specific metadata, analogous to X.509 v3
extensions but scoped to the AIC context.</t>

<t>Each extension in the <spanx style="verb">extensions</spanx> sequence is identified by a globally
unique OID. The following guidelines apply:</t>

<t><list style="symbols">
  <t>Vendor-specific extensions SHOULD use OIDs under the vendor's own
IANA Private Enterprise Number.</t>
  <t>Unknown extensions with <spanx style="verb">critical = TRUE</spanx> MUST cause certificate
rejection.</t>
  <t>Unknown extensions with <spanx style="verb">critical = FALSE</spanx> (default) MAY be silently
ignored.</t>
</list></t>

<t>This document specifies the container structure only. Semantics are
defined by the OID assignee.</t>

</section>
<section anchor="privacy-considerations-gdpr-right-to-erasure"><name>Privacy Considerations (GDPR / Right to Erasure)</name>

<t>AIC certificates are static X.509 data objects. Once issued, the
<spanx style="verb">principalUid</spanx> field cannot be modified or deleted from distributed
certificates. Deployments MUST ensure that:</t>

<t><list style="numbers" type="1">
  <t>The <spanx style="verb">identifier</spanx> field within <spanx style="verb">principalUid</spanx> does not contain raw
personally identifiable information (PII) such as full names,
national ID numbers, or email addresses. Internal UUIDs or
pseudonymous identifiers MUST be used instead.</t>
  <t>The mapping table between pseudonymous identifiers and natural
persons is stored in a compliant database that supports deletion
under GDPR Article 17 or equivalent regulations.</t>
  <t>Certificate revocation (CRL/OCSP) is the only mechanism available
to signal that a principal no longer authorizes a given agent;
revocation does not erase the certificate itself.</t>
  <t>AIC certificates SHOULD be treated as stateless credentials by
relying parties: they are parsed and verified during the TLS
handshake, after which the raw certificate MAY be discarded and
need not be persistently stored.</t>
  <t>Audit logs SHOULD be minimized: they need not record the full
principalUid structure or extension content. A session-bound
fingerprint, the operation summary, the decision, and the
pseudonymous identifier are sufficient for accountability.</t>
  <t>Log retention MUST be configurable by the deployment according to
applicable jurisdictional requirements. A layered model is
recommended: long-term archival for high-accountability regimes,
limited cleanup periods for standard deployments, and an ephemeral
no-mapping mode for consumer scenarios.</t>
  <t>Cryptographic evidence and log mappings are independent: the
DelegationAuthorization signature can be verified on its own
without relying on audit log mappings, so deleting a pseudonym
mapping table does not invalidate the cryptographic
evidence of authorization.</t>
</list></t>

<t>Since certificates are immutable once issued, data-subject rights
(access, rectification, erasure) are realized through certificate
revocation and re-issuance: revoke the certificate carrying the old
identifier, issue a new certificate with a fresh pseudonymous
identifier, and delete the associated mapping entries.</t>

<t>This specification provides privacy-preserving mechanisms only.
Legal compliance (lawful basis, cross-border transfer, breach
notification, and other obligations) is the responsibility of the
deployment acting as data controller or processor.</t>

<t>All data carried in the AIC extension is visible during the TLS
handshake. Implementations MUST NOT place sensitive data in any
certificate extension.</t>

</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<t>The AIC extension is not an authentication requirement by itself:
the X.509 certificate chain already authenticates the agent, and the
AIC extension carries authorization-related information that the
relying party may evaluate. Deployments that require AIC-based
authorization MUST configure the relying party to require and process
the AIC extension.</t>

<t>AIC does not constrain the authority of a CA to issue
PrincipalAuthorization extensions. The trustworthiness of a
PrincipalAuthorization depends on the CA issuance policy and the
trust anchor configuration.</t>

<section anchor="threat-model"><name>Threat Model</name>

<t>This specification considers the following adversary models:</t>

<t><strong>Network Attacker (E):</strong> A network-level adversary capable of
intercepting, modifying, and replaying TLS connections. This adversary
does not have access to any private keys.</t>

<t><strong>Malicious Agent (M):</strong> An authenticated agent in possession of a
valid AIC certificate that attempts to escalate privileges, impersonate
other agents, or exceed its authorized capabilities.</t>

<t><strong>Compromised Principal (P):</strong> A principal whose private key has been
leaked. The attacker can sign arbitrary DelegationAuthorization
payloads using the compromised key.</t>

<t><strong>Compromised CA (C):</strong> An adversary with access to a CA signing key.
This adversary can issue arbitrary certificates and is the most
powerful in the model.</t>

<t>Trust boundary. This specification assumes a trusted-CA model: the CA
issuing the agent certificate correctly binds <spanx style="verb">agentId</spanx> to the subject
public key and faithfully encodes the principal-signed delegation
fields in the AIC extension. Compromise of a CA signing key or of a
configured trust anchor is outside the protection scope of the
mechanisms defined in this document; deployments MUST protect CA
signing keys (e.g., HSM or equivalent isolation) and MUST apply the
same-trust-anchor requirement of Section 5 so that agent and principal
chains share a single trust domain.</t>

</section>
<section anchor="threat-mitigations"><name>Threat Mitigations</name>

<texttable>
      <ttcol align='left'>Threat</ttcol>
      <ttcol align='left'>Mitigation</ttcol>
      <ttcol align='left'>Mechanism</ttcol>
      <c>Agent impersonation</c>
      <c>Cryptographic identity binding</c>
      <c>X.509 CA-issued certificate, BasicConstraints CA:FALSE</c>
      <c>Principal denial of authorization</c>
      <c>Digital signature on authorization</c>
      <c>DelegationAuthorization.signatureValue over DelegationAuthTBS</c>
      <c>Capability escalation</c>
      <c>Permission subset check</c>
      <c>P_grants (AND) C_agent (AND) T_policy intersection</c>
      <c>Cross-CA role spoofing</c>
      <c>Trust anchor hash verification</c>
      <c>Trust anchor fingerprint comparison in offline plugin parameters</c>
      <c>Unknown extension bypass</c>
      <c>Critical flag enforcement</c>
      <c>Reject on unknown critical extension</c>
      <c>Signature replay</c>
      <c>Nonce binding in TBS</c>
      <c>32-byte nonce in DelegationAuthTBS, CA uniqueness check</c>
      <c>Authorization forgery</c>
      <c>Dual-signature nesting</c>
      <c>Principal signature prevents forgery of DelegationAuthorization content by non-CA parties; faithful CA encoding of principal-signed fields is required by issuance policy and the same-trust-anchor requirement (Section 5)</c>
</texttable>

</section>
<section anchor="offline-validation-risks"><name>Offline Validation Risks</name>

<t>In offline deployments, the risk of accepting a revoked certificate
exists until the next cache refresh. Mitigations include short
certificate validity windows and strict authorizationConstraints
that limit the blast radius (IP range, concurrency caps).</t>

</section>
<section anchor="authorization-constraint-integrity"><name>Authorization Constraint Integrity</name>

<t>The authorizationConstraints field is carried inside the AIC
extension, which is covered by the CA signature over the
TBSCertificate; a modification of any constraint therefore fails
certificate signature validation. The effectiveness of constraint
enforcement also depends on the gateway evaluating the constraints it
recognizes and on constraint plugins implementing the declared
semantics. Constraints are boundary conditions that limit the blast
radius of a compromised or malicious agent; they are not a substitute
for gateway-local policy controls such as rate limiting or resource
quotas.</t>

</section>
<section anchor="principal-key-hash-binding"><name>Principal Key Hash Binding</name>

<t>The principalUid.keyHash field binds the delegation authorization to
the principal's public key through the hash algorithm identified by
hashAlgo. The hash output is limited to 64 bytes by the ASN.1 SIZE
constraint, and a collision in a cryptographically secure hash
function is assumed to be computationally infeasible under the
security assumptions of the selected hash algorithm. In addition,
keyHash is used to locate and bind the
principal's certificate within the credential bundle; signature
verification uses the principal's public key after certificate chain
validation, so a hash collision alone would not enable an attacker to
produce a valid principal signature. keyHash itself does not
establish trust: trust derives from certificate chain validation and
the principal's signature. keyHash is a locator and binding mechanism
only.</t>

</section>
<section anchor="nonce-replay-protection"><name>Nonce Replay Protection</name>

<t>The 32-byte nonce in DelegationAuthTBS is signed as part of the DER
encoding, making it a cryptographic input to the principal's signature
-- not a plaintext parameter. The CA verifies nonce uniqueness at
issuance time and persists used nonces. The gateway MAY optionally
maintain a local NonceCache for additional replay detection, but this
is not required: the primary defense is the CA-level uniqueness check.
Replay protection is therefore enforced at the CA issuance layer
(nonce uniqueness at issuance time), not at the gateway runtime; the
gateway's optional cache is a secondary defense only.</t>

</section>
</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<section anchor="private-enterprise-number-assignment"><name>Private Enterprise Number Assignment</name>

<t>This document uses the IANA Private Enterprise Number 66257, assigned
to Varwof PKI (contact: Jijie Wei, pki@varwof.com). The OID prefix is:</t>

<figure><artwork><![CDATA[
1.3.6.1.4.1.66257
]]></artwork></figure>

</section>
<section anchor="oid-registration"><name>OID Registration</name>

<t>The following OIDs are defined in this document:</t>

<dl>
  <dt>1.3.6.1.4.1.66257.1.1:</dt>
  <dd>
    <t>AIC Extension (Section AIC Extension Definition)</t>
  </dd>
  <dt>1.3.6.1.4.1.66257.1.2:</dt>
  <dd>
    <t>PrincipalAuthorization Extension (Section PrincipalAuthorization)</t>
  </dd>
  <dt>1.3.6.1.4.1.66257.1.1.4:</dt>
  <dd>
    <t>DelegationDepthControl (Section Multi-Level Delegation)</t>
  </dd>
</dl>

<t>Additional OIDs under branch 3 (National/Industry Certification) are
reserved for future allocation. The full OID tree is defined in
Section OID Tree.</t>

</section>
<section anchor="capability-scheme-registry"><name>Capability Scheme Registry</name>

<t>This version of the specification does not request an IANA registry.
Capability scheme identifiers and constraint types are registered
through an external or community registry of scheme identifiers,
which follows the vendor/product naming convention. An IANA registry
may be requested in a future revision if the scheme namespace is
transitioned to IANA administration.</t>

<t>The initial entry in the external registry:</t>

<texttable>
      <ttcol align='left'>Scheme Identifier</ttcol>
      <ttcol align='left'>Description</ttcol>
      <ttcol align='left'>Reference</ttcol>
      <c>varwof/constraint-v1</c>
      <c>Authorization boundary constraint (allowed-cidr, max-concurrent, time-window)</c>
      <c>This document</c>
</texttable>

<t>The <spanx style="verb">http</spanx> and <spanx style="verb">database</spanx> scheme identifiers are reserved as examples
of externally defined capability schemes; their semantics are defined
by the capability schemes themselves and not by this document.</t>

</section>
</section>
<section anchor="implementation-status"><name>Implementation Status</name>

<t>Per <xref target="RFC7942"></xref>, this specification is supported by a reference
implementation.  The implementation is written in Go (standard
library only, no CGO) and covers certificate issuance with
authorizationConstraints, AIC extension parsing,
DelegationAuthorization signature verification, permission
intersection (P (AND) C (AND) T) decisions, capability plugin
routing, revocation, and fully offline constraint validation.  The
companion AIC-JWT profile <xref target="AIC-JWT"></xref> is implemented in Go and in
TypeScript/WebCrypto for browser-compatible runtimes, with a
publicly accessible browser demo at https://varwof.org/aicjwt/.</t>

<t>The implementation is publicly available at:</t>

<t><list style="symbols">
  <t>https://github.com/varwof/types -- shared types, including the AIC
extension structures and the AIC-JWT core (Apache-2.0),
release v0.6.0;</t>
  <t>https://github.com/varwof/core -- PKI engine and certificate
issuance (AGPL-3.0), release v0.4.0;</t>
  <t>https://github.com/varwof/engine -- in-memory PKI data engine
(AGPL-3.0), release v0.2.0;</t>
  <t>https://github.com/varwof/gateway-core and
https://github.com/varwof/gateway -- zero-trust gateways
(Apache-2.0), gateway-core release v0.5.0 and gateway release v0.1.0;</t>
  <t>https://github.com/varwof/aic-jwt -- AIC-JWT implementation
(Go wrapper and TypeScript/WebCrypto pipeline, Apache-2.0);</t>
  <t>https://github.com/varwof/client -- command-line client
(Apache-2.0), release v0.3.0.</t>
</list></t>

<t>Language ports of the AIC extension structures and validation
logic are also published: C/OpenSSL (https://github.com/varwof/openaic),
Java (https://github.com/varwof/aic-lib-java), and .NET
(https://github.com/varwof/aic-lib-dotnet), all Apache-2.0.</t>

<t>The capability language that AIC composes with <xref target="CLC"></xref> is implemented and
published as well, under one shared release tag (<spanx style="verb">clc-v1.16</spanx>):</t>

<t><list style="symbols">
  <t>https://github.com/varwof/capability -- the language specification and
its conformance corpora;</t>
  <t>https://github.com/varwof/register -- the Go implementation of the
decision semantics and the rule toolchain;</t>
  <t>https://github.com/varwof/aic-capability-demo -- Python and TypeScript
implementations of the same semantics, with a browser demo.</t>
</list></t>

<t>The three implementations are exercised against the shared corpora in
CI, so the language this specification defers to has running code as well
as a document.</t>

<t>Test status (2026-10-02): the Go modules in the reference stack (pkcs7, types, engine, register, core, gateway-core, gateway and client) build and all of their test suites pass (go build ./... and go test -count=1 ./...), including the certificate authority and HTTP serving packages.  The AIC-JWT module's Go tests pass, and its TypeScript tests pass (nine demo cases and twenty-four unit cases, node --test).  The implementation status of the AIC-JWT profile, including its test suites, is documented in <xref target="AIC-JWT"></xref>.</t>

<t>Interoperability: an independent implementation of the AIC mapping
boundary -- the EMILIA crossing profile, which consumes native AIC
verifier results and binds them to one exact action and one
relying-party admission domain -- reproduces the committed results for all twenty cases
(positive, hostile and mapping) against the same pinned sources.  The kit,
including its source lock, is published in the EMILIA protocol repository
at conformance/composition/aic-aeb-crossing-v0.2.</t>

<t>SPIFFE conformance (informative, 2026-09-04): byte-level
conformance of SPIFFE ID construction and of issued-certificate
SANs against the SPIRE reference parser (go-spiffe v2.8.1,
spiffeid package) is covered by the core test suite.  The gateway
enforces trust-domain and exact SPIFFE allowlists and fails closed
when a required SPIFFE ID is absent, malformed, or out of scope.</t>

<t>Performance characteristics (informative; measured 2026-08-27 on an
18-core x86 server, engine mode with MySQL; methodology and raw
results at
https://github.com/varwof/core/docs/bench/en/benchmark-report-2026-08-27.md):</t>

<t><list style="symbols">
  <t>Enterprise steady state: 833 AIC certificates/s (500,000 agents,
one certificate per agent per 10 minutes) at p50 = 2.4 ms and
p99 = 5.0 ms, 0.00% error rate, approximately 7x headroom below
the measured ceiling;</t>
  <t>Single-machine ceiling: approximately 6,100 AIC certificates/s
(8,040/s with turbo boost), dominated by ECDSA signing and
DelegationAuthorization verification;</t>
  <t>Worst-case burst: 500,000 simultaneous issuance requests drain in
approximately 82 s with no dropped requests when the in-memory
engine budget is sized accordingly;</t>
  <t>Low-end hardware: a Raspberry Pi 5 (4-core, 2.4 GHz) sustains the
833/s steady state at p99 = 330 ms with approximately 2.5x
headroom.</t>
</list></t>

</section>
<section anchor="interoperability"><name>Interoperability</name>

<section anchor="relationship-to-wimse-and-spiffe"><name>Relationship to WIMSE and SPIFFE</name>

<t>WIMSE and SPIFFE identify workloads through SAN URIs (<xref target="SPIFFE"></xref>);
they do not carry authorization data.  AIC composes with them at
the certificate layer: an AIC-enabled certificate MAY carry a
SPIFFE ID as its URI SAN, and a verifier that enforces AIC
admission MAY use the SPIFFE ID as the identity selector for the
admission decision.</t>

<t>The AIC-specific rules in this composition are limited to the
following:</t>

<t><list style="symbols">
  <t><strong>Identifier mapping.</strong>  When a certificate carries a SPIFFE ID,
the AIC extension's agentId is the agent name, corresponding to
the final path segment of the SPIFFE ID; the full spiffe:// URI
appears in the certificate SAN.  New issuance MUST use the
plain-name form in agentId.  Certificates issued by earlier
revisions that stored the full URI in agentId MAY be accepted for
backward compatibility, but a relying party MUST NOT treat the SAN
URI and agentId as independent identities.</t>
  <t><strong>Verification semantics by reference.</strong>  This specification does
not redefine SPIFFE ID syntax or validation.  A verifier that
enforces a SPIFFE requirement (for example, require-SPIFFE, a
trust-domain allowlist, or an exact SPIFFE ID allowlist) MUST
validate the SAN URI according to <xref target="SPIFFE"></xref> and MUST fail closed
when the URI is absent, malformed, outside the allowed trust
domain, or outside the allowlist.</t>
  <t><strong>Renewal continuity.</strong>  SPIFFE/SPIRE-style workloads commonly
rotate short-lived SVIDs.  AIC anchors identity to the subject
public key via principalUid.keyHash rather than to the certificate
fingerprint (see Principal Key Rotation); a renewed SVID that
reuses the same key therefore preserves the agent identity and its
issued authorization without re-issuance or cascading re-signing.
Authorization breaks on key change, not on certificate renewal.</t>
</list></t>

<t>Workload API delivery, SVID rotation protocols, and cross-trust-
domain federation are outside the scope of this specification; they
belong to the SPIFFE/SPIRE ecosystem.  AIC's role in that ecosystem
is certificate-format and offline-verification compatibility, not
the replacement of workload identity lifecycle mechanisms.</t>

<t>The reference implementation issues certificates carrying
spiffe:// SANs and enforces trust-domain and allowlist checks at the
gateway; byte-level conformance of the SPIFFE ID construction and
issued-certificate SAN against the SPIRE reference parser is
covered by the implementation test suite (see Implementation
Status).</t>

</section>
<section anchor="relationship-to-standard-x509-extensions"><name>Relationship to Standard X.509 Extensions</name>

<section anchor="key-usage-and-extended-key-usage"><name>Key Usage and Extended Key Usage</name>

<t>AIC-enabled certificates SHOULD include the digitalSignature key usage
(<xref target="RFC5280"></xref> Section 4.2.1.3). Extended Key Usage MUST include
id-kp-clientAuth when the certificate is used for TLS client
authentication.</t>

</section>
<section anchor="basic-constraints"><name>Basic Constraints</name>

<t>AIC Agent certificates MUST have BasicConstraints CA:FALSE. CA
issuance MUST reject any request where the requester holds an AIC
certificate, preventing Agent-to-Agent chaining in single-level
deployment mode. In a delegation chain of depth 1, the sub-agent's
DelegationAuthorization is anchored to the delegating agent's AIC
certificate; as a best practice, the CA SHOULD NOT issue a certificate
with DelegationDepthControl.maxDepth greater than 1.</t>

</section>
</section>
<section anchor="interoperability-test-matrix"><name>Interoperability Test Matrix</name>

<texttable>
      <ttcol align='left'>Scenario</ttcol>
      <ttcol align='left'>AIC Gateway Behavior</ttcol>
      <ttcol align='left'>Legacy Client Behavior</ttcol>
      <ttcol align='left'>Compatibility</ttcol>
      <c>Client without AIC extension</c>
      <c>Reject if RequireAIC=true; pass-through if false</c>
      <c>Normal mTLS</c>
      <c>Config-dependent</c>
      <c>Client with AIC</c>
      <c>Full admission pipeline</c>
      <c>AIC extension ignored</c>
      <c>Yes</c>
      <c>Multiple capabilities (&lt;=64)</c>
      <c>Full parse and evaluate</c>
      <c>Ignored</c>
      <c>Yes</c>
      <c>Multiple capabilities (&gt;256)</c>
      <c>Reject (DoS protection)</c>
      <c>Ignored</c>
      <c>Limited</c>
      <c>Unknown capability scheme</c>
      <c>Deny</c>
      <c>Ignored</c>
      <c>Limited</c>
      <c>OCSP MUST-Staple missing</c>
      <c>Reject</c>
      <c>Normal OCSP</c>
      <c>No</c>
      <c>Offline + no CRL cache</c>
      <c>Fail-Close (reject)</c>
      <c>Fail-Open (allow)</c>
      <c>No</c>
</texttable>

</section>
<section anchor="tls-integration"><name>TLS Integration</name>

<section anchor="handshake-requirements"><name>Handshake Requirements</name>

<t>The AIC extension does not introduce a new TLS handshake protocol.
Instead, it leverages the existing X.509 certificate chain presented
during TLS 1.3 handshakes. When a TLS server requires AIC-authenticated
connections, it SHOULD include the AIC OID in the CertificateRequest
message.</t>

</section>
<section anchor="tls-alert-codes"><name>TLS Alert Codes</name>

<t>The following is a recommended mapping from AIC conditions to the
official TLS alert codes defined in the IANA TLS Alert Registry
(<xref target="RFC9846"></xref>); implementations MAY choose appropriate alerts in
accordance with the TLS specification.</t>

<texttable>
      <ttcol align='left'>Condition</ttcol>
      <ttcol align='left'>TLS Alert</ttcol>
      <ttcol align='left'>Code</ttcol>
      <ttcol align='left'>Description</ttcol>
      <c>AIC required but missing</c>
      <c>unsupported_extension</c>
      <c>116</c>
      <c>Client MUST include AIC</c>
      <c>AIC malformed</c>
      <c>bad_certificate</c>
      <c>42</c>
      <c>Parsing failure</c>
      <c>Capability not authorized</c>
      <c>certificate_unknown</c>
      <c>46</c>
      <c>Permission denied</c>
      <c>Impersonation without DA</c>
      <c>access_denied</c>
      <c>49</c>
      <c>Missing authorization</c>
      <c>Certificate expired/revoked</c>
      <c>certificate_expired</c>
      <c>45</c>
      <c>Lifecycle check failed</c>
</texttable>

</section>
</section>
</section>
<section anchor="limitations"><name>Limitations</name>

<t>This specification has the following limitations:</t>

<t><list style="numbers" type="1">
  <t><strong>Delegation depth</strong>: This revision defines semantics for two depths
only: single-level delegation (Principal -&gt; Agent, chainDepth = 0),
which is the default and the recommended configuration, and one
additional level (Principal -&gt; Agent -&gt; sub-Agent, chainDepth = 1).
Chains deeper than 1 are not refused by this specification, but they
are outside its scope: responsibility boundaries blur as the chain
grows, and conformance does not cover them.</t>
  <t><strong>No distributed state</strong>: Multi-gateway deployments require
out-of-band state synchronization (nonce cache, concurrency
tracking).</t>
  <t><strong>Static capability evaluation</strong>: The pure container design defers
all semantic validation to gateway plugins. Dynamic, context-aware
policy evaluation is not in scope.</t>
  <t><strong>UDP/DTLS transport</strong>: AIC for TCP/TLS and QUIC is fully specified.
Non-TLS UDP/DTLS transport is reserved for a future revision.</t>
  <t><strong>Post-quantum readiness</strong>: Algorithm OIDs for hybrid and PQC suites
are reserved but signature exchange is not yet specified.</t>
  <t><strong>Deployment scale</strong>: Enterprise-scale validation with &gt;1M agents
is not yet published.</t>
</list></t>

</section>
<section anchor="appendix-a-name-disambiguation"><name>Appendix A. Name Disambiguation</name>

<t>The agent-identity space contains several similar acronyms.  This
appendix distinguishes them to avoid citation and interoperability
confusion.</t>

<texttable>
      <ttcol align='left'>Name</ttcol>
      <ttcol align='left'>This document</ttcol>
      <ttcol align='left'>Related use</ttcol>
      <c>AIC</c>
      <c>AI Agent Identity Certificate (draft-wei-aic-identity-cert): X.509 v3 extension with principal-signed DelegationAuthorization and capability containers; companion JWT profile (draft-wei-aic-jwt)</c>
      <c>The acronym used in this document and in its companion drafts</c>
      <c>AgentIdentity / "AIC"</c>
      <c>draft-sharif-x509-agent-identity-profile (CyberSecAI)</c>
      <c>A single X.509 extension carrying trust level, flat capability names, delegation depth, and kill-switch URI; owner binding is textual, not a signed delegation</c>
      <c>AIP</c>
      <c>Agent Identity Protocol (draft-singla-agent-identity-protocol)</c>
      <c>DID-based (did:aip) identity, capability manifests, and delegation chains resolved through an online registry</c>
      <c>OpenA2A AIP</c>
      <c>OpenA2A Agent Identity Protocol (draft-fane-opena2a-aip)</c>
      <c>did:opena2a identifiers and ATX registry credentials; authorization handled in a companion protocol</c>
      <c>DAAP</c>
      <c>Delegated Agent Authorization Protocol (draft-mishra-oauth-agent-grants)</c>
      <c>OAuth 2.0 profile for delegated agent authorization</c>
</texttable>

<t>Readers and authors citing this specification SHOULD use the full
title "AI Agent Identity Certificate (AIC) Extension for X.509 v3" or
the document name draft-wei-aic-identity-cert, and SHOULD NOT use the
bare acronym "AIC" to refer to other proposals.</t>

</section>
<section anchor="intellectual-property"><name>Intellectual Property</name>

<t>This document is subject to BCP 79 (RFC 8179). The author has filed
patent applications related to the technologies described in this
document, including Chinese patent applications CN2026112384541 and
CN2026112384607 (filed with the China National Intellectual Property
Administration). The author has filed IPR disclosure 7553 with the
IETF in accordance with BCP 79 requirements. Any applicable IPR
disclosures are available through the IETF IPR disclosure system.</t>

</section>
<section anchor="acknowledgments"><name>Acknowledgments</name>

<t>The author thanks the IETF community for ongoing discussions on agent
identity and accountability frameworks.</t>

</section>
<section anchor="change-log"><name>Change Log</name>

<t>draft-wei-aic-identity-cert-02 (2026-10-02):</t>

<t><list style="symbols">
  <t>Added Appendix A (Name Disambiguation): distinguishes this AIC from
AgentIdentity/CyberSecAI, AIP (Singla), OpenA2A AIP (Fane), and DAAP.</t>
  <t>Corrected and expanded Related Work: the Singla AIP is now cited
under its own name (previously mislabeled "OpenA2A"); added the
OpenA2A Agent Identity Protocol (Fane); refreshed descriptions for
the -03 revisions.</t>
  <t>Clarified the delegation-depth posture: a single hop from the
principal to the acting agent (chainDepth = 0) is recommended for the
strongest accountability; multi-level delegation is not refused by
this specification, but conformance targets chainDepth 0 and 1, and
deeper chains are outside its scope.  Responsibility boundaries blur
as the chain grows (the legal status of intermediate agents and the
audit actor semantics become ambiguous).  Guardrails for a future
revision are stated: per-hop signed authorization, monotonic
intersection, bounded depth and loop prevention, root-principal
attribution, and legal basis at each hop.</t>
  <t>Added Relationship to WIMSE and SPIFFE: SPIFFE IDs are carried in
SAN URIs with plain-name agentId semantics; SPIFFE syntax and
validation are incorporated by reference; renewal continuity via
keyHash is documented; Workload API and SVID lifecycle mechanisms
are out of scope.</t>
  <t>Added a normative same-trust-anchor requirement: the agent
certificate chain and the principal certificate chain MUST validate
to the same configured trust anchor; verifiers MUST reject chains
that terminate at different trust anchors (Validation Procedure,
Deployment Models).</t>
  <t>Clarified the trust boundary in Security Considerations: AIC assumes
a trusted-CA model; CA or trust-anchor compromise is outside the
protection scope of this specification, and CA signing keys MUST be
protected accordingly. The authorization-forgery mitigation is
narrowed to non-CA adversaries.</t>
  <t>Added a renewal rule: certificate renewal or re-issuance MUST be
backed by a new principal-signed DelegationAuthorization carrying a
fresh nonce; prior DelegationAuthorizations MUST NOT be reused.</t>
  <t>Added DelegationAuthorization version 2: <spanx style="verb">agentKeyBinding</spanx> binds the
authorization to the agent public key (<spanx style="verb">keyHash = hashAlgo(SPKI DER)</spanx>,
default SHA-256, SHA-1 disallowed, unknown algorithms rejected without
fallback), with a normative version/validation matrix (version 1 legacy
must omit the binding, version 2 must carry a valid one, newly issued
DAs must be version 2, other version values rejected) and a verifier
check that cross-verifies <spanx style="verb">hashAlgo(agent certificate SPKI)</spanx> against the
binding.</t>
  <t>Documented the version mapping to the AIC-JWT profile: X.509 AIC DA v1
corresponds to AIC-JWT <spanx style="verb">da.ver=2</spanx>, and X.509 DA v2 to <spanx style="verb">da.ver=3</spanx>; a
<spanx style="verb">da.ver=3</spanx> token must carry the equivalent <spanx style="verb">agent_key_binding</spanx>.</t>
  <t>Added document-level references to the Capability Language Core <xref target="CLC"></xref>
in the authorization-language, intersection, containment and
capability-scheme sections.</t>
  <t>Refreshed the Implementation Status: current release numbers for the
reference stack, tests re-run on 2026-10-02, the EMILIA crossing profile
now reproducing all twenty of its cases, SPIFFE byte-level conformance,
and the three published implementations of the capability language
(<xref target="CLC"></xref>).
draft-wei-aic-identity-cert-01 (2026-08-30):</t>
  <t>Added public reference-implementation repository URLs with pinned
release snapshots, test status, independent-implementation
interoperability results, and measured performance characteristics
(informative) to the Implementation Status section.</t>
  <t>Added informative reference to the AIC-JWT companion profile
<xref target="AIC-JWT"></xref>.</t>
  <t>Listed additional language ports (C/OpenSSL, Java, .NET).</t>
  <t>Aligned patent application numbers with IPR disclosure 7553
(CN2026112384541, CN2026112384607).</t>
</list></t>

<t>draft-wei-aic-identity-cert-00 (2026-08-18):
* Initial individual draft.</t>

</section>


  </middle>

  <back>


<references title='References' anchor="sec-combined-references">

    <references title='Normative References' anchor="sec-normative-references">

&RFC5280;
&RFC2119;
&RFC8174;
&RFC4648;
&RFC5912;
&RFC6960;
&RFC7633;


    </references>

    <references title='Informative References' anchor="sec-informative-references">

&RFC6749;
&RFC7942;
&RFC9846;
&RFC3820;
&RFC5755;
<reference anchor="SPIFFE" target="https://github.com/spiffe/spiffe/blob/main/standards/SPIFFE.md">
  <front>
    <title>SPIFFE Standard</title>
    <author initials="" surname="SPIFFE Community" fullname="SPIFFE Community">
      <organization></organization>
    </author>
    <date year="2022" month="May"/>
  </front>
</reference>
<reference anchor="AGTP" target="https://datatracker.ietf.org/doc/draft-hood-agtp-agent-cert/">
  <front>
    <title>AGTP Agent Certificate Extension</title>
    <author initials="C." surname="Hood" fullname="C. Hood">
      <organization>Nomotic, Inc.</organization>
    </author>
    <date year="2026" month="June" day="28"/>
  </front>
</reference>
<reference anchor="APKI" target="https://datatracker.ietf.org/doc/draft-sharif-apki-agent-pki/">
  <front>
    <title>Agent Public Key Infrastructure (APKI): Certificate-Based Identity and Trust for Autonomous AI Agents</title>
    <author initials="R." surname="Sharif" fullname="R. Sharif">
      <organization>CyberSecAI Ltd</organization>
    </author>
    <date year="2026" month="April" day="10"/>
  </front>
</reference>
<reference anchor="AgentIdentity" target="https://datatracker.ietf.org/doc/draft-sharif-x509-agent-identity-profile/">
  <front>
    <title>X.509 Certificate Profile for Autonomous AI Agent Identity</title>
    <author initials="R." surname="Sharif" fullname="R. Sharif">
      <organization>CyberSecAI Ltd</organization>
    </author>
    <date year="2026" month="July" day="31"/>
  </front>
</reference>
<reference anchor="DAAP" target="https://datatracker.ietf.org/doc/draft-mishra-oauth-agent-grants/">
  <front>
    <title>Delegated Agent Authorization Protocol (DAAP)</title>
    <author initials="S." surname="Kumar" fullname="S. Kumar">
      <organization>Grantex</organization>
    </author>
    <date year="2026" month="March" day="02"/>
  </front>
</reference>
<reference anchor="AIP" target="https://datatracker.ietf.org/doc/draft-singla-agent-identity-protocol/">
  <front>
    <title>Agent Identity Protocol (AIP): Decentralized Identity and Delegation for AI Agents</title>
    <author initials="P." surname="Singla" fullname="P. Singla">
      <organization>Independent</organization>
    </author>
    <date year="2026" month="June" day="10"/>
  </front>
</reference>
<reference anchor="OpenA2A-AIP" target="https://datatracker.ietf.org/doc/draft-fane-opena2a-aip/">
  <front>
    <title>OpenA2A Agent Identity Protocol</title>
    <author initials="A." surname="Fane" fullname="A. Fane">
      <organization>OpenA2A</organization>
    </author>
    <date year="2026" month="August" day="06"/>
  </front>
</reference>
<reference anchor="CapabilityBound" target="https://arxiv.org/abs/2603.14332">
  <front>
    <title>Governing Dynamic Capabilities: Cryptographic Binding and Reproducibility Verification for AI Agent Tool Use</title>
    <author initials="Z." surname="Zhou" fullname="Ziling Zhou">
      <organization></organization>
    </author>
    <date year="2026" month="March" day="19"/>
  </front>
</reference>
<reference anchor="AIC-JWT" target="https://datatracker.ietf.org/doc/draft-wei-aic-jwt/">
  <front>
    <title>AI Agent Identity Certificate (AIC) JSON Web Token Profile</title>
    <author initials="J." surname="Wei" fullname="Jijie Wei">
      <organization></organization>
    </author>
    <date year="2026" month="September"/>
  </front>
</reference>
<reference anchor="CLC" target="https://datatracker.ietf.org/doc/draft-wei-capability-language-core/">
  <front>
    <title>Capability Language Core</title>
    <author initials="J." surname="Wei" fullname="Jijie Wei">
      <organization></organization>
    </author>
    <date year="2026" month="September"/>
  </front>
</reference>


    </references>

</references>



  </back>

<!-- ##markdown-source:
H4sIAAAAAAAAA+29e3cb15Ev+n9/ir3kda8BBQAfelgG48yBSMpmrAdDUnYS
Hy+zCTTJjgA00t0gxUSez37rV1X71d2gGJ+zcuaeNZyJTALd+1m7dj1+VTUc
DpM6r+fZ2EyOzOQqW9bmaEb/5vWd2c/KOr/Mp2mdmd7kaL9vDj/W2bLKi6W5
LErz59Gz7a/NzZMkvbgosxs0sR++lMyK6TJdUNuzMr2sh7dZPkzz6TDXDoZT
ena4vZvg4auivBub7OMqqdYXi7xCL/Xdil7Ol7NslS3xUlLVZZYu4s/yVTk2
dbmu6t3t7a+puQ/Z3W1RzsaJMUM3Lf6DR8y/hcPE33bS/Mfx90fy7nRarJd1
epHP7VcH2Ty7SmsaXEJ9fLgqi/VqbN5mNf4yP9I/+fLKfIuPkyRd19dFyeOg
/xkadTU2fxyZH7Oc/5bF+WP+tzxznxXlVbrM/8FdjM3Rcpbf5LN1Oucvs0Wa
z8dm9SH/HzdpeVtcjqbFgr9Zl/nYXNf1qhpvbQXfJcuiXFBjNxmGcfJq/9nu
i239dXdn52v99cXOV0/116fPn76wz369s6u/Pv/6uX3tq+dPnoyTJF9eNpp+
/tVT295XXz+1b3794ulz/fXJi13byLOvnj3Dr6fHR69eHY55DkqI8pE5rdPl
LC1n/JVfSfwM9b+6ovrCfrFYrJeyUfIj69v59Yw2fmx2t3d3h9vPpPe0vMpq
v4hXeX29vsAiblWr/PIys/+5mBcXW7QRy61Kh1htSR+jBUY7+fbsOJoQPtCz
FR4pd5g+P8P9kfmuKGaNiTU/JdIhUiwWRZ1PB0Q601E81efD7efD3Reds6WH
0rpMpx+ycpRn9eWIGtui87slR/ea+hmmV/WK/qF58MndwlzpqERzfSTzPF5f
zPOp+T67o3Fclimd2/W0XpdgJPRKfxyuxPBlWmUzz3doUc0ZzjNzmcm6LpY0
qXXlznL16PNLdjIyp9dpmV82Fq39OS/b/t1FVp5mU+ridT1rrdvT4c72b1m3
irsapnRideXoN144/GFnHK2gcNWQUI7L4jKfZ5tWI+Rd/9ZF+Wr4ZOd/YVE+
0jx1UdyNsJKpYoUOJpP4GCnrJUqRaU94psoqsUh1MS3mpocX+w/gGiPz/XqR
lk1u0fyYV+LbMl3W2cfWEjzB9fUbloAuuOsyHRYYoa7BFbqomDaOjrvOlDsf
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
kv8PEbRhQ8BcAQA=

-->

</rfc>

