Model de amenințări
Cine ce poate vedea și ce îl oprește
Un model de amenințări este util doar dacă îi numește pe adversarii în fața cărora pierde la fel de clar ca pe cei pe care îi învinge. Fiecare rând de mai jos arată ce vede acel adversar, ce nu poate atinge, ce apărare există și ce rămâne totuși posibil.
PrivaMesh este conceput împotriva unui operator care îți vrea datele, a unui observator al lanțului care citește tot ce e public și a unui impostor care încearcă să intercepteze adăugarea unui contact. Este cel mai slab în fața unui analist global al momentelor și nu oferă nimic împotriva unui dispozitiv compromis.
| Adversar | Vede | Nu poate | Apărare | Încă posibil |
|---|---|---|---|---|
| PrivaMesh, operatorul | Că un cont a plătit o trimitere, și când | Să citească mesaje, să afle destinatarii, să-ți listeze contactele sau să reconstruiască istoricul | Fără bază de date de conturi sau depozit de mesaje; tokenurile oarbe despart plata de trimitere | Am putea fi obligați să arătăm că un cont a trimis ceva la un anumit moment |
| Furnizorul RPC | Adresa ta IP, momentul cererilor, tranzacțiile trimise | Să decripteze ceva sau să știe a cui e o adresă de unică folosință | Endpointul este înlocuibil și poate fi găzduit de tine | Un furnizor care înregistrează își face, la nivel de rețea, o imagine a momentelor în care ești activ |
| Un observator al lanțului | Text criptat completat, adrese de unică folosință, momentele exacte ale tranzacțiilor | Să citească conținutul sau să lege două mesaje din aceeași conversație | Adrese ascunse, niveluri fixe de completare, trafic de acoperire opțional | Cu traficul de acoperire oprit, tiparul tău de activitate în timp este complet vizibil |
| Un analist global al momentelor | Activitatea corelată din întreaga rețea deodată | Să decripteze sau să lege adrese criptografic | Trafic de acoperire la intervale aleatoare de 3-10 minute, când este activat | Acesta este adversarul împotriva căruia ne apărăm cel mai slab; un observator al întregii rețele cu păstrare nelimitată depășește ce poate rezolva orice design la nivel de mesaj |
| Cineva care îți ține telefonul deblocat | Tot: text clar, contacte, chei | Să recupereze mesaje deja șterse de ratchet | Stocare în Breloc în spatele Face ID sau Touch ID; secretul înainte limitează trecutul; un cod de constrângere șterge contul în loc să-l deschidă | Compromiterea dispozitivului e totală pentru tot ce se află pe el acum, iar un cod de constrângere ajută doar în momentul în care ți se cere să deblochezi - nu dacă stocarea a fost copiată înainte |
| Cineva care are fraza ta de recuperare | Identitatea ta, și se poate da drept tine de acum înainte | Să citească partea ratchet a conversațiilor trecute - acele chei erau aleatoare și locale dispozitivului | Fraza nu părăsește niciodată dispozitivul și nu este transmisă niciodată | Cheia de identitate, prekey-ul semnat și prekey-ul PQ derivă toate din frază și nu se publică prekey-uri de unică folosință, deci mesajul de deschidere al fiecărei conversații poate fi recalculat din frază plus plicul permanent de pe lanț. Nu există nici revocare |
| Un contact rău-intenționat | Tot ce îi trimiți, și poate face captură de ecran sau redirecționa | Să ajungă la alte persoane cu care vorbești sau să citească alte conversații | Blocare și chei separate pentru fiecare conversație | Nicio criptografie nu împiedică persoana cu care vorbești să nu fie de încredere |
| Un impostor la adăugarea unui contact | Nimic, dacă verificarea reușește | Să-și substituie cheia celei a unui contact al cărui pachet e semnat pe lanț | Pachete de prekey semnate cu portofelul și publicate pe lanț, astfel că niciun registru nu poate substitui cheia unui cont | Nu există număr de siguranță sau amprentă de comparat, deci confirmarea că un cont aparține persoanei dorite se face complet în afara aplicației și fără ajutor |
| Apple | Că ID-ul tău Apple a cumpărat un abonament | Să vadă mesaje, contacte sau să lege achiziția de activitatea ta de trimitere | Tokenurile oarbe stau între achiziție și fiecare trimitere | Apple știe că ești client PrivaMesh, lucru inevitabil pe iOS |
| Un cenzor la nivel de rețea | Că ai accesat un endpoint RPC Solana | Să citească sau să arunce selectiv mesaje individuale | Endpointurile RPC sunt înlocuibile, inclusiv cu unele rulate de tine | Blocarea Solana sau a tuturor RPC-urilor blochează complet livrarea |
Ce presupune acest model
Că primitivele criptografice rezistă: X3DH, Double Ratchet, AES-256-GCM și, pe iOS 26, ML-KEM-768. Că dispozitivul tău nu e deja compromis. Că verifici că persoana pe care o adaugi este cea pe care o voiai. Dacă oricare dintre acestea eșuează, restul designului nu te salvează.
Mai presupune că implementarea noastră a acestor primitive este corectă - de aceea codul sursă este public și o vulnerabilitate găsită este plătită. Lista completă a ce nu este acoperit se află la limitări cunoscute.
Întrebări frecvente
Împotriva a ce se apără PrivaMesh cel mai slab?
Împotriva unui adversar global care urmărește întreaga rețea continuu și păstrează totul. Traficul de acoperire crește costul corelării momentelor, dar nu învinge un observator la acea scară, iar lanțul păstrează pentru el o înregistrare permanentă.
Dacă îmi este confiscat dispozitivul, ce este expus?
Tot ce se află pe el: text clar, contacte și chei, cu excepția cazului în care e blocat și atacatorul nu trece de Face ID. Secretul înainte limitează paguba la ce ratchet-ul nu a șters încă - mesajele vechi sunt deja irecuperabile. Dacă ești forțat să-l deblochezi tu, un cod de constrângere șterge contul în loc să-l deschidă.
Poate fi PrivaMesh obligat să predea datele mele?
I se poate cere. Ce există de predat este că un cont a plătit o trimitere la un anumit moment. Nu există conținut de mesaj, destinatar, listă de contacte sau înregistrare de cont, pentru că nimic din toate acestea nu este stocat.
Ajută un VPN?
Da, împotriva furnizorului RPC și a unui observator la nivel de rețea, cei doi adversari care îți văd IP-ul. Nu schimbă nimic din ce se scrie pe lanț, care oricum este ilizibil.