KeyCase is an open source cryptographic identity and encrypted communication platform. It is the spiritual successor to Keybase — not a fork, not a clone, but a ground-up rebuild informed by what Keybase got right and where it fell short.
The server is KeyCase. The client is Keybae.
Keybase was acquired by Zoom in May 2020. The client remains open source (Go, React Native) and still receives updates, but the server is proprietary. No new major features have been introduced since the acquisition, and the community has no visibility into the platform's long-term future under Zoom's ownership.
KeyCase doesn't attempt to reverse-engineer or replace the Keybase server. We're building something new — fully open, fully self-hostable, with no proprietary server dependency.
- Open source, top to bottom. Server and client, fully open, from day one.
- Self-hostable. Run your own KeyCase server if you want. No vendor lock-in.
- Platform-agnostic identity proofs. No bespoke integrations with specific social platforms. No implicit endorsement of any platform. Users choose where their proofs live.
- One language, one stack. Dart everywhere — server, client, shared libraries. No serialization mismatch, no type drift, no maintaining three codebases.
- Ship in layers. Each layer is usable on its own. Don't wait for "everything" to ship "something."
| Component | Technology |
|---|---|
| Server | Dart |
| Client | Flutter (iOS, Android, desktop, web) |
| Shared library | Dart package (crypto, models, proof logic) |
| Database | PostgreSQL |
| Cryptography | libsodium via FFI (NaCl-compatible) |
Keybase was built across Go (core), React Native (mobile), and Electron (desktop) — three stacks with different languages, different build systems, and different failure modes. KeyCase uses Dart across the entire stack. The shared core library means identity models, proof verification, and encryption logic are written once and used by both server and client with zero drift.
Flutter gives us iOS, Android, macOS, Windows, Linux, and web from a single codebase.
| Repo | Purpose |
|---|---|
keycase/keycase |
Dart server |
keycase/keybae |
Flutter client |
keycase/core |
Shared Dart package — crypto, models, proof verification |
keycase/spec |
This document |
KeyCase does not maintain a list of blessed platforms. Instead, it supports two generic proof types that work everywhere:
Add a TXT record to a domain you own containing a signed identity statement. Proves domain ownership. Platform-independent. Permanent.
keycase-proof=ks1:BASE64_SIGNED_STATEMENT
Publish a signed proof document at any publicly accessible URL. The URL can be on GitHub, a personal blog, a Mastodon instance, a Gist, a text file on a static server — anywhere. KeyCase fetches the URL and verifies the signature.
This means:
- No API integrations to maintain
- No platform politics
- No breakage when a platform changes their API
- Users decide which platforms matter to them
A KeyCase user can sign another user's public key, vouching for their identity. Social proof without any platform involved.
- Key pair generation and management
- User profiles tied to public keys
- DNS proofs
- URL proofs
- Key signing / web of trust
- Public key discovery and verification
- KeyCase server stores and serves identity proofs
- Keybae CLI and Flutter app for managing your identity
- End-to-end encrypted direct messages
- Forward secrecy
- Offline message delivery via server (messages encrypted to recipient's public key)
- Message history (client-side encrypted)
- Group key management
- Team membership with roles
- Encrypted team chat channels
- Shared team identity
- Client-side encrypted file storage
- Shared folders (encrypted to team or individual keys)
- Mountable local filesystem (FUSE or equivalent)
- Cloud storage backend (S3-compatible, self-hostable)
- Bot platform
- Encrypted git hosting
- API for third-party integrations
- Cryptocurrency wallet or transactions
- Social feed or timeline
- Video/voice calling
- Anything that requires a platform-specific integration we have to maintain
KeyCase is an open source project organized through the KeyCase team on Keybase. Join us there to discuss development, architecture, and roadmap.
BSD-3-Clause