Dosje · № 01 / 16
vChat
Sigurni messenger — End-to-end šifrovan messenger građen post-kvantno od prvog dana: CRYSTALS-Kyber (ML-KEM) razmjena ključeva preko PQXDH, Double Ratchet sloj za poruke i epoški sistem grupnih ključeva (GMK) sa oporavkom i rotacijom pošiljaoca. Sve to pokreće jedno Rust jezgro — KyberSDK — koje dijele iOS, Android, Tauri desktop i vlastiti Go backend.
Šta je urađeno
- PQXDH razmjena ključeva na CRYSTALS-Kyber (ML-KEM) umjesto klasičnog X25519
- Double Ratchet sloj poruka (AEAD + KDF) sa per-poruka ključevima
- GMK epoški grupni ključevi, rotacija pošiljaoca i oporavak izgubljenog stanja
- BIP39 mnemonički oporavak + argon2id/AES-GCM escrow stanja
- Više uređaja po nalogu i panic-mode brisanje
- Jedno Rust jezgro (KyberSDK) preko C ABI-ja — nula kripto koda po platformi
- Vlastiti Go backend: auth, uređaji, pre-ključevi, DM i grupne koverte, fajlovi
Slojevi sistema
KyberSDK — Rust jezgro
RustC ABI / FFIML-KEM- CRYSTALS-Kyber (ML-KEM) kao KEM, ne eksperimentalna grana
- PQXDH sporazum o ključu otporan na „harvest now, decrypt later“
- Double Ratchet + GMK epoški ključevi za grupe
- FIPS-hardening staza kroz cijelo jezgro
iOS — Swift / SwiftUI
SwiftSwiftUISPM- Modularni SPM monorepo: svaki Core* je granica frameworka, svaki Feature* jedna površina
- vChatNSE — notifikaciona ekstenzija koja dešifruje E2E push poruke na uređaju
- Šifrovani lokalni store (CoreDatabase), identitet uređaja u Keychainu
- BIP39 oporavak naloga bez servera koji pamti ključeve
Android — Kotlin / Compose
KotlinJetpack ComposeJNI- Isto Rust jezgro preko JNI bindings — kripto se ne piše ponovo
- Jetpack Compose UI, Coroutines + Flow za stanje
- Šifrovani lokalni store i FCM pipeline sa E2E dešifrovanjem
Desktop — Tauri 2 (Rust + TypeScript)
RustTauri 2TypeScriptVite- Windows, macOS i Linux iz jedne baze koda
- Rust jezgro linkovano nativno — nema Chromiuma ispod
- Nativni tray, meniji i notifikacije, mali instalater
Backend — Go (self-hosted)
GoLokiPrometheusTempoGrafana- Servisi: auth, uređaji, pre-ključevi, DM i grupne koverte, transfer fajlova
- Server stoji na mojoj infrastrukturi, ne na tuđem BaaS-u
- Nadzor: Loki za logove, Prometheus za metrike, Tempo za trace, Grafana za panele
Tehnologije
Programski jeziciRust, Swift, Kotlin, TypeScript, Go
Okvir i alatiSwiftUI, Jetpack Compose, Tauri 2, Vite, JNI, C ABI
InfrastrukturaVlastiti serveri, Loki, Prometheus, Tempo, Grafana
Podaci
PlatformeiOS · Android · Desktop · Server
Statusu razvoju
Godine2025 → danas
KategorijaFlagship · post-kvantna kriptografija
vChat na iOS-u — direktni razgovor, grupa i poziv u jednom klijentu.
Svi projekti