Direct APK.

The same PGPony that ships to F-Droid — the reproducible, fully open-source build, signed with the same release key — as a plain APK you download straight from this site. No Google account, no store client, works on de-Googled devices and in regions where the stores are blocked.

PGPony 4.6.4 for Android Download APK · 10.3 MB
version 4.6.4 size 10.3 MB requires Android 8.0+ released 2026-10-06

Direct installs don't auto-update. Leave an email and each new release arrives with its notes, hash, and link.

PGP-encrypt my notifications (optional)

Paste your armored public key and every release notification arrives encrypted to it. Fitting, for a PGP app. The key is checked at signup — if nothing can be encrypted to it, you'll be told immediately rather than silently receiving nothing.

The confirmation email itself is sent in the clear, so its link stays one click. Encryption begins with the first real notification.

Double opt-in — nothing is active until you click the confirmation link. The address lives on this same self-hosted server, is used only for these notifications, is never shared, and no IP is stored with it. One-click unsubscribe in every email. Prefer no email at all? Watch the releases feed, or install from F-Droid for automatic updates with the same key.

What's new in 4.6.4.
# PGPony for Android 4.6.4 October 6, 2026 A small fixes release. Nitrokey 3 security keys now work over USB, and four smaller items planned for 4.7.0 ship early. 4.6.4 carries versionCode 464 and installs in place over 4.6.3, keeping your keys and settings. ## Nitrokey 3 over USB Plugging a Nitrokey 3 into the phone failed straight away with status 0x0A3F, a code no smart card ever sends. The cause was in how PGPony talks to a USB security key. The Nitrokey 3 sends any reply longer than one USB packet (64 bytes) in several parts, and waits for the phone to ask for each part after the first. PGPony read only the first part, treated it as the whole reply, and took its last two bytes as the card's status. Selecting the OpenPGP application fits in one packet, so that step worked and the next, longer read failed with a status taken from the middle of the data. PGPony now asks for every part and puts the reply back together before reading it. A key that never finishes its reply gets an error instead of hanging the app. The fix was confirmed on a Nitrokey 3 running firmware 1.9.1: reading the card, decrypting and signing all work over USB. YubiKeys and other cards that send each reply in one piece are unaffected. A note on NFC: the Nitrokey 3 does not offer OpenPGP over NFC. Nitrokey turned it off in firmware 1.5.0 because of the memory available during NFC operation, and it is still off in current firmware. Over NFC the key answers "application not found" (0x6A82), and other OpenPGP apps get the same answer. Use the Nitrokey 3 over USB. ## Days left in Recently Deleted (#58) Every key in Recently Deleted now shows how long it has before it is destroyed: "14 days left" right after you delete it, counting down to "Less than a day left" on its last day. The count rounds to the nearest day, so a key you just deleted shows the full 14 days the delete sheet promises. It is translated in all 11 languages, with the right plural forms for each. ## One PGPony entry in the share menu (#58) Sharing text used to show PGPony twice: the Quick Action, and a separate "Encrypt in PGPony" entry added in 4.5.1. Since 4.6.0 the Quick Action has its own Encrypt option, and "Sign, or encrypt and sign" opens the text on the Encrypt screen, which is all the old entry did. The duplicate is gone, so PGPony appears once. If the old entry still shows after updating, Android is showing a cached share target. It clears on its own, or after a restart. ## Key details - **User ID rows (#76):** Make Primary now comes after Revoke and Remove. It only shows on non-primary rows, so it used to push the other two sideways on some rows and not others. Revoke and Remove now sit in the same place on every row. - **Subkey Revoke instead (#36):** In the dialog for removing a subkey, "Revoke this subkey instead" was a small text button. It is now a full-width button with the same icon as "Revoke this key instead" on the key delete sheet, so the two read alike. ## Download - GitHub: [PGPony 4.6.4 release](https://github.com/norsehorse-dev/PGPonyAndroid/releases/tag/v4.6.4) - F-Droid: picks up 4.6.4 automatically from the tag and builds it independently. It usually appears within a few days. - Google Play: rolling out. ## Verify this build Whole-file SHA-256 of PGPony-4.6.4-foss.apk (is this download the published file): 3ae551b26577492d4b60fa8ded8d021d01c16957d19f2854f0790e500cd09547 Content hash (for rebuilders; excludes the signature): 16c8e9484c7e1b89c426839cce7213768a7c76a19f482cb8f6fa662b41004451 The APK is signed with the NorseHorse release key. - OpenPGP fingerprint: `A0CBC8F65AACE56F1C5B767753F9798E4919DE62` - APK signing certificate SHA-256: `446bf9e621222a40c66cd2476e1a97105ccb2a9b16a01a91c1c7eb90765b50dc` The GitHub release is immutable. It carries the APK, its detached signature, the armored release key and a signing-keys file with both values above. Check the fingerprint here, on keys.openpgp.org or on keys.pgpony.app rather than trusting the copy in the release alone. Two clean builds of the v4.6.4 tag produced the same content, and the signed APK matches that build exactly apart from its signature. Anyone can rebuild it from the tag and get the same content hash.

Android will warn you when installing an app from outside a store — that prompt is expected. It appears for every directly-downloaded APK, including this one, and is exactly why the verification steps below exist.

Verify before you install.

Every release is PGP-signed with the NorseHorse release key and published with its SHA-256. An APK from anywhere else claiming to be PGPony should fail these checks — that is the point of them.

Signing key fingerprint (the same key on the public key page):

A0CB C8F6 5AAC E56F 1C5B  7677 53F9 798E 4919 DE62

SHA-256 of PGPony-4.6.4.apk:

3ae551b26577492d4b60fa8ded8d021d01c16957d19f2854f0790e500cd09547

On a computer with GnuPG:

curl -O https://pgpony.app/downloads/PGPony-4.6.4.apk
curl -O https://pgpony.app/downloads/PGPony-4.6.4.apk.asc
curl -O https://pgpony.app/assets/pgp/norsehorse.asc
gpg --import norsehorse.asc
gpg --verify PGPony-4.6.4.apk.asc PGPony-4.6.4.apk
shasum -a 256 PGPony-4.6.4.apk

Good output says Good signature from the fingerprint above, and the hash matches the one on this page. On the phone itself, PGPony can verify the detached signature too — see the walkthrough.

APK signing certificate SHA-256 (matches the F-Droid build — check with apksigner verify --print-certs):

446bf9e621222a40c66cd2476e1a97105ccb2a9b16a01a91c1c7eb90765b50dc
Previous releases (18)
PGPony-4.6.3.apk · 4.6.3 · 2026-10-05
sha256 3af5ca347c5e53331ab84793bba98140673f00a7f1f772cb365c8001fbeaf208
PGPony-4.6.2.apk · 4.6.2 · 2026-09-28
sha256 856ab53741eac9154474a5e4ea8c728b82d4f4652d468f4ce5a083fc7b3cc743
PGPony-4.6.1.apk · 4.6.1 · 2026-09-26
sha256 681d13767d4ece6a79a5f2da095c2a3a1f5495ea0d8feb91737c6d89693ecbda
PGPony-4.6.0.apk · 4.6.0 · 2026-09-24
sha256 0995431de506531682a17e0e3e0c06cb5dc9c90b1656b4f946c3112d71675dbf
PGPony-4.5.3.apk · 4.5.3 · 2026-09-21
sha256 85381b486459b97db61898759e1e9e9b9e6f3e6faf7d2d8bb040480762db16a1
PGPony-4.5.2.apk · 4.5.2 · 2026-09-18
sha256 0dd192d4a8768da2cd84df8b61a408f9e3a090252bdcf60b781f40b39235b019
PGPony-4.5.1.apk · 4.5.1 · 2026-09-17
sha256 166df6e0cc5840b98cbdcea2b55343241a357ea86a47ca7a3159b4b42ecfb3e4
PGPony-4.5.0.apk · 4.5.0 · 2026-09-16
sha256 9842e68809d115bf15c7f1c9af67a0cdc941399c15ebc646175535fedbb3766e
PGPony-4.4.1.apk · 4.4.1 · 2026-09-01
sha256 55075c11f90833dae75b66162c0adcd636eec223a8fc98d2c22408209335e257
PGPony-4.4.0.apk · 4.4.0 · 2026-08-28
sha256 3c10b9ea225a748d87dacbf5a233e20bdf456b4cfc2313ba700e6e06e10ae411
PGPony-4.3.1.apk · 4.3.1 · 2026-08-21
sha256 f09e1577d5c20b0514980063d445d8d184ce26980dd59a3e60bf0647453175e5
PGPony-4.3.0.apk · 4.3.0 · 2026-08-20
sha256 6b534dc4f96fd014d8475e3a05543f30aca07c14358537494a2fc07dd73dd61f
PGPony-4.2.0.apk · 4.2.0 · 2026-08-14
sha256 59a0aa492982072d81c2ccd706d5d7096758c999a7ad065354e191b126563e2a
PGPony-4.1.1.apk · 4.1.1 · 2026-08-04
sha256 15e9d5052dfcbc8fd5ee6a59783f2f3e4b2c730822ac9553bdb596917a214bd3
PGPony-4.1.0.apk · 4.1.0 · 2026-08-01
sha256 2be8891833adba5d3698c3eab64607aa91cbcb43ed2aad3d1277717adaa66831
PGPony-4.0.4.apk · 4.0.4 · 2026-07-26
sha256 528f9b6a8b68f44651f811a3d8cfae8ffedbbec03f3c568e6ac84116db890b62
PGPony-4.0.0.apk · 4.0.0 · 2026-07-20
sha256 2a6d2d64b9fc191145ff8fcf0d489dfc11bac82768eb1823b237ca8724f885df
PGPony-3.1.0.apk · 3.1.0 · 2026-07-11
sha256 482edf9df3802740795de4b3b62a7cbab3bb8c74b2b0a996e1bef7c26a2042e6

Before you switch install sources.

  • Same key as F-Droid. This APK is signed with the same release key as the F-Droid build, so you can move between F-Droid and the direct APK freely — each will update over the other without uninstalling.
  • Different key than Google Play. Play re-signs apps with its own key, so Android will refuse to install this APK over a Play install (and vice versa). Switching requires an uninstall first.
  • No auto-updates. A directly-installed APK does not update itself. Watch the changelog for new releases, or install through F-Droid if you want automatic updates with the same signing key.
  • Reproducible build. The Android app is fully open source (PGPonyAndroid on GitHub) and builds reproducibly — you can compile it yourself and compare against this artifact.
Export your keys before uninstalling. If you are moving from a Google Play install to this APK, back up your keyring first — uninstalling deletes everything stored on the device, and PGPony keeps your keys nowhere else. The private-key backup guide covers it step by step.
Also served over Tor. This page and the APK itself are available on the PGPony onion service — the whole download can happen without ever touching the clearnet:
http://pgponyisur7gxcrfw5ofpjr2sepqul3zgbs66rrd3ughk5qvi4a3t5id.onion/apk
See mirrors for the verified onion and I2P addresses.