Repository navigation
Releases: GnosiWorks/Kryfo
Release list
Kryfo 0.5.2
Kryfo 0.5.2
New
- Albums: pick several photos and they arrive together, as one album.
- Send any kind of file. An app installer someone sends you can be saved to your phone, never installed from Kryfo.
- Export your notes from Note to self: locked with a passphrase by default, or as plain text after a warning.
- Accent colours in Settings > Appearance. Yellow stays the default, and there are grey, purple, green, red and blue.
- Screenshot blocking per chat. Turn it on in a chat and it holds on both phones, and copying, forwarding and saving each other's messages are blocked too. After the update, Kryfo offers to turn it on for all your chats.
- A group's admin can end it for everyone.
- "This isn't them": when the safety numbers you compare don't match, remove the contact from your phone and block its key.
- Delivery through a helper app is back. It uses UnifiedPush, which works with ntfy.
Improved
- Every message is padded inside its encryption to one of a few fixed sizes, so relays learn nothing from its size.
- The scam shield reads only requests from strangers and says what it noticed: someone asking for a code, a PIN or recovery words, asking for money in a hurry, promising easy profit, or saying they are from Kryfo or a support team.
- Chats with someone new show a card to compare the safety number. If the numbers don't match, "This isn't them" is right there.
- The small "Not checked" mark beside three words is gone.
- When Tor is blocked or watched where you are, setup offers bridges first.
- Plain bridge lines, an address and a port without a transport, are accepted too.
- GIF search asks once, the first time you open GIFs.
- A voice note can be up to 30 minutes long, and a long one you send keeps going if you leave the chat while it is being disguised.
- If Kryfo locks before a voice note goes out, it isn't sent, and Kryfo tells you after you unlock. If your phone is short of space, Kryfo says so.
- Settings section titles are bigger and clearer.
- On Android 15 and newer, Kryfo draws behind the system bars as Android expects.
Fixed
- GIFs you send line up on the right like your other messages, without a line under them.
- In the light theme, Tor's status reads clearly on the home screen and in the Tor sheet.
- Sheets with a text field stay above the keyboard, and confirm sheets no longer move up twice.
- Notifications from a group that ended are cleared.
Stability and privacy improvements throughout. Update when you can.
The full list is in CHANGELOG.md.
Which file: arm64-v8a for most phones, armeabi-v7a for older and budget ones,
x86_64 for emulators and Chromebooks.
SHA-256
4d81eb2b81476694872145eb283ae3d75e3b99ad682c6e51f0bab6f30e47c70a app-arm64-v8a-release.apk
9aa9c07fb4912eb6031a53226807fdaa337ac4c31626a74ddc4fbb5500e16c4f app-armeabi-v7a-release.apk
78e945206bd67a7acab626cbd8282321cd822927bb59b43ad2d9981a3e6d6e7c app-x86_64-release.apk
Signing certificate SHA-256
10928a61642c5cc471a99869e2ea4e2d4d70026e797dfba48c0f306b5b3473db
Kryfo 0.5.1
Kryfo 0.5.1
Please update to 0.5.1: it contains security fixes. We will publish the details in about a week.
New
- Bridges for places where Tor is blocked. In automatic mode, Kryfo notices when Tor can't get through, tries a disguised way in by itself, and remembers what worked on that kind of network, Wi-Fi or mobile data. You can still pick a bridge yourself or ask the Tor Project for one. When Tor is blocked during setup, Kryfo suggests automatic first.
- Voice disguise per chat. Turn on "Disguise my voice here" in a chat's menu and Kryfo remembers it for that chat. Burner rooms start with it on.
- Your voice is disguised while you record, so the note is ready the moment you let go.
- A new mic: hold to record, let go to send, slide to the side to cancel, or slide up to keep recording hands-free. Before sending, you can listen to the note with or without the disguise.
- Say hi. After you add someone, their chat opens with a one-tap wave. They won't know you added them until your first message arrives.
- Share to Kryfo. Share text or a link from any app, pick a chat, and it waits in the message box. Nothing is sent until you tap send.
- GIF search, off until you turn it on. Kryfo's server searches for you, so the GIF service never sees you, and the GIF reaches your friend encrypted, like a photo.
- Update notice for copies from kryfo.app or GitHub. Once a day, over Tor, Kryfo checks for a new version and tells you. Nothing installs by itself, and you can turn it off in Settings.
- Notes are grouped by time: today, yesterday, this week, then by month. Long notes fold away behind "Show more", and you can delete all notes at once.
- Whoever made a room can reset its link. The old link stops working, and everyone in the room gets the new one.
- Location links show as a small place card.
- Pair codes show a key number on both phones. Check that all four groups match before you add someone.
- Chats you add by a code, a link or a request show a card to compare the safety number. "Later" folds it into one quiet line.
Improved
- If Tor stops answering while Kryfo is in the background, Tor can restart itself. If it still can't connect, Kryfo says so plainly and offers a restart that keeps your messages.
- When the network drops for a while, Kryfo gets going again much sooner once it's back.
- Messages are shown in the order they were sent, not the order they arrived.
- The disguised voice is easier to understand.
- A voice note's length counts from the first sound, rounded to the nearest second.
- When someone you verified gets a new security code, Kryfo waits for you to check it or accept it before sending to them. Their messages still arrive.
- Three words that came with a request, an introduction or a group show "Not checked" until you scan their QR code in person or compare the safety number.
- Backups now bring your privacy settings with them. PINs never travel, so set them again after a restore.
- Backups and moving to a new phone are more reliable.
- With "Always on", Kryfo keeps getting messages after an update.
- When Tor can't connect, handle search says it needs Tor, and you can still add someone by QR code or link.
- Deleting the chat with Marios also takes back what you sent him.
- Report an issue offers to write to Marios in Kryfo first, and email second. Settings also has a row to follow GnosiWorks.
- In Support, you can help fund an independent security audit. The full report will be public.
- Tapping a room link shows the room before you join, and a full room tells you so.
- Someone you deleted who writes to you again shows up as a new request. Deleting a chat also clears what you set for it, like its note or mute.
- Double tap to zoom in the photo viewer, and polls show the faces of who voted.
- New backups need a passphrase of at least 12 characters.
- Kryfo uses the whole screen on newer Android, and sheets stay clear of the navigation bar and the keyboard.
- The language choice is the first thing you see when you set up Kryfo.
- In Arabic and Persian, pair codes take your own digits, and replies and bios follow the direction they're written in.
- Backups and wiping are more private.
- More privacy in how Kryfo talks to relays and the handle service.
- Built with Go 1.26.9, with updated crypto and network libraries.
Fixed
- Fixes a rare case where the first messages to someone you had just added never arrived. Kryfo now sends them again until they do.
- Tor could stay stuck after a network change, like moving from Wi-Fi to mobile data. Kryfo now follows the change and gets going again.
- Messages arrive even when Android restarts Kryfo in the background.
- Fixes a crash at launch on some newer phones.
- Tor no longer restarts itself while automatic mode is still finding a way in.
- After restoring a backup, deleted messages stay deleted, and what you missed in chats and groups arrives sooner.
- Edits, reactions and pins that arrive before their message are no longer lost, and edits land in the right order.
- Fixes a rare case where a message could be sent twice.
- Forwarding into the chat you're in now works as expected.
- Group info now updates while you have it open.
- Replies to a photo in a group keep their quote.
- Photos with the same name, picked together, all arrive.
- PNG and GIF pictures keep their format when sent.
- A group no longer keeps saying "Mentioned you" after that message is taken back.
- A room its maker left now shows as closed.
- Sheets you type in, like the one for editing a message, close cleanly.
- On the Google keyboard, moving the cursor no longer selects text.
- The camera stays upright when you turn the phone.
- The startup screen is centred on all phones.
- Accepting a request while offline reaches them once you're back online. If it still can't, the chat says so and offers to try again.
- Someone you just added is heard right away, and a message you send while the first one is still being prepared keeps its place.
- A voice note is thrown away if the chat closes as you start recording, or if Android takes the touch away while you hold the mic.
- Deleting a chat or turning away a request also removes the wallpaper photo set for it.
- If you back out of saving a backup and close the share sheet too, the backup is kept and Kryfo says it wasn't saved.
- On a Wi-Fi that wants a sign-in first, the home screen says so and opens the Wi-Fi settings.
- Tor no longer restarts once right after it connects at startup, and a move from one Wi-Fi to another is now noticed.
After updating, you may need to type your PIN once before fingerprint unlock works again.
Stability and privacy improvements throughout. Update when you can.
The full list is in CHANGELOG.md.
Which file: arm64-v8a for most phones, armeabi-v7a for older and budget ones,
x86_64 for emulators and Chromebooks.
SHA-256
2e0c785dceb2dcd735f678aa881144265b26565f72d9c15be9f16d79f3f90627 app-arm64-v8a-release.apk
038a92c3b433816cbe7747bfc8eeac1e408475d8b6ccaa91d87a2ed5c09a7649 app-armeabi-v7a-release.apk
76af71b870f9765a97620c69c14637bdf3213c096c143e35d4574172017da45d app-x86_64-release.apk
Signing certificate SHA-256
10928a61642c5cc471a99869e2ea4e2d4d70026e797dfba48c0f306b5b3473db
Reproducible: built in the pinned container in repro/, the same bytes at F-Droid's path and elsewhere.
Kryfo 0.5.0
Kryfo 0.5.0
New
- A decoy PIN: a second PIN opens an empty Kryfo, as if just installed.
- Hidden chats: chosen chats and groups stay out of the list, search and notifications until you enter their own PIN.
- Animated stickers: the Fokia packs, 47 of them. A sticker travels as its name and your phone draws it, so no picture leaves it.
- A chat with Marios, who builds Kryfo, pinned at the top of the list. Nothing is sent until you write, and you can write anonymously.
- Pair codes show the other person's three words and face, to check against their screen.
Changed
- Timed messages you receive count down from when you first see them.
- Delivery is steadier after time offline, and a long catch-up runs to the end, in order.
- The app lock comes up more reliably and covers every screen, sheet and dialog.
- The first start was redone: a step bar, calmer transitions and clearer text.
- After a restore, Kryfo says to check your protections in Settings. Settings are not part of a backup.
Security improvements throughout. Update when you can.
The full list is in CHANGELOG.md.
Which file: arm64-v8a for most phones, armeabi-v7a for older and budget ones,
x86_64 for emulators and Chromebooks.
SHA-256
2829e78f0fa72bdf81f3a51d22c0158519a08ad5c54b5f04f554d8cd2e3fe98f app-arm64-v8a-release.apk
1b91cbee5efc2f61fb0495477a7c51330573b5ae5b57ea225f3950d70fb5fa26 app-armeabi-v7a-release.apk
3653a5d423201e5ab47144e4c69fdae32246f9ad270336dded77fd1156edde5c app-x86_64-release.apk
Signing certificate SHA-256
10928a61642c5cc471a99869e2ea4e2d4d70026e797dfba48c0f306b5b3473db
Reproducible: built in the pinned container in repro/, the same bytes at F-Droid's path and elsewhere.
Kryfo 0.4.2
An update everyone on 0.4.x should install.
Fixed: more reliable message delivery when a relay sends unexpected data, and more careful handling of contacts and groups.
Which file: arm64-v8a for most phones, armeabi-v7a for older and budget ones, x86_64 for emulators and Chromebooks.
Verify what you installed
apksigner verify --print-certs kryfo.apk
SHA-256 10:92:8A:61:64:2C:5C:C4:71:A9:98:69:E2:EA:4E:2D:4D:70:02:6E:79:7D:FB:A4:8C:0F:30:6B:5B:34:73:DB
File hashes:
639810f70f8a8446c2490254c34cafac394e82227308bf09102d7715a3a21da4 app-arm64-v8a-release.apk
8076405856d2c318f30d4b585374dd75627a326b62064772c0dc924ff75834f1 app-armeabi-v7a-release.apk
378c4bc477f4129baafdf622d4babcb66548e73df75988d5c24ecc190e0535c5 app-x86_64-release.apk
Reproducible: built in the pinned container in repro/, the same bytes at F-Droid's path and elsewhere.
Kryfo 0.2.10
You can move Kryfo to another phone now. Back up, restore on the new phone, and everything comes with it: your name, your code, your contacts, every conversation, and now your photos, voice notes and files too.
A move retires the phone it came from. That's deliberate: two phones on one identity silently lose messages on both, so the old one says it has moved and stops. The restore screen tells you what follows and what doesn't before it writes anything.
Backups are written a piece at a time, so a large one doesn't need a lot of memory. Restoring stages everything and checks the file is complete before touching what's already on the phone, so a truncated file leaves you exactly as you were. Old backup files still restore.
Videos from your gallery used to carry where they were taken, on what phone, and when. That's stripped now, and the clip plays exactly as before.
Fixed: picking onion during setup could leave you on something else. Scanning a code on the first screen read it and added nobody. The button at the bottom of the backup screen could sit just past where the phone lets you tap.
Verify what you installed
apksigner verify --print-certs kryfo.apk
SHA-256 10:92:8A:61:64:2C:5C:C4:71:A9:98:69:E2:EA:4E:2D:4D:70:02:6E:79:7D:FB:A4:8C:0F:30:6B:5B:34:73:DB
File hashes:
6276d6eb8a43a3364094e53556c81fb5f7b9bfcc7d13872f9f431a7f7833f092 app-arm64-v8a-release.apk
0987d22fd8e6300141b0a634aab57029d10d30588e1432b3870ef6dc61f34619 app-armeabi-v7a-release.apk
f0396184416422ccd7c42c34090e857cd681fb26b4a113ec4c0982ebd9a2d730 app-x86_64-release.apk
Pick arm64-v8a for most phones, armeabi-v7a for older and budget ones. Android will warn about installing outside the Play Store; allow it for your browser, then open the file again.
Kryfo 0.2.8
The first reproducible release. Every file in these packages is byte for byte what a clean container build of this source produces, so anyone can rebuild them and check.
Fixed, and these matter
There was a way around the app lock. It is fixed, update when you can.
On Android 13 and later, declining the notification prompt twice put the app in a loop: it asked again every time it resumed. That drained battery, stopped the keyboard from staying up, and eventually closed the app. If notifications are off and you don't remember turning them off, this is why. There's now a line in the app to turn them back on.
The scam shield never ran in group chats. The check that decides whether to look at a message had its condition backwards, so in a group it was always skipped.
Burner rooms could send your real address if stripping it failed. It now refuses to send instead.
Blocking someone in a group left their old messages on screen. The Retry button on the home screen couldn't be tapped. Cancelling the file picker used up one of the two messages a stranger is allowed.
Verify what you installed
apksigner verify --print-certs kryfo.apk
SHA-256 10:92:8A:61:64:2C:5C:C4:71:A9:98:69:E2:EA:4E:2D:4D:70:02:6E:79:7D:FB:A4:8C:0F:30:6B:5B:34:73:DB
File hashes:
46d97bd1ec328fd1d3ef2ad1c82b8fe99db809d8260b68bff9e10f069d4107b6 app-arm64-v8a-release.apk
0206018f64504764acc0f84c6fc887aba37250d3695ce5af115303fc721f0360 app-armeabi-v7a-release.apk
2114ee8522fadc752407420bfb50c4e0f5d2e06c108b228f8292f116a9bfdad4 app-x86_64-release.apk
Pick arm64-v8a for most phones, armeabi-v7a for older and budget ones. Android will warn about installing outside the Play Store; allow it for your browser, then open the file again.
Kryfo 0.2.7
Kryfo runs on 32-bit phones now. A Galaxy A13 on Android 14 couldn't install it at all before this release, which ruled out a lot of budget Android phones.
Install
Pick the file for your phone. Most phones from the last few years want arm64-v8a. Older and budget phones want armeabi-v7a. If you're not sure, try arm64 first; if Android says the app isn't compatible, use armeabi-v7a.
Android will warn you about installing outside the Play Store. That's expected. Allow it for your browser or files app, then tap the file again.
Check what you installed
Every Kryfo release is signed with the same key. You can confirm a file came from us: