I och med att utvecklingen kring kvantdatorer går i rasande takt börjar vissa känna osäkerhet inför dess påverkan på de krypteringsalgoritmer som vi använder idag. Innan vi går in på påverkan på kryptering kan vi ta en snabbkurs i hur en kvantdator fungerar.
En traditionell dator arbetar med logiska grindar (transistorer) som enbart kan anta lägena 1 eller 0, så kallade bits. Även om vi idag har processorer som har nästan 40 miljarder transistorer (AMD Epyc) så är det ändå samma gamla beräkningsteknik som gäller i grunden. Istället för bits arbetar en kvantdator istället med så kallade qubits (kvantbitar) där varje bit kan anta värdet 0 och 1 samtidigt. Detta leder till att en kvantdator är extremt bra på att snabbt räkna ut komplexa algoritmer och behandla stora datamängder.
För att förstå vilken påverkan en kvantdator har på kryptering behöver vi skilja på asymmetrisk och symmetrisk kryptering. Asymmetrisk kryptering bygger på en algoritm, till exempel Diffie-Hellman eller RSA, som medför att man på ett säkert sätt kan överföra data mellan två parter, även om dessa inte tidigare har haft någon kontakt eller delar någon information sedan tidigare.
Asymmetrisk kryptering är bra till exempel då en klient på internet ska ansluta med https till en banktjänst, och denna typ av kryptering är grunden i all certifikathantering. Data som krypterats med den ena halvan av nyckelparet som du får i ett certifikat kan enbart dekrypteras av den andra halvan, som enbart servern har tillgång till.
Asymmetrisk kryptering kräver mycket processorkraft
Problemet med asymmetrisk kryptering är att den kräver mycket processorkraft, även om du har tillgång till båda nyckelhalvorna. Säkerheten bygger på att det är extremt stora tal som behöver faktoriseras (tal med minst 2048 bitars storlek) vilket idag skulle ta extremt lång tid att beräkna. Säkerheten i asymmetrisk kryptering bygger alltså på begränsningar i dagens beräkningskapacitet i datorerna. På grund av kvantdatorernas intåg förväntar sig National Institute for Standards and Technology (NIST) att RSA-algoritmen troligen inte kan anses säker efter år 2030. OCh i mars 2021 publicerades en vetenskaplig artikel som hävdar att RSA redan nu går att förstöra.
Symmetrisk kryptering bygger på att båda parter har tillgång till samma krypteringsnyckel, något som resulterar i en mycket snabbare hantering av krypteringen. En mycket populär symmetrisk algoritm just nu är AES (med varianter som CBC eller GCM) som är snabb och mycket säker. Symmetriska krypton har funnits under lång tid, tex användes det i den Tyska kryptomaskinen Enigma som de allierade lyckades knäcka under andra världskriget.
Man vill alltså helst använda symmetrisk kryptering eftersom detta är mycket snabbare och effektivare. Problemet har alltid legat i att på ett säkert sätt överföra den symmetriska nyckeln, något som löstes med den asymmetriska krypteringen. Idag används alltså ofta en kombination av båda metoderna, där man enbart använder asymmetrisk kryptering för att överföra den symmetriska nyckeln. För all löpande kryptering används sedan den symmetriska nyckeln. Detta förlopp händer till exempel varje gång du ansluter till en sajt via https och används också i många andra sammanhang, som till exempel kryptering av e-post mellan servrar på internet.
Därför är kvantdatorn ett hot
Vad är det då som hotas av kvantdatorer? Ett symmetriskt krypto som AES påverkas inte nämnvärt eftersom det inte finns något sätt att komma åt den krypterade informationen utan att ha nyckeln. Framtida kvantdatorer kan minska tiden att göra en så kallad ”brute force”-attack på ett symmetriskt krypto med en faktor av kvadratroten ur den nuvarande nyckellängden (Grovers algoritm), men med tanke på den extrema beräkningskraft som ändå behövs för att knäcka AES med en mycket lång nyckel (minst 256 bitar) är det mycket lång tid kvar innan ens de starkaste kvantdatorerna kan genomföra effektiva attacker.
Bekymret är större med asymmetrisk kryptering. Denna bygger som sagt på att det idag är mycket krävande för en dator att faktorisera stora tal, och är det något en kvantdator är bra på så är det att genomföra sådana beräkningar med hjälp av Shor’s algoritm. Om någon på internet med tillgång till en kvantdator avlyssnar ett nyckelutbyte (eller har spelat in en sådan sedan tidigare) skulle denne kunna knäcka den asymmetriska krypteringen, få tillgång till den symmetriska nyckeln och därefter kunna dekryptera den information som skickas.
Det kanske allra största hotet ligger dock i att certifikaten för de företag som i sin tur utfärdar certifikat (root certs) kan attackeras, och plötsligt kan en annan aktör utge sig för att vara till exempel Microsoft, Google eller en bank. Vi förstår nu att hela den globala säkerhetskedjan av certifikat är potentiellt i fara och något måste göras.
För att försöka komma till rätta med detta problem har ett antal olika initiativ tagits för att hitta metoder att genomföra krypterad kommunikation även i en värld där vi har kvantdatorer. Detta kallas för ”Post Quantum Cryptography”, PQC.
Gitterbaserad och kodbaserad kryptering
När en ny standardiserad symmetrisk krypteringsalgoritm behövde utses för att efterträda 3DES, utlyste NIST en ”tävling” där olika algoritmer ställdes mot varandra. AES vann som bekant, och nu gör NIST en liknande övning avseende asymmetriska algoritmer som är resistenta mot kvantdatorer.
Detta görs i olika ”ronder” där svagare kandidater sorteras bort. Covidpandemin har försenat tidschemat något men förhoppningen är att en ny standard kan presenteras under 2022.
Läget just nu är att två typer av kryptering har klart flest förslag på implementationer, dessa är gitter-baserad- och kodbaserad kryptering. Det finns också en ensam deltagare av typen Super-singular Elliptic Curve Isogeny som kallas SIKE.
Gitterbaserad kryptering (en. lattice-based) bygger på att det är matematiskt väldigt svårt att lokalisera vilken punkt i ett gitter som är närmast en fastslagen målpunkt när man räknar med fler dimensioner än tre. Denna typ av beräkningar är mycket svåra att genomföra även för en kvantdator. En Lattice-baserad nyckel enligt standarden NTRU är ca 6 kilobyte stor.
Kodbaserad (en. Code-based McEliese) kryptering bygger på felkorrigerande kod, mer specifikt baserad på den så kallade Goppa Codes-algoritmen. En nackdel med detta krypto är att den ena halvan av en kod-baserad nyckel enligt standarden McEliese kan vara ända upp till 1 megabyte stor.
Kodbaserad kryptering föreslogs som den bästa lösningen redan 2015 av ett EU-finansierat initiativ kallat PQCRYPTO. Samma grupp namnger också NTRU Lattice-baserad lösning som ett alternativ som utvärderas noga.
Kvantdatorskapat krypto
Förutom dessa nya algoritmer som kan genereras och användas på dagens datorer finns kanske också möjligheten att i framtiden använda en kvantdator för att skapa själva krypteringen. Man kan då troligen åstadkomma en extremt säker, möjligen fullständigt oknäckbar, kryptering eftersom ingen kan avlyssna ett sådant krypto utan att förändra själva informationen, eftersom kvantstatusen påverkas av själva observationen i sig.
Detta får dock anses ligga en bit in i framtiden då kvantdatorer under överskådlig tid troligen förblir kostsamma och reserverade för ett fåtal organisationer och knappast är något som gemene man eller normala företag kan ha i sin ägo.
Faktum är att PQC redan finns i drift, om än på experimentstadiet. Hosting-företaget Cloudflare gör det möjligt att aktivera PQ Crypto på sina sajter och Googles webbläsare Chrome har experimentellt stöd för det också. Dessa företag vill kunna börja undersöka praktiska effekter och fördröjningar redan nu.
De använder idag två olika algoritmer, vara den ena är gitter-baserad NTRU. Vissa utfärdare av certifikat har också börjat stödja PQC, som till exempel Digicert. Det är dock mycket tidigt, ingen standard finns fastslagen och knappt några klienter kommer att kunna dra nytta av ett sådant certifikat, men det är ju alltid intressant med företag som experimenterar med teknik i framkant.
Det ska bli mycket spännande att se vad den tävling NIST håller resulterar i, och vilken ny algoritm som anses vara den bästa avseende skydd mot både dagens traditionella datorer och framtida kvantdatorer. Asymmetrisk kryptering som vi känner den idag har troligen gått i graven om 10 år och ersatts av en PQC-algoritm istället.
Kryptering är inte meningslöst eller ett förlorat område utan även i framtiden kan vi överföra information på ett säkert sätt, det gäller ”bara” att världen i god tid går över till ett nytt sätt att hantera nyckelutbyte med en ny standard.
Läs också:
Forskare hävdar att RSA-algoritmen är knäckt. Hur går det nu med krypteringen?
Forskarnas ”misstag” löste matematiskt problem – och kan leda till nytt slags kvantdator