[Teep] Gen-ART Last Call review of draft-ietf-teep-protocol-21

Paul Kyzivat <pkyzivat@alum.mit.edu> Wed, 15 October 2025 18:42 UTC

Return-Path: <pkyzivat@alum.mit.edu>
X-Original-To: teep@mail2.ietf.org
Delivered-To: teep@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 2CC09744EB81; Wed, 15 Oct 2025 11:42:52 -0700 (PDT)
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -1.998
X-Spam-Level:
X-Spam-Status: No, score=-1.998 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (1024-bit key) header.d=alum.mit.edu
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 gRlQsdBYfNbn; Wed, 15 Oct 2025 11:42:51 -0700 (PDT)
Received: from DM5PR21CU001.outbound.protection.outlook.com (mail-centralusazon11011026.outbound.protection.outlook.com [52.101.62.26]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id B9A88744EB5E; Wed, 15 Oct 2025 11:42:45 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=nQUzQGe9IM2Celi1PwnU7T+kkpPls2h/EMV7QgDzCFzXzfbxN5EuqA/cqNdB9F80KspvUTfgcGJhrxDaCzOW03b80Ki3V1ZUJH19kJZWqGIK2z/yTGWK/FRfyz7eOx04isM4ovgSnuFx6KFf+KNAclBrvNbB2s2XpJNdObXqVRDNcR3SIufHeFonW6DxEO2iLibZUVVs9wuDS11KMZpJdpTmffsk/h2OF9oyZjemOVXDUHc1F9iL9FnAQ/uOmEDtJ+3252TTi3/zJNcMTsS9cetvmPZ4FO2UgG30JNEOix3upDiO6WRetsl0KyEd9YIlUyL0p891rHQuvqPfanRp5Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=6dseqwZDSPuvf/Z0ue+16gr4SLzX89vd1/PdUV+gKbI=; b=obsbPR9aSLPiISjgP3fF0fNB+WAIGm64tY81ZVrzivEkcu+Y+Tdyz0vw70hvy99qE4ZLmKASiIOkt1ytv7jT3yv3SCVa8inGBOc4b1bBCNoTBbdCuESO4yJP4UORCkfGqxfHK5V6p80Jpcl6Z+Sf7Ajei3U8pfeIv47WApYis7sW87Q3uCrQ9Glrx55QvP5MqCnztlSqO53EjPVpRULyzdKxMeCuBT2FewZmjzP5JRlU/FSZ1016fhtIhpmD50WRKCPqJxp0OxNDrbn0mF25QOl4dMjA/vinazGrFX8mXyBa0ZDVbUPUaDzpeneWP7bbe8nPDnDI6P18y4omJj1F0g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 18.7.68.33) smtp.rcpttodomain=ietf.org smtp.mailfrom=alum.mit.edu; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=alum.mit.edu; dkim=none (message not signed); arc=none (0)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alum.mit.edu; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6dseqwZDSPuvf/Z0ue+16gr4SLzX89vd1/PdUV+gKbI=; b=G8zo46yktib/7rErGhQ94UvWMTLVYR9sMwWjxUUp7nTHloexZrM/gvispLJa/Pl6j87QowEI5cjUfpsIOk+rH1cOvjDxxlE3u0oI09g4d+ySp9y2qHKyyu/RYL10W5+oo4NewVvcE+0V9oelGajIIfzY/PS9knWHx04Q74bcrQ4=
Received: from MN0P222CA0014.NAMP222.PROD.OUTLOOK.COM (2603:10b6:208:531::21) by DM4PR12MB7576.namprd12.prod.outlook.com (2603:10b6:8:10c::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9228.12; Wed, 15 Oct 2025 18:42:36 +0000
Received: from BN2PEPF00004FC1.namprd04.prod.outlook.com (2603:10b6:208:531:cafe::96) by MN0P222CA0014.outlook.office365.com (2603:10b6:208:531::21) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9203.13 via Frontend Transport; Wed, 15 Oct 2025 18:42:36 +0000
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 18.7.68.33) smtp.mailfrom=alum.mit.edu; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=alum.mit.edu;
Received-SPF: Pass (protection.outlook.com: domain of alum.mit.edu designates 18.7.68.33 as permitted sender) receiver=protection.outlook.com; client-ip=18.7.68.33; helo=outgoing-alum.mit.edu; pr=C
Received: from outgoing-alum.mit.edu (18.7.68.33) by BN2PEPF00004FC1.mail.protection.outlook.com (10.167.243.187) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9228.7 via Frontend Transport; Wed, 15 Oct 2025 18:42:35 +0000
Received: from [192.168.1.218] (c-76-19-71-248.hsd1.ma.comcast.net [76.19.71.248]) (authenticated bits=0) (User authenticated as pkyzivat@ALUM.MIT.EDU) by outgoing-alum.mit.edu (8.14.7/8.12.4) with ESMTP id 59FIgY2O021752 (version=TLSv1/SSLv3 cipher=AES128-GCM-SHA256 bits=128 verify=NOT); Wed, 15 Oct 2025 14:42:35 -0400
Message-ID: <53e3588e-b9ad-40ca-94ee-55557a906733@alum.mit.edu>
Date: Wed, 15 Oct 2025 14:42:34 -0400
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Paul Kyzivat <pkyzivat@alum.mit.edu>
To: draft-ietf-teep-protocol.all@ietf.org
Content-Language: en-US
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BN2PEPF00004FC1:EE_|DM4PR12MB7576:EE_
X-MS-Office365-Filtering-Correlation-Id: 0df4c4ac-7a57-4d44-ac70-08de0c1a9c0b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|1800799024|82310400026|41320700013|36860700013;
X-Microsoft-Antispam-Message-Info: P6gY/YLUqQtS7TJmIgmcNgxWCN2V2pJf/FJ4GeqtBYqzugw7E3kJlNjsnwkwnZnKXA9d00XlrsJn4H+MqcbIZDa7kD31Su9Lul4gLKC9VZ5ydj7p3sqcgO4zP/jPSTw2gvOOD/ai5b4+aS/0D3QFdRY7fq+Ae+AJIrLiQZ8E4GrU6lAGqoO0H4jFcsR3+VYIovqWFJdZ2zgjvDYlU70S4/l2Hw3k8EOVmT/fuWGbs3UQX0mmJzIZ2LUzSxImT+3SF6y2bAdl97qRteyVXAlaDBmBC/UQ13yFUDEj538nJvTmyqbRSzNNQ9Lx7pNiC+XdCSVaZ0uUQ+3C7j79okhnMIVvpqvVj1HZiyHEkIgVsPPeAoILJYam+Lx2J7/GHEzlf3eUBIQHq9XCOkfTiTenieISV//syReK8NWDXdTGVWY9Hjj5XChB0ejk4WWkQCQUmp6oVleGhkKxt/JYzW273yhmlz1Qqn4b46Up+evOkUspnVGAtQRKal5gqEs624wh3CkN5DSjSN/sC4ueTG7slcKVLue5mV9DDy52dXkMMa2Hb9JemadkrcqKO29cGztdshm+08wgxhk0McyH7GFatHX6WDGYysl2Vq+9GwGib73MQeTGkwcgeXjwSbTMdGfLr8EGGR6BZteGKItbyQXouY1dyopBrLynXg/8zJwNqanF2ePrfFIZjIivcOOW785eWcm3rhJNdEvDeH4RwT6B4Sj27OsuwECJA64d5XSh5ApG+KxQVcJEyuxkd1MDIEBDp+lza7Mn9EeBD4YcxrhAzNIKKqGgHB9DcUzZPbJ9+9YrhuLB/rnrn2RJZ9+l+vQWXzUpRKOXYgADuw++cbheAnNjuqlLjPFJ3HZoZsoyGwe+8KR78m93vJO2Ms5dMXFlIrVIL2lvqaiHJXyoGKzPSvFQSbJPGO67gH19jgKSBkLqNeN9lS5PZtQHDHnM/gTyfp7Kd6fnyMlTeWi3LyXj5eI5N4dCR215KL2LEiTM3gi3YwnjQ8FAnkP39oEhFV645VNr3w5oBvjfGRbgRHb7KeRhzHTRo0r7j90+cjLriHJY2J7wpvdpv8K8FZyhDnvrjMksCAV2MEQRj/McAF6cDUGS/RtwAvf4aon0TJlY38cqVlOMaVEZv8giiRGayjTa9WT8Ee044ShZEjEJxYk+Ql/SqcsBLoQweVKvY+XmJvyXBv+a6JvS6H7uote3D0kfTHJrJUjaSgxMVcS1MJLbqWbCGUmbWYGJLGMVKRS4s9WEjH2hn1cqQha1WjI8uJ3GsyPX6ciolFaGQOzisbxPMmZXNTN94PENg1G+RFuP1l3F8M8nBqVVVZTH/XoIuZlsxWW646F2iU+Iw2rUAnt719iMJWlnCfkv9bYUaCoMNgMxDtoZe8YRizQYLKLkYNyrpxuxYx0cAHyWaooH0rZSW4Qcshrvjrvi8MPBo+AWMSyM0s0wWVp2eH2TplvNIlTIDEjjA6TTW38y5qCMfqlb8FtMxB3cBJytJooP4HoBkeqMCVOTslRV5TeshgOJ+VS/qN5/fH04jOZWk0tiP2pwaqgGJxdmokO5m22wmTWbyTA=
X-Forefront-Antispam-Report: CIP:18.7.68.33;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:outgoing-alum.mit.edu;PTR:outgoing-alum.mit.edu;CAT:NONE;SFS:(13230040)(376014)(1800799024)(82310400026)(41320700013)(36860700013);DIR:OUT;SFP:1101;
X-OriginatorOrg: alum.mit.edu
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Oct 2025 18:42:35.8494 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 0df4c4ac-7a57-4d44-ac70-08de0c1a9c0b
X-MS-Exchange-CrossTenant-Id: 3326b102-c043-408b-a990-b89e477d582f
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3326b102-c043-408b-a990-b89e477d582f;Ip=[18.7.68.33];Helo=[outgoing-alum.mit.edu]
X-MS-Exchange-CrossTenant-AuthSource: BN2PEPF00004FC1.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB7576
Message-ID-Hash: 4MU6LBKMYLRIKA6OJRURQS7NWTQRJGLD
X-Message-ID-Hash: 4MU6LBKMYLRIKA6OJRURQS7NWTQRJGLD
X-MailFrom: pkyzivat@alum.mit.edu
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-teep.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: General Area Review Team <gen-art@ietf.org>, last-call@ietf.org, teep@ietf.org
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [Teep] Gen-ART Last Call review of draft-ietf-teep-protocol-21
List-Id: A Protocol for Dynamic Trusted Execution Environment Enablement <teep.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/teep/KylvucXY1gd0wsltvSBWWtU0jcA>
List-Archive: <https://mailarchive.ietf.org/arch/browse/teep>
List-Help: <mailto:teep-request@ietf.org?subject=help>
List-Owner: <mailto:teep-owner@ietf.org>
List-Post: <mailto:teep@ietf.org>
List-Subscribe: <mailto:teep-join@ietf.org>
List-Unsubscribe: <mailto:teep-leave@ietf.org>

I am the assigned Gen-ART reviewer for this draft. The General Area
Review Team (Gen-ART) reviews all IETF documents being processed
by the IESG for the IETF Chair.  Please treat these comments just
like any other last call comments.

For more information, please see the FAQ at

<https://trac.ietf.org/trac/gen/wiki/GenArtfaq>.

Document: draft-ietf-teep-protocol-21
Reviewer: Paul Kyzivat
Review Date: 2025-10-15
IETF LC End Date: 2025-10-20
IESG Telechat date: ?

This draft is on the right track but has open issues, described in the 
review.

ISSUES: 4
NITS: 3

1) ISSUE: TEEP Message token lifetime

The processing of TEEP messages, discussed in sections 4.1.1, 4.2.2, and 
7.1, calls for assigning unique token values, using them to match 
responses to requests, expiring them and preventing reuse. This 
potentially could require unbounded storage to track them. Presumably 
that is not the intent. Since the purpose of these tokens is to match a 
request to the first response, it seems likely that it is unanswered 
requests, including the token, that need to be stored. Since the 
protocol calls for dropping messages that fail certain checks, it is 
presumably possible that some requests will never receive a response. To 
handle this, message senders need some mechanism to eventually drop 
unanswered requests. But this is not mentioned in the document.

I suggest you add a discussion of the need to have a timeout on messages 
awaiting responses. This could then also address token uniqueness and 
lifetime.

2) ISSUE: The range of err-code values

The CDDL definition of the update message in section 4.4 includes:

"err-code => (0..23),"

The CDDL definition of specific values leaves values 0,11-16,18-23 
unassigned.

I gather the value 23 is chosen because it is the max integer value that
can be encoded in a single byte in CBOR encoding. If that is important, 
is there a way to decouple the value symbolically, rather than hard 
coding "23"?

Why not instead restrict it symbolically to defined err code values?
And then, *encourage* extensions to stay below 23. I guess nothing 
catastrophic would happen if some err-codes were assigned values greater 
than 23. Why is 0 unassigned? Is it intentionally reserved? Would 
anything bad happen if it were assigned? This seems worthy of explanation.

3) ISSUE: The range of TEEP Message Parameter labels

Section 6 (The Mapping of TEEP Message Parameters to CBOR Labels), like 
err-code, seems to intend that message labels be restricted to [0..23], 
presumably for concise encoding as CBOR integers. It appears only 0,5,22 
remain unassigned. Is there a plan if more values are needed in the 
future? Is 0 assignable? (If it is reserved, it would be good to say 
something about that.) Would anything bad happen if future parameters 
were assigned values greater than 23?

4) ISSUE: Unqualified use of SHOULD

This document contains many SHOULDs that lack any qualification of 
circumstances that would justify violating the SHOULD. Many implementers 
treat such conditions as entirely optional to implement.

I suggest that all uses of SHOULD include discussion of what would 
justify failing to comply, and the implications of doing so.

5) NIT: Definition of version 0

The explanation of message fields in section 4.2 says this about 'versions':

"A value of 0 refers to the current version of the TEEP protocol."

This is pretty vague. I gather you mean the version of the protocol 
defined by *this* document. Can you please be more explicit about this?

6) NIT: Editor instructions

Appendix C includes the following

; DO NOT EDIT this cddl file manually.
; This cddl file is Auto-generated file from md file.
; Edit the md file and run make for generating this cddl file.
; Please do not forget to commit and push this cddl file to git repo
; every time you have revised the md file.

This works while this document is a draft. But what is to happen once 
this becomes an RFC? Will the md format even be available during 
production of the RFC?

I suggest you plan for this and provide guidance.

7) NIT: IdNits stuff

The IdNits tool reports a number of errors. Some of them are spurious, 
but a couple are not:

** There are 43 instances of too long lines in the document, the longest 
one being 88 characters in excess of 72.

These all seem to be in examples. You will need to find a way to fold these.

== Outdated reference: ...

There are a bunch of these. I trust they will eventually be updated.