[CFRG] Re: RG Last Call on draft-irtf-cfrg-hybrid-kems-12 and draft-irtf-cfrg-concrete-hybrid-kems-04

"D. J. Bernstein" <djb@cr.yp.to> Sat, 11 July 2026 05:44 UTC

Return-Path: <djb-dsn2-1406711340.7506@cr.yp.to>
X-Original-To: cfrg@mail2.ietf.org
Delivered-To: cfrg@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 7AC7E114EFA41 for <cfrg@mail2.ietf.org>; Fri, 10 Jul 2026 22:44:25 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1783748665; bh=roxk/VmmRxBRlGSQ1b/Em0fkmepioWKZ8jkerWO5d/8=; h=Date:From:To:Subject:In-Reply-To; b=avHhnBaCAKPBQoifXL+sZHgkMLEo6FE9m8TJD8MvQP2WQGfYVIptX6W7NUWRD8UyD 3CQqdwz2n3hARGfrIU2HV+aee6fDkk4ALJ01OQab1yAv36TFMMrSMcTD+oaWMxKYXW 7wc1pHOgSLjifdCGhgfpUEjvGvaCGM4U+rTcp/KE=
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -4.197
X-Spam-Level:
X-Spam-Status: No, score=-4.197 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, 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, UNPARSEABLE_RELAY=0.001] autolearn=ham autolearn_force=no
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 R_G7RJ8dk_ox for <cfrg@mail2.ietf.org>; Fri, 10 Jul 2026 22:44:24 -0700 (PDT)
Received: from salsa.cs.uic.edu (salsa.cs.uic.edu [131.193.32.108]) by mail2.ietf.org (Postfix) with SMTP id C0B80114EFA39 for <cfrg@irtf.org>; Fri, 10 Jul 2026 22:44:24 -0700 (PDT)
Received: (qmail 2361855 invoked by uid 1010); 11 Jul 2026 05:44:24 -0000
Received: from unknown (unknown) by unknown with QMTP; 11 Jul 2026 05:44:24 -0000
Received: (qmail 548137 invoked by uid 1000); 11 Jul 2026 05:44:19 -0000
Date: Sat, 11 Jul 2026 05:44:19 -0000
Message-ID: <20260711054419.548135.qmail@cr.yp.to>
From: "D. J. Bernstein" <djb@cr.yp.to>
To: cfrg@irtf.org
Mail-Followup-To: cfrg@irtf.org
In-Reply-To: <CAL02cgRk6JB-e6yTQnrEQGvEZ7uGpcd-0Eg=s__BCB+DNUdpew@mail.gmail.com>
Message-ID-Hash: FMB7Z3AW3ZSAVAIWMRCB2SHKI3TBCH5U
X-Message-ID-Hash: FMB7Z3AW3ZSAVAIWMRCB2SHKI3TBCH5U
X-MailFrom: djb-dsn2-1406711340.7506@cr.yp.to
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-cfrg.irtf.org-0; header-match-cfrg.irtf.org-1; 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: [CFRG] Re: RG Last Call on draft-irtf-cfrg-hybrid-kems-12 and draft-irtf-cfrg-concrete-hybrid-kems-04
List-Id: Crypto Forum Research Group <cfrg.irtf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/cfrg/Ou9ysEdYCQhvEH8cgIxNcxNyU-s>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cfrg>
List-Help: <mailto:cfrg-request@irtf.org?subject=help>
List-Owner: <mailto:cfrg-owner@irtf.org>
List-Post: <mailto:cfrg@irtf.org>
List-Subscribe: <mailto:cfrg-join@irtf.org>
List-Unsubscribe: <mailto:cfrg-leave@irtf.org>

Richard Barnes writes:
> The specific question of "should we have both C2PRI-reliant and
> non-C2PRI-reliant combiners" was posed to the RG at IETF 123

That falls very far short of having a consensus call on list, never mind
the point that last call can review everything.

> If you think there is specific new information that the RG should
> consider, please present that information in some manner more concrete
> than "the CVEs we've seen this year".

I wrote "the CVEs we've seen this year for post-quantum software
obliterate the notion that adding options is safe". Normal readers would
try searching CVEs for "post-quantum" and "ML-KEM" and so on, and would
easily find endless examples of the damage done by unnecessary code
complexity, such as CVE-2026-10097 and CVE-2026-46590. Neither of these
is a subtle bug: the first _would have_ been caught by simple tests that
are in some (but of course nowhere near all) test frameworks, and the
second _would have_ been caught by simple (but again nowhere near
universal) type discipline. Neither of them _was_ caught before release.

> And please explain how that information bears on
> the specific question of whether implementers will make bad choices
> about which algorithms to combine, ignoring clear advice in the
> relevant specification.

We're being flooded with examples of vulnerability announcements
stemming from simple programming mistakes in recent code, and you're
expecting every implementor to read a spec carefully enough to see and
understand a warning about "C2PRI"? C'mon, that's not realistic. (See
also the notes in my previous message regarding reading comprehension.)

The spec warning might _occasionally_ stop the problem, but its main
function is an excuse for shifting blame. I would rather work on
removing unnecessary traps for implementors---starting with asking
which options have a real justification.

> 2. "IETF participants use their best engineering judgment to find the best
> solution for the whole Internet"
> This doesn't mean there's one uniform solution that works for the
> whole Internet.

As I said before, specifically regarding combiners: "a few extra lines
of code produce a unified combiner that, with negligible cost beyond
concatenation, handles every application handled by these specs".

If your "works for the whole Internet" comment is meant to say that, no,
a unified combiner _wouldn't_ work for the whole Internet, then where's
the evidence for that?

> (Also, this is the IRTF, not the IETF.)

I took the "IETF participants use their best engineering judgment to
find the best solution for the whole Internet, not just the best
solution for any particular network, technology, vendor, or user" quote
from

    https://web.archive.org/web/20250528213926/https://www.ietf.org/blog/ietf-llc-statement-competition-law-issues/

which is a page arguing that the corporate collusion in IETF falls
within the standardization exception to antitrust law. Surely "IETF"
there is meant in the broader includes-IRTF sense (as in statements that
IRTF is the "research arm" of IETF) so as to also protect the collusion
that occurs within IRTF, rather than in the narrower excludes-IRTF sense.

> No cryptographic algorithm can prevent all software bugs.

The point is to _manage risks_. Head-to-head comparisons such as
https://blog.cr.yp.to/20191024-eddsa.html show that X25519 and Ed25519
software are less likely to have security problems in the real world
than ECDH P-256 and ECDSA P-256 software respectively. The reasons for
this are also well understood.

---D. J. Bernstein


===== NOTICES =====

IETF BCP 78, "Rights Contributors Provide to the IETF Trust", Section 5
(normative), "Rights in Contributions", provides a modification right
"unless explicitly disallowed in the notices contained in a Contribution
(in the form specified by the Legend Instructions)".

The official language from IETF's "Legend Instructions" for the
situation that "the Contributor does not wish to allow modifications nor
to allow publication as an RFC" is as follows: "This document may not be
modified, and derivative works of it may not be created, and it may not
be published except as an Internet-Draft."
<https://trustee.ietf.org/wp-content/uploads/Corrected-TLP-5.0-legal-provsions.pdf>

The same language is used in, e.g., RFC 5831. The same language hereby
applies to this document. This is not disclaiming or limiting the
applicability of IETF policies; it is strictly following IETF policies.

IESG claims that the "explicitly disallowed" provision in BCP 78 is
limited to the examples in Section 3 in BCP 78. That is incorrect. BCP
78 states that Section 5, "Rights in Contributions", is normative, while
Section 3, "Exposition of Why These Procedures Are the Way They Are", is
informative. The opt-out provision in the normative text is clear, and
cannot be limited by an informative section. BCP 78 does not give IESG
any authority to issue changes or purported clarifications of the rules.

Rationale for exercising the BCP 78 opt-out provision: I'm fine with
redistribution of copies of this document. The issue is instead with
modification, such as (1) IESG's May 2025 posting of an IESG-mangled
version of an appeal that I had filed and (2) IETF management selling
IETF mailing-list text to AI companies. This goes far beyond what
copyright law allows as fair use (such as giving quotes for purposes of
commentary). When I complained about the mangled document, the IETF
Executive Director responded not by apologizing but instead by asserting
that IETF management had the power to do whatever it wanted.