Multiple issues in GPG documentation

Robert J. Hansen rjh at sixdemonbag.org
Sun Sep 14 04:55:18 CEST 2025


> Number 1 is a bad idea. Some services still support legacy ciphers for
> backwards comparability.

I disagree; I think #1 is essential. If I don't know what cipher suites 
the recipient supports, I have no way of knowing whether secure 
communications are even possible. Knowing what the recipient supports is 
essential -- as is keeping one's own set of supported ciphers to a 
known-strong set. The intersection of "what am I willing to use?" and 
"what does the recipient support?" results in a set of mutually 
agreeable ciphers, of which any one may be chosen.

(This has an analogue in the algorithmic analysis and design community, 
where it's called the Stable Marriage Problem. GnuPG's algorithm for 
choosing which cipher to use is straight out of the weighted-preference 
SMP. https://en.wikipedia.org/wiki/Stable_matching_problem

The stable marriage problem is a variant of the stable matching problem. 
And yes, I'm right about it being an instance of stable marriage, and 
that stable matching is the wrong way to think about it. And no, here is 
the wrong place to argue with me on it, because (a) you'll be wrong and 
(b) you'll be off-topic. Discussion about how GnuPG implements the SMP 
is quite okay, though!)

> I think that is a bit technical for an FAQ. Quantum computing is still
> an active field of research, and it will likely be quite some time
> before current algorithms are broken.

If ever.

While in graduate school I did a fair bit of research into quantum 
computing. I'm in no way still current on the state of quantum 
engineering -- that's improved by leaps and bounds since I last looked 
at it -- but the limitations of quantum mathematics are a little more 
solid in their foundations.

Breaking RSA by brute force requires what, 5n logical qubits for each 
bit of the modulus? Something like that. So breaking RSA-2048 with a 
quantum computer requires a minimum 10kqb ensemble. (*Minimum*. A 
logical qubit normally requires many more qubits for error correction. A 
10n or 15n parameter is not unreasonable.) Our current ensembles are a 
minute fraction of that. Nobody knows how to scale it up.

As of ... what, two years ago, I think ... Arqit Networks, a UK-based 
quantum cryptography firm, told me they expected RSA-2048 to be 
susceptible to Shor's algorithm within five years. I pointed out this 
would require doubling the current state-of-the-art in ensemble size 
every 78 days for five years straight. In the time since, I don't think 
the ensemble size has doubled more than once.

RSA-2048 is under much greater risk from cloud computing and the general 
number field sieve than it is from quantum computing.

(Friends don't let friends generate new RSA-2048 keys, incidentally. I'm 
not kidding about the cloud and GNFS risks.)

For symmetric computing it's just as ridiculous. Grover's algorithm lets 
you search a database of N entries in root-N time. This means a 128-bit 
cipher with 2**128 possible keys can be brute-forced in 2**64 time. 
Assuming you've got the science fiction technology needed to implement 
Grover's, okay, 128-bit ciphers might be breakable.

So what? This is why we use 256-bit ciphers like AES, Camellia, and 
Twofish. Yes, Grover's reduces the effective keyspace to 'merely' 
2**128. That's still a completely impractical amount of computation: 
brute-forcing that would require (*require*: we can prove this using 
thermodynamics) you to liberate more heat than a nuclear bomb. This 
would have dire implications for your data center, so no, we're not 
particularly worried about quantum algorithms attacking modern 256-bit 
ciphers.

> The worry about quantum computers is because of their theoretical
> ability to efficiently perform integer factorization and solve the
> discrete logarithm problem [4].

If anyone is wondering how they can tackle two different kinds of 
cryptographic problems simultaneously --

They're not really all that different. They're both instances of the 
hidden subgroup problem as applied to finite Abelian groups. You can 
convert one into the other in polynomial time.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature.asc
Type: application/pgp-signature
Size: 236 bytes
Desc: OpenPGP digital signature
URL: <https://lists.gnupg.org/pipermail/gnupg-users/attachments/20250913/32c7b00f/attachment.sig>


More information about the Gnupg-users mailing list