Thu, Mar 19
Setting to low because this has never been a problem in the last 30 or 35 years. A check to help pinpointing bad keys is however a good idea.
Wed, Mar 18
I sent a patch to gcrypt-devel mailing list for the preparation of the change of RSA secret key checking.
If enabled, wrong RSA secret key (wrong means: under the Libre/OpenPGP specification) is rejected at import when gpg-agent calls gcry_pk_test_key.
Tue, Mar 17
BTW, LibrePGP also demands p < q in "Algorithm-Specific Part for RSA Keys".
For OpenSSH, ssh-agent spec. defines p, q, and qInv.
FIPS has: FIPS 186-5 and SP 800-56Br2.
existing standards
Mon, Mar 16
CRT is used with GnuPG. In libgcrypt, pk_sign and pk_decrypt don't require P, Q, and U in a key (it's optional), but pk_test_key does.
Fri, Mar 13
Du we have any information on whether the CRT is used and whether u et al. is also wrong? For example due to an OpenSSL generated key?
Mon, Mar 2
The reporter informed:
CVE-2025-69913
Mon, Feb 23
Sat, Feb 21
Fixed in 1.12.1.
Feb 20 2026
Feb 19 2026
Fixed in 1.12.0.
Feb 15 2026
FWIW: Okay, gmime is still a wrapper around gpgme. After decryption it has the ability to get the used session key from the gpgme result structure. Thus, I have been on the wrong trail. The actual problem is not gpgme but more GnuPG's use of Libgcrypt or an actual regression in Libgcrypt. Well, Friday 13th.
Feb 14 2026
Any hints where to find the actual crypto code which uses libgcrypt?
Feb 13 2026
Maintainer of the FreeBSD notmuch port/package here. The steps below consistently trigger the problem on FreeBSD 16.0 (unreleased main branch), but there are no problems on FreeBSD 15.0. All my testing was on amd64.
Any hints where to find the actual crypto code which uses libgcrypt?
@thesamesam Thanks a lot.
I managed to replicate the failure somehow (for me, it fails at the importing the key).
I've attached notmuch-bug.log with debug-level guru commented out for gpg-agent:
.I can reproduce it using Stuart's script from https://lists.gnupg.org/pipermail/gcrypt-devel/2026-February/006031.html.
$ uname -a Linux mop 6.18.10 #1 SMP PREEMPT_DYNAMIC Wed Feb 11 21:14:57 GMT 2026 x86_64 AMD Ryzen 9 3950X 16-Core Processor AuthenticAMD GNU/Linux
Please tell us the information of your environment.
What the versions of gpg and gpg-agent?
We have seen the same thing on amd64 (x86_64) linux: https://bugs.gentoo.org/969501
Feb 11 2026
No, OpenBSD's implementation of POSIX semaphore is different to NetBSD.
(It doesn't support PSHARED=1.)
Possibly, it is related to the NetBSD failure of T8065.
If importing the secret key fails (which invokes gpg-agent), decryption cannot be succeeded.
I will check OpenBSD implementation of POSIX semaphore, if it's similar to NetBSD one.
Feb 10 2026
According to the ML @gniibe tried to replicate the problem without success.
Feb 9 2026
Feb 3 2026
Will go into 1.12.1
Thanks. Will go int the next version.
Feb 2 2026
Thank you, that did indeed fix the problem!
Feb 1 2026
Does following patch help?
