Post-quantum defaults

Andrew Gallagher andrewg at andrewg.com
Mon Apr 27 17:21:03 CEST 2026


On 27/04/2026 11:26, Werner Koch wrote:
 >
 > The MTG and BSI folks eventually came up
 > with a draft and - according to personal communication - on suggestion
 > from certain attendees at an IETF meeting

Which particular attendees? You keep blaming things on unnamed people. 
Maybe you think it's impolite to name names, but it reads like a 
conspiracy theory. I've been at most of the meetings you mention, and 
they're not as sinister as you make out.

The IETF WG is mostly a bunch of goofy nerds. I count many of them as 
personal friends. They're trying to do the right thing, in the face of 
the inevitable disagreements and technical challenges and 
backwards-compatibility nightmares. We don't get everything right, and 
that's OK. That's why we rely on each other to point out blatant 
mistakes and missed opportunities, and the ways we can all do better 
next time. It's difficult, but it's healthy. Nobody can be expected to 
do critical infosec work by themselves. We need each other, and mostly 
we enjoy it.

(It might not seem that way on the mailing list sometimes, but family 
arguments aren't the end of the world!)

 > to change from the usual PGP
 > way to the uncommon thing of assigning a public key algorithm id to
 > each combination of algorithms and parameters.

The rough consensus in the WG during the drafting of RFC9580 was that 
parameterised algorithm code points cause more problems than they solve. 
The new algorithms in RFC9580 (but not the existing ones!) follow this 
convention, so it makes sense for the PQC draft to do the same.

Most implementers agree that the new convention is cleaner. However, 
this point is obviously not crucial for any security properties. It's 
surely not necessary for GnuPG to diverge from how the rest of the 
OpenPGP ecosystem represents PQC keys on the wire, which is largely a 
minor matter of taste.

Is this the hill that you're willing to die on? A numbering convention? 
*Really*?

 > The WG later changed more
 > things which I did not follow in particular because the important
 > Brainpool support was also removed by them.

There was some initial disagreement about how many curves in total to 
specify, so the document was split to avoid getting bogged down. The 
first document specifies curves 25519 and 448, and the second document 
specifies the NIST and Brainpool curves:

* https://datatracker.ietf.org/doc/html/draft-ietf-openpgp-pqc
* https://datatracker.ietf.org/doc/html/draft-ietf-openpgp-nist-bp-comp

Brainpool support was always a goal of the process. Remember, the BSI 
are co-authors of both documents. There was surely no need to fork the 
PQC draft in order to satisfy the additional curve requirements of your 
client (i.e. the BSI)?

 > I later had a meeting at the BSI (iirc, due the projects goal of
 > implementing the algorithms in Libgcrypt).  It was important to them
 > that their key combiner needs to be used.

It is also important to remember that BSI have agreed to the updated KEM 
combiner from draft-ietf-openpgp-pqc, so there is no reason for GnuPG 
not to implement it. I find it totally bizarre that you are using a 
private meeting with the BSI as an argument *against* implementing a 
BSI-instigated and BSI-approved specification.

 > And that is what Niibe-san
 > and me implemented in GnuPG and later specified in LibrePGP.

I can never tell whether your recurring name-dropping of Niibe-san in 
these arguments is meant to credit him for his achievements, or use him 
as a scapegoat.

I have not forgotten how you let him put his name to RFC9580 and then 
threw him under the bus by condemning the results of his work, after you 
had quit the design team in a huff because you could no longer work with 
the WG. It is none of my business whether you have ever apologised to 
him in private, but your lack of public remorse has not helped the PGP 
ecosystem shed its toxic public image.

We need to foster a more inviting community, or it will die with us.

 > The changes affected only protocol format details and not the actual
 > crypto.

I agree the security properties are the same. I just feel it is a 
disastrous situation to specify two almost-identical KEM combiners for 
two almost-identical protocols, simply because communication channels 
have broken down.

You don't engage with other implementers, you miss meetings, you rely on 
second-hand information, you implement and ship outdated specs, and then 
you throw shade at everyone else for making decisions that you don't 
agree with. Decisions that, when viewed from outside this little bubble, 
*don't matter*. But this tinpot disagreement is escalating to the point 
where end users are abandoning the PGP ecosystem entirely. Is that the 
outcome we want?

Please, for the love of all that is good and beautiful in the world, can 
we work together to implement algorithm 35 from draft-ietf-openpgp-pqc 
in GnuPG, so that we can at least have one point of commonality between 
PQC implementations? *I will help you*. I will work for free. I just 
want this to be over.

A


More information about the Gnupg-users mailing list