Obsah článku
- 1 Pozadie protokolov: OpenVPN a WireGuard
- 2 Rýchlosť: OpenVPN vs WireGuard
- 3 Šifrovanie: OpenVPN vs WireGuard
- 4 Bezpečnosť: OpenVPN vs WireGuard
- 5 Audit, kontrola kódu: OpenVPN vs WireGuard
- 6 Zásadná vlastnosť WireGuard – plne integrovaný v jadre Linuxu
- 7 Kto ochráni súkromie na internete lepšie? OpenVPN vs WireGuard
- 8 Záver
Dnes sa pozrieme na asi dva najlepšie VPN protokoly, ktoré je dnes možné použiť pre efektívne fungovanie výhod VPN služieb za súčasne zachovaného pôžitku z rýchlosti internetu ako takého. Urobiť kompromis medzi bezpečnosťou, súkromím a rýchlosťou internetu je extrémne náročná úloha. VPN protokoly sa neustále vyvíjajú a v súčasnosti existujú vedľa seba iba 2 protokoly, ktoré sú špičkou v segmente – OpenVPN a WireGuard. Predtým, ako sa ponoríme do technických údajov, rýchlo preskúmajme pozadie každého protokolu VPN.
Pozadie protokolov: OpenVPN a WireGuard
OpenVPN je VPN protokol, ktorý pozostáva zo softvéru s otvoreným zdrojovým kódom vyvinutým Jamesom Yonanom a publikovaným pod licenciou GNU General Public License (GPL). Začiatkom roku 2001, odkedy vznikol, sa stal takmer okamžite najpoužívanejším protokolom VPN a vďaka svojej flexibilite, spoľahlivosti a schopnosti prekračovať sieťové prekladače adries (NATS) a firewally je dnes asi najkomplexnejším, pričom je jednoznačným lídrom u takmer všetkých poskytovateľov kvalitných VPN služieb.
WireGuard je naproti tomu úplne nový VPN protokol, ktorý má byť lepší ako sú súčasné možnosti najznámejších protokolov ako IPSec a hlavne súčasný líder OpenVPN. Definujú ho ako mimoriadne jednoduchý, ale najmä ako rýchly a moderný VPN protokol, ktorá využíva najmodernejšiu kryptografiu. Má za cieľ byť výrazne výkonnejší ako OpenVPN. WireGuard je navrhnutý ako univerzálny VPN server pre beh na zabudovaných rozhraniach a super počítačoch, vhodný pre rôzne účely. Pôvodne bol vydaný pre Linuxové jadro a teraz je aj multiplatformový (Windows, MacOS, BSD, iOS, Android) a je tak široko nasaditeľný.
Zistený rozdiel:
Zatiaľ čo zdrojový kód pre OpenVPN obsahuje stovky tisíc riadkov, kód pre WireGuard má v súčasnosti okolo 4 000 riadkov. To v kombinácii s použitím najmodernejšej kryptografie vedie k výsledkom, ktoré mnohí ľudia určite ocenia.
Rýchlosť: OpenVPN vs WireGuard
Mnoho ľudí prechádza na protokol WireGuard práve kvôli jednej kľúčovej výhode a to nekompromisnému výkonu – rýchlosti prenosu dát. Doterajšie štúdie a testy ukazujú, že nielenže ponúka vyššie rýchlosti, WireGuard je tiež rýchlejší pri nadväzovaní spojenia a je spoľahlivejší aj na mobilných zariadeniach. Ak sa doteraz vykonávali testy rýchlosti internetu za pomerne ideálnych podmienok, vždy WireGuard dosahoval v priemere o viac ako 50% zvýšenie downloadu/uploadu. Zlepšenie výkonu WireGuardu oproti OpenVPN je tiež vyššie v prípade VPN serverov vo fyzickej blízkosti s nízkou latenciou v porovnaní s umiestneniami na serveroch na veľké vzdialenosti s vysokou latenciou. Ak teda chcete dosiahnuť najvyššiu rýchlosť VPN , použite WireGuard na čo najbližšom serveri k vášmu fyzickému umiestneniu. Máme v úmysle vykonať viac testov porovnávajúcich rýchlosti WireGuard a OpenVPN s viacerými miestami a podľa toho budeme aktualizovať naše výsledky testov aj v praxi.
Zistený rozdiel
Pri rýchlostných testoch, ktoré boli doteraz vykonané, poskytuje WireGuard za normálnych okolností oveľa lepší výkon ako OpenVPN
Šifrovanie: OpenVPN vs WireGuard
Kryptografické algoritmy OpenVPN. OpenVPN používa knižnicu OpenSSL na zabezpečenie šifrovania. OpenSSL podporuje množstvo rôznych kryptografických algoritmov vrátane:
- AES, Blowfish, Camellia, ChaCha20, Poly1305, DES, Triple DES, GOST 28147-89, SM4 a iné pre šifrovanie a autentifikáciu
- MD5, MD4, SHA-1, SHA-2, MDC-2, BLAKE2, a ďalšie pre hashovanie
- RSA, DSA, X25519, Ed25519, SM2 a iné pre odvodenie verejných a súkromných kľúčov
- UDP or TCP ako protokol Transport Layer
- Perfect Forward Secrecy na ochranu údajov používateľa
Táto škála algoritmov robí OpenVPN veľmi agilným a široko spektrálnym. To znamená, že je možné použitie rôznych algoritmov v závislosti od zadefinovaných okolností. Vďaka tomu je OpenVPN veľmi flexibilný, ale výrazne sa tým zvyšuje aj zložitosť kódu. Zložitosť OpenVPN môže spomaliť jeho vykonávanie, čo je jeden z hlavných dôvodov, prečo ľudia hľadajú WireGuard ako možnú náhradu.
Kryptografické algoritmy WireGuardu sa naproti tomu výrazne líšia od filozofie OpenVPN, pokiaľ ide o kryptografické algoritmy. Zatiaľ čo OpenVPN je flexibilný s algoritmami, ktoré používa, každá verzia WireGuard používa jednu pevnú sadu algoritmov.
Aktuálna, oficiálna verzia WireGuard (v 1.0) používa nasledujúce:
- ChaCha20 pre symetrické šifrovanie
- Poly1305 na autentifikáciu pomocou konštrukcie AFC RFC7539
- Curve25519 pre anonymné kľúče Diffie-Hellman (ECDH) s eliptickou krivkou
- BLAKE2 pre hashovanie (RFC7693)
- SipHash24 pre hashtable kľúče
- HKDF na odvodenie kľúča (RFC5869)
- UDP ako protokol Transport Layer
- Perfect Forward Secrecy (PFS) na ochranu údajov používateľa
WireGuard sa líši od OpenVPN tým, že OpenVPN používa certifikáty na identifikáciu a šifrovanie. WireGuard používa pre tieto úlohy šifrovanie pomocou verejného kľúča. Zabezpečené generovanie a správa kľúčov sa vykonáva na pozadí a tak existuje možnosť vopred zdieľať kľúč pre ďalšiu úroveň zabezpečenia.
Zistený rozdiel
OpenVPN môže prevádzkovať mnoho rôznych šifier a protokolov, ale táto obratnosť so sebou prináša nárast komplikovanosti, väčšiu šírku útoku, ktorú môžu hackeri zneužiť, a asi aj možnú náchylnosť na častejšie útoky. Naproti tomu každá verzia WireGuard prevádzkuje iba jednu sadu šifier a protokolov. To vedie k menšej zložitosti (a oveľa menšiemu počtu riadkov zdrojového kódu), menšej útočnej ploche a imunite voči útokom. Ak sa však vyskytne problém v ktoromkoľvek segmente či šifre alebo protokole použitom v aktuálnej verzii, vynúti si to aktualizáciu všetkých koncových bodov na novú verziu programu WireGuard, čo zvyšuje náklady.
Bezpečnosť: OpenVPN vs WireGuard
OpenVPN nemá žiadne známe bezpečnostné chyby. Zdrojový kód bol mnohokrát preverený a má podporu mnohých bezpečnostných expertov. Taktiež WireGuard je veľmi bezpečný. Využíva rýchlejšie a najmodernejšie bezpečné šifrovanie a algoritmy. Jeho malá kódová základňa uľahčuje audit a zároveň ponúka menšiu útočnú plochu pre kohokoľvek, kto sa pokúša o prienik. Ale v dôsledku pevnej sady algoritmov vzniká obava, že okamžite po objavení akejkoľvek bezpečnostnej diery je potrebné aktualizovať všetky koncové body, čo pri posledných zisteniach výskytu slabých miest v SSL/TLS zvyšuje časovú náročnosť opravy, najmä z pohľadu rýchlosti a nutnosti takejto opravy. Bez toho totiž nemá zmysel ďalej používať takto nastavenú VPN službu.
Zistený rozdiel
Pre obidva protokoly nie sú známe žiadne bezpečnostné chyby. Ak je bezpečnosť najvyššou prioritou, konzervatívnou možnosťou je v prvom rade OpenVPN. Jednoducho preto, že prešiel viacerými bezpečnostnými auditami tretích strán a má oveľa dlhšiu históriu ako WireGuard. Avšak ako WireGuard postupne „dozrieva“, jeho aktualizované šifrovacie algoritmy a minimálna základňa zdrojového kódu ho robia oveľa viac atraktívnejším a v budúcnosti bude, podľa nášho názoru, aj viac presadzovaný.
Audit, kontrola kódu: OpenVPN vs WireGuard
Ak chcete vedieť, či môžete dôverovať protokolu VPN, musí byť auditovateľný. Je to totiž jeden z hlavných dôvodov, prečo väčšina zástancov ochrany osobných údajov a súkromia na internete preferuje softvér s otvoreným zdrojom. Ale len preto, že kód je definovaný ako otvorený zdroj (open source), nie je ľahké ho vždy auditovať. Príkladom toho je práve OpenVPN protokol, ktorý je v princípe auditovateľný, skontrolovateľný. Ale stovky tisíc riadkov kódu vyžadujú v skutočnosti celý tím odborníkov a veľmi veľa času. To naopak nehrozí pri audite WireGuardu, ktorý je tiež open source, ale skontrolovať okolo 4 000 riadkov kódu je oveľa jednoduchšie, či z časového hľadiska alebo ľudského kapitálu.
Zistený rozdiel
Pokiaľ ide o audit zdrojového kódu, WireGuard víťazí.
Zásadná vlastnosť WireGuard – plne integrovaný v jadre Linuxu
WireGuard je od oficiálneho vydania (v1.0) včlenený priamo do jadra systému Linux. Výsledkom je rýchly a efektívny VPN protokol bežiaci pod OSI Layer 3, čoho dôsledkom je priamy prístup k sieťovým smerovacím tabuľkám a dátovým paketom, čo pomáha predovšetkým s rýchlosťou a zjednodušením autentifikácie ako aj prideľovaním dátových paketov. Prítomnosť WireGuardu v jadre Linuxu je jedným z kľúčových dôvodov pre jeho vyšší výkon v porovnaní s OpenVPN alebo inými protokolmi, ktoré bežia vždy len v používateľskom priestore operačného systému, priamo závislé od jeho pridelených zdrojov.
Kto ochráni súkromie na internete lepšie? OpenVPN vs WireGuard
Protokoly VPN poskytujú bezpečnosť, avšak nemusia nevyhnutne v základe poskytovať aj toľko žiadané súkromie. Vaše súkromie na internete pri používaní VPN služieb určujú jednotlivé zásady poskytovateľa služieb VPN. Ide v prvom rade najmä to, či dotyčná VPN služba (ne)uchováva záznamy o prihlásení a používaní VPN služby (tzv. No log Policy).
Koncepcia OpenVPN nevyžaduje uchovávanie takýchto užívateľských údajov na VPN serveri, takže to neohrozuje vaše súkromie. Čo však pri WireGuarde? Koncept WireGuard bol navrhnutý predovšetkým pre rýchlosť a bezpečnosť. Nebol špeciálne navrhnutý pre ľudí, ako sme my, ktorí hľadajú svoju VPN službu aj z hľadiska zabezpečenia ochrany súkromia na internete. S cieľom poskytnúť používateľom výhody technológie WireGuard však VPN služby prišli s riešeniami WireGuard pre VPN, ktoré pridávajú ďalšiu vrstvu ochrany súkromia bez obetovania toho, čo vlastne robí WireGuard špeciálnym. V rámci svojho algoritmu prenosu šifrovania WireGuard mapuje verejné kľúče a jednotlivé IP adresy. Zjednodušujú sa tým určité aspekty programu WireGuard, ale v predvolenom nastavení to vedie k tomu, že IP adresy používateľov zostávajú uložené na VPN serveri dovtedy, kým sa server znova nereštartuje. Uloženie vašej IP adresy na takýto server by sa mohlo považovať za protokolovanie vašej IP adresy a to je nezlučiteľné s koncepciou VPN služieb, ktoré fungujú práve a hlavne na princípe neprotokolovania. Okrem toho by táto statická adresa IP adresa mohla byť odhalená aj únikom cez WebRTC.
Ako je vyriešený problém ochrany súkromia VPN služby pri WireGuard?
Napr. spoločnosť NordVPN vyvinula pre svoju implementáciu WireGuard protokolu systém dvojitého NAT, ktorý nazývajú NordLynx. Systém vytvára dve lokálne sieťové rozhrania pre každého používateľa. Prvé rozhranie prideľuje lokálnu IP adresu všetkým používateľom pripojeným k serveru. Na rozdiel od pôvodného protokolu WireGuard dostane každý používateľ rovnakú IP adresu. Po vytvorení tunela VPN sa spustí druhé sieťové rozhranie s dynamickým systémom NAT. Pre každý tunel systém pridelí jedinečnú adresu IP. Týmto spôsobom môžu internetové pakety cestovať medzi používateľom a požadovaným cieľom bez toho, aby sa zmiešali. Dvojitý systém NAT umožňuje nadviazať bezpečné pripojenie k VPN bez uloženia akýchkoľvek identifikovateľných údajov na serveri. Dynamické lokálne adresy IP zostávajú pridelené iba počas aktívnej relácie. Medzitým sa autentifikácia užívateľa vykonáva pomocou zabezpečenej externej databázy.
Viac informácií o NordVPN a NordLynx nájdete tu.
Toto riešenie je teraz dostupné pre všetkých klientov NordVPN v základe. Niektoré iné VPN služby zase riešia problém ochrany súkromia WireGuard vymazaním záznamov, ktoré mapujú IP adresy akonáhle medzi klientom a VPN serverom neexistuje komunikácia v rámci určitého časového úseku (štandardne niekoľko minút). Uchovávajú údaje o IP adrese iba dovtedy, kým je to potrebné. Týmto výrazne znižuje riziko odhalenia akýchkoľvek osobných údajov. Riešenie NordVPN je podľa nášho názoru v súčasnosti najlepšie.
Záver
Posledný bod jednoznačne poukazuje na opodstatnenosť využívania protokolu OpenVPN aj naďalej, napriek skvelému nástupu WireGuard. Ak je ochrana súkromia najvyššou prioritou, odporúčame vám používať iba riešenia, ktoré vylúčia tento potenciálny problém s ukladaním IP adries, ako je uvedené v príklade vyššie: NordLynx spoločnosti NordVPN je riešením, ktoré momentálne využívame takmer vždy a musíme oceniť hlavne stabilnú rýchlosť, na ktorú sa zvyká asi najviac. Očakávame, že aj ďalšie VPN služby začnú v plnej miere postupne využívať nový protokol WireGuard, ktorý v budúcnosti pravdepodobne ponúkne ešte vyššie štandardy šifrovania a ochrany osobných údajov. Máme tu teda konečne nástupcu služobne staršieho OpenVPN protokolu? Vyzerá to tak, že áno!
WireGuard bol oficiálne vydaný pod verziou 1.0 (už nie je len experimentálnym kódom). WireGuard bol zároveň začlenený do Linuxového jadra. Mnoho testov preukázalo významnú výhodu vo výkone, ktorú má WireGuard oproti existujúcim protokolom VPN, najmä OpenVPN, ktorý v tomto patril ku špičke.
Vyskúšajte WireGuard sami. Aj keď existuje niekoľko poskytovateľov VPN, ktorí podporujú WireGuard, našou odporúčanou VPN službou pre WireGuard je NordVPN. Poskytuje rýchlosť, bezpečnosť, súkromie a mnoho ďalších výhod, ako sme uviedli aj v našej recenzii o NordVPN.
Tu môžete získať 70% zľavu na NordVPN a vyskúšať si WireGuard bez rizika na 30 dní