[TLS] Re: Clarification on security considerations of RFC9261
Muhammad Usama Sardar <muhammad_usama.sardar@tu-dresden.de> Mon, 16 February 2026 22:05 UTC
Return-Path: <muhammad_usama.sardar@tu-dresden.de>
X-Original-To: tls@mail2.ietf.org
Delivered-To: tls@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 788AEB87B9CE; Mon, 16 Feb 2026 14:05:37 -0800 (PST)
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -4.397
X-Spam-Level:
X-Spam-Status: No, score=-4.397 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (2048-bit key) header.d=tu-dresden.de
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 NI3GSZSno8_H; Mon, 16 Feb 2026 14:05:36 -0800 (PST)
Received: from mailout3.zih.tu-dresden.de (mailout3.zih.tu-dresden.de [141.30.67.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id 2A0A0B87B9B7; Mon, 16 Feb 2026 14:05:36 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tu-dresden.de; s=dkim2022; h=Content-Type:In-Reply-To:CC:References:To:From :Subject:MIME-Version:Date:Message-ID:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=CvKiXgEq5AfnlAYiRPcYDjGkqXxkWIlt4NVXd7N4cXQ=; b=zzOfAjtKPde93HA4qucjklIR1O Hip+yuAnJVIANCrH3qzvgWLPLsaXFjyAo+420gSLQH8vZIYo3m+QOSezsx7CFBnSewhEGE4daMMkM 9PheTUO2XdRYXWUEazYoV0XG0V2CPDj2t0loXRq76QD3jFFQCkgnyDr9NjmgeDH3qXfIhro9D+TaJ eQtcX+NW++SMqsQot0kN0SytER5Q5IOMEr9qbpQDH5zwqBR/Za31JYNHS9xiiB64yU5LYnuX99fJZ gbedKeX6YJ29/o8Tzw3FVmDgDPq3sfNnfwCpYEf4kbS5z0yptibojkI5NmMcGXfxfenMSF5qQvJmQ pPA8Wq3Q==;
Received: from msx-t422.msx.ad.zih.tu-dresden.de ([172.26.35.139] helo=msx.tu-dresden.de) by mailout3.zih.tu-dresden.de with esmtps (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from <muhammad_usama.sardar@tu-dresden.de>) id 1vs6il-006aYn-Aw; Mon, 16 Feb 2026 23:05:35 +0100
Received: from [10.12.5.228] (141.76.13.149) by msx-t422.msx.ad.zih.tu-dresden.de (172.26.35.139) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.37; Mon, 16 Feb 2026 23:05:23 +0100
Message-ID: <e7e02cd8-7106-4112-959b-9b78dff2b7ca@tu-dresden.de>
Date: Mon, 16 Feb 2026 23:05:22 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Muhammad Usama Sardar <muhammad_usama.sardar@tu-dresden.de>
To: UFMRG IRTF <ufmrg@irtf.org>, cfrg@ietf.org
References: <8ca160c8-1f42-441a-90b3-d28ac4ae8931@tu-dresden.de> <d16569eb-9ba9-4ed9-a48d-8bb3fc5a6370@tu-dresden.de>
Content-Language: en-US
In-Reply-To: <d16569eb-9ba9-4ed9-a48d-8bb3fc5a6370@tu-dresden.de>
Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg="sha-512"; boundary="------------ms090608060408030208050405"
X-ClientProxiedBy: msx-t420.msx.ad.zih.tu-dresden.de (172.26.35.137) To msx-t422.msx.ad.zih.tu-dresden.de (172.26.35.139)
X-TUD-Virus-Scanned: mailout3.zih.tu-dresden.de
Message-ID-Hash: VBIOWKQWH7EPDRQ6ST6EC6DZCFNKARL4
X-Message-ID-Hash: VBIOWKQWH7EPDRQ6ST6EC6DZCFNKARL4
X-MailFrom: muhammad_usama.sardar@tu-dresden.de
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-tls.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: "TLS@ietf.org" <tls@ietf.org>
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [TLS] Re: Clarification on security considerations of RFC9261
List-Id: "This is the mailing list for the Transport Layer Security working group of the IETF." <tls.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/tls/O96LPZNdbRq1rk52mb7eiPYByXI>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tls>
List-Help: <mailto:tls-request@ietf.org?subject=help>
List-Owner: <mailto:tls-owner@ietf.org>
List-Post: <mailto:tls@ietf.org>
List-Subscribe: <mailto:tls-join@ietf.org>
List-Unsubscribe: <mailto:tls-leave@ietf.org>
Hi UFMRG and CFRG, I didn't get any answer/opinion at TLS WG. So I wanted to check if someone here has any answer/opinion. Best regards, -Usama On 12.02.26 13:59, Muhammad Usama Sardar wrote: > > Just a reminder that it's /not/ necessary to answer /all/ the > questions :) Whatever answers/opinions anyone has are welcome. > > Given lack of clarity, we are basically making assumptions, which may > not match the intentions of the WG. > > Thanks. > > -Usama > > > On 03.02.26 21:08, Muhammad Usama Sardar wrote: >> >> [ Sorry for the length ] >> >> Hi Nick, all, >> >> Thank you for the work on RFC9261. We found it a useful foundation >> for our work. >> >> # *Context* >> >> Four developers (Peg Jones from Flashbots, Markus Rudy from Edgeless >> Systems, Ayoub Benaissa from Zama, and Pavel Nikonorov from GA4GH and >> Elixir Europe) are developing implementations of RFC 9261. I am doing >> the formal analysis in ProVerif. We request the following clarifications. >> >> # *Scope* >> >> I basically care about TLS 1.3 only. While many things apply to DTLS >> 1.3 as well as TLS 1.2, the scope of my questions is only limited to >> TLS 1.3 /only/. >> >> Of the three options in Section 3, I care about Server >> Authentication. That is, Client Authentication and Spontaneous Server >> Authentication are out of scope of this email. >> >> While Authenticators can be conveyed "out of band" as mentioned in >> RFC (which I don't really see why), let's say I put it out of scope. >> When there is already an established connection, then I think it is >> preferable to use that. So let's say Authenticator Request and >> Authenticator are sent over the connection established by the >> handshake (and hence "out of band" being out of scope). >> >> For further simplicity, let's say Server does not send >> CertificateRequest during the handshake, so the client authentication >> is not done during the handshake. >> >> # *Known implementation* >> >> The only public implementation currently known to us is Cloudflare's >> opaque-ea [0], which as acknowledged [1] by Cloudflare, is a partial >> implementation of RFC9261. It implements TLS messages here [2] and is >> based on mint [3] - a minimal TLS 1.3 stack for learning purposes. Is >> there any other open-source implementation? >> >> For future, could we please reference the implementations within the >> RFCs (either in text or in "additional resources" in datatracker) to >> avoid the trouble to find it? >> >> The developers are ultimately aiming at code that they will use in >> production. >> >> >> # *Security considerations* >> >> I agree with the last paragraph of security considerations, but >> couldn't parse the 2nd paragraph (see below). >> >> ## *Formal analysis in ProVerif* >> >> I am trying to understand the security considerations of RFC9261. It >> acknowledges Karthik for suggestions on security considerations. Does >> someone happen to recall whether he actually did some formal analysis >> in ProVerif or was it based on his intuition? If the former, could >> someone point me to the analysis? I did check reftls repo [4] which >> does not contain it. I also checked his personal repos [5] but could >> not find something relevant. >> >> I know some formal analysis was done in Tamarin but I would like to >> compare my ProVerif model with his model, if he had one. >> >> For future, could we please reference the formal analysis within the >> RFCs (either in text or in "additional resources" in datatracker) to >> avoid the trouble to find it? >> >> ## *2nd paragraph * >> >> A whole lot of my trouble is understanding what is being reasoned in >> this paragraph and how this is leading to the first bullet as a >> conclusion. Could someone explain? For example: >> >> > Authenticators are independent and unidirectional. >> >> "Independent" of what? Authenticator would use the >> /certificate_request_context/ from Authenticator Request, >> so Authenticator is not independent of Authenticator Request, right? >> If Authenticator is independent of Authenticator Request, then what >> prevents replay attacks? (Recall Spontaneous Server Authentication is >> out of scope of my email. One could argue that is still in scope for >> RFC but the quoted statement in RFC comes without qualifier and >> logically should apply to all cases.) >> >> "Unidirectional" in what sense? The whole idea of RFC9261 in my mind >> is to enable the server to send Authenticators too, since after the >> handshake, RFC8446bis allows only the Client to authenticate itself >> and not the Server [Sec. 4.2.6 and 4.6.2 of 8446bis]. To me, RFC9261 >> is bidirectional, as both server and client can generate Authenticators. >> >> > This property makes it difficult to formally prove that a server is >> jointly authoritative over multiple identities, rather than >> individually authoritative over each. >> >> Which property? I couldn't parse it how it was derived from the >> statements above it. >> >> ## *State* >> >> RFC uses 3x"state" but never defines it. What exactly does it entail >> in this context? The most important for me is the one in security >> considerations. >> >> > The application in possession of a validated authenticator can rely >> on any semantics associated with data in the certificate_request_context. >> >> I couldn't parse above quoted statement. What does it mean? As per >> scope mentioned above, Client validates Authenticator. >> >> ## *TLS Layer* >> >> RFC uses TLS layer, and I don't find any definition of this in this >> document or in RFC8446bis. In particular, does it mean the end of >> handshake protocol? Or does it include the Authenticator Request and >> Authenticator too? I am a bit confused because Section 7 says the >> messages SHOULD be implemented inside the TLS library. >> >> >> # *(Hopefully) some nits* >> >> ## *EA vs. "Exported Authenticator" vs. "Authenticator"* >> >> EA is used but never defined. Is it any different from "Exported >> Authenticator" used in the same sentence? >> >> How exactly are both of them different from "Authenticator" defined >> in Section 5? >> >> ## *Lower-case vs. Upper-case* >> >> In Section 3 (and in general), is there a subtle difference between >> "Authenticator" and "authenticator"? Similarly, "Authenticator >> Request" and "authenticator request". >> >> ## *"exporter value" vs. "exported value"* >> >> Is there a subtle difference between "exporter value" and "exported >> value"? >> >> >> Thanks. >> >> -Usama >> >> >> [0] https://github.com/cloudflare/opaque-ea >> >> [1] >> https://github.com/cloudflare/opaque-ea?tab=readme-ov-file#library-packages >> >> [2] >> https://github.com/cloudflare/opaque-ea/blob/master/src/expauth/tls_messages.go >> >> [3] https://github.com/tatianab/mint >> >> [4] https://github.com/Inria-Prosecco/reftls >> >> [5] https://github.com/karthikbhargavan >>
- [TLS] Clarification on security considerations of… Muhammad Usama Sardar
- [TLS] Re: Clarification on security consideration… Muhammad Usama Sardar
- [TLS] Re: Clarification on security consideration… Muhammad Usama Sardar
- [TLS] Re: [CFRG] Re: Re: Clarification on securit… Jack Grigg
- [TLS] Re: [CFRG] Re: Re: Clarification on securit… Muhammad Usama Sardar
- [TLS] Re: Clarification on security consideration… Sean Turner
- [TLS] Re: Clarification on security consideration… Eric Rescorla
- [TLS] Re: Clarification on security consideration… Sean Turner
- [TLS] Re: Clarification on security consideration… Nick Sullivan
- [TLS] Re: Clarification on security consideration… Muhammad Usama Sardar