bezpečnost
Matematika místo slibů.
Nechceme, abyste nám věřili. Chceme, abyste věřili kryptografii — stejné, na které stojí Signal. Tady je celá cesta zprávy a poctivě i to, co ochránit neumíme.
Protokol: žádné vlastní vynálezy
Šifrování zajišťuje knihovna libsignal — stejný kód, který používá Signal. Klíče se dohodnou handshakem PQXDH s postkvantovým Kyber-1024, každá zpráva pak dostane vlastní klíč přes Double Ratchet. Prozrazení jednoho klíče neodemkne nic z minulosti ani budoucnosti.
libsignal v5 · PQXDH · Kyber-1024 · Double Ratchet
Co náš server neví — a co vědět musí
Doručovací server nosí zapečetěné obálky. Díky sealed sender nezná ani odesílatele — obálku umí jen položit do správné schránky. Slibujeme minimalizaci metadat, nikdy „nulová metadata" — to by byla lež.
Nikdy nevidí
- obsah zpráv ani příloh
- kdo zprávu poslal (sealed sender)
- telefonní číslo — žádné neexistuje
- vaše kontakty a skupiny
- polohu
Vidět musí
- adresu schránky, kam obálku doručit
- čas doručení a velikost obálky
- síťovou adresu po dobu spojení — do databáze se neukládá
V zařízení
Historie leží jen ve vašem telefonu, šifrovaná SQLCipherem. Klíč k ní drží PIN přes Argon2id — hrubou silou se louskat nevyplatí. Obrazovka aplikace se nedá zachytit do snímků (FLAG_SECURE) a zprávám můžete nastavit, aby samy zmizely.
SQLCipher · Argon2id · FLAG_SECURE · mizící zprávy
Po cestě
Klient mluví se serverem přes šifrovaný WebSocket (WSS). Server je dostupný i na Tor onion adrese, aplikace přes ni ale zatím sama neroutuje — Tor transport teprve chystáme a do té doby to netvrdíme. Push notifikace jedou přes UnifiedPush, bez Googlu; Google FCM je jen volitelná zkratka s jasným upozorněním.
WSS · UnifiedPush · onion na serveru
Co vás neochráníme
Šifrování nepomůže, když je kompromitovaný samotný telefon, když někdo čte přes rameno, nebo když druhá strana konverzaci vyfotí jiným zařízením. Bezpečnost končí u konců — proto se jim říká koncové šifrování. Našli jste slabinu? Ozvěte se, posloucháme.
Zbytek je ticho.
Sledovat vývoj