<?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 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 RFC9334 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9334.xml">
<!ENTITY RFC9711 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9711.xml">
<!ENTITY I-D.ietf-rats-ar4si SYSTEM "https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-rats-ar4si.xml">
<!ENTITY I-D.ietf-rats-ear SYSTEM "https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-rats-ear.xml">
<!ENTITY I-D.ietf-rats-msg-wrap SYSTEM "https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-rats-msg-wrap.xml">
<!ENTITY I-D.ietf-rats-corim SYSTEM "https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-rats-corim.xml">
<!ENTITY I-D.ietf-rats-multi-verifier SYSTEM "https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-rats-multi-verifier.xml">
]>


<rfc ipr="trust200902" docName="draft-sokolov-rats-aep-composition-00" category="info">
  <front>
    <title abbrev="AEP over RATS">Composing Application-Layer Action Evidence with Remote Attestation Procedures</title>

    <author initials="A." surname="Sokolov" fullname="Anton Sokolov">
      <organization>Tyche Institute</organization>
      <address>
        <postal>
          <city>Tallinn</city>
          <country>Estonia</country>
        </postal>
        <email>anton.sokolov@tyche.institute</email>
      </address>
    </author>

    <date year="2026" month="June" day="24"/>

    <area>Security</area>
    <workgroup>Remote ATtestation ProcedureS (RATS)</workgroup>
    <keyword>attestation</keyword> <keyword>evidence</keyword> <keyword>AI agents</keyword> <keyword>accountability</keyword>

    <abstract>


<?line 39?>

<t>This document sketches a composition pattern in which an application-layer "action evidence package"
(AEP) — a signed, append-only record of an action taken by an automated (for example, AI-agent) system,
the authority under which it was taken, and its outcome — is treated as Evidence in the sense of the RATS
Architecture (RFC 9334) and bound to platform Evidence produced by a hardware root of trust. The intent is
that a single Verifier, or a composition of Verifiers, can appraise both the platform state and the
application-layer action together, and emit an Attestation Result that a Relying Party can use to reason
about <em>what an automated system did</em> and <em>on what platform it did so</em> without trusting the operator's
self-report for either. This is an individual sketch intended to ask the working group whether the pattern
is already covered by existing mechanisms or warrants a short document.</t>



    </abstract>



  </front>

  <middle>


<?line 51?>

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

<t>Records of automated decision-making are increasingly produced for accountability purposes: an action
identifier, an authorising principal, inputs and tool calls, and an outcome, chained so that tampering is
detectable. Such an action evidence package (AEP) is useful but has the standard self-report limitation:
every field is asserted by the same software stack whose integrity is in question. The signature proves the
record was produced by a key the runtime holds; it does not prove what the runtime <em>was</em>.</t>

<t>The RATS Architecture <xref target="RFC9334"/> separates the party that produces Evidence (Attester), the party that
appraises it (Verifier), and the party that acts on the verdict (Relying Party). Binding an AEP to platform
Evidence appraised under RATS supplies the independence the self-report lacks. This document describes the
composition and asks whether it is novel enough to specify.</t>

</section>
<section anchor="conventions-and-definitions"><name>Conventions and Definitions</name>

<t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" 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>

<?line -18?>

<t>This document uses RATS terminology as defined in <xref target="RFC9334"/>: the roles Attester, Verifier, Relying Party,
Endorser, and Reference Value Provider, and the conceptual messages Evidence, Endorsements, Reference Values,
and Attestation Results.</t>

</section>
<section anchor="the-action-evidence-package"><name>The Action Evidence Package</name>

<t>An AEP is an application-layer, signed, append-only record. For the purposes of this document its salient
properties are: (a) it records an action, an authorising principal, and an outcome; (b) it is chained for
tamper-evidence; and (c) it is produced by the same software stack that performs the action. Property (c) is
precisely why it benefits from composition with platform Evidence.</t>

</section>
<section anchor="composition-with-rats"><name>Composition with RATS</name>

<t>The composition treats the AEP as application-layer Evidence conveyed alongside platform Evidence:</t>

<t><list style="numbers" type="1">
  <t>The platform produces hardware-rooted Evidence (for example, a TPM quote over measured-boot registers,
or a TEE attestation token), appraised against Reference Values (for example, conveyed as a Concise
Reference Integrity Manifest <xref target="I-D.ietf-rats-corim"/>) and Endorsements by a Verifier.</t>
  <t>The AEP is conveyed as a further Evidence item. Candidate conveyances are an EAT <xref target="RFC9711"/> carrying the
AEP (or a digest of it) as a claim or submodule (the EAT submodule / Detached-Submodule-Digest mechanism
is the standard nesting facility here), or a CMW collection — the RATS Conceptual Messages Wrapper
<xref target="I-D.ietf-rats-msg-wrap"/> — that groups the platform Evidence and the AEP into one message.</t>
  <t>A Verifier — or, following the layered Platform-Verifier / Workload-Verifier pattern of
<xref target="I-D.ietf-rats-multi-verifier"/>, a platform Verifier and an application Verifier in composition —
appraises both and emits an Attestation Result.</t>
</list></t>

<t>The binding between the two is load-bearing: the AEP, at record time, <bcp14>SHOULD</bcp14> incorporate a reference to a
fresh platform appraisal (or to the platform Evidence and the nonce that scoped it), so that a later Relying
Party can ask not only "what did the automated system do, and under what authority?" but "and was it done on
a platform whose state was independently attested within the same freshness window?". The <xref target="RFC9334"/> Section
10 freshness mechanisms — nonces, synchronised-clock timestamps, and Epoch IDs/handles — apply unchanged.</t>

</section>
<section anchor="a-result-vocabulary"><name>A Result Vocabulary</name>

<t>For a non-specialist Relying Party, this work resolves an appraisal to a small two-axis vocabulary: an
authorisation axis computed from the AEP and policy (Authorised / Unauthorised / Indeterminate) and a
platform axis (Attested / Contested / Expired). AR4SI <xref target="I-D.ietf-rats-ar4si"/> defines four trustworthiness
tiers — none, affirming, warning, contraindicated — serialised in an EAR <xref target="I-D.ietf-rats-ear"/>. Two of the
platform terms map directly onto those tiers: an affirming appraisal to Attested; a warning or
contraindicated appraisal that runs but contradicts Reference Values to Contested; while the none tier, in
which the Verifier asserts nothing, denotes an inconclusive appraisal rather than a pass or fail. Expired is
deliberately NOT an AR4SI trustworthiness tier: it captures a separate, token-level condition — evidence
stale relative to the freshness policy, or supporting material that has lapsed — surfaced by the EAT exp
claim and by nonce-based evidence freshness, not by the trustworthiness vocabulary. This correspondence is
provisional and <bcp14>SHOULD</bcp14> be validated against a Verifier's actual EAR output; the working group's view on
whether such a mapping belongs in a document, or purely in deployment guidance, is solicited.</t>

</section>
<section anchor="feasibility-note"><name>Feasibility Note</name>

<t>A small emulated feasibility check (software TPM via swtpm, with a minimal Verifier stand-in) folds the hash
of an AEP outcome and a fresh nonce into an attestation-key-signed quote, with a model-artefact measurement
in a platform register, and resolves the three platform-axis cases and rejects a forged outcome bound to a
valid quote. It is emulated and minimal; it demonstrates the binding, not a hardware-rooted guarantee.
Details are in <xref target="ZENODO-AEP"/>.</t>

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

<t>Composition does not dissolve trust assumptions; it relocates them. The platform axis depends on the
hardware vendor's Endorsements and the Verifier's independence; the AEP axis depends on the integrity of the
key the runtime holds, which is exactly what the platform Evidence is meant to ground. Binding an AEP to a
platform appraisal is only as fresh as the weaker of the two freshness mechanisms. Attesting a specific model
or workload version requires that artefact be measured into the attested state, which is a deployment
commitment. A forged AEP outcome presented under an otherwise-valid platform quote <bcp14>MUST</bcp14> be detectable through
the output-binding: the outcome digest is covered by the quote's signed data, so an implementation that binds
the AEP reference outside the signed data does not achieve this property. The feasibility note above
demonstrates this binding in emulation only (a software TPM); on real hardware the guarantee holds to the
extent the outcome digest is genuinely inside the signed and quoted data.</t>

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

<t>This document has no IANA actions. (If a future revision defines an EAT claim or a CMW type for an AEP, the
corresponding registrations would appear here.)</t>

</section>


  </middle>

  <back>


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

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

&RFC2119;
&RFC8174;
&RFC9334;
&RFC9711;


    </references>

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

&I-D.ietf-rats-ar4si;
&I-D.ietf-rats-ear;
&I-D.ietf-rats-msg-wrap;
&I-D.ietf-rats-corim;
&I-D.ietf-rats-multi-verifier;
<reference anchor="ZENODO-AEP" target="https://doi.org/10.5281/zenodo.20818672">
  <front>
    <title>Hardware-rooted attestation for AI-agent evidence: composing IETF RATS with action evidence packages</title>
    <author initials="A." surname="Sokolov" fullname="Anton Sokolov">
      <organization></organization>
    </author>
    <date year="2026"/>
  </front>
</reference>


    </references>

</references>


<?line 161?>

<section numbered="false" anchor="acknowledgements"><name>Acknowledgements</name>

<t>Thanks to the Veraison community for the discussion that prompted this sketch.</t>

</section>


  </back>

<!-- ##markdown-source:
H4sIAAAAAAAAA4VZ23IbxxF936+YIA8mVVjwYsWWQScOLFFlVokSQ1J2Oak8
DHYHwISLnfXOLCHYxap8RD4g35JPyZfkdPfsBQDtqFQSsJjp6ek+ffqyaZom
wYbCTNXotVtXzttyqWZVVdhMB+vK9J3emlrNMvqiLh9tbsrMqI0NK3Vr1i4Y
NQvB+MCr1U3tMpM3tfGjRM/ntXmE4NnljXKPkHI7u78bJRBslq7eTpUtFy7J
XVbqNRTIa70IqXcPrnCPaa2DT7Wp0kzUYmVOTxNb1VMV6saH89PTr07PE10b
PVV3JmtqG7bJxtUPy9o11bTT7/4Z/e7UEWlznDyYLbbk00SpVOn+KvzdxPvy
l9mV0ktTBi9Ls8w1ZdBzW9CxugkrV4sUuc6sDDjwTq6D50q5eqlL+zOLn6r7
bbYy6qr0sH8TDK/IIAq/6KKwZSlP6BCy1aWHOKv5oVlrW0yVphMm0WB/DiRv
Yjt5pavXOOrRkFK3b1+fn519FT++OvvyZfz41eefdx+/PDubJuSTwcar9M3E
mrCI/qhfenv42Oj68OHaL9NNravDXzJX2/UzG5oi2BQ4sQtrWOBfL99/ePMh
BX6mfO8Wqd/pOt/A72nt4OB86DYF7eGplD3V+W+qsg7cV5f3bxmJAmItyG5X
qkpnD9gM/NKJvVvpz6+7Ngemp+r89PwLUVTXSxOmahVC5acnJ7mzE3j/5Ox0
8ofzV2cnP5vS5W5yfvrq7NUXX54nKcKQ/lF67kMNlZLkfmW9Qmw0a7qIfzAB
7vVKq0E8QFncvC4RSGqzshluUyo9CN6Cg3f0K3ccJUcw7bH67z//BbneLkuT
j2m/KfPUlcVW1Qa+ypVbsGCREvSDKdV8y4+a4IAVuOCI7G4+6XVVmHHngGPl
tz6Y9TgJwLoYExBXTZlDL1HZBrXRXsTi9DLHE69cE3BRw7rBEAFBzp72PQfh
0iTVm9IbUpG+kF+TWZ2tbDBZQJwjzN++VoTyY5Y9RzzlKjhVFToQ0nt5Ve3y
BuzAd1OriDFFGGPxxDkTdb+ikwM5xXpcSwe2XbksjPo+YneMUN/zFAS0v/qx
ysRPtbZQfe4AQ1K+U4mwbFhdPE4OHdp6wgFkKzqOlpo1LAm5Qzq+NR5BpaKW
t6bYUgTc6Bo+IB0aHA9bwLgejKdhnKBebHj10LniRJXb/AUf9cIR3rCq0xhH
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
WeN9Bx84HgRIr9zIIPIebpL8D2kT9dsxIgAA

-->

</rfc>

