(Testing for now for better visibility. Real or Semi-real bugs with fixes are already set to Resolved)
- Queries
- All Stories
- Search
- Advanced Search
- Transactions
- Transaction Logs
Advanced Search
Mon, Jan 5
Fri, Jan 2
The described attack is not easy to understand and as of today the
gpg.fail website seems to have the same content as the draft we
received on 2025-10-23. There it states:
Wed, Dec 31
Fixed in 2.5.16
Tue, Dec 30
Also fixed in the other active branches.
Mon, Dec 29
man gpg has a WARNING section right below the RETURN Value section. The 3rd paragraph gives hints on how to use gpg with scripts etc:
The int-truncation change breaks other things. I noticed this by chance in the interactive mode due to warning noticed. Before we ever do such things again we need to have regression tests for setting preferences. Or manually check everything. Need to do a 2.5.16 tomorrow :-(
Note using the output of --decrypt directly on the tty is a Bad Idea(tm). You won't cat arbitrary files to your tty for the same reason.
https://gnupg.org/blog/20251226-cleartext-signatures.html explains why we have cleartext signatures and how you properly use them. The suggestion of the reporters to remove them entirely is a no-go because there are too many systems (open source or in-house) which rely on that format. If properly used (i.e. using --output to get the signed text) there is no problem. Anyway the suggestion has always been to use detached signatures using two files or PGP/MIME).
Fri, Dec 26
We need to explain and debunk this attack after its publication,
Regarding the cleartext signature please see this piece: https://gnupg.org/blog/20251226-cleartext-signatures.html
Tue, Dec 16
This relates to T7917: Check for revocation of the ADSK's original subkey
The expected behavior is that only "Ted" (the key from where the ADSK originates) is listed, regardless of ADSKs, on every listing.
Because for regular keys there can only ever be one, "gpg -k" shows always only one key.
Subkeys which are ADSKs shall therefore never be listed with this command.
Tested with Gpg4win-5.0.0-beta446, identically to the procedure from the description:
Fri, Dec 12
Dec 10 2025
Dec 9 2025
Dec 3 2025
Still good for experiments.
That RFC is Experimental anyway
Still good for experiments.
Dec 2 2025
Dec 1 2025
Nov 27 2025
Here is my proposal:
Nov 23 2025
git checkout gnupg-2.5.14, reverted the commits 46f4cb66125ee34e87e592cc02d38daead3427af and 0cc7759ed5a3890b4e28563a6b5e97f3aa551530, recompiled, and the error message gpg: keydb_search_first failed: SQL error no longer appeared. Also, in /root/.gnupg/public-keys.d/, the two files pubring.db.lock and .#lk0x0000... are present.
Nov 21 2025
Note: Backup/Restore secret kyber keys looks good to me on gpg4win-5.0.0-beta413 @ win11 now.
Let me explain about the change rG57affc4e98ab.
Additionally, in the /root/.gnupg/public-keys.d/ directory, the two files .#lk0x00007fdcb40043b0.b02bef684bbe.5108 and pubring.db.lock are missing.
Nov 20 2025
gpg was compiled with the latest version of SQLite3 at the time as its own private library, without linking against the system's libsqlite3.so.
Can you please schek which Sqlite version you have installed? I have not seen this on my system.
keyboxd (GnuPG) 2.5.13
gpg -K
cat keyboxd.log
listening on socket '/root/.gnupg/S.keyboxd' keyboxd (GnuPG) 2.5.13 started handler 0x7f2eba314640 for fd 9 started connection from process 4361 (0:0) (SQL: PRAGMA foreign_keys = ON) (SQL: CREATE TABLE IF NOT EXISTS config (name TEXT NOT NULL UNIQUE,value TEXT NOT NULL )) database version: 1 database created: 2025-11-20 06:11:12 (SQL: CREATE TABLE IF NOT EXISTS pubkey (ubid BLOB NOT NULL PRIMARY KEY,type INTEGER NOT NULL,ephemeral INTEGER NOT NULL DEFAULT 0,revoked INTEGER NOT NULL DEFAULT 0,keyblob BLOB NOT NULL)) (SQL: CREATE TABLE IF NOT EXISTS fingerprint (fpr BLOB NOT NULL PRIMARY KEY,kid BLOB NOT NULL,keygrip BLOB NOT NULL,subkey INTEGER NOT NULL,ubid BLOB NOT NULL REFERENCES pubkey)) (SQL: CREATE INDEX IF NOT EXISTS fingerprintidx0 on fingerprint (ubid)) (SQL: CREATE INDEX IF NOT EXISTS fingerprintidx1 on fingerprint (fpr)) (SQL: CREATE INDEX IF NOT EXISTS fingerprintidx2 on fingerprint (keygrip)) (SQL: CREATE TABLE IF NOT EXISTS userid (uid TEXT NOT NULL,addrspec TEXT,type INTEGER NOT NULL,uidno INTEGER NOT NULL,ubid BLOB NOT NULL REFERENCES pubkey)) (SQL: CREATE INDEX IF NOT EXISTS userididx0 on userid (ubid)) (SQL: CREATE INDEX IF NOT EXISTS userididx1 on userid (uid)) (SQL: CREATE INDEX IF NOT EXISTS userididx3 on userid (addrspec)) (SQL: CREATE TABLE IF NOT EXISTS issuer (sn TEXT NOT NULL,dn TEXT NOT NULL,ubid BLOB NOT NULL REFERENCES pubkey)) (SQL: CREATE INDEX IF NOT EXISTS issueridx1 on issuer (dn)) database '/root/.gnupg/public-keys.d/pubring.db' created (SQL: SELECT ubid, type, ephemeral, revoked, keyblob FROM pubkey as p WHERE p.type = 1 ORDER by ubid) (SQL: SELECT ubid, type, ephemeral, revoked, keyblob FROM pubkey as p WHERE p.type = 1 ORDER by ubid) command 'NEXT' failed: Not found handler 0x7f2eba314640 for fd 9 terminated
Interesting. What SQlite version are you using? To see the exact reason and you have a copy of the old pubring.db, please add
Applied the change to master: rG57affc4e98ab: common,agent,dirmngr,kbx:w32: Synchronous spawning daemon process.
I applied a change with GPGRT_ATTR_NONSTRING to master, since 2.6 branch now requires newere gpgrt.
Fix is rGcad79e542d85: agent,common,dirmngr,tests: Silence warnings of a compiler.
t-stringhelp change was pushed by rG8a95e963d53a: common: Fix the test of t-stringhelp.
For int-truncation, I pushed the change rGbcd87ea2b2da: misc: Validate the value on the use of strtol.
Nov 19 2025
The problem is that a user may unintentionally use the suggested filename without checking that it does not harm to write to this file. It is better not to present a default name at all.