[TLS] Re: Last Call: <draft-ietf-tls-mlkem-09.txt> (ML-KEM Post-Quantum Key Agreement for TLS 1.3) to Informational RFC

Erwin Hoffmann <feh@fehcom.de> Wed, 12 August 2026 14:24 UTC

Return-Path: <feh@fehcom.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 E70D8128949D7 for <tls@mail2.ietf.org>; Wed, 12 Aug 2026 07:24:20 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1786544660; bh=/s8CtKHhdluFBtAtCCW0K/plpl+GTNDeuEi7lDX3DFA=; h=Subject:From:To:Cc:Date:In-Reply-To:References; b=Lufm/dnAurO0EgDUUR+fH7AkRJiX4pZ3x3d+wWnTgH0Bfg57sC921oPa/Zq/naeWb ID61mBAQvQ69NFAAyZILs+63AwiHvDZRs8Pk5TV9VgEDv++2MG86pyxJQSgc1+PcrU PHLAOaaXefWxfP7RFjFaQmbhWeeHVuxMg0RoqSVA=
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 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, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_PASS=-0.001, UNPARSEABLE_RELAY=0.001] autolearn=ham autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=neutral reason="invalid (unsupported algorithm ed25519-sha256)" header.d=fehcom.de header.b="w3WZxE6k"; dkim=pass (1024-bit key) header.d=fehcom.de header.b="nzvppCqb"
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 aJxbP9dTKLu1 for <tls@mail2.ietf.org>; Wed, 12 Aug 2026 07:24:19 -0700 (PDT)
Received: from mail.fehcom.net (mail.fehcom.net [85.25.149.179]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id 4E587128949C9 for <tls@ietf.org>; Wed, 12 Aug 2026 07:24:18 -0700 (PDT)
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=fehcom.de; s=eddy; x=1787149324; q=dns/txt; h=Received: Received:Received:Received:Message-ID:Subject:From:To:Cc:Date: In-Reply-To:References:Autocrypt:Organization:Content-Type: User-Agent:MIME-Version; bh=yTofjgFJ/ZrAc5b7YbBe41lvSg8Mcw2hnwe 9fCtW8iA=; b=w3WZxE6kJM/sFuUxDT6gJG2Gv1+BWcy3PtyF4V1tAGXd7EuW99j QYkhlBPezE/nJC091Cjh8YMF+1Bob3P/aBw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fehcom.de; s=default; x=1787149324; q=dns/txt; h=Received: Received:Received:Received:Message-ID:Subject:From:To:Cc:Date: In-Reply-To:References:Autocrypt:Organization:Content-Type: User-Agent:MIME-Version; bh=yTofjgFJ/ZrAc5b7YbBe41lvSg8Mcw2hnwe 9fCtW8iA=; b=nzvppCqbv0CzSOkO0WuF5g+2ixn5HZEHCDKSzViOVKpEGZUWZml ggtt4JlqdxsozAC2JEoAYn5FqF5FP3fdN7Dd/drcvOmWgUvO597BBvNrT4QkLaxt kBxRdeZ2BYOnclOlOA6TrXzYxLdXe+yhIAwnooqE379N1fq87CaHUKv0=
Received: (qmail 2679153 invoked from network); 12 Aug 2026 14:22:03 -0000
Received: from p5b1427dc.dip0.t-ipconnect.de (Dr. Erwin Hoffmann@91.20.39.220) for <> de/crypted with TLSv1.3: TLS_CHACHA20_POLY1305_SHA256 [256/256] DN=/C=DE/ST=Rheinland-Pfalz/L=Hoehn/O=Fehcom/CN=Dr. Erwin Hoffmann/emailAddress=hoffmann@fehcom.de by india167 with QMTPSA; 12 Aug 2026 14:22:03 -0000
Received: (qmail 3154 invoked from network); 12 Aug 2026 14:22:03 -0000
Received: from amr5.fehnet.dnl (erwin@192.168.192.42) for <davidben@chromium.org> de/crypted with TLSv1.3: TLS_AES_256_GCM_SHA384 [256/256] by omnios with ESMTPSA; 12 Aug 2026 14:22:03 -0000
Message-ID: <2581e3fd0ba1a25fcb36921382e120ad90a4d46d.camel@fehcom.de>
From: Erwin Hoffmann <feh@fehcom.de>
To: David Benjamin <davidben@chromium.org>
Date: Wed, 12 Aug 2026 16:22:03 +0200
In-Reply-To: <CAF8qwaCnVmBg6AraXRLE36oT6S7RaEhJfzBgV=O4Q0wp7nP0aw@mail.gmail.com>
References: <20260811105051.2792930.qmail@cr.yp.to> <996f4ae94583837bf48195eb8293740b90a27c75.camel@fehcom.de> <CAF8qwaCnVmBg6AraXRLE36oT6S7RaEhJfzBgV=O4Q0wp7nP0aw@mail.gmail.com>
Autocrypt: addr=feh@fehcom.de; prefer-encrypt=mutual; keydata=mQGiBDlrZa0RBADdMaeQKWqaMJMi20LW0bfb+bvDjk7HoEB9Itad/lkHo3yAHhJt++d6d xeBbSQd8YzLsGy3gX2+m5kYJ7jUhvOtAVRoYqrkKqahrF+ZEwqe5L3uzK+vfQl2Rc152uUEib4EZv NNAAI2fM23aRf/p8gRUktgKWR0ge5+4lqMZb5MJwCg/ztDtUcsJC+g/GGKL5moPlSZ5DcD/i4yymd z5MFu9wWB4CcqWY9NHGS31YioerIDDzNplJ+fSWmhpdNcP/hdpRm1IbUnhkJhjOeO8OcE7QarfDH6 3gfqi8doSWZHp1YY7WF7w1qX2T+/QhsTnojzPIPes+ZoS5KkiOhpRoxHRL7KGbtP+SZmgpaMQoRZw 9g94I1FXlY0BACzgmvyI22+0KyzQtUjESBfbuGldRcXLb9Zb2u1cOdiswyp6SdL/uun1bXZQiT4RP hXEIrpTgCOI5ZQL0E5hLWRJNpBc2exMwatQfq7IBNJPVAys3hNnDqz/WFVaUB1XAl+GmTxAdOmUSO BtL6o+yNKWG3+yhUwiwvdeBo8sSeA/LQeRXJ3aW4gSG9mZm1hbm4gPGZlaEBmZWhjb20uZGU+iE4E EBECAA4FAjlrZa0ECwMCAQIZAQAKCRDMAxGOfkA0vowvAKDLKq8g0gWrkwGoBEkw1W7T/HWsaACfT joBB+titIDdcv70J3tm2H8yY/6ZAaIEOWsd+BEEAMtWnq6wEclZSv3mDN9PW2H6OaICtUz3JCKC0Z b6JDwllYPDjkiuGfPfnM353cKo9Fs44zQydT/i1H3KSsZCcdpfsRzz428HDvo0cHkUo0+zdHqp/6j yybgGK4nPKa1Pb/vtkaRnH/+INNzuQGVqWtXwaMmVKhN6MBj4+3bj8yalAKD/nUpC6DqUHlopsaYI shVFIranNQQAyNrM+VXQyhjd28o8J6PohqG28jDCevCBMe+R5cRG7WW1/i/zWd0bysIcqPR3BeWdE nW5wfd+TZEoALD7KTljFWiI7oQ7mVxR8djlFGOPGC+X+Tij0gkflChsblCsccomyBbCSqfL6DtU/K VMXHS7t+5vBeV1sg8Nd6+E4FlIE6UD/0XKENxf1WFALUws9eCL7L7FZeb0rHLyLJnWPCo7qVpKr+9 AgAwRNlvyHr9MbQ8HE8XC50K94+VzdF3c6MlM5o6OdVMetzS5Dvcebr4yHyZaR8S/pM5Pgv2W2wzs v87BXPocSJX5CURVTk5axWyTqCvErHD3KqeSw77fz02ayrfFtB5FcndpbiBIb2ZmbWFubiA8ZmVoQ GZlaGNvbS5kZT6ITgQQEQIADgUCOWsd+AQLAwIBAhkBAAoJEPhTfSq9mTGZunEAnjuyxh3z/YA9SU ETkF7X0MrKmVFbAJ9rNGlqf+4aWoepF+KTy8ws5yU+AZgzBGlJJukWCSsGAQQB2kcPAQEHQDai4jT OQRx9WURT0+Y44j7NnVGRjryBsEuFHsR6hidWtDBFcndpbiBIb2ZmbWFubiAoUHJpbWFyeSBhZGRy ZXNzKSA8ZmVoQGZlaGNvbS5kZT6ImQQTFgoAQRYhBJULVVULCFoqHACVlDZVP3+cWNHMBQJpSSbpA hsDBQkPCZwABQsJCAcCAiICBhUKCQgLAgQWAgMBAh4HAheAAAoJEDZVP3+cWNHM1uEBAKtW9BFvrV FkBnQ7iUwitTcGL8fW+F14VYQgY8xSYfoAAQCdlUBivYD+5xWqe9eD34jQw7L9Q5q5+cwpsjcgJmn kCQ==
Organization: FEHCom
Content-Type: multipart/signed; micalg="pgp-sha512"; protocol="application/pgp-signature"; boundary="=-6uAAhq38LKothBpTFLmA"
User-Agent: Evolution 3.56.2 FreeBSD GNOME Team
MIME-Version: 1.0
Message-ID-Hash: XV5UO7W6CXMNAD44JKQMC74EXTLSMUXT
X-Message-ID-Hash: XV5UO7W6CXMNAD44JKQMC74EXTLSMUXT
X-MailFrom: feh@fehcom.de
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-tls.ietf.org-0; header-match-tls.ietf.org-1; header-match-tls.ietf.org-2; header-match-tls.ietf.org-3; header-match-tls.ietf.org-4; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: last-call@ietf.org, tls@ietf.org
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [TLS] Re: Last Call: <draft-ietf-tls-mlkem-09.txt> (ML-KEM Post-Quantum Key Agreement for TLS 1.3) to Informational RFC
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/h8yNaZsFmBxQmFQqTko24LOWevo>
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 David,

Am Dienstag, dem 11.08.2026 um 17:46 -0400 schrieb David Benjamin:
> Just answering the one misconception about TLS 1.3 in here:
> 
> On Tue, Aug 11, 2026 at 5:33 PM Erwin Hoffmann <feh@fehcom.de> wrote:
> > 4. The way the random number is used in ML-KEM, does IMHO not
> > conform
> > to this basic assumption: It is fed directly (not taking the
> > transcript-hashes into account) to generate the Master Secret [2].
> > Correct me, if I'm wrong.
> > 
> > 5. Thus, at the bottom-line, the Master Secret depends solely of
> > the
> > quality of the PRNG. As explained in [1], its Algorithmic
> > Information
> > Content (AIC) is preserved given the ML-KEM handshake.
> > This is a clear violation of risk-minimization because of
> > disclosing
> > its origin. Additional hashing would involve some additional
> > computational cycles, of course. 
> > 
> 
> 
> While it is narrowly true that the TLS 1.3 "master secret" (called
> the "main secret" in RFC 9846) does not incorporate the transcript,
> this is a red herring. While it shares a name with a TLS 1.2 concept,
> they are not used in the same way. The "master secret" in TLS 1.2 is
> the primary output of the TLS 1.2 handshake. It is the resumption
> secret in a TLS 1.2 session, and used to derive the TLS 1.2 record
> keys.
> 
> That is not how TLS 1.3 works. In TLS 1.3, this value is not the
> output of the handshake. (Our implementation does not retain it after
> the handshake at all!) The outputs of the handshake are not the HKDF-
> Extract left spine of the key schedule, but the Derived-Secret values
> on the right. Each of those incorporates the transcript. You'll see
> different prefixes in the diagram, but this is simply because they're
> computed at different times.
> https://www.rfc-editor.org/rfc/rfc9846.html#section-7.1-13
> 
> So, no, the TLS 1.3 handshake thoroughly uses the transcript hashes
> in all of its outputs, whether the key agreement is ML-KEM or
> something else. All this was part of very thorough analysis that the
> WG did when TLS 1.3 was designed.

hm, did you look at my drawing, explaining this as well? [2]

The transscript hash adds entropy and uniqueness (and some state) to
the calculation - certainly in a better way using the HKDF - rather
than TLS 1.2 with the combination of MD5 and SHA1 together with some
string constants. But still: It is public material and does not improve
security at that point.

But maybe, I've missunderstood your reply.

Regards.
--eh.   

[2] https://www.fehcom.de/qmail/smtptls.html##keyMgmt

> 
> David

-- 
Dr. Erwin Hoffmann | www.fehcom.de
PGP key-id: 36553F7F9C58D1CC
PGP key-fingerprint:  950B 5555 0B08 5A2A 1C00 9594 3655 3F7F 9C58 D1CC