Tehnički opis Psiphona
03. 12. 2014. - 3 min čitanja
Ažurirano: 04. 06. 2021.
Evo novosti koje daju odgovore na dva nedavna pitanja: jednostavno rečeno, što je Psiphon i po čemu se razlikuje od VPN usluge; te što se promijenilo od posljednjeg ažuriranja dokumenta o tehničkom dizajnu.
Psiphon 3 je centralno upravljana, geografski raznolika mreža od više tisuća proxy poslužitelja. Većina naše infrastrukture smještena je kod pružatelja usluga u oblaku. Psiphon 3 ima arhitekturu od „jednog skoka” sa sigurnom enkripcijom veze između klijenata i poslužitelja. Nudimo klijente za najpopularnije platforme: Windows, Android i iOS (u alfa fazi).
Psiphon je otvorenog koda. Naša usluga nudi strogu politiku privatnosti; ne postoje korisnički računi, a mrežne adrese korisnika se ne bilježe.
Psiphon se razlikuje od standardnih VPN usluga na nekoliko ključnih načina:
- Primjenjujemo strategije distribucije podskupova poslužitelja korisnicima s ciljem pružanja svakom korisniku nekolicine poslužitelja koje može dosegnuti, a da se pritom ne otkrije cijela mreža jednom korisniku. Da bi se postigao ovaj cilj, veličina naše mreže – a posebno raznolikost naših mrežnih adresa – nije samo funkcija opterećenja našeg prometa.
- Koristimo obfuskaciju protokola kako bismo zaobišli DPI blokiranje.
Psiphonov dokument o tehničkom dizajnu je zastario i u nastavku donosimo vrlo kratak sažetak glavnih tehničkih promjena koje smo uveli od pokretanja projekta 2011. godine.
- Dodali smo protokol obfuscated SSH kako bismo ublažili DPI prepoznavanje uzoraka (fingerprinting). Ovaj protokol potpuno nasumičnog izgleda implementiran je s jedinstvenim ključem za obfuskaciju po svakom Psiphon poslužitelju.
- Našem smo protokolu dodali neobavezni HTTP prefiks kako bismo ublažili propuštanje HTTP prometa temeljeno na DPI bijelim listama. Ovaj jednostavan prefiks dovoljan je da DPI sustavi temeljeni na regularnim izrazima (nDPI i l7-filter) klasificiraju Psiphon promet kao HTTP; i bio je dovoljan da nadmudri stvarnog protivnika u trenutku kada smo ga uveli.
- Dodali smo popise udaljenih poslužitelja kako bismo dopunili koncepte ugrađenih i poslužitelja za otkrivanje. Dok se otkrivanje odvija samo kada ste povezani na postojeći poslužitelj, popisi udaljenih poslužitelja mogu se preuzeti čak i kada su svi poslužitelji blokirani. Popisi udaljenih poslužitelja distribuiraju se na S3 i pristupa im se putem https://s3.amazonaws.com bez razlikovnog naziva spremnika (bucket) u URL-u. Na taj je način protivniku teško blokirati naše popise udaljenih poslužitelja bez blokiranja cijelog S3 ili uvođenja analize HTTPS prometa.
- E-pošta je sada glavni mehanizam za širenje klijenata. Imamo sustav automatskog odgovora koji vraća poveznice i privitke za prilagođene Psiphon klijente sponzora/kanala, ovisno o adresi e-pošte na koju korisnici šalju upit.
- Objavili smo Android klijenta 2012. godine. Prva verzija uključivala je ugrađeni preglednik temeljen na Androidovom WebViewu. U 2012./2013. dodali smo podršku za tuneliranje cijelog uređaja, koje usmjerava sve Android aplikacije kroz Psiphon. Imamo način rada za cijeli uređaj putem iptablesa (za rootane uređaje s Androidom 2.2+); te način rada za cijeli uređaj koji koristi Androidov VpnService uz tun2socks (za bilo koji uređaj s Androidom 4+). Dodatne uvedene značajke uključuju odabir izlazne regije i ulančavanje proxyja.
- Sada imamo iOS klijenta u alfa testiranju. Ova aplikacija ima ugrađeni preglednik.
- Naš mehanizam za povratne informacije unutar aplikacije šalje nam poruke i neobavezne dijagnostičke podatke od korisnika. Ovaj nam je sustav pomogao riješiti mnoge probleme s platformama i poteškoće s blokiranjem.
- Promjene algoritama za otkrivanje: naši algoritmi za otkrivanje razvijaju se u sklopu stalnog procesa optimizacije naše mreže. Glavne promjene uključuju dijeljenje poslužitelja za otkrivanje kroz kanale širenja; i dodavanje doba dana kao dimenzije.
- Optimizacije algoritama za povezivanje: naši klijenti sada pri povezivanju istovremeno pokreću veze prema mnogim poslužiteljima i zadržavaju „najbolju” vezu. To pomaže u balansiranju opterećenja, kao i u smanjenju vremena čekanja korisnika jer pojedinačni blokirani poslužitelji ne zaustavljaju slijed povezivanja.
- Automatska nadogradnja klijenta poboljšana je uvođenjem inkrementalnog preuzimanja i korištenjem vanjskih (out-of-band) lokacija za preuzimanje (provjerenih digitalnim potpisima). Te su promjene povećale vjerojatnost da se novi klijent može distribuirati u trenucima blokiranja.