End-to-end encrypted chat
Discord features with Signal security¶
ZippChat gives you servers, channels, roles, voice and direct messages, and encrypts them on your device so the server relays text it cannot read. Use the main service, or run your own instance for you and your friends.
Encrypted by default¶
New channels are secure: messages are encrypted with a rotating key only members' devices hold. DMs use X3DH and the Double Ratchet, the protocol design Signal published.
Encrypted voice¶
Every audio frame is encrypted on your device, so the media relay forwards calls it cannot hear, and a join fails rather than fall back to an unencrypted call. The call key comes from the server, so this protects calls from the relay, not from the operator.
Honest about the rest¶
Some things are not end-to-end encrypted: persistent channels you opt into, their media, voice keys, and the metadata a server needs to route messages. The encryption page lists all of it.
Yours to host¶
Run an instance on your own hardware. The client can sign in to any instance, and the specs are published so other clients and servers can be built against them.
Android¶
The Android app is a signed APK, downloaded from here: it is not in an app store yet. Android 8 or newer.
| Phone | Download |
|---|---|
| Most phones (64-bit ARM) | zippchat-arm64-v8a.apk |
| Older 32-bit phones | zippchat-armeabi-v7a.apk |
| Emulators, x86 tablets | zippchat-x86_64.apk |
- Check the APK against SHA256SUMS before you install.
- Every APK is signed with the same release key. Its certificate SHA-256 is
4bd1423d7a82cbb555105e74303e2ab356d874ece24443c8b6547a28dd419b63;apksigner verify --print-certson the APK must print that value.
Desktop¶
On a computer you can just open the app in your browser. If you would rather have it in its own window, there are desktop builds:
| Download | Notes | |
|---|---|---|
| Windows 10/11, x64 | ZippChat_0.1.0_x64-setup.exe | The web app in its own window (WebView2). The installer is not code-signed yet, so SmartScreen warns: More info → Run anyway. No notifications while the window is closed. |
| Linux, x86-64 | zippchat-linux-x64.tar.gz | A native build. Unpack it anywhere and run zippchat/zippchat. Needs GTK 3, libsecret, PulseAudio or PipeWire, libopus and libgbm, which desktop installs already have. |
Linux in one command¶
The script installs the libraries ZippChat needs, downloads the
newest release, checks it against SHA256SUMS, and adds ZippChat to your app
menu. It installs into your home folder, so the app can update itself. It
supports Debian and Ubuntu, Arch and CachyOS, Fedora and Nobara, and SteamOS,
and the distros built on them. Add -s -- --input-group for push to talk while
another window has focus, or -s -- --uninstall to remove it.
Check what you downloaded against SHA256SUMS
(sha256sum -c SHA256SUMS on Linux, Get-FileHash in PowerShell).
Both builds are early, so expect rough edges.
Build on it¶
ZippChat's protocols are documented in enough detail to write your own client or server: key agreement and the Double Ratchet, channel encryption modes, the REST API, push wakes and self-hosting. Start at the docs overview.