Može li plaćeni VPN autorizovati sesije bez tvog naloga?
Tokeni koji se ne mogu povezati mogu razdvojiti provjeru prava pristupa od same sesije. Bitno je kako su zamišljeni izdavanje i iskorištavanje, a ne oznaka na prijavi.
Plaćanje tunela ne mora značiti da se identitet platitelja pokazuje pri svakoj vezi. Rješenje može jednom provjeriti pravo pristupa, dati korisniku kriptografske tokene i pustiti gateway da kasnije prihvati token bez uvida u nalog iza njega. Da li to zaista nešto skriva zavisi od odluka o izdavanju i iskorištavanju, pa to tretiraj kao vježbu specifikacije sa četiri dijela, a ne kao funkciju koju uključiš.
Odvoji korak kupovine od koraka sesije
Arhitektura Privacy Pass iz RFC 9576 daje rječnik: klijent, atestator, izdavalac i izvor. Klijent dokazuje neko svojstvo izdavaocu i prima tokene; kasnije jedan predoči izvoru, koji odlučuje da li će ga poslužiti. Primijenjeno na VPN, svojstvo koje se atestira može biti jedna jedinica pristupa.
Naplata i dalje vidi ono što njen proces traži, i nitko ne tvrdi suprotno. Uži cilj je da se kasnije iskorištavanje ne može povezati s kupovinom koja je proizvela token. To je konkretno, provjerljivo svojstvo i vrijedi ga zapisati.
Niz koji izgleda slučajno to ne daje. Ako izdavalac čuva vrijednost uz zapis korisnika, a gateway može tražiti to preslikavanje, dvije interakcije povezuje baza podataka, a ne kriptografija. Konstrukcija mora učiniti izdavaoca nesposobnim da odgovori na to pitanje, a implementacija mora spriječiti izdavaoca i gateway da spoje svoje poglede.
Odluči šta jedan token autorizuje
„Jedan token kupuje pristup” operativno ne kaže gotovo ništa. Je li jedinica jedna veza, vremenski limit ili volumen? Može li klijent koji je izgubio odgovor nastaviti isto odobrenje? Šta se dešava kada se uređaj ponovo poveže tokom promjene mreže? Ti odgovori određuju da li je rješenje upotrebljivo, i svaki od njih ima posljedicu po privatnost.
| Reuse rule | What it buys | What it leaks |
|---|---|---|
| Single use per connection | Strongest unlinkability between sessions | Frequent reissuance, more purchase-to-use timing pairs |
| Bounded time window | Fewer tokens, reconnects work | Activity inside the window is linkable |
| Long-lived grant | Operationally simple | Behaves like an account reference with extra steps |
Odaberi jednu namjerno i zapiši ponašanje pri grešci pored nje. Klijent koji nakon isteka vremena pokuša ponovo s novim pravom troši još jednu jedinicu, što je istovremeno iznenađenje na računu i signal o privatnosti.
Zapiši politiku ponovnog korištenja i opoziva
Opoziv je mjesto gdje anonimna rješenja obično prekrše vlastito obećanje. Otkazivanje pretplate i poništavanje već izdatih tokena su različite operacije, a gateway koji tiho izvrši pretragu naloga da bi odlučio prestaje biti anoniman u tom trenutku.
Odaberi rok trajanja, ograničenje izdavanja i priču o opozivu koji se uklapaju. Zatim provjeri vlastite zapise gatewaya na polja koja vraćaju vezu koju si uklonio.
sudo grep -rIl --include='*.log' -e 'Bearer ' -e 'account_id' /var/log/vpn/
Ta pretraga navodi log datoteke koje sadrže polja tokena ili naloga, što je prvo mjesto na kojem pažljivo rješenje u praksi procuri. Zapis sesije koji čuva vrijednost tokena uz identifikator naloga uništava cijelu konstrukciju, a obično stiže kroz izmjenu za otklanjanje grešaka kojoj se nitko nije vratio.
Definiraj i šta gateway zadržava nakon završetka sesije. Trajanje, bajtovi i endpoint korisni su za rad, a svaki od njih je dio slagalice koji bi posmatrač želio imati. Neka rok čuvanja i lista polja budu kratki, pa pregledaj oboje kada izmjena za otklanjanje grešaka doda kolonu. Nitko ne primijeti novo log polje dok ne stoji tu godinu dana.
Iznesi tvrdnju, a zatim zapažanja koja ostaju
Zapiši tvrdnju o privatnosti u jednoj rečenici s njenim pretpostavkama: koja strana mora biti nesposobna povezati koje kontekste i šta se dešava ako izdavalac i gateway uporede bilješke. Rješenje koje preživi tu rečenicu može se pregledati; ono koje se opisuje samo kao „nulto znanje” ne može.
Zatim navedi šta ostaje vidljivo bez obzira na sve. Izvorne adrese, vremena veza, veličine paketa i jednostavna činjenica da se kupovina dogodila nedugo prije pojave jedine nove veze sve su izvan kriptografije. Jedan korisnik koji kupi jednu jedinicu i poveže se jednom može se povezati samo po vremenu, i nijedno rješenje tokena to ne mijenja.
Iskren rezultat je uža veza između naloga i korištenja, a ne nevidljiva sesija. To i dalje vrijedi graditi, dok god dokumentacija to kaže i operativni zapisi odgovaraju tvrdnji.