VPN działa w trzech krokach: szyfruje dane jeszcze na Twoim urządzeniu, przesyła je zabezpieczonym tunelem do serwera VPN, a serwer odszyfrowuje je i łączy się z docelową stroną w Twoim imieniu. Po drodze nikt nie widzi treści ani celu połączenia, a strona docelowa widzi adres IP serwera VPN zamiast Twojego. Schematycznie:

Twoje urządzenie -> zaszyfrowany tunel -> serwer VPN -> strona internetowa

Poniżej rozkładamy ten proces na części - łącznie z tym, co w standardowym połączeniu faktycznie jest widoczne, bo tu narosło sporo mitów.

Jak działa standardowe połączenie z internetem

Bez VPN Twoje urządzenie łączy się ze stronami bezpośrednio, a ruch przechodzi przez sieć dostawcy internetu:

Twoje urządzenie -> dostawca internetu -> strona internetowa

Wbrew temu, co sugeruje wiele poradników, treść większości połączeń jest dziś zaszyfrowana i bez VPN - niemal cały ruch WWW korzysta z protokołu HTTPS, więc dostawca internetu nie odczyta zawartości stron, haseł ani wiadomości. Widzi jednak metadane: z jakimi domenami się łączysz (z zapytań DNS i nagłówków połączeń), kiedy i jak intensywnie. To wystarcza do zbudowania szczegółowego obrazu Twojej aktywności, a polscy operatorzy mają obowiązek przechowywania danych o połączeniach przez 12 miesięcy.

Do tego dochodzą dwie słabości. W publicznych sieciach Wi-Fi metadane oraz resztki nieszyfrowanego ruchu może podejrzeć każdy w tej samej sieci. A Twój adres IP jest widoczny dla każdej odwiedzanej strony, która na jego podstawie określa lokalizację i wiąże aktywność z Twoim łączem.

Jak działa połączenie przez VPN

Po kliknięciu "Połącz" aplikacja VPN wykonuje kolejno:

  1. Uwierzytelnienie - łączy się z wybranym serwerem VPN i potwierdza, że masz prawo z niego korzystać (dane Twojego konta).
  2. Negocjację kluczy szyfrujących - urządzenie i serwer uzgadniają klucze, którymi będą szyfrować transmisję; współczesne usługi używają szyfrów AES-256 lub ChaCha20, w praktyce niemożliwych do złamania.
  3. Zestawienie tunelu - od tej chwili każdy pakiet danych jest szyfrowany i zamykany w dodatkowym pakiecie zaadresowanym do serwera VPN (tzw. enkapsulacja). Dla sieci po drodze wygląda to jak jednostajny strumień danych do jednego adresu.

Serwer VPN odszyfrowuje pakiety i wysyła je do docelowych stron ze swoim adresem nadawcy, a odpowiedzi szyfruje i odsyła tunelem do Ciebie. Dostawca internetu widzi więc tylko zaszyfrowane połączenie z serwerem VPN - bez domen i treści - a odwiedzane strony widzą adres IP serwera, współdzielony z innymi użytkownikami tej usługi.

Co się dzieje z zapytaniami DNS

DNS to internetowa książka telefoniczna - zamienia wpisywane adresy stron na numeryczne adresy serwerów. Bez VPN zapytania DNS obsługuje zwykle dostawca internetu i właśnie z nich najłatwiej odczytać, jakie strony odwiedzasz. Poprawnie działający VPN kieruje zapytania DNS przez tunel do własnych serwerów DNS, domykając tę lukę. Sytuacja, w której zapytania mimo tunelu trafiają do dostawcy internetu, to DNS leak - można ją wykryć darmowymi testami szczelności (np. wpisując w wyszukiwarkę "DNS leak test") i jest to jedna z pierwszych rzeczy wartych sprawdzenia po zakupie usługi.

Kto co widzi przy połączeniu VPN

Rozkład wiedzy o Twoim ruchu wygląda tak: dostawca internetu widzi sam fakt połączenia z serwerem VPN i ilość przesyłanych danych, ale nie domeny ani treść. Odwiedzana strona widzi adres IP i lokalizację serwera VPN oraz wszystko, co sam jej przekażesz (logowanie, ciasteczka). Dostawca VPN jest jedynym punktem, przez który przechodzi ruch w postaci pozwalającej powiązać Cię z odwiedzanymi stronami - dlatego fundamentem usługi jest polityka no-log potwierdzona zewnętrznym audytem, a darmowe aplikacje bez takiej polityki potrafią być gorsze dla prywatności niż brak VPN.

Czy VPN spowalnia internet

Tak, z natury działania: dane pokonują dodatkowy dystans do serwera VPN i z powrotem, a szyfrowanie dokłada niewielki narzut obliczeniowy. Przy nowoczesnych protokołach i serwerze w pobliżu spadek jest zwykle nieodczuwalny w codziennym przeglądaniu i streamingu, rośnie natomiast z odległością - połączenie przez serwer na innym kontynencie podniesie opóźnienia zauważalnie, co ma znaczenie głównie w grach online. Praktyczna zasada: do ochrony prywatności wybieraj serwer najbliższy geograficznie, dalsze lokalizacje zostaw sytuacjom, gdy potrzebujesz adresu IP z konkretnego kraju.