Verifică în 2 minute
Apasă F12 în browserul tău. Fără a instala nimic. Fără să știi să programezi.
| Afirmație | Cum să verifici | Tab |
|---|---|---|
| Niciun cookie de niciun fel | Application → Cookies → gol. Solo2 nu instalează niciun cookie. Sesiunea ta este menținută în localStorage, nu în cookie-uri. Fără _ga |
Application |
| Fără servicii terțe în aplicație | Network → filtrează după domeniu → doar cereri către solo2.net |
Network |
| Analitice doar pe landing page, nu în aplicație | Network → pe /* |
Network |
| Istoricul tău trăiește în browserul tău | Application → IndexedDB → solo2-vault-{userId} |
Application |
| Lista de contacte doar local | Application → IndexedDB → store pares |
Application |
| Fără CDN-uri externe | Network → toate JS/CSS se încarcă de pe același domeniu. Fără cdn.jsdelivr.net |
Network |
| Sesiuni de maximum 24 de ore | Application → localStorage → solo2_session |
Application |
| Poți vedea ce tip de conexiune folosești | În UI-ul de chat: indicator P2P (verde) vs Mirror/TURN (portocaliu) vizibil permanent | UI |
| Umami este fără cookie-uri | Application → Cookies → nu apar cookie-uri de la stats.menzuri.com |
Application |
| Cheia ta principală se generează aleatoriu | Application → la înregistrare, Solo2 generează 24 de cuvinte unice. Nu sunt derivate din parola ta — sunt o cheie independentă cu 256 de biți de entropie reală | Application |
Dacă știi să folosești DevTools
Verificări care necesită cunoștințe tehnice. Dacă înțelegi HTTP, WebRTC și criptografie de bază, poți confirma aceste afirmații.
| Afirmație | Cum să verifici |
|---|---|
| Mesaje criptate E2E | Network → cereri către /cmd |
| Semnale WebRTC criptate E2E | Network → mesajele de semnalizare călătoresc ca bloburi binare criptate. Nu sunt JSON lizibil cu offer |
| Cheie principală independentă de parolă | Network → la autentificare, serverul returnează un wrapped_master_key |
| Padding uniform pe serverul oglindă | Network → pachetele WebSocket/DataChannel au dimensiune fixă când se folosește relay. Verifică dimensiunile în tab-ul Network |
| Parolă protejată (nu călătorește în text clar) | Network → autentificarea trimite un hash, nu text clar. Nu poți verifica ce algoritm folosește serverul (Argon2id), dar poți verifica că parola ta originală nu părăsește niciodată browserul |
| Cererile de împerechere expiră în 3 zile | Crează o cerere, nu răspunde, verifică după 3 zile că a dispărut. Necesită răbdare și două conturi |
| Notificări push criptate | Network → cererile push către Service Worker sosesc criptate (standard Web Push). Conținutul criptat este vizibil în tab-ul Network |
| Conexiune P2P directă vs. relay | chrome://webrtc-internals/ |
Asta nu poți verifica
Am fi ipocriți dacă am pretinde că totul este verificabil. Aceste afirmații necesită să ai încredere în noi — sau să aștepți până publicăm codul sursă.
| Afirmație | De ce nu este verificabil |
|---|---|
| Double Ratchet cu rotația cheilor | Operațiunile criptografice au loc într-un fișier binar WASM. Utilizatorul vede că se încarcă, dar nu poate citi ce algoritm execută |
| Cheia principală se generează cu entropie reală (256 de biți) | Generarea folosește crypto.getRandomValues în browser. Poți vedea că se generează 24 de cuvinte, dar nu poți verifica din F12 calitatea entropiei și nici securitatea CSPRNG |
| X25519 + Ed25519 + ChaCha20-Poly1305 | Aceeași problemă: stiva criptografică este în interiorul WASM. Din browser nu poți confirma curbele sau algoritmii |
| Serverul este „complet orb” | Poți verifica că clientul nu trimite date lizibile. Ce face serverul cu metadatele de conexiune (IP-uri, timestamps) necesită încredere sau audit al serverului |
| Serverul nu păstrează relații după împerechere | Necesită acces la codul sursă și baza de date a serverului |
| Adresele IP nu sunt înregistrate | Nu poți verifica ce înregistrează serverul în logurile sale |
| Cheile se rotează cu fiecare mesaj | Are loc în interiorul WASM. Vezi că se trimit mesaje, dar nu poți observa rotația cheilor |
| Datele șterse dispar cu adevărat | Poți șterge din IndexedDB local, dar nu poți verifica că serverul nu păstrează copii (deși Manifestul spune că nu le-a avut niciodată) |
De ce WASM este o barieră reală
Stratul criptografic al Solo2 este compilat în WebAssembly — un format binar pe care browserul tău îl execută dar pe care nu îl poți citi ca text. Asta înseamnă că din F12 nu poți verifica ce algoritm folosim.
JavaScript-ul minificat (pe care îl folosim pentru interfață) este reversibil: browserul îl poate reformata și structura codului este lizibilă. Este un obstacol practic, nu o barieră reală. Dar WASM compilat din Zig este fundamental diferit
Spunem că este Double Ratchet cu X25519. Poți să ne crezi pe cuvânt sau poți să aștepți până publicăm codul sursă al stratului criptografic pentru ca oricine să îl poată audita. Lucrăm la asta.
Ce facem pentru ca tu să ai mai multă încredere în noi
Publicarea hash-urilor SHA-256 ale fișierelor .wasm
Vom publica hash-ul criptografic al fiecărui fișier WASM din producție. Astfel, orice auditor poate verifica că fișierul binar executat în browserul tău corespunde exact celui pe care l-am compilat.
Deschiderea stratului criptografic ca open source
Publicarea codului sursă al stratului criptografic (Zig) ca repozitoriu public. Același model ca Signal: protocol criptografic deschis, restul codului închis. Oricine va putea compila codul sursă și compara hash-ul .wasm rezultat cu cel din producție.
Securitatea nu depinde de secretizare
Modelul nostru de securitate este proiectat să funcționeze chiar dacă codul sursă este public. Dacă securitatea ar depinde de faptul că nimeni nu poate citi codul, nu ar fi securitate — ar fi speranță.
5 straturi de securitate documentate
Parolă (acces la server), 24 de cuvinte (cheia principală reală), secret de dispozitiv (protecția seifului) și rotație Double Ratchet. Fiecare strat este independent și verificabil în Manifestul nostru de Transparență.