Over si to sám

Nikomu never. Over si to.

Solo2 je webová aplikácia. To znamená, že tvoj prehliadač už má všetky nástroje, ktoré potrebuješ na audit toho, čo robíme. Stlač F12, otvor DevTools a over si sám každé tvrdenie z nášho Manifestu. Tu ti presne povieme ako.

Over si to za 2 minúty

Stlačte F12 vo svojom prehliadači. Bez inštalácie čohokoľvek. Bez nutnosti vedieť programovať.

Tvrdenie Ako to overiť Záložka
Žiadne cookies akéhokoľvek druhu Application → Cookies → prázdne. Solo2 neinštaluje žiadne cookies. Tvoja relácia sa udržiava v localStorage, nie v cookies. Bez _ga Application
V aplikácii žiadne služby tretích strán Network → filtrovať podľa domény → iba požiadavky na solo2.net Network
Analytika iba na landing page, nie v aplikácii Network → na /* Network
Vaša história žije vo vašom prehliadači Application → IndexedDB → solo2-vault-{userId}. Všetky tvoje správy a súbory sú tam. Server nemá nič. Application
Zoznam kontaktov iba lokálne Application → IndexedDB → store pares. Tvoje kontakty existujú iba v tvojom prehliadači. Application
Bez externých CDN Network → všetky JS/CSS sa načítavajú z tej istej domény. Žiadne cdn.jsdelivr.net Network
Relácie maximálne 24 hodín Application → localStorage → solo2_session. Check the expiry timestamp. It's never more than 24h from creation. Application
Môžeš vidieť, aký typ pripojenia používaš V zozname kontaktov: vedľa každého kontaktu, P2P (zelený) alebo Zrkadlo (oranžový) UI
Umami je bez cookies Application → Cookies → neobjavujú sa žiadne cookies od stats.menzuri.com Application
Tvoj hlavný kľúč sa generuje náhodne Application → pri registrácii Solo2 vygeneruje 24 unikátnych slov. Neodvodzujú sa z tvojho hesla — sú to nezávislý kľúč s 256 bitmi skutočnej entropie Application

Ak ovládate DevTools

Overenia vyžadujúce technické znalosti. Ak rozumieš HTTP, WebRTC a základnej kryptografii, môžeš si potvrdiť tieto tvrdenia.

Tvrdenie Ako to overiť
Správy šifrované E2E Network → požiadavky na /cmd
WebRTC signály šifrované E2E Network → signálne správy putujú ako šifrované binárne bloby. Nie sú to čitateľné JSON s offer
Hlavný kľúč nezávislý od hesla Network → pri prihlásení server vráti zašifrovaný wrapped_master_key
Uniformný padding na zrkadlovom serveri Network → pakety WebSocket/DataChannel majú pevnú veľkosť pri použití zrkadla (TURN). Skontroluj veľkosti v záložke Network
Heslo chránené (neputuje v čistom texte) Network → prihlásenie odosiela hash, nie čistý text. Nemôžeš overiť, aký algoritmus server používa (Argon2id), ale môžeš si overiť, že tvoje pôvodné heslo nikdy neopustí prehliadač
Žiadosti o prepojenie vypršia za 3 dni Vytvor žiadosť, neodpovedaj na ňu, po 3 dňoch over, že zmizla. Vyžaduje trpezlivosť a dva účty
Push notifikácie šifrované Network → push požiadavky na Service Worker prichádzajú šifrované (štandard Web Push). Šifrovaný obsah je viditeľný v záložke Network
Priame P2P spojenie vs. zrkadlo (TURN) chrome://webrtc-internals/ → shows ICE candidates and the active connection type. If both peers are on the same network, you should see host candidates (direct, no relay).

Toto overiť nemôžeš

Boli by sme pokrytci, keby sme tvrdili, že všetko je overiteľné. Tieto tvrdenia vyžadujú, aby ste nám dôverovali — alebo počkali, kým zverejníme zdrojový kód.

Tvrdenie Prečo to nie je overiteľné
Double Ratchet s rotáciou kľúčov Kryptografické operácie prebiehajú vo vnútri binárneho súboru WASM. Používateľ vidí, že sa načítava, ale nemôže prečítať, aký algoritmus vykonáva
Hlavný kľúč sa generuje so skutočnou entropiou (256 bitov) Generovanie používa crypto.getRandomValues v prehliadači. Môžeš vidieť, že sa generuje 24 slov, ale nemôžeš z F12 overiť kvalitu entropie ani bezpečnosť CSPRNG
X25519 + Ed25519 + ChaCha20-Poly1305 Rovnaký problém: kryptografický stack je vo vnútri WASM. Z prehliadača nie je možné potvrdiť krivky ani algoritmy
Server nemôže prečítať obsah vašich správ Môžeš overiť, že klient neodosiela čitateľné dáta. Čo server robí s metadátami pripojenia (IP, časové značky), vyžaduje dôveru alebo audit servera
Server neuchováva vzťahy po prepojení Vyžaduje prístup k zdrojovému kódu a databáze servera
IP adresy sa nezaznamenávajú Nemôžeš overiť, čo server zaznamenáva do svojich logov
Kľúče sa rotujú s každou správou Prebieha vo vnútri WASM. Vidíš, že sa odosielajú správy, ale nemôžeš pozorovať rotáciu kľúčov
Vymazané dáta skutočne miznú Môžeš vymazať z lokálnej IndexedDB, ale nemôžeš overiť, že server neuchováva kópie (hoci Manifest hovorí, že ich nikdy nemal)

Prečo je WASM skutočnou bariérou

Kryptografická vrstva Solo2 je kompilovaná do WebAssembly — binárneho formátu, ktorý tvoj prehliadač spúšťa, ale nemôžeš ho čítať ako text. To znamená, že z F12 nemôžeš overiť, aký algoritmus používame.

Minifikovaný JavaScript (ktorý používame pre rozhranie) je reverzibilný: prehliadač ho môže preformátovať a štruktúra kódu je čitateľná. Je to praktická prekážka, nie skutočná bariéra. Ale WASM kompilovaný zo Zig je zásadne odlišný

Hovoríme, že je to Double Ratchet s X25519. Môžeš veriť nášmu slovu, alebo môžeš počkať, kým zverejníme zdrojový kód kryptografickej vrstvy, aby ho mohol ktokoľvek auditovať. Pracujeme na tom.

Čo robíme pre to, aby ste nám mohli viac dôverovať

1

Zverejnenie hashov SHA-256 súborov .wasm

Zverejníme kryptografický hash každého WASM súboru v produkcii. Tak si akýkoľvek audítor bude môcť overiť, že binárny súbor spúšťaný vo vašom prehliadači presne zodpovedá tomu, ktorý sme skompilovali.

2

Otvoriť kryptografickú vrstvu ako open source

Zverejniť zdrojový kód kryptografickej vrstvy (Zig) ako verejný repozitár. Rovnaký model ako Signal: otvorený kryptografický protokol, zvyšok kódu uzavretý. Ktokoľvek bude môcť skompilovať zdrojový kód a porovnať hash výsledného .wasm s tým v produkcii.

3

Bezpečnosť nezávisí od utajenia

Náš bezpečnostný model je navrhnutý tak, aby fungoval aj v prípade, že je zdrojový kód verejný. Ak by bezpečnosť závisela od toho, že nikto nemôže čítať kód, nebola by to bezpečnosť — bola by to nádej.

4

5 dokumentovaných vrstiev zabezpečenia

Heslo (prístup k serveru), 24 slov (skutočný hlavný kľúč), tajomstvo zariadenia (ochrana lokálnych dát) a rotácia Double Ratchet. Každá vrstva je nezávislá a overiteľná v našom Manifeste transparentnosti.

Solo2 — Tvoja konverzácia patrí len tebe.