[TLS] Re: New Version Notification for draft-usama-tls-risks-of-mlkem-00.txt

Yaakov Stein <ystein@allot.com> Thu, 28 May 2026 15:21 UTC

Return-Path: <ystein@allot.com>
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 C9D13F6B79AA for <tls@mail2.ietf.org>; Thu, 28 May 2026 08:21:42 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1779981702; bh=48jgCMn9ALeSkNoEQk4d2ao0T6Wp6Vqj/m1JZuyU50E=; h=From:To:Subject:Date:References:In-Reply-To; b=r7zQsFtpwh1RhqSOP1QDU1hrXZ1lqPZzM/fb/a5KZvy9+gTFZ15Xt+EI1WYAacDRB UI8hIkYw97PSS9dBFKcEMP2ETXfC3IAvrQIZndTcHf7hXO2l05xElU64t+Ibro7ZND hzuGpo3u72571towthQRvDN3hCdTFiHL52zht3F0=
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -2.097
X-Spam-Level:
X-Spam-Status: No, score=-2.097 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_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=allot.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 39k2NmVDz8mM for <tls@mail2.ietf.org>; Thu, 28 May 2026 08:21:42 -0700 (PDT)
Received: from DUZPR83CU001.outbound.protection.outlook.com (mail-northeuropeazon11022124.outbound.protection.outlook.com [52.101.66.124]) (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 38EE5F6B7877 for <tls@ietf.org>; Thu, 28 May 2026 08:20:15 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=hl9ueXWet+XwtTenEOD7+22ZOl0jXF1qeJA8PtcxvQ/rnSTs3HZb08kH/rbunsTA2FtGYDkW0SnADzUsqgx+FYtjXovgE9ProbUXktC9QPAT4fIWommnUH7sGqFVymfVTw+7aFpec29IYccATCLt2Uaa9Zew20Zy2vuqDyZOU8SsJ5QGjud+87W6rkZAAaco/HU8I1MJjUxPI3wP654etUExPerc22AXuKURpOaOYMMKC+QwJNMyWvCs3GsOAFS9yjCiGNLfStrT9Nv+PCaOwaszKcd62PP16hPpw/uO5CIC2CPfvF8KXIxztiLZl3RR3ysF0vmYdkL8D3bTUVeKXw==
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=48jgCMn9ALeSkNoEQk4d2ao0T6Wp6Vqj/m1JZuyU50E=; b=ZG4baocYq30yzvHYzouegTlNBQeM5m+wjj0YQNpgpTBKFtzHzO2A1bsbTUOQ2edB2A0wWQtRGtPrC16A5VeFFPG9KEMEa9qhANEbABOhf1hxcJ0E7bS4OL0lDI+wm05Ud6fHss2QFtx3prEppmCu8nWTz8MoBsgF4FwlicZguFUA0fwQr5bUF5VW9oJuuGCNFfGIO7rA+q5iJJUBTAA6RpmOFc4poz7nrmS+7jqv4H0xYB0TZHk3WRK7NklLoM+zaj/FakYHhY5bZo/DuLWsX6i42DVjbj+wv8pHyN7UFPmDOWBVCh3pwdTNT2w6Kj9m1lPy/PqrBCbPHjCfrgQHLQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=allot.com; dmarc=pass action=none header.from=allot.com; dkim=pass header.d=allot.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=allot.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=48jgCMn9ALeSkNoEQk4d2ao0T6Wp6Vqj/m1JZuyU50E=; b=Q9cEKsgBQ9aNHs+yXpFf0yVdu25XQN+d9SmlbHJucEOgnG9q1xuBAh2q8aGk12wyV5Juvg54H88MWKQGQBE24ADOcQlbmFSW/H2FQ/t5ZTpcDdGO7vS6RhRtcJCBx5namLIaCxxTKI2vBrk67OJ12ouIMjUy2iTRjIXM9ZUrixc=
Received: from GV1PR08MB7346.eurprd08.prod.outlook.com (2603:10a6:150:21::6) by AS8PR08MB9669.eurprd08.prod.outlook.com (2603:10a6:20b:617::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.48.19; Thu, 28 May 2026 15:20:11 +0000
Received: from GV1PR08MB7346.eurprd08.prod.outlook.com ([fe80::c681:b002:49:d763]) by GV1PR08MB7346.eurprd08.prod.outlook.com ([fe80::c681:b002:49:d763%3]) with mapi id 15.21.0048.019; Thu, 28 May 2026 15:20:11 +0000
From: Yaakov Stein <ystein@allot.com>
To: Muhammad Usama Sardar <muhammad_usama.sardar@tu-dresden.de>, "TLS@ietf.org" <tls@ietf.org>
Thread-Topic: [TLS] Re: New Version Notification for draft-usama-tls-risks-of-mlkem-00.txt
Thread-Index: AQHc7qsoXQ3xcrpiaU2EoiiugIBhpLYjjZqQ
Date: Thu, 28 May 2026 15:20:10 +0000
Message-ID: <GV1PR08MB7346FDA3FF48B817FB9FA15CD3092@GV1PR08MB7346.eurprd08.prod.outlook.com>
References: <177884583348.698.5665316553040848923@dt-datatracker-7688897f84-l74h4> <466c2445-0305-452f-a19a-8b613331cbd6@tu-dresden.de> <agwwWhczmDqplc0b@LK-Perkele-VII2.locald> <AS4PR07MB882579FBC0C1D8FE5CC87CA389002@AS4PR07MB8825.eurprd07.prod.outlook.com> <aac72cf5-2f7e-4c8b-ae78-da014d2c577a@tu-dresden.de> <ahHjOQrVI1aPWXEW@LK-Perkele-VII2.locald> <CAF8qwaALaTgDEiPYs=zCbrByc5sG66us2tj+MGJk4oEz7bMsqQ@mail.gmail.com> <CABcZeBOX5jQVx99sZfzbvL+TNcLYAJxypC9KWtceiai0yv__ug@mail.gmail.com> <CAF8qwaA__rDqqaywefrw-o3L1ABXn2BR6vLhvT4PtP-=gO7z6g@mail.gmail.com> <66d5cdb1-a337-4f1a-9de0-c0e72729da44@tu-dresden.de> <87ldd7lj97.fsf@josefsson.org> <60e7a2c2-f928-486c-b5ef-25ff89d9ff29@tu-dresden.de> <4910C179-430A-4B93-9781-0E74DC1D992C@symbolic.software> <0e1e9d15-9877-41f5-8c6f-69cc51c954a4@tu-dresden.de> <GV1PR08MB73468471B3308643FACA54E4D3092@GV1PR08MB7346.eurprd08.prod.outlook.com>
In-Reply-To: <GV1PR08MB73468471B3308643FACA54E4D3092@GV1PR08MB7346.eurprd08.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=allot.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: GV1PR08MB7346:EE_|AS8PR08MB9669:EE_
x-ms-office365-filtering-correlation-id: 872c0e06-79bb-465b-32a4-08debccc9bfc
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;ARA:13230040|376014|1800799024|366016|10070799003|11063799006|22082099003|8096899003|5023799004|4143699003|18002099003|56012099006|38070700021;
x-microsoft-antispam-message-info: UXKjKUwBkhwxKesjMKiBdrMO9oCNY166KQbhdVAfaUimFPE6srPjurD2So7pTiNM8tMnz57RmkpGu9MVfP20hwEsMcVLgsbVKsIxoYOucUDurf/kHWJyJzj5reexqth6vvpC67kXl2yzk73SooF6ixeqNiHtANG0Qp6XWZ4q6td////rZHt/vdGmDdQflW6A6IjoUCKUk2PJIpbzu4g9MpaMdX+kFQHQwR2KThQWkEfewkMdAyU8vCK0wKDcrY9etc96YJx8m3u5vwjuWaOzX6/q3uB6ZtJDJPZdeqZuZ7W+xDoR87tjBWJIEpYGWKlDzUbVazKbwy38bFHHFa+PTMyLUZ8opbJYBFWzynaRRhUzmPomJ4xeo2MehOdsmD9pf9Kbxz0kU40mRStvEsOD3mT0Q/D1CFP9Z4pAvtc41/sQoF70NM0lb0NQ2jBw/y9qy0utC084ArTRoxKEXzSkR7PJxhsajaxfs0BCwzMxJ1BmVJnD4BIQB5ABF517fSwqJyDMiHC51bDHhy2xUoT88fduOaOlbT6HLHfDMPOGIrfnMXb/R3n48Exy8y2y9zUy/SFSRwZo1vq5cXsXs+XDJQUcUpJ2iKn9MiPuExscggi6D4YUNLwvmm6AWjfO9OrQ/2hfZVj592IWZe0iVe4AiH9tRuj23oFIdxLokY19IcvOn3g9jWy3kzNLqRZEkqm2ncZNQ2N+b+IEylPQhP4xrcEG1gaLcE4LPGN9QvRTmDSA7Q6dOX5k1u+/bflH8W8T
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:GV1PR08MB7346.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(1800799024)(366016)(10070799003)(11063799006)(22082099003)(8096899003)(5023799004)(4143699003)(18002099003)(56012099006)(38070700021);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 420kfvf7huv5K9aBtBG7P7Gu3zJy3mGQK+Ev7lvnkW4R7n8/si4KEA61qnAC+072C69ol6pO+mnMvPSI96xJadvgFTIb/3xi0lcSu5YLan68ZFt1Mf+HMzAF8GhAn/yIyiHEO63wB5Se+KMx+9p4FEA6qdZ+lVjOzGpS/IWtkZdOy9hbqvHYlmEZiNECEk9QAs9NA+KElTlspCAVwEVuObho7HbchepJnZD51GYDZmuVKL11dFNy5II503Z7qr9BAaUy7KeJ+PZIq1e9DERCnPyTWy8DXYVgoGCAp+HvN/cjI4h+XZstC4r6ew86fFuJxhArv0rUmDGuEO3PArpAYMa8EYkZtMX79+i8qg0JUcMXcDsuvaBj7p51+lw8yjcG14Tf07BhuoAVu/6J002g7+tI9XL/GC+aJaLFcSLcopdVRl+4XD1YjwNy6uWRfP1H36+rqeXTecZgfYcdIIIPlTqFYcQPxJWTvx/1fe3PhA75fIk7nCArzJ7/8Icv2Z9FQiPxjZi+GdqG6NbhCrqR12NEpS91MJW2480WBiHMuBBg4Of949hSOIn4owSSn2vrspBWi5kJnEo/6Q7FkMXZFcC/XecOtEcy1IQwbMUUwgPVq/4HUvHBTdrhutyHYsve3zCdTwElk0SjNhtq/umEbsVJ0WzRTWBqsrxwxMr84b4tPP8x6SdvFZyetZ3yQLjPk1j9TKcLlQs/NGZLU5ihtPw1bh3Td9HFuck0jdkoyLx2RbW8vidbh9HQsAUC3pKbhlzieWIUpsN3q5BuuYN6mxkwHtip30cMVZFLpYH6hcshWa8G12YCa6zTG5VjnPnzl2HOa0U0ujkZYrtoWAXNmJ4Wy6XMGaQYH0wpqORJwru9zOSgicAnskor1vClsRg5F2D6lZhPN87BOkTW9Nc3mpq6oP1JIzhMLoWIo28hws+rdCKAp7v9TotrT3e4IsdJrZG7aQieAA7AS+CTob26lWDysOHLz+ii8LYmb7hjudm9QCZ71YLzYZveo6OFl2ecxPa1wVpfLpAb7PJ4pWJrfscWapR+q09klyjxQJ8h20YFyou36szWLrgAYbiuH0RAhfKOXPp51v+vb5W0S+V1bYuN2H04weVN4EHt1lbIASTd3oeimVZIrxxuCZfmGNpFiRT2vGkVSdUluIVH4OOkiwnARgceU+Hx+wuQ9ogDzGJPkDTI7uAAjOjLivmGs6Ib3jqbb566FSO4dI2bmnakGA8dwI1vLaMf267eBmufhi4uTVJWsZ/KsxzLRX1EFzsn/PtjRc2BfUK2Xuf5QEUxMXiywj59xPoD4zabTCQ1TCUT5t+3/Iunw74qUNMQ/dP9/Yh8rQ1tAkvA4p8GB9BF9FPsfji3Mbkc3Rt34rWambkCvpyeQ60GeaW0brTpYuWqlPTEHPZ2LKTEihRQeTex/6YgEclXvQhWpZd/AR29Bh04eORZa+g+wqqB5CeqtoG+5QvYON2+6Eb/hagiUwycgYhcx64LZXi7m/nHLUBVY1ZhUA1XL1TWtG+i8jDjbXAmeM0jtWKV2JwrSZAC9dbu28pyzdzylT11hY3pPzj4Ikcf/BSIFU6DNY2bn4xacm64AhVs4AZfLpt7lVwpuhdbLUXXhyAhTTZL2zzFqBqAqo5JqWi8c6S6Lc2rEQlEJRe3bbK9yl4DWrrQ6BNw2c/uMC6F+kv5c2XnDJ0fXHjguYtN1LEXto7nFWbroolntS9DV77vYg5kwW9i+kSCzdt1ds1PUkCQIfUus1rLlJGjrbdyiiivL+puI5aAUFKsygls
Content-Type: multipart/alternative; boundary="_000_GV1PR08MB7346FDA3FF48B817FB9FA15CD3092GV1PR08MB7346eurp_"
MIME-Version: 1.0
X-OriginatorOrg: allot.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: GV1PR08MB7346.eurprd08.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 872c0e06-79bb-465b-32a4-08debccc9bfc
X-MS-Exchange-CrossTenant-originalarrivaltime: 28 May 2026 15:20:10.9240 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 789e5ff8-0396-414e-803b-13a424e9f5d2
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: pgY7Tg9Wjft2DO6XOYQdshqNSj8FqggYKmVMoB9jKH1VD/2oCkNOKvKfdti+60bZlBjPYweUfkkqBpEbuFvRwA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9669
Message-ID-Hash: REZ3JUAUKY5TN22CJZIGMOC4B7EWFAM5
X-Message-ID-Hash: REZ3JUAUKY5TN22CJZIGMOC4B7EWFAM5
X-MailFrom: ystein@allot.com
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
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [TLS] Re: New Version Notification for draft-usama-tls-risks-of-mlkem-00.txt
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/5oVGZOQVCv3nYeFrLhbZWUu8_tA>
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>

After reading a bit more of your code, I think this clinches it :

reduc forall sk:kem_sk, r:bitstring;
  decap(sk, encap_ct(pk(sk), r)) = encap_ss(pk(sk), r).

As I said, I don’t know ProVerif syntax and am using copy-and-paste
(in particular, that semicolon mystifies me).

Y(J)S

From: Yaakov Stein <ystein=40allot.com@dmarc.ietf.org>
Sent: Thursday, May 28, 2026 5:06 PM
To: Muhammad Usama Sardar <muhammad_usama.sardar@tu-dresden.de>; TLS@ietf.org
Subject: [EXTERNAL] [TLS] Re: New Version Notification for draft-usama-tls-risks-of-mlkem-00.txt

Muhammad,

The fact that commutativity is blocking your formal correctness proof must be an artifact.
There are many commutative schemes that are not safe (how about adding two partial keys?),
and many non-commutative ones that are (as most informally believe for KEMs).

I am not a ProVerif expert, but I waded through your code,
and think I understand where the issue appears and what to do about it.

As I believe you said (but couldn’t find the email), the commutativity of DH is posited here
(and mentioning “commutativity” or “symmetry” in a comment would make it easier to find):
fun dh_ideal(element,bitstring):element.
equation forall x:bitstring, y:bitstring;
     dh_ideal(dh_ideal(G,x),y) =
     dh_ideal(dh_ideal(G,y),x).

Now, in
fun dh_exp(group,element,bitstring):element
reduc forall g:group, e:element, x:bitstring;
      dh_exp(WeakDH,e,x) = BadElement
otherwise forall g:group, e:element, x:bitstring;
      dh_exp(StrongDH,BadElement,x) = BadElement
otherwise forall g:group, e:element, x:bitstring;
      dh_exp(StrongDH,e,x) = dh_ideal(e,x).

when one side computes:
let gxy = e2b(dh_exp(g,gy,x))
while the other side does:
let gxy = e2b(dh_exp(g,gx,y))
they are provably equal.

So, you are not really using the fact that either side could have initiated the TLS
and we would get the same shared secret (which is not what happens in client-server usage anyway)
you are just relying on it to prove that the two sides end up with the SAME shared secret
in a single TLS session.

Now, KEMs do not build a shared secret from symmetric participation of two sides,
but they still end up with the two sides arriving at the same shared secret.
This arises from one side generating the secret (and thus knowing it)
and the other side decrypting a public key encrypted version (and thus also learning it).

So, you need to model decap(sk,ct) produces the same shared secret ss
and drop this in, instead of agreement from commutativity.

Something like (forgive my not being an expert in ProVerify syntax)
fun pk(kem_sk): kem_pk.

fun encap_ct(kem_pk, bitstring): kem_ct.
fun encap_ss(kem_pk, bitstring): kem_ss.

fun decap(kem_sk, kem_ct): kem_ss.

Now, the last thing I want is for this to produce the result that pure MLKEM is sufficient now.
The real missing element in your code is not the removing of the commutativity artifact,
but rather modeling different failure modes:

  1.  There is no CRQC, and neither ECC nor MLKEM are broken (hybrid and pure are proven safe)
  2.  There is no CRQC, but someone finds a classical break for MLKEM (in which case hybrids are OK but pure MLKEM is not)
  3.  There is a CRQC and thus ECC is broken, but MLKEM withstands all classical and quantum attacks (and pure MLKEM is proven correct),
  4.  There is a CRQC and thus ECC is broken, and someone finds a classical or quantum break for MLKEM (in which case we expect nothing to be safe)
(I left out some less likely cases such as ECC breaking classically and MLKEM not.)

I would appreciate hearing from you what you think about both points.

Y(J)S

This message is intended only for the designated recipient(s). It may contain confidential or proprietary information. If you are not the designated recipient, you may not review, copy or distribute this message. If you have mistakenly received this message, please notify the sender by a reply e-mail and delete this message. Thank you.
This message is intended only for the designated recipient(s). It may contain confidential or proprietary information. If you are not the designated recipient, you may not review, copy or distribute this message. If you have mistakenly received this message, please notify the sender by a reply e-mail and delete this message. Thank you.