Model zagrożeń
Kto co może zobaczyć i co go zatrzymuje
Model zagrożeń jest użyteczny tylko wtedy, gdy przeciwników, z którymi przegrywa, nazywa równie jasno jak tych, których pokonuje. Każdy wiersz poniżej mówi, co widzi dany przeciwnik, do czego nie sięga, jaka obrona działa i co mimo to pozostaje możliwe.
PrivaMesh zaprojektowano przeciw operatorowi, który chce twoich danych, obserwatorowi łańcucha czytającemu wszystko, co publiczne, i oszustowi próbującemu przechwycić dodanie kontaktu. Najsłabszy jest wobec globalnego analityka czasu, a przeciw przejętemu urządzeniu nie daje niczego.
| Przeciwnik | Widzi | Nie może | Obrona | Wciąż możliwe |
|---|---|---|---|---|
| PrivaMesh, operator | Że jakieś konto zapłaciło za wysyłkę, i kiedy | Czytać wiadomości, poznać odbiorców, wypisać twoje kontakty ani odtworzyć historii | Brak bazy kont i magazynu wiadomości; ślepe tokeny oddzielają płatność od wysyłki | Moglibyśmy zostać zmuszeni do pokazania, że jakieś konto coś wysłało w danym czasie |
| Dostawca RPC | Twój adres IP, czas żądań, wysyłane transakcje | Czegokolwiek odszyfrować ani ustalić, czyj jest jednorazowy adres | Punkt końcowy jest wymienny i możliwy do samodzielnego hostowania | Dostawca, który loguje, buduje na poziomie sieci obraz tego, kiedy jesteś aktywny |
| Obserwator łańcucha | Dopełniony szyfrogram, jednorazowe adresy, dokładny czas transakcji | Odczytać treści ani powiązać dwóch wiadomości z tej samej rozmowy | Ukryte adresy, stałe poziomy dopełnienia, opcjonalny ruch maskujący | Bez ruchu maskującego twój wzorzec aktywności w czasie jest w pełni widoczny |
| Globalny analityk czasu | Skorelowaną aktywność w całej sieci naraz | Odszyfrować ani kryptograficznie powiązać adresów | Ruch maskujący w losowych odstępach 3-10 minut, jeśli włączony | Przed tym przeciwnikiem bronimy najsłabiej; obserwator całej sieci z nieograniczonym przechowywaniem wykracza poza to, co naprawi jakikolwiek projekt na poziomie pojedynczych wiadomości |
| Ktoś z twoim odblokowanym telefonem | Wszystko: tekst jawny, kontakty, klucze | Odzyskać wiadomości, które ratchet już usunął | Przechowywanie w pęku kluczy za Face ID lub Touch ID; poufność przyszła ogranicza przeszłość; kod przymusu kasuje konto zamiast je otworzyć | Przejęcie urządzenia jest totalne dla wszystkiego, co na nim teraz jest, a kod przymusu pomaga tylko w chwili, gdy ktoś każe ci odblokować - nie wtedy, gdy pamięć skopiowano wcześniej |
| Ktoś, kto ma twoją frazę odzyskiwania | Twoją tożsamość, i może się pod ciebie podszywać od tej pory | Odczytać ratchetowej części dawnych rozmów - te klucze były losowe i lokalne dla urządzenia | Fraza nigdy nie opuszcza urządzenia i nigdy nie jest przesyłana | Klucz tożsamości, podpisany prekey i prekey PQ są wyprowadzane z frazy, a jednorazowych prekey się nie publikuje, więc wiadomość otwierającą każdą rozmowę da się przeliczyć z frazy i trwałej koperty w łańcuchu. Nie ma też unieważnienia |
| Złośliwy kontakt | Wszystko, co mu wysyłasz, i może zrobić zrzut ekranu lub przekazać dalej | Dotrzeć do innych twoich rozmówców ani czytać innych rozmów | Blokowanie i osobne klucze dla każdej rozmowy | Żadna kryptografia nie sprawi, że twój rozmówca okaże się godny zaufania |
| Oszust przy dodawaniu kontaktu | Nic, jeśli weryfikacja się powiedzie | Podmienić swój klucz w miejsce kontaktu, którego pakiet jest podpisany w łańcuchu | Pakiety prekey podpisane portfelem i opublikowane w łańcuchu, więc żaden rejestr nie może podmienić klucza konta | Nie ma numeru bezpieczeństwa ani odcisku do porównania, więc potwierdzenie, że konto należy do właściwej osoby, odbywa się w całości poza aplikacją i bez pomocy |
| Apple | Że twój Apple ID kupił subskrypcję | Widzieć wiadomości, kontakty ani powiązać zakupu z twoimi wysyłkami | Ślepe tokeny stoją między zakupem a każdą wysyłką | Apple wie, że jesteś klientem PrivaMesh - na iOS tego się nie uniknie |
| Cenzor na poziomie sieci | Że połączyłeś się z punktem RPC Solany | Czytać ani selektywnie odrzucać pojedynczych wiadomości | Punkty RPC są wymienne, także na twoje własne | Zablokowanie Solany lub wszystkich RPC całkowicie blokuje dostarczanie |
Co zakłada ten model
Że prymitywy kryptograficzne się trzymają: X3DH, Double Ratchet, AES-256-GCM i, na iOS 26, ML-KEM-768. Że twoje urządzenie nie jest już przejęte. Że sprawdzasz, czy dodawany kontakt to ta osoba, o którą chodzi. Jeśli któreś z tych założeń zawiedzie, reszta projektu cię nie uratuje.
Zakłada też, że nasza implementacja tych prymitywów jest poprawna - dlatego kod jest publiczny, a znaleziona w nim luka jest płatna. Pełną listę tego, co nie jest objęte, znajdziesz w znanych ograniczeniach.
Najczęstsze pytania
Przed czym PrivaMesh broni najsłabiej?
Przed globalnym przeciwnikiem, który bez przerwy obserwuje całą sieć i wszystko zachowuje. Ruch maskujący podnosi koszt korelacji czasowej, ale nie pokona obserwatora na taką skalę, a łańcuch przechowuje dla niego trwały zapis.
Jeśli zatrzymają moje urządzenie, co zostanie ujawnione?
Wszystko, co jest na nim teraz: tekst jawny, kontakty i klucze, chyba że jest zablokowane, a atakujący nie przejdzie Face ID. Poufność przyszła ogranicza szkody do tego, czego ratchet jeszcze nie usunął - starych wiadomości i tak nie da się odzyskać. Jeśli ktoś zmusza cię do odblokowania, kod przymusu skasuje konto zamiast je otworzyć.
Czy PrivaMesh można zmusić do wydania moich danych?
Można o to poprosić. Do wydania jest tylko to, że jakieś konto zapłaciło za wysyłkę w danym czasie. Nie ma treści wiadomości, odbiorcy, listy kontaktów ani rekordu konta, bo nic z tego nie jest przechowywane.
Czy VPN pomaga?
Tak - przeciw dostawcy RPC i obserwatorowi na poziomie sieci, czyli dwóm przeciwnikom, którzy widzą twój IP. Nie zmienia niczego w tym, co trafia do łańcucha, a to i tak jest nieczytelne.