[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 > >
- [Rats] [Use Case] RATS for Hardware-Enforced Stat… Edward Aylward
- [Rats] Re: [Use Case] RATS for Hardware-Enforced … Edward Aylward
- [Rats] Re: [Use Case] RATS for Hardware-Enforced … Michael Richardson
- [Rats] Re: [Use Case] RATS for Hardware-Enforced … Edward Aylward
- [Rats] Re: [Use Case] RATS for Hardware-Enforced … Muhammad Usama Sardar
- [Rats] Re: [Use Case] RATS for Hardware-Enforced … Edward Aylward
- [Rats] Re: [Use Case] RATS for Hardware-Enforced … Muhammad Usama Sardar