[lamps] AD comments on draft-ietf-lamps-pq-composite-kem

Deb Cooley <debcooley1@gmail.com> Mon, 22 June 2026 12:06 UTC

Return-Path: <debcooley1@gmail.com>
X-Original-To: spasm@mail2.ietf.org
Delivered-To: spasm@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 563E01050C452 for <spasm@mail2.ietf.org>; Mon, 22 Jun 2026 05:06:01 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1782129961; bh=hd6LDPqeqngu7WyRCWDY8MC319a3sYcGzbKTnV/30d4=; h=From:Date:Subject:To:Cc; b=ERIeSWgT6FbqZdbGCS7dm3fEAKf7irRwk/Jxjs8Da2nx2XPmH/VIQyL2O9CPhAMxM 0diVcwNEK6Qz1GRpthGXyB60xyDRpiqN0ju/MeDGQ6HZwbSXyt8zogYme9aafIyznv SLau3XH8JOeyJ8Q46a9eE/tyo8swv2M5EYzc6Moo=
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -1.848
X-Spam-Level:
X-Spam-Status: No, score=-1.848 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, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=unavailable 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 0-_4UZvT0rqS for <spasm@mail2.ietf.org>; Mon, 22 Jun 2026 05:06:00 -0700 (PDT)
Received: from mail-dy1-x1335.google.com (mail-dy1-x1335.google.com [IPv6:2607:f8b0:4864:20::1335]) (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 CDAA21050C3C7 for <spasm@ietf.org>; Mon, 22 Jun 2026 05:05:30 -0700 (PDT)
Received: by mail-dy1-x1335.google.com with SMTP id 5a478bee46e88-3042a388168so3250754eec.1 for <spasm@ietf.org>; Mon, 22 Jun 2026 05:05:30 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; t=1782129924; cv=none; d=google.com; s=arc-20240605; b=C3T7j6qDgifnHgtTl54ZaZhkfbsF93MjTpzWFx2AcxgaF+9K4WdLpZGR2dUXDD/f29 ZhaEded6mqnDCa114dxVJOnIXk6y2TN8jPpOpXNHOyibn0kUSZRhwTYLTiFoZZsD0iPq XSLyWDAjwGQURh0H3MDRuCGwyyg5Yp9g+/MRMdnyYudftd7I4+WVS0I6uLiXBTjPLunq qPplJE0QLDV2j/eWadR7XbGmSEtB5X1egnZqcSl/Gj5XiRBgqObDjoq18ulZ071ovF51 6WQDdjDnfWZW2Wy2zFkBZ+J6PJ4vRtqcuVrUwHYz6MpwnSqgYhpcS0jtQG69JVOMhr+J ltmQ==
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:mime-version:dkim-signature; bh=8tlZqBA26FMi72nAyvzYqkFu5dtw181KkQNYQ5R0q/k=; fh=yRyynBR6OJe3jOziuGz7IqfXoyP6hGnA31oU5Sg496w=; b=N0DA0fiAutxrnOEzur81Tf3d3mGatUBJamRKDSJ2ahFboL1OXZXZkAVYctkCejOB9+ pZGwqjCP9kAPaBqSxTGq/qhH51c9QxA7uC5MpkbJGSDlwCjJiGBSGe4r4b265JkL1U7x kXPU+JrD/OHNv9wnoGWTZxqHh0vybMR1aV9NKq7w8EXlqNtADavB9g5M34sY7Pde21i3 E9C6OzlZRn4KBNnM8e2sOqpwvqGblF6gG4h7pHh+12aiIUG9G7qhWePf8M47JkCa5MDz 1y2eviin57tfKWBpVBFV3pjpX6IWmNwNV1LOu/0BwhOa0hXAmo32Mu0f4zRJwGpJAXmt Wk5g==; 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=20251104; t=1782129924; x=1782734724; darn=ietf.org; h=cc:to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=8tlZqBA26FMi72nAyvzYqkFu5dtw181KkQNYQ5R0q/k=; b=MVcqhCmiuSQdpZwkeL9Lu+8UqyvQqygVOmUTJq/meEIAgocKfpSdR/BUMBq1ypjPSL QBg3b4XYXzBCk0E6K4Q44VGBVI6WXfCXpN/QOEs++C6Ani31u7OFs0Y2Li8VXhCdMfyZ KNVV1xEh2fVlRPifTD7yAbE6X3gH6XyIM8zhf9XKfmDJ5aXud5XGoAp2nqDljNjljoF+ TsEWSrVTknA+uI//8z7qvB9H8A/SvYB3Jr72/PWK9W2kbXAwOLdanh79MtQcsDiQv8w3 S6fqlKs0PF3YQuMLxAW1XCA8MKuN9tf7A3kM+xRm34O2Wc9D59p8LI0OAqyToXEkCgOH T0ZA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782129924; x=1782734724; h=cc:to:subject:message-id:date:from:mime-version:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=8tlZqBA26FMi72nAyvzYqkFu5dtw181KkQNYQ5R0q/k=; b=fNjw9nvZpl1/DRDbY/7Lpf6cF0M2HXvKDVZWMWaZ5q7A+/z2leG9S6SJFU+fX5NJBq DYiERxEFeLow99J0WbvykP/VT/94Twds/fpMcn+4lvJfAl4P10BzsyQdmGqBNhPGnRUq NU7Oc4eDXk5cv0KNNXs7S72ZdDPy8eUtB5kNhX0wKMdwcKTRY6F9PzS5bgtrEhQN4rPW 7I6EuGzlPM+cjwxaa1z11KLhnSdiKUlP2vQQqhQ6dM6kMfTe49bDQqhHRMCl1urYG0YI 3+Iwu0iPtsEYS+1/frE8sHGkFUoMOc146zIPD1aP+KN9flFYU5YV12XdpK9vR+LAEkXE r7dw==
X-Forwarded-Encrypted: i=1; AHgh+Rr0cx/Yqy0SwQD4e6HyekDvR7zcesqbqjcrnTYaKQN3IycXLCD4jBXsiME/mT6t31DTz+IUJA==@ietf.org
X-Gm-Message-State: AOJu0YxXAl6vU1JmNdhedajcuevCFW5NkkjyW/1J182OHlQLAvQPkgH0 PCy6y5CH4XxWq9B4+AVxF2eN1kHZN6fudETDWasZdPEHYOjxhDKFQXbkZuGmSU0yrPQ3CHnX5EV HTDfC9FZhXuQsZrE4xKYdDMW1JsDpP243cV0=
X-Gm-Gg: AfdE7ckSpMTlAG/xLmgqLWtvOJroc99icGIOQkOqe6WUT1DeeJtcYr6a9u3dYqdQTQ+ KFQ9xv22ICqZ1pWhipVi2j+3MBCbJ4PsQAUP0xUv7hWK1EriBXfuEOfqkLJB5lk3DR2+UTe6HkT jbWWL6k4QS4FK4BElRG782TMKIzzKqpIzib7U0163b5mnRQg/MwfaIQFyofPSLWBxn54leXMZL9 pDryI0KO8D5YsNSswlPa+gXDgCw0Ber/I+FyRd3j3PmipI7W1/cDFkP7Md/GOi3uW0lX+NWnAMz DpxWSxN2Oouu1pTtLWPMPyk3qvgdX2FUmRByY+Qu9XCigaFxCkilmki7+FcQN4vt7SyjHBZlhb3 lJVPOwpPftJCrQrM=
X-Received: by 2002:a05:7301:4606:b0:307:91f5:9522 with SMTP id 5a478bee46e88-30c0784de34mr5188889eec.4.1782129923934; Mon, 22 Jun 2026 05:05:23 -0700 (PDT)
MIME-Version: 1.0
From: Deb Cooley <debcooley1@gmail.com>
Date: Mon, 22 Jun 2026 08:05:12 -0400
X-Gm-Features: AVVi8CehlD0KUlr_8Bgyw4cTr5UxKV6necJKA2mzB1aa__su1RM28eStlYqwugY
Message-ID: <CAGgd1OcY=ymUgz1FzheJki7XvJwGWpUAhFj5DXkAgKJ4FPeE1Q@mail.gmail.com>
To: draft-ietf-lamps-pq-composite-kem.authors@ietf.org
Content-Type: multipart/alternative; boundary="0000000000000f4e450654d6757d"
Message-ID-Hash: ATXCBERY435G7MQOPX7KR34FOGHSWILI
X-Message-ID-Hash: ATXCBERY435G7MQOPX7KR34FOGHSWILI
X-MailFrom: debcooley1@gmail.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-spasm.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: LAMPS Chairs <lamps-chairs@ietf.org>, LAMPS WG <spasm@ietf.org>
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [lamps] AD comments on draft-ietf-lamps-pq-composite-kem
List-Id: This is the mail list for the LAMPS Working Group <spasm.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/spasm/PzP1VjvupkY7FB0oL4SB4N24jQM>
List-Archive: <https://mailarchive.ietf.org/arch/browse/spasm>
List-Help: <mailto:spasm-request@ietf.org?subject=help>
List-Owner: <mailto:spasm-owner@ietf.org>
List-Post: <mailto:spasm@ietf.org>
List-Subscribe: <mailto:spasm-join@ietf.org>
List-Unsubscribe: <mailto:spasm-leave@ietf.org>

Thanks for the work on this draft.  Here are my comments.  If it makes
sense to chat about these, I'm available through 25 June or after 5 July.

Deb

--------------------------------------------
Section 1, para 1:  DH is mentioned in this paragraph (clearly it will
vulnerable), but it isn't used as a component of a composite algorithm
(good).  Can we add a tiny short parenthetical stating that?  Something
like (while Diffie-Hellman algorithms will be vulnerable, they are not use
in this specification as a component of a composite algorithm).  I'll take
shorter, if you can do it.  I'd also be happy to have this in section 2.2
where DHKEM is used, but means EC DH KEM.

Section 1, para 1 and 3:  Spell out RSA-OAEP and ECDH.  And if you ever use
DH, add '(DH)' to para 1.

Section 2, Decap:  'distinguished error value'?  What makes it
distinguished?  [apologies if this has been used in the past and I haven't
noticed it - in fact, if it has, tell me.]

Section 2.1, last para:  Largely rhetorical, but... If RSA OAEP has limited
deployment, then how does it satisfy paras 4&5 of Section 1?  If one were
making a change from PKCS1v1.5, why would one move to RSA OAEP vice one of
the ECDH options?  Of all the options to eliminate, this seems like the
obvious.  Now, if one suspects that an RSA-type scheme will 'stand longer',
that would change an enterprise's plans?  Like I said, this is largely
rhetorical, but if there is easy rationale at hand, maybe a word or two
might be useful.

Section 2.2, DH:  Maybe clarify that this is just ECDH.

Section 3.2 and 3.3, Label:  Can we be more explicit for 'see section on
KEM Combiner Labels below', like what section?  Maybe add a note below like
is done for the actual process?

Section 3.3, tradPK:  'see the Decapsulation Requires the Public Key
section' where?  In this specification?  Possibly ref Step 4, which has the
note already.

Section 3.5, para 1:  Dumb AD question:  If a mangled ciphertext going into
ML-KEM.Decaps() returns a pseudo-random shared secret, the result will be a
SS which doesn't match the other end, resulting in two different traffic
keys, resulting in encrypted traffic that won't decrypt correctly.  I'm
guessing that while the SS is wrong, it is at least random, leading to
proper strength encryption of traffic, even if that traffic won't decrypt.
Is that correct, or am I missing something with the concept of 'implicitly
rejecting'.

Section 3.5, para 2:  Can you check to be sure you have your Encap/Encaps,
Decap/Decaps all correct.  [BTW, I find it a tiny bit confusing to see a
one letter difference between this draft and FIPS 203.  I'm assuming there
has to be a good reason for that.]

Section 9, para 1:  Either phrase the ref to
draft-fluhrer-cfrg-ml-kem-security-considerations like RFC 9935 did, or
perhaps remove it altogether, since RFC 9935 does make the ref already.
 [because this is an individual draft, it has to be informational.]

Section 9.1, last sentence:  Make this more 'guidance', perhaps 'More
guidance on FIPS certification...'.  [because we cannot be authoritative
here.]

Section 9.2.1, para 2:  'FO transform'?  spell out FO the first time,
please.

Section 9.2.1, para 3:  Spell out acronyms on first use:  QSF framework?
LEAK-BIND-K, and PK-CT.

Section 9.2.1, last para:  As opposed to this draft that only binds the pk
and ct of the traditional algorithm?  Recognizing that the 'first KEM' is
ML-KEM...  Can we make this two sentences, and add a phrase that describes
what this draft proposes vs. the 'more cautious approach'?

Section 9.2.1 and 9.2.2: X-Wing and the other analysis papers need to be
normative.  This draft leans on that work to show they are secure (at least
in this way - sorry, retired security evaluator here). It should be fine
since they are published.

Section 9.3:  I did expect to see some words on the idea of 'reusing'
private keys for both the PQ and trad algorithms, or for using the same
hunks of random to generate both private keys.  Weirdly, I'm guessing that
XWING proposes this.  This, of course, is catastrophic when one algorithm
is compromised, as it leads immediately to both algorithms being
compromised.  What am I missing?

Section 9.3, para 2:  PKI quibble:  One does not normally change the key
when one renews a certificate.  Do you mean 'rekey a certificate'?  [yes,
this is picky]

Section 9.3, last para:  This is a CA requirement, buried in a
specification on 'how to use'.  Where else are CA requirements discussed?
Almost an update to RFC 3647...  I think at a minimum, it deserves its own
section head.  Opinions?

Section 10.1:  There is a lot here, which is not authoritative.  Do we
really need all of this?  I almost want the order of Section 10 modified to
put this last or make it an appendix.  Or put it last, and point to an
appendix...

Appendix D.1:  This is all about MLKEM and X25519, where does the
parenthetical '(for example, getting the RSA component from an existing
smartcard)' come into play?  To make it at all applicable, maybe you need
to make it a X25519 component stored on a smartcard?

Nits:
10.5:  s/expenent/exponent. s/particilar/particular, s/variation/variations?


>From idnits (just here for completeness - they have been addressed):
removed - claims that FIPS 204 is in the references but never referenced.
Seems odd...
corrected - the kyber certs draft has been published - RFC 9935
I didn't check -3 lines longer than 72 characters.

---------------------------------------------