[openpgp] Re: WG: BSI view on KEM combiners

Falko Strenzke <falko.strenzke@mtg.de> Wed, 04 September 2024 10:09 UTC

Return-Path: <falko.strenzke@mtg.de>
X-Original-To: openpgp@ietfa.amsl.com
Delivered-To: openpgp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 464CAC14F61C; Wed, 4 Sep 2024 03:09:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.107
X-Spam-Level:
X-Spam-Status: No, score=-2.107 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, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=mtg.de
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id sgyuN16fqt7K; Wed, 4 Sep 2024 03:09:27 -0700 (PDT)
Received: from www.mtg.de (www.mtg.de [IPv6:2a02:b98:8:2::2]) (using TLSv1.3 with cipher TLS_CHACHA20_POLY1305_SHA256 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 39333C14F5F9; Wed, 4 Sep 2024 03:09:24 -0700 (PDT)
Received: from minka.mtg.de (minka [IPv6:2a02:b98:8:1:0:0:0:9]) by www.mtg.de (8.18.1/8.18.1) with ESMTPS id 484A9LCx029059 (version=TLSv1.3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256 verify=NOT); Wed, 4 Sep 2024 12:09:21 +0200
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=mtg.de; s=mail201801; t=1725444561; bh=AW558xeRynoxZ44uVh0Xoy83dGNsOHIoAEgXsSKwk/c=; h=Date:Subject:To:Cc:References:From:In-Reply-To; b=oHMM191okhKKWnb90spl/EJa/NFQR8F6DModxlYoOKICVf1ucqSfTTOqrcM+qLhq4 fOI+2qhaQ0Yb49mJgODGWCPP6Kg+vvHibylFRUIDjiv+TjyTEEWYewISu6tCgXtW9G lUjBeP3WN5kYPwu2mm24Dt3BSgGCRngkeHsXfXwxGicGLPwqh0t6z16Es1uNjmOJ5i soYEefz/N0b+3lmbXlisS0+mjJmmKhvS3ljNKaoEJhRN4DP8IfbDgoOWESFCYMFeJH 848/h4yHD1EuhFlwE7EzeujIbgoviIbfAgjrvQ7xETcSESdCYRsz4BS1E0zpu3NlQJ SEtnQtlMSmO/w==
Received: from [10.8.0.100] (vpn-10-8-0-100 [10.8.0.100]) by minka.mtg.de (8.18.1/8.18.1) with ESMTPS id 484A9KJ4011911 (version=TLSv1.3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256 verify=NOT); Wed, 4 Sep 2024 12:09:20 +0200
Message-ID: <8abbc4c2-3285-4a12-8ea9-b081cebb1e54@mtg.de>
Date: Wed, 04 Sep 2024 12:09:20 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
To: Daniel Huigens <d.huigens@protonmail.com>
References: <5681EF18-EB2C-49FD-A3B0-735C6542725D@amongbytes.com> <334c62d3389847e0b345269b54af639c@bsi.bund.de> <vD0ZBoCGhXaNfOahJkzFeuXbrf9UMnGrJ9SvapIzYNjqIRtNBkAJK-Mj0UWqsMj5gfuIxwtitmIOKJYpQx8lnAAlbYerdG_ZxxS0OAlBVhE=@protonmail.com> <845c1aeb783048a6a25329f3fe55f708@bsi.bund.de> <bW9aKCOk9HHb5xrHdoUlRC2aCpmZ6ZeReYYFFtf4P7TrbqN_q4Pnn-ibbWs9uehRzm6i_tverpxR0yxd3gxWhK8_w-s8lOx1I4B6Gf64Qyg=@protonmail.com> <df35291f726b48c8b37bec61bcdeb16a@bsi.bund.de> <uSMSFmH_6jyl4mrcWthHS1_eJjjo0FaROQU4BDyy3oRlH-l8qtjgoOO3KdbkvU4K0O7fdNaxAMuth8sAPtN2aOpi-bK_eVijo56xnPnnvcQ=@protonmail.com> <2940b781-52de-42c8-aef9-78d6cb970b08@mtg.de> <4LUdegqW5U4r-Y2qEU9l9ns8HQrhT-IM8F04GHYiiEdvaJlg_8YZwcdMZCN3IorYyAWUrKFJwEJR5BHVxdBe0mRC4BvWYop5yN3utWevzF8=@protonmail.com>
Content-Language: en-GB
From: Falko Strenzke <falko.strenzke@mtg.de>
Organization: MTG AG
In-Reply-To: <4LUdegqW5U4r-Y2qEU9l9ns8HQrhT-IM8F04GHYiiEdvaJlg_8YZwcdMZCN3IorYyAWUrKFJwEJR5BHVxdBe0mRC4BvWYop5yN3utWevzF8=@protonmail.com>
Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg="sha-512"; boundary="------------ms060406090209080104060400"
Message-ID-Hash: L33LDVCIMDOWHUPG7UPPNGB3EFK3VKSF
X-Message-ID-Hash: L33LDVCIMDOWHUPG7UPPNGB3EFK3VKSF
X-MailFrom: falko.strenzke@mtg.de
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-openpgp.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: "Ehlen, Stephan" <stephan.ehlen=40bsi.bund.de@dmarc.ietf.org>, "openpgp@ietf.org" <openpgp@ietf.org>
X-Mailman-Version: 3.3.9rc4
Precedence: list
Subject: [openpgp] Re: WG: BSI view on KEM combiners
List-Id: "Ongoing discussion of OpenPGP issues." <openpgp.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/openpgp/6zk1DaeiTLswa7uk57Jl6sIj9uc>
List-Archive: <https://mailarchive.ietf.org/arch/browse/openpgp>
List-Help: <mailto:openpgp-request@ietf.org?subject=help>
List-Owner: <mailto:openpgp-owner@ietf.org>
List-Post: <mailto:openpgp@ietf.org>
List-Subscribe: <mailto:openpgp-join@ietf.org>
List-Unsubscribe: <mailto:openpgp-leave@ietf.org>

Hi Daniel,

Am 04.09.24 um 10:53 schrieb Daniel Huigens:
> Hi Falko,
>
> Pedantically speaking, X25519 vs ECDH-brainpoolP256r1 is not just a 
> different parameter, it's a different algorithm. And in any case, CFRG 
> could definitely help with defining a combination of two KEMS (both 
> the KEM combiner and the specific component algorithms). For example, 
> draft-connolly-cfrg-xwing-kem 
> <https://www.ietf.org/archive/id/draft-connolly-cfrg-xwing-kem-04.html> proposes 
> one such combination that we could adopt wholesale in 
> draft-ietf-openpgp-pqc (though that's a separate discussion).
>
What I don't see is what is specific to Brainpool parameters here. 
Everything you suggest regarding CFRG defining a combination of two KEMs 
that we adopt equally applies to the combination of ML-KEM+X25519 (and 
also ML-KEM+NIST-P-...). Otherwise please clarify where you see the 
difference. So how should we understand your standpoint – do you also 
suggest to first ask CFRG to standardize ML-KEM+X25519 (and +X448) 
before we can finalize it in draft-ietf-openpgp-pqc, at the risk of 
delaying the – in my view overdue – introduction of PQ/T encryption in 
OpenPGP?

Are you suggesting that we now adopt draft-connolly-cfrg-xwing-kem, an 
individual draft? Adopting any construction that is not finalized as an 
RFC or at least very close to finalization in my view is not a good 
idea. This is why I am looking forward to the publication of [1] and 
(also any concrete output from CFRG of course, it's just that that 
doesn't seem to be at hand right now).

> Then, if CFRG also defines a combination of ML-KEM+Brainpool, perhaps 
> we could simply add a registration to the public-key algorithms 
> registry, with a reference to the CFRG spec, without needing any 
> separate spec in the OpenPGP WG?
>
I don't think that CFRG will write a spec that defines how an algorithm 
is used in OpenPGP. Key, signature and ciphertext formats still have to 
be formally defined. Or can you point to any precedent case, where 
something similar has been done? I want to point out that RFC 6637 
<https://www.rfc-editor.org/rfc/rfc6637.html>, which introduced ECC into 
OpenPGP, has 14 pages, even though it did not all introduce any new 
algorithms.

But you are certainly right that we wouldn't necessarily need an RFC. 
The introduction of new algorithms can in principle be done based on an 
external specification ("specification required" for registering new 
algorithm IDs).

>> What exact question do you suggest should be asked to CFRG? What 
>> aspect to you expect to be clarified or resolved through that?
>>
> I didn't mean to propose to ask them a question per se, but rather to 
> inform them of the position of the BSI (given that it might have 
> implications for the use of cryptography in all IETF protocols), and 
> then (if they agree it's a valid concern that should be addressed in 
> the CFRG) propose to standardize a combination of ML-KEM+Brainpool 
> (for example), that could then be used in OpenPGP.
>
> This way, we have a higher chance of achieving some consistency 
> between the algorithms used across IETF protocols.
>
I appreciate your intention to achieve more alignment across working 
groups. As I wrote above, I don't see why this should be limited to 
Brainpool parameters. I asked you above whether you suggest this in 
generality for our efforts to standardize PQ/T KEMs. If not, I would be 
happy to understand the reason.

In any case, as stated above, we are happy to check if we can align the 
OpenPGP KEM more with LAMPS based on [1] – but certainly not just for 
the combinations with Brainpool parameters.

By the way, check out the current specification of composite KEM in 
LAMPS 
<https://www.ietf.org/archive/id/draft-ietf-lamps-pq-composite-kem-04.html>. 
They currently define their own combiner 
<https://www.ietf.org/archive/id/draft-ietf-lamps-pq-composite-kem-04.html#section-2.3.4> 
and a pretty rich set of PQ/T combinations 
<https://www.ietf.org/archive/id/draft-ietf-lamps-pq-composite-kem-04.html#section-5-4> 
(compared to OpenPGP):

- MLKEM512-ECDH-brainpoolP256r1
- MLKEM768-ECDH-brainpoolP256r1
- MLKEM1024-ECDH-brainpoolP384r1
- MLKEM512-ECDH-P256
- MLKEM768-ECDH-P256
- MLKEM1024-ECDH-P384

This shows that what we are doing in draft-ietf-openpgp-pqc or proposing 
in draft-ehlen-openpgp-nist-bp-comp is not an outlier, it is how other 
working groups (at least LAMPS) also proceed.

They propose even one more code point than we have in our proposal. If 
anything, this shows that they are already taking the requirement to 
account for NIST and BSI compliance seriously. The same applies to their 
choice of composite signature combinations 
<https://www.ietf.org/archive/id/draft-ietf-lamps-pq-composite-sigs-02.html>. 
To me this clearly points us to also consider at least a similar set of 
code points in OpenPGP.

Best regards,
Falko

> Best,
> Daniel
>
[1] National Institute of Standards and Technology (2024) 
Recommendations for key-
encapsulation mechanisms, (National Institute of Standards and 
Technology, Gaithers-
burg, MD), NIST Special Publication (SP) 800-227. [Forthcoming; will be 
available at
https://csrc.nist.gov/publications]
-- 

*MTG AG*
Dr. Falko Strenzke

Phone: +49 6151 8000 24
E-Mail: falko.strenzke@mtg.de
Web: mtg.de <https://www.mtg.de>

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

MTG AG - Dolivostr. 11 - 64293 Darmstadt, Germany
Commercial register: HRB 8901
Register Court: Amtsgericht Darmstadt
Management Board: Jürgen Ruf (CEO), Tamer Kemeröz
Chairman of the Supervisory Board: Dr. Thomas Milde

This email may contain confidential and/or privileged information. If 
you are not the correct recipient or have received this email in error,
please inform the sender immediately and delete this email.Unauthorised 
copying or distribution of this email is not permitted.

Data protection information: Privacy policy 
<https://www.mtg.de/en/privacy-policy>