PGPony 4.0.0 — The OpenKeychain Succession
The biggest release yet: post-quantum encryption and an OpenPGP provider API that lets other Android apps use PGPony as their crypto engine.
🔮 Post-quantum encryption (ML-KEM-768 + X25519)
Generate, encrypt to, and decrypt with quantum-resistant composite keys, in both wire formats in use today:
- IETF format (algorithm 35, v6 keys) — implements draft-ietf-openpgp-pqc, verified byte-for-byte against the draft's official test vectors
- LibrePGP / GnuPG format (algorithm 8, v5 keys) — interoperates with GnuPG 2.5+: messages encrypt and decrypt in both directions, and public keys import cleanly (
ky768_cv25519)
Includes passphrase-protected composite keys (Argon2id + AEAD for v6, CFB for v5) and full cross-platform parity with PGPony for iOS — messages, public keys, and secret keys all transfer both ways.
Known limitations (ecosystem, not PGPony): GnuPG cannot yet import post-quantum private keys from any app (it stores them in a proprietary internal format), and current Sequoia (sq) preview builds implement a different draft revision and cannot read IETF-format keys yet — they fail on the draft's own sample key. Classical keys are unaffected.
🔌 OpenPGP API provider
PGPony now implements the org.openintents.openpgp.IOpenPgpService2 API — the same interface OpenKeychain provided — so it works as the crypto backend for Thunderbird for Android, K-9 Mail, and Password Store:
- Encrypt, decrypt, sign, and verify on behalf of connected apps, including streaming support for large attachments
- Hardware-key (NFC smartcard) signing and decryption inside provider operations
- Security first: no default-allow — every client app is authorized on first use with a signature-pinned allow-list, revocable in Settings → Connected apps
🗝️ Keyring & privacy
- Encrypted keyring backup and restore — one file for your whole keyring, plus import of OpenKeychain
.sec.pgpbackups - Default signing key — pin a signer so it's preselected on every Sign + Encrypt
- Orbot / Tor integration — route keyserver and WKD traffic through SOCKS with one tap
- Autocrypt support for peer key discovery
Under the hood
- Bouncy Castle 1.85; hand-rolled composite packet codecs validated against GnuPG 2.5.21, the draft-ietf-openpgp-pqc vectors, and PGPony iOS
- ~300 unit tests, including offline PQC interop fixtures and gated cross-tool harnesses
versionCode400 ·versionName4.0.0 · Android 8.0+ (API 26)
No migration needed — existing keys, contacts, and settings carry over unchanged.