SAMMANFATTNING: VPN-tjänster använder krypteringsalgoritmer och protokoll för att konvertera din webbtrafik till oläslig kod, vilket skyddar din webbaktivitet från övervakning från tredjepart. En säker VPN-tjänst ska inte använda något svagare än AES-256 för att kryptera din data.
En VPN-tunnel är helt enkelt en säker kanal som etableras mellan enheten och VPN-servern och skapar en säker, privat rutt genom offentliga internet.
Detta kallas för en tunnel eftersom din ursprungliga trafik krypteras och omsluts av ett lager okrypterad trafik.
Det är som att ta ett kuvert med ett brev i och lägga det i ytterligare ett kuvert med en ny adress på. Ditt faktiska meddelande döljs och eventuella avlyssnare kan inte se det.
Den här processen kallas inkapsling och utförs av särskilda tunnelprotokoll.
Krypteringskoder
Vid kryptering konverteras data i klartext till en hemlig kod som inte går att läsa utan nyckeln som avkrypterar den.
VPN-tjänster använder kryptering för att dölja din webbaktivitet mellan din enhet och VPN-servern och skydda dig mot olika former av övervakning.
VPN-tjänster använder krypteringskoder för att konvertera din internetaktivitet till oläslig kod. En kod är en matematisk algoritm (dvs. en uppsättning regler) som krypterar och avkrypterar data, ofta med en viss nyckellängd.
Nyckeln är en fras bestående av tecken som modifierar datan som krypteras. Bara de som har samma nyckel kan avkryptera datan.
Längre nyckellängder ger oftast högre säkerhet. T.ex. anses AES-256 vara säkrare än AES-128.
Vissa VPN-protokoll har statiska nycklar som designats för långvarig användning, medan andra använder kortlivade nycklar som förfaller efter en enda session eller transaktion.
Så fungerar krypteringskoder:
- Koden använder en nyckel som krypterar datan innan den skickas.
- Samma eller en relaterad nyckel används för att kryptera datan på mottagarsidan.
- Bara de som har rätt nyckel kan avkryptera och läsa informationen.
Vilken kod som används av en VPN avgörs ofta av i vilken grad utvecklarna prioriterade säkerhet över prestanda, eftersom starkare kod vanligen kräver mer processorkraft.
Det kommer hela tiden nya koder som anammas av framstående VPN-tjänster.
De mest använda koderna för VPN-tjänster är:
- Advanced Encryption Standard (AES)
- Bäst i branschen för kryptering.
- Finns i nyckellängderna 128-bitars och 256-bitars.
- AES-256 ger starkare skydd.
- Anses vara kvantumresistent.
- Blowfish
- Togs fram 1993 och har i hög grad ersatts av AES-256.
- 128-bitars nyckellängd (32 till 448 bitar möjligt).
- Har kända brister.
- Används som reserv till AES-256.
- ChaCha20
- En nyare kod på uppgång.
- 256-bitars nyckel.
- Jämförbar säkerhet med AES-256.
- Högre hastighet, särskilt på mobila enheter.
- Camellia
- Togs fram 2000.
- Jämförbar säkerhet och hastighet med AES.
- Inte certifierad av NIST.
- Begränsad tillgänglighet i VPN-tjänster.
Krypteringslägen avgör hur koder som AES krypterar data. De är avgörande för VPN-tjänsters säkerhet, och påverkar både sekretess och prestanda. Här är de vanligaste lägena som används av VPN-tjänster:
- CBC (Cipher Block Chaining)
- Traditionellt läge.
- Skapar en kedja av beroende block.
- Kan vara långsammare än nya lägen.
- Kräver ytterligare säkerhetsåtgärder.
- GCM (Galois/Counter Mode)
- Ger kryptering och autentisering.
- Snabbare än CBC.
- Anses vara väldigt säkert.
- Används i många moderna VPN-tjänster.
- CTR (Counter)
- Omvandlar blockkod till strömkod.
- Snabb och möjliggör parallell bearbetning.
- Ger inte autentisering i sig självt.
- Används av ChaCha20.
- OCB (Offset Codebook Mode)
- Ger autentiserad kryptering i ett enda pass.
- Väldigt effektivt.
- Begränsat införande på marknaden p.g.a. patentproblem.
Det är bäst att undvika andra lägen i VPN-tjänster. ECB (Electronic Codebook) är för simpelt för att vara säkert, medan CFB (Cipher Feedback) och OFB båda är känsliga för felkonfigurering p.g.a. sin komplexitet samt att de anses vara förlegade. Alla lägen utan integritetskontroll bör också undvikas så vida de inte används tillsammans med en separat autentiseringsmekanism.
De flesta topprankade VPN-tjänster använder numera GCM-läge med AES eller kombinationen ChaCha20 och Poly1305, eftersom detta ger en bra balans mellan säkerhet och prestanda. När vi testar VPN-tjänster tittar vi efter dessa moderna, autentiserade krypteringslägen.
VPN-protokoll
VPN-protokoll är de regler och processer som följs för att upprätta en säker anslutning mellan enheten och VPN-servern.
De avgör hur VPN-tunneln bildas och hanteras, medan krypteringsalgoritmen används för att skydda datan som skickas genom tunneln.
Varje protokoll erbjuder en unik balans mellan hastighet, säkerhet och kompatibilitet. De flesta VPN-tjänster använder ett visst protokoll som standard, men går att ändra i appens inställningar.
Vanliga VPN-protokoll:
- OpenVPN: Öppen källkod, väldigt säkert, bred kompatibilitet och mycket konfigurerbart.
- WireGuard: Väldigt snabbt och effektivt. Relativt nytt men införs mer och mer.
- IKEv2/IPsec: Bra för mobilanvändare tack vare snabb återanslutning, men har sluten källkod och är eventuellt infiltrerat.
- SoftEther: Snabbt, säkert, kringgår censur, men stöds inte av så många tjänster.
- L2TP/IPsec: Långsammare och eventuellt infiltrerat.
- SSTP: Bra på att kringgå brandväggar, men sluten källkod och potentiellt sårbart.
- PPTP: Förlegat och osäkert. Bör undvikas.
Se vår guide till VPN-protokoll för en detaljerad jämförelse.
VPN-handskakning
VPN-handskakningen är avgörande för att inleda en säker anslutning. Så här går processen till:
- Autentisering: Identiteten för VPN-klienten och servern bekräftas.
- Nyckelutbyte: Sessionens krypteringsnycklar delas på ett säkert sätt.
- Parameteravtal: Kommunikationsregler och krypteringssviter etableras.
Under en VPN-handskakning utbyter din enhet och VPN-servern information för att etablera en säker kanal. Utbytet leder till en gemensam hemlig nyckel som används för att kryptera och avkryptera data under VPN-sessionen.
I en VPN-handskakning används oftast RSA-algoritmen (Rivest-Shamir-Adleman). RSA har varit basen för internetsäkerhet under de senaste två decennierna. Nyckelns längd är dock avgörande.
För en så säker anslutning som möjligt ska du bara använda VPN-tjäsnter med RSA-2048 eller RSA-4096. RSA-1024 anses inte längre som säkert p.g.a. avancemang inom datorkraft.
Även om handskakningsprocessen är väldigt säker genereras en ”huvudnyckel” som skulle kunna avkryptera alla sessioner på servern om ett intrång skedde.
I så fall skulle en angripare kunna hacka sig in på VPN-servern och komma åt all data som färdas genom VPN-tunneln.
För att undvika det rekommenderar vi att du använder VPN-tjänster med perfekt framåtsekretess.
Perfekt framåtsekretess
Diagram som förklarar hur perfekt framåtsekretess fungerar.
Perfekt framåtsekretss (PFS) är en avgörande säkerhetsfunktion i moderna VPN-protokoll. Det använder algoritmerna Diffie-Hellman (DH) eller Elliptic Curve Diffie-Hellman (ECDH) för att generera unika, tillfälliga sessionsnycklar.
Perfekt framåtsekretess säkerställer att krypteringsnyckeln aldrig byts ut under anslutningen.
Här är några av fördelarna med PFS:
- Oberoende nyckelgenerering: Både VPN-servern och klienten hämtar samma krypteringsnyckel utan att skicka den sinsemellan.
- Sessionsisolering: Varje anslutning har en unik nyckel, vilket minskar risken för skada om intrång görs.
- Tillfällig säkerhet: Nycklarna är tillfälliga och raderas efter varje användning, vilket förhindrar framtida avkryptering av eventuell insamlad data.
Även om RSA är avgörande för autentisering kan det inte erbjuda PFS på egen hand. För att införa PFS krävs DH eller ECDH i krypteringgsviten. ECDH erbjuder ordentlig säkerhet för handskakningar, medan DH bara ska användas tillsammans med andra åtgärder p.g.a. potentiella sårbarheter.
Båda våra rekommenderade VPN-protokoll OpenVPN och WireGuard stöder perfekt framåtsekretss.
Hashautentisering
Secure Hash Algorithms (SHA) spelar en viktig roll inom VPN-säkerhet genom att
- verifiera dataintegritet under överföringen
- autentisera anslutningen mellan klient och server
- förhindra obehörig datamanipulering.
SHA:er konverterar källdata till en teckensträng med ett fast antal tecken som kallas hashvärde. Detta är en enkelriktad process som inte kan vändas – att bara ändra ett tecken i inputen ändrar outputen drastiskt.
Så fungerar detta när det gäller VPN-kommunikation:
- Avsändaren tillämpar en avtalad hashfunktion på datan.
- Mottagaren genererar en hash av den mottagna datan med samma funktion.
- Om den genererade hashen stämmer med den överförda hashen bekräftas datans integritet.
- Felmatchade hashar tyder på eventuell manipulering. I så fall raderas datan.
SHA:s hashautentisering förhindrar man-i-mitten-attacker genom att upptäcka certifikatmanipulering, vilket stoppar hackare från att imitera legitima VPN-servrar.
För maximal säkerhet rekommenderar vi VPN-tjänster som använder SHA-2 eller högre. SHA-1 har kända sårbarheter som kan äventyra säkerheten.