Keyboard for secure E2EE communication through signal protocol in any messenger
About this app
Communicate securely and independent, regardless of the legal situation or whether messengers use E2EE. No server needed. #ChatKontrolleStoppen
Why KryptEY? Breaking of end-to-end encryption (E2EE) by laws such as the planned EU chat control is an ongoing issue. Content in messengers that use E2EE, such as Whatsapp or Signal, could thus be monitored by third parties. E2EE is often, but not always, standard in messengers. There are proven methods for E2EE such as PGP. However, these methods are sometimes cumbersomely integrated and require a lot of effort to use.
KryptEY is an Android keyboard that implements the Signal protocol. The keyboard works messenger-independently and both the X3DH Key Agreement Protocol and the Double Ratchet Algorithm work without a server, thus it enables a highly independent use of the protocol.
Features Based upon Simple Keyboard ( https://github.com/rkkr/simple-keyboard ), KryptEY adds a view above the Keyboard for the E2EE functionality.
* use E2EE through Signal Protocol in any messenger * encryption/decryption of messages * enter message through separate text field in keyboard * use clipboard to read messages * manage contacts in own contact list in keyboard * message log to view sent/received messages * send messages as plain JSON (raw mode) or hidden in a decoy text (fairytale mode) * verification of E2EE functionality via fingerprint * Q&A View for questions * dark & light theme
See https://github.com/amnesica/KryptEY/blob/master/KRYPTEY.md for further information on how KryptEY is working.
Security The existing security properties for the Signal Protocol are also valid for the keyboard.
Limitations The keyboard was designed as a POC and only allows 1-to-1 conversations. However, the application can also be used in a group chat to a limited extent. Here, a message can be directed to a specific chat partner and not to all people. Other participants of the group chat cannot decrypt the message.
Text messages in Telegram are getting copied as HTML and not as plain text. When decoding the message with the fairytale mode the copied message is compromised and can't be read properly. Therefore, it can't be decoded at all. However, the raw mode works properly. When using KryptEY with Telegram we recommend the raw mode.
Some messengers like Threema only allows up to 3500 bytes per message. Therefore, different character input limitations apply. To stay under the 3500 bytes limit, only 500 characters are allowed for raw and fairytale mode. For convenience these limitation applies for all messengers.
Demo For a demonstration on how KryptEY is used see https://github.com/amnesica/KryptEY/tree/master#demo
KryptEY was created by mellitopia and amnesica. The code is open source and can be found at https://github.com/amnesica/KryptEY
Licensed under GPL-3.0-only, by amnesica.
What's New in v0.1.5
Imported from the F-Droid repository index.
- * Initial release
Version history
May 28, 2023 · 16.6 MB · Android API 26–33 · code 24
Imported from the F-Droid repository index.
- * Initial release
SHA-256 8011876dfdab6bcca9d0baf00914bc90b555f84fca8d9966082c3998967e5679
Will it run on your device?
87%
- Runs on a broad range of modern Android versions.
- Multiple CPU architectures are covered.
Installation Guide
Open Settings on your Android device
Go to Security → Unknown sources (or Install unknown apps)
Enable "Allow from this source" for your browser or file manager
Open the downloaded APK file from your Downloads folder
Tap "Install" and wait for installation to complete
Launch the app from your home screen
Make sure to re-enable Unknown Sources restrictions after installation for security.
How to install this safely
How to verify the file you downloaded
Before you install anything, confirm the file is the one described here. On a computer, run shasum -a 256 your-download.apk (macOS or Linux) or certutil -hashfile your-download.apk SHA256 (Windows), then compare the output character-for-character with the SHA-256 on this page. If a single character differs, the file is not the build we recorded — delete it.
What the signing certificate proves
Every Android app is signed with a private key that only its developer holds. The fingerprint on this page is a hash of the matching public certificate, and it proves continuity rather than identity: it tells you a build came from whoever signed the earlier ones. Android enforces this at install time — if a package claiming to be com.amnesica.kryptey is signed with a different key, the system will refuse to install it over your existing copy. A fingerprint that changes between releases is worth pausing on, because a repackaged app that has been modified by someone else cannot keep the original signature.
How to roll back to an earlier version
No earlier build is on record for KryptEY, so there is nothing to roll back to yet. When a second version is published, this section will explain how to move between them safely.
Why we list sources instead of hosting everything
The official store channel is almost always the right choice: it updates automatically and carries the publisher's own distribution guarantees. A direct APK is useful when a device has no store access, when a rollout has not reached your region, or when you need a specific version — and only when the publisher has authorized that copy. APKBrowse does not list pirated, cracked, or unauthorized rebuilds of KryptEY, and a listing is removed when the evidence for it stops holding up.
Get KryptEY
Every source we list for com.amnesica.kryptey is legality-reviewed. Pirated or cracked builds are never offered.
Other sources
F-Droid listing
officialF-Droid builds this app from source and signs it. This is its official listing, with older builds and full release notes.
Source code
verified publisherThe upstream repository this build is compiled from.
We check legality and signature continuity, but device behaviour still varies. Install at your own discretion.
App Information
Security Verification
We record provenance; we do not run malware scans. Verify the hash yourself before installing.
SHA-256 Hash
8011876dfdab6bcca9d0baf00914bc90b555f84fca8d9966082c3998967e5679
Signing certificate
8e3b3bfb8308fa4cd14b9a32deb31e0b15106d25eb6258b6e25c963bebf8b3ee
Permissions Required
Previous Versions
No earlier build is on record — this is the first release we have listed.
The signing certificate fingerprint for this release is on record, so a build that does not match it did not come from this publisher.
Report a problem with this listing
A listing is only as good as its corrections. If a source is broken, a signature looks wrong, or this app should not be here, tell the moderation team.