[Rats] Re: [Use Case] RATS for Hardware-Enforced State Management in Autonomous Agents (AIGA)

Edward Aylward <aylward.edward@gmail.com> Tue, 20 January 2026 01:20 UTC

Return-Path: <aylward.edward@gmail.com>
X-Original-To: rats@mail2.ietf.org
Delivered-To: rats@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 05485AA29A79 for <rats@mail2.ietf.org>; Mon, 19 Jan 2026 17:20:44 -0800 (PST)
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: 0.612
X-Spam-Level:
X-Spam-Status: No, score=0.612 tagged_above=-999 required=5 tests=[BAYES_50=0.8, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_KAM_HTML_FONT_INVALID=0.01] autolearn=ham autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail2.ietf.org ([166.84.6.31]) by localhost (mail2.ietf.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id rGWrV1FCkCzd for <rats@mail2.ietf.org>; Mon, 19 Jan 2026 17:20:43 -0800 (PST)
Received: from mail-ed1-x52e.google.com (mail-ed1-x52e.google.com [IPv6:2a00:1450:4864:20::52e]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id 438D1AA29A72 for <rats@ietf.org>; Mon, 19 Jan 2026 17:20:43 -0800 (PST)
Received: by mail-ed1-x52e.google.com with SMTP id 4fb4d7f45d1cf-64baaa754c6so7468790a12.3 for <rats@ietf.org>; Mon, 19 Jan 2026 17:20:43 -0800 (PST)
ARC-Seal: i=1; a=rsa-sha256; t=1768872042; cv=none; d=google.com; s=arc-20240605; b=OImTJsBU4RVpTGGqqHfISKgha443PcpOB3eYjysUNQ5ntXAHWouFx8rNE34XOoK6mu TPtA7CmkY6tntdAPLVwHOL6t1DtMGL9b5uyffX40E7gDs2IkBKedXO2oJGPBmM38jubL 61zpe92R4lSM6og0/46AXwE8Y9RFpWzzkVkQFzuVXiTlkVGZje75I+s9C1XPFYyRZNpg FiAjO6BHXUhWbAwePYhE0Kr/Kf1pMpTherPiSjX14Kwyymn19UUU9Zhpcg8TwaM+3nHe Bxe8cvB2XrSKyb+KvGOYPm099RcEqbhP5STjrokK1//wO9nmmdw+1gcED9hS0lwsKgJ7 f5LA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=qTEUwmyneEzlv/wtNBrYqbgXVfKWAoIOU/aYn3xIXmw=; fh=UNWP0dY6OFx4ogoN1RdXgcgzz4VDLplNKl0fYoZ81QE=; b=XCG/skaUi9xUkt14RNVzqV16x20prCQghr6ny/q61L+Afma82FY+fnkU884LPqix4c bvO9Pg4WVUn9AiZavPP6wq8KsjhC1uq2mLfR3u6A8tZOVdC/mvxDZxGyi70qC3aaeGeg iUTXWvv1iQq8jph6Ad2G6nN8Z5Y7eweAXl545QZxAwpxMzE0sNqJq/BVXt9qC6EXZbDS 7cEft5+mEGoRew7XPJqyu103VuQoEaAfa40Dg+BjgPzbxgR7ENyEwUzIfCxLvHEDV0bm 2CaVCj0bctrIdbCDzUx+fgNgDNEYDsel2rkaJflCxpbQwQMMB0rXeaes469V3fRyUNED TGDA==; darn=ietf.org
ARC-Authentication-Results: i=1; mx.google.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1768872042; x=1769476842; darn=ietf.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=qTEUwmyneEzlv/wtNBrYqbgXVfKWAoIOU/aYn3xIXmw=; b=c/BC6XcS97o9Q+5ZMcWLpClDoZYoUQ5LyWiK4OWLQIgt23Vw0t74OKqoj2TuF+OkBs noGrphvubVi6PhMjik0A6vkJFDVLRzxvRHMkgIB+W+h4SdTanRJO3xWiHeERR8IJxBp7 iItP5v2jsfCKtWMav9KGeUuaZUc1W11qji/9XgP9N+S6Q5z4pzaS0bqg6VvjGQx93Efz bmrczlEWpai4LdlNihKtEAikiadlLattI/faDg93z4hKuBcP66cXtslMbT1LeMTIETmA VulO1DIESoU1UmNZDKO50yl2T6JKg1xYLr7Lp9opnJsR8XKy7It00xv2fG25tfLl07Tx UNNg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768872042; x=1769476842; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=qTEUwmyneEzlv/wtNBrYqbgXVfKWAoIOU/aYn3xIXmw=; b=Nf6bIUN29LjqkMxuxwk23xDOISWgF/5uTkBETPlkysF2SMmhc6csp9GLMume+mPeEv BnPxEatGoTHLPnMJNJkIRMldHYY+o0W6V9aOxW2OIjBtNZJKn/ps0/NK/nDatXMAM6zx 5uR+sHCztL5GN66ddLFlo0x6sLxo2tsVoOvh7/XCdP/GttDkQQuruBmGRT5upGqWeX+B wj4RpTW6xjqrfKIdipED4SFj1JZl/WkpH0NhH6FxnBlPyxgEvNwOxJ9I0QFDSQbCJ2m0 UpIsqd3acC7S1aqWJ/rrK6FRw+ihe+zv/eG7le+SewiP4I3Q/0lDW23Gq5zJmi7GU0UW WTqg==
X-Gm-Message-State: AOJu0YysKCvNqipZUtX8uPlDZpMl38Ig2dpzfHR9Uk6T14SQys1bPr5y 1khzJb+rxp3fpAIN/zjysPGxYPtdLCkQ7ohk7gT1IIrbAgD6oRoJ0ve0Jvoj2aYHdoF9+ZhbxyQ Dy5m3K82cz0LJw9pRQiYATjohCboMJnnUFHf0D+4=
X-Gm-Gg: AZuq6aK2tT7nomYvTQRsflydUbwyA9MOQ7y8wSFNnAR0Yz1UhIH33y61Y4dr5/tkAEc A4N93aMnOAKVjGrEdijRADQGUk5hQbP78nO546HdELQtHZ+EmOlXWowVTcbRfJw34wUwp5Q3uMx LdpItK6hgcVE3+Kh7nDPKho5Pj8fniOTm75pz4RJZMH3X2XzQdZx9lPEgst4VrBmgfhTgEW0pSr Mapi5Pu19i4ikgBYY6MRWcfRF83eDihP4ZEFKcK0JzJD4mEk60jyDIB2pP0TD2ejraz22Z7I458 8KuXi5HrhjsOXv6sA2M4WMRxpbYflnOgPvPg
X-Received: by 2002:a17:906:4fc4:b0:b87:6ce:1269 with SMTP id a640c23a62f3a-b8800419d0dmr12789766b.19.1768872041791; Mon, 19 Jan 2026 17:20:41 -0800 (PST)
MIME-Version: 1.0
References: <CAL6-Gb-O7LEifnA1iT5hHC78_svdDSyoje7G6E6X0yb6yRhTHw@mail.gmail.com> <cd5c680b-1891-4b6f-8be5-9bcfa08b09ec@tu-dresden.de>
In-Reply-To: <cd5c680b-1891-4b6f-8be5-9bcfa08b09ec@tu-dresden.de>
From: Edward Aylward <aylward.edward@gmail.com>
Date: Mon, 19 Jan 2026 17:19:47 -0800
X-Gm-Features: AZwV_QgSfIe4hdfi6jLtIBNuoiq2wg7ijmG0oBzjn_N7k_gSYo39cowe3VMOcUc
Message-ID: <CAL6-Gb9JrWGPUhPOzUB5yEEAOPRFyDQmOQnyfVPLwptrZF8tzQ@mail.gmail.com>
To: Muhammad Usama Sardar <muhammad_usama.sardar@tu-dresden.de>
Content-Type: multipart/alternative; boundary="000000000000b445870648c79dbb"
Message-ID-Hash: GPSAS4LORZB4RN7LS32ZXQQROR5NHCYM
X-Message-ID-Hash: GPSAS4LORZB4RN7LS32ZXQQROR5NHCYM
X-MailFrom: aylward.edward@gmail.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-rats.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: rats@ietf.org
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [Rats] Re: [Use Case] RATS for Hardware-Enforced State Management in Autonomous Agents (AIGA)
List-Id: Remote ATtestation procedureS <rats.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/rats/TFzusdvG5d0PSl5m0dY3nAeeUyQ>
List-Archive: <https://mailarchive.ietf.org/arch/browse/rats>
List-Help: <mailto:rats-request@ietf.org?subject=help>
List-Owner: <mailto:rats-owner@ietf.org>
List-Post: <mailto:rats@ietf.org>
List-Subscribe: <mailto:rats-join@ietf.org>
List-Unsubscribe: <mailto:rats-leave@ietf.org>

Hello Usama!

Thank you for the quick review and the feedback.

To answer your questions:

1. General Comments & Definitions

   -

   Table 1 Source: The columns represent the specific stages of the RATS
   governance lifecycle. "Check-in" refers to the periodic evidence submission
   (Prover → Verifier), and "Approval" refers to the issuance of the Liveness
   Token (Verifier → Prover)
   -

   "exp AGI": That is short for "Export controlled AGI"
   -

   Section 11 Figure: I Agree! A diagram would be good here to visualize
   the Agent → Verifier → Relying Party communication flow

2. The Proposed Solution (RATS Integration)

Could you explain the need for "periodic"? Why is one-time attestation
insufficient? What exactly can change?

One-time attestation (e.g., only at boot) creates a "time of check, time of
use" vulnerability. We require periodic attestation to mitigate:

   -

   Runtime Compromise: An agent might boot securely but be exploited later
   i.e., a prompt injection, buffer overflow, the AI modifying its own code,
   etc.
   -

   Revocation: If a vulnerability is discovered in the agent’s software
   stack, the governance node needs a mechanism to revoke trust dynamically.
   The periodic heartbeat ensures that a newly compromised agent loses its
   "liveness token", (and thus network access), within the heartbeat window
   (e.g., within a certain amount of time)
   -

   Freshness: It proves the agent is currently online and functioning
   correctly, preventing the replay of old evidence.

Section 12 seems to suggest you use TLS. Do I understand correctly that you
want to design a HTTP protocol on top of TLS for periodic attestation?

Yes, the intention is to use HTTPS, (which is HTTP over TLS, as the current
HTTPS is no longer HTTP over SSL as it was in the 1990’s), for the
transport of the evidence and liveness tokens. We leverage the existing
security of the TLS session for confidentiality, while the RATS structure
(EAT) provides the integrity and authenticity of the machine state.

What is the identity of the Agent? In other words, how does the RP identify
the Agent?

The relying party identifies the agent via a cryptographic binding, not
just an IP address. The liveness token, (attestation result), contains a
subject key identifier, or a specific instance ID claim

   -

   Mechanism: When an agent opens a connection to the RP, it presents the
   Liveness Token. The RP verifies the token's signature (from the Governance
   Node) and ensures the token’s Subject Key matches the key used by the Agent
   in the TLS handshake. This prevents identity spoofing.

What do you mean by "drops all traffic"? What does the RP do after
successful attestation? What does the RP do after failed attestation?

This is a "Fail-Closed" model:

   -

   Success: The RP accepts the Liveness Token and processes the application
   data (e.g., API requests, inference tasks).
   -

   Failure: If the token is missing, expired, or invalid, the RP terminates
   the connection immediately or silently discards packets. It does not
   parse the application payload. This prevents a compromised or non-compliant
   agent from propagating data to the network.

3. Questions for the WG

Could you tell more about the possible values for "operational state"? Is
it just active and terminated? What does the RP do with these states?

For the AIGA use case, we are looking at defining a custom EAT profile to
capture the lifecycle of an AI Agent. The states would likely be:

   1.

   Initializing: Booted, generating evidence, waiting for approval.
   2.

   Active: Fully attested and compliant; traffic allowed.
   3.

   Suspended: Temporarily untrusted (e.g., missed heartbeat, investigation
   pending); traffic blocked or limited to telemetry only.
   4.

   Revoked/Terminated: Permanently untrusted (e.g., confirmed compromise);
   all traffic blocked.

The RP uses these states to apply real-time policy without needing to
understand the underlying hardware complexities.

I will work on the figure for Section 11 and the definition updates
immediately.

Best regards,

Edward Aylward

On Sat, Jan 17, 2026 at 4:08 PM Muhammad Usama Sardar <
muhammad_usama.sardar@tu-dresden.de> wrote:

> I had a quick look at the draft. I have a few general questions and
> comments:
>
> What is the source of Table 1? It seems there is no proper definition or
> explanation of what the columns actually represent. What is "check-in"?
> "Approval" of what?
>
> Several terms are undefined. What is "exp AGI"?
>
> Could you add a figure in Section 11? It will be easier to follow an
> overall figure first before details.
> On 13.01.26 19:56, Edward Aylward wrote:
>
>
> The Proposed Solution (RATS Integration):
> The draft defines a "Risk Class 5" Agent that MUST execute within a TEE.
> The enforcement mechanism relies on a periodic "Attestation Heartbeat":
>
> Could you explain the need for "periodic"? Why is one-time attestation
> insufficient? What exactly can change?
>
> Section 12 seems to suggest you use TLS. Do I understand correctly that
> you want to design a HTTP protocol on top of TLS for periodic attestation?
>
> 1. The Prover (Agent Hardware): Generates a periodic Quote (EAT)
> certifying the hash of the running kernel/binary and the freshness of the
> session.
> 2. The Verifier (Governance Node): Validates the Quote against the
> Platform Endorsement Key (PEK).
> 3. The Relying Party (Network Peer): Drops all traffic if the Verifier
> does not publish a fresh "Liveness Token" for that Agent.
>
> What is the identity of the Agent? In other words, how does the RP
> identify the Agent?
>
> What do you mean by "drops all traffic"? What does the RP do after
> successful attestation? What does the RP do after failed attestation?
>
>
> My Questions for the WG:
> 1. Does the RATS architecture support a model where the "Relying Party"
> (the network peer) is distinct from the "Verifier" (the Governance Node) in
> a real-time loop?
>
> Yes
>
> 2. Are there existing EAT claims (CWT/JWT) best suited for representing
> "Operational State" (e.g., Active vs. Terminated), or would this require a
> custom profile?
>
> Could you tell more about the possible values for "operational state"? Is
> it just active and terminated? What does the RP do with these states?
>
> -Usama
>
>