cipherkeys

android keyboard with PGP encryption

git clone https://git.smesh.lol/cipherkeys.git

CipherKeys

Android keyboard with PGP encryption.

After installing, enable in Settings > System > Keyboard > On-screen keyboard > CipherKeys.

Latest release: cipherkeys 00035

Features

  • Full QWERTY keyboard with dark/light theme support
  • PGP encryption and decryption directly from the keyboard
  • Key generation (Ed25519/Curve25519 and RSA-4096)
  • Recipient management with import/export
  • Passphrase caching (cleared on device lock)
  • Inline compose panel with blinking cursor, tap-to-position, and auto-scroll
  • Encrypt-and-send via long-press on enter key
  • Long-press number keys on top row
  • Haptic and sound feedback on key press (configurable)
  • Key press popover showing pressed character above the key
  • Shift lock and symbol lock (double-tap or long-press, configurable)
  • Auto-capitalize after sentence-ending punctuation
  • Configurable key height, key background shading
  • Cleartext PGP sign with optional message expiration
  • Encrypt-to-self option (auto-add your key to all encryptions)
  • Inline recipient picker when encrypting without recipients selected
  • Send and long-press Enter encrypt-and-send to app input
  • Signature verification on paste with valid/invalid/expired banners
  • Passphrase input auto-resets keyboard to lowercase
  • Backspace repeat on long-press
  • Physical keyboard support: panel accepts external keyboard input, Ctrl+Enter submits
  • Numeric keypad layer via long-press ?123, auto-selected for numeric fields
  • Email fields swap comma for @ key
  • Encrypted configuration backup & restore (keys, recipients, settings)
  • Recipient picker with recent-first ordering and always-ask option
  • Skips re-encrypting already-encrypted messages
  • Interactive help system

Releases

VersionDateDownload
v1.0.02026-07-25APK
v1.0.12026-07-26APK
v1.0.22026-07-26APK
v1.0.32026-07-26APK
v1.0.42026-07-26APK
v1.0.52026-07-26APK
v1.0.62026-07-26APK
v1.0.72026-07-26APK
v1.0.82026-08-09APK
v1.0.102026-08-09APK
v1.0.112026-08-09APK
v1.0.122026-08-09APK
v1.0.132026-08-09APK
v1.0.142026-08-09APK
v1.0.152026-08-11APK
v1.0.162026-08-11APK
v1.0.172026-08-11APK
v1.0.182026-08-11APK
000192026-08-11APK
000202026-08-11APK
000212026-08-16APK
000222026-08-16APK
000232026-08-16APK
000242026-08-17APK
000252026-08-17APK
000262026-08-17APK
000272026-08-17APK
000282026-08-17APK
000292026-08-18APK
000302026-08-23APK
000312026-08-23APK
000322026-08-23APK
000332026-08-24APK
000342026-08-24APK
000352026-08-24APK

Updating with Obtanium

Add https://github.com/mlekudev/cipherkeys-releases in Obtanium. Zero configuration - autodetects via GitHub releases.

Build

export ANDROID_HOME=~/Android/Sdk
./gradlew assembleDebug
# APK at app/build/outputs/apk/debug/app-debug.apk

License

Apache 2.0

files