What ships
Six things Keylane does
Public beta means the invite code is gone: anyone can install the app and create an identity. What they get is the product we have been using ourselves through the closed beta.
Nobody in between can read it
Messages, files and calls are encrypted on the phone before they leave it and only the recipient can open them. There is no switch to turn this on, because it is never off.
No phone number, no email, no account
The first launch creates a key on the device, and that key is the identity. Nothing to sign up for, nothing to verify, nothing about the user for us to keep.
A relay that knows nothing worth taking
Servers carry sealed envelopes they cannot open and do not record who sent them. Undelivered envelopes are purged on delivery, or after 14 days at the latest.
Ready for quantum computers
Every conversation opens with a hybrid handshake — classical X25519 with post-quantum ML-KEM — and group messages are wrapped the same way. Identity keys are Ed25519 with ML-DSA.
Locked means locked
Locking the app destroys the hardware key protecting stored messages inside the Secure Enclave or Keystore; only the PIN regenerates it. A seized, screen-locked phone yields ciphertext.
An app you would actually choose
Conversations, photos and files, encrypted voice and video calls, contacts without phone numbers, and a secure notebook and vault — with the polish of a mainstream messenger.
Screens
Keylane on iOS







Under the hood
Two Kotlin codebases, one crypto core
Keylane is built end to end by Livotov Labs in Kotlin: a Kotlin Multiplatform app with Compose Multiplatform UI on Android and iOS, a Ktor relay server, and Kodium — our open-source, pure-Kotlin cryptography library — underneath both.
Kotlin Multiplatform client
One shared codebase for Android and iOS on the VISCE architecture, Composables UI and Lucide icons. Private keys never leave the device; everything at rest is encrypted with keys derived from the PIN and gated by biometrics.
Zero-knowledge Ktor relay
A Kotlin/Ktor 3 server on PostgreSQL that routes encrypted envelopes by destination device only: no social graph, no sender identity, no online-status footprint. Real-time delivery over Server-Sent Events.
Kodium crypto core
Our pure-Kotlin implementation of the NaCl suite plus ML-KEM and ML-DSA, published under the Apache License 2.0. The same code signs tokens on the server and seals messages on the phone.
Proof-of-possession auth
Clients sign short-lived tokens with their hybrid identity keys; the server verifies them with anti-replay nonce tracking and never holds a password, a phone number or an email.
Privacy-preserving push
APNs and FCM wake the app without carrying content or sender; attachments travel as anonymous, TTL-reaped encrypted blobs.
Federation by design
The protocol is built so a private relay exchanges messages with the public network rather than forming an island. Self-hosting is in development; today everyone is on the public relay run from the EU.
In the open
Verifiable, not asserted
- ●Whitepaper. The protocol — identity, proof-of-possession authentication, PQXDH key exchange, payload encryption, group fan-out, zero-knowledge routing, attachments and push — is specified in a public document.
- ●Threat model. A published statement of what Keylane does not protect against, so nobody relies on it in the wrong situation.
- ●Transparency. Transparency report, warrant canary, vulnerability disclosure policy with safe-harbour terms, security.txt, funding disclosure and a public roadmap.
- ●Known limitations, stated plainly. No independent security audit has been completed yet (one is being commissioned), the full client source is not yet published, and there is no desktop client. All of it is on the roadmap and in the changelog.
Get Keylane
Free on Google Play and the App Store. Product site, documentation and changelog at keylane.app; the engineering story is on the Keylane case-study page.