
txts
The security-critical part is written in Rust and kept separate from the application. Five platforms use the same implementation, behaving identically on every device.
A cryptographic core
The encryption logic is kept entirely separate from the application code and implemented in Rust as a standalone core. There is exactly one security-critical implementation, shared by iOS, Android, Windows, macOS and Linux, behaving identically on every device. That makes maintenance and security review markedly simpler.
Keys stay on the device
Private keys live in the operating system's keystore and never leave it. The server handles ciphertext only, with access to neither message content nor key material.
Incremental synchronisation
Messages, group information and state changes travel as changes rather than as complete records. Together with packet aggregation, efficient serialisation and compact binary formats, that noticeably reduces bandwidth, server load and battery use, including on long histories and unreliable connections.
