Dossier · № 05 / 16
TerraCrypt Messenger
Messenger mit eigener Kurve — Ein Ende-zu-Ende-verschlüsselter Messenger für iOS, Android, Tauri Desktop und ein vollständiges selbst gehostetes Go-Backend, mit Admin-Dashboard und komplettem Observability-Stack. Gruppenchats, Sprache, Video und Dateitransfer — alles unter Kryptografie, die auf dem Gerät läuft. Das erste größere System, in dem sich das Muster „ein Kern, viele Clients“ bewährt hat, das später in vChat auch eine post-quantische Variante bekam.
Was gebaut wurde
- Nativer iOS-Client in einem modularen SPM-Monorepo (Core*, Feature*) mit eigenen Krypto-Paketen
- Android-Client in Kotlin, Architektur data/domain/ui, Multi-Modul-Gradle
- Tauri Desktop für Windows, macOS und Linux (~20 MB Installer, ohne Chromium)
- Go-Monorepo-Backend: API, Signaling, Push, Zahlungen, PostgreSQL + Redis-Migrationen
- CoTURN für NAT-Traversal und MinIO als S3-kompatibler verschlüsselter Medienspeicher
- Admin-Kontrollpanel (RBAC + Audit-Trail) mit Echtzeit-Metriken
- Observability: Grafana, Loki, Fluent-bit, Kibana, APM-Traces und Prometheus-Endpunkte
Schichten des Systems
Kryptografie auf dem Gerät
SwiftKotlinCJNI- Eigene elliptische Kurve und eigene Primitive, nicht nur ein Aufruf in eine fremde Bibliothek
- CoreCrypto / CoreCryptoDM / CoreCryptoGroup: Primitive, DM- und Gruppenverschlüsselung
- Native C-Schicht über JNI auf Android — identisches Verhalten wie auf iOS
- Verschlüsselte lokale Datenbank (SQLCipher) und ein biometrischer Tresor
Clients
SwiftUICombineComposeTauri 2- iOS: SwiftUI + Combine, WebRTC-Gruppenanrufe mit eigenem Signaling
- Android: Jetpack Compose, Hilt, Room, WorkManager für zuverlässige Arbeit im Hintergrund
- Desktop: Rust-Kern + TypeScript/Vite, Auto-Update und Code-Signing
- Eine Notification-Extension entschlüsselt Push-Nachrichten, bevor das System sie anzeigt
Backend und Observability
GoPostgreSQLRedisDockerGrafana- Go-Services in einem Docker-Compose-Stack, horizontal skalierbar
- PostgreSQL als Hauptspeicher mit eigenen Migrationen, Redis für Sessions und Rate-Limiting
- Apache und nginx Reverse Proxy mit einem Vhost pro Service
- Zero-Downtime-Live-Updates auf dem Produktionsserver
Technologien
ProgrammiersprachenSwift, Kotlin, Rust, TypeScript, Go, PHP, C
Frameworks & WerkzeugeSwiftUI, Combine, Jetpack Compose, Hilt, Room, Tauri 2, React, WebRTC
InfrastrukturPostgreSQL, Redis, CoTURN, MinIO, Docker Compose, Grafana, Loki, Kibana
Fakten
PlattformeniOS · Android · Desktop · Server
Statuslive
Jahre2022 → heute
KategorieFlagship · iOS · Android · Desktop
TerraCrypt — Clients auf drei Plattformen teilen dieselbe Krypto-Schicht in C.
Alle Projekte