Utvecklingen av kvantdatorer går sakta men säkert framåt, men praktiskt användbara kvantdatorer som löser praktiska problem är åratal bort, förmodligen decennier. Och även fullt fungerande kvantdatorer kommer inte att kunna lösa alla problem, eller knäcka alla typer av kryptering.

Kvantdatorer är inga universalmaskiner, utan det kommer att finnas gott om arbetsuppgifter som klassiska datorer är bättre på att utföra, hur bra kvantdatorerna än blir, och att kvantdatorer skulle kunna bli lika billiga och kostnadseffektiva som vanliga datorer verkar inte troligt med tanke på hur tekniken fungerar idag. Troligen kommer kvantdatorn för lång tid framöver att vara en nischprodukt ämnad för specifika datalogiska problem och uppgifter.

Utmaningen med kvantdatorer är att ”processorerna” är väldigt känsliga och instabila. Bitarna, som utgörs av kvantpartiklar och kallas qbits, kan inneha värdet noll och ett på samma gång, så kallad superposition, tills man gör en avläsning, varpå värdet stabiliseras till endera noll eller ett med en viss sannolikhet. Man kan idag inte säg att en qbit har till exempel värdet ett, utan det är sannolikt att den har värdet ett, men eftersom det rör sig om en sannolikhet kan det även vara tvärtom, det vill säga att värdet är fel.

Kräver massiv parallellisering

Kvantdatorerna måste kylas ned till extremt låga temperaturer för att de ska fungera, och de är dessutom mycket känsliga för yttre påverkan som små stötar eller förändringar i temperaturen. Dessa yttre påverkansfaktorer gör qbitarna instabila och det avlästa värdet blir fel och måste korrigeras. Detta är en viktig anledning till varför antalet qbitar inte enkelt kan utökas, eftersom det sannolika felet multipliceras för varje qbit, och gör att vi endast kan komma upp i de femtiotal qbitar dagens bästa kvantdatorer har.

Kvantdatorer är tveeggade svärd – dels kan de lösa vissa typer av problem som är omöjliga att inom rimlig tid lösa med klassiska datorer, men de kan också bli ett säkerhetsproblem i det att de kan knäcka vissa typer av krypteringar. Bägge typerna av problemlösning är samma andas barn i det att de kräver massiv parallellisering – att testa ett stort antal kombinationer på samma gång – för att kunna lösas effektivt. Men detta skulle kräva kvantdatorer med miljontals qbitar, och med tanke på att vi idag har kvantdatorer med som mest 50–55 qbitar kan var och en förstå att dagens kryperingstekniker kommer att hålla ett bra tag till.

Kvantsäker krypteringsteknik

Med det sagt börjar vissa aktörer inom kvantdatortekniken att ta sikte på en framtid där dagens krypteringsalgoritmer inte längre kommer att räcka till. En vanlig missuppfattning är att det i framtiden kan bli meningslöst att kryptera data eftersom kvantdatorerna i alla fall enkelt kan dekryptera informationen, men det är fel. Sant är att många av dagens säkra krypteringsalgoritmer ligger dåligt till om eller när kvantdatorerna börjar infria visionerna, men då finns det redan idag andra algoritmer som kan ersätta dagens teknik, algoritmer som är kvantsäkra efter den engelska termen quantum safe.

Det är framför allt teknikerna för asymmetrisk kryptering som anses svaga i ljuset av kvantdatorer, tekniker som idag används framförallt inom kommunikation som ssl/tls. Med en fullt fungerande kvantdator skulle man relativt enkelt och snabbt kunna räkna fram den privata nyckeln utifrån den publika.

IBM, som forskat på kvantdatorer i decennier och idag även erbjuder en molntjänst med kvantdatorer (IBM Q Experience), anser att detta ligger 10–30 år framåt i tiden, men IBM kommer redan i år att dela med sig av de kvantsäkra algoritmer de forskat fram, och kommer även att utöka sin implementation av ssl/tls med kvantsäkra algoritmer för kommunikationen mellan kundernas domäner och IBMs molntjänster. IBM undersöker även möjligheten att erbjuda kunderna kvantsäkra digitala signaturer.

Varför denna brådska? IBM menar att man redan idag kan samla in krypterad information, som inte går att dekryptera med dagens teknik, i förhoppningen om att det kommer gå att dekryptera informationen när kvantdatorerna blir tillräckligt effektiva. Att informationen då i bästa fall är tio år gammal behöver inte betyda att den saknar värde; det beror helt på vilken typ av information det rör sig om.

Den kvantsäkra krypteringstekniken IBM varit med om att forska fram bygger på så kallade gitter, på engelska lattice, och som i sin tur bygger på matematiska problem som har studerats ingående sedan 1980-talet och som hittills stått emot alla försök med algoritmiska attacker med såväl klassiska- som kvantdatorer. IBM stödjer aktivt den amerikanska standardiseringsorganisationen NIST i arbetet att ta fram och publicera kvantsäker kryptering som beräknas att publiceras mellan år 2022 och 2024. IBM har även donerat kvantsäker teknik till den oberoende organisationen Open Quantum Safe för vidare utveckling.

Kvantöverlägsenthet – quantum supremacy

Ett annat företag som inte vilar på lagrarna inom tekniken för kvantdatorer är Google. Google erbjuder till dags dato ingen kvantdatortjänst i molnet som IBM, men Google lyckades å andra sidan under sommaren nå en milsolpe inom kvantdatortekniken som ingen annan lyckats med tidigare, en så kallad kvantöverlägsenhet, eller quantum supremacy på engelska.

Termen kvantöverlägsenhet har sina kritiker, inte minst IBM som kort efter att Google presenterat sina resultat kritiserade Google för att de använt sig av den termen, snarare än att de kritiserade eller ifrågasatte resultatet i sig. Kvantöverlägsenhet implicerar att kvantdatorer vore generellt överlägsna klassiska datorer, vilket de inte alls är, de är endast bättre på vissa saker. Termen kvantöverlägsenhet ska istället tolkas som att en kvantdator lyckas utföra en operation som en klassisk dator inte kan överhuvudtaget, eller bara genom eoner av tid.

Det Google lyckades med i sitt experiment var att visa att en kvantdator kan utföra en uppgift inom rimlig tid som hade tagit en klassisk dator extremt lång tid – alltså en uppgift där kvantdatorn är så till den milda grad överlägsen och det inte är någon vits att ens försöka utföra samma uppgift med en klassisk dator. Det Google gjorde var att generera slumptal, riktiga slumptal.

Klassiska datorer är deterministiska maskiner, vilket innebär att en funktion givet samma invärden alltid ger samma resultat. Två plus tre är alltid fem. Datorer är trista på det sättet att de är totalt fantasilösa – det finns ingen slump, och det ska vi i de flesta fall vara glada för. Att det emellanåt letar sig in slumpartade fel i mjuk- och hårdvara är en annan sak. Så hur genererar man slumptal med en klassisk dator? Svaret är helt enkelt att det inte går, inte på riktigt, eller i vart fall inte inom rimlig tid.

Inga exakta svar

De algoritmer som trots det genererar vad som för det mänskliga ögat ser ut att vara slumptal genererar egentligen inte äkta slumptal. Givet ett stort antal så kallade slumptal genererade av en klassisk dator kommer att uppvisa mönster som avslöjar determinismen, och det går i värsta fall att utnyttja mönstret för att härleda hur slumptalen genereras.

En kvantdator, däremot, är ju behäftad med slump. Qbitarnas värde levereras med en sannolikhet, vilket betyder att en qbit inte är exempelvis en etta, utan det är sannolikt att den är en etta. Det betyder att det borde gå att generera äkta slumptal med en kvantdator, vilket var precis det Google lyckades med i sitt experiment. Google genererade ett stort antal tal utan deterministiska mönster. Det hade tagit en klassisk (super)dator 10 000 år att göra samma sak som Googles kvantdator klarade på 200 sekunder. Alltså överlägset.

Även Google bidrar likt IBM till att föra fram kvantdatortekniken till en bredare publik. Google har som sagt ingen molntjänst som öppnar för allmänheten att testa kvantdatorer, Google väljer än så länge att endast tillämpa sin teknik och sina kunskaper internt, men Google har tagit fram ett utvecklingsramverk i Python för dem som vill utveckla algoritmer för så kallade NISQ-datorer (Noisy Intermediate Scale Quantum).

Ramverket kallas Cirq, släpptes i mitten av sommaren och är publicerad som öppen källkod. Ramverket är till för dem som vill testa kvantdatoralgoritmer utan att behöva ta så mycket hänsyn till de mycket speciella tekniska hardvaruegenskaperna som kvantdatorer av naturen har, och algoritmerna kan sedan testas på kvatdatorsimulatorer eller i förekommande fall på molntjänster som tillhandahåller kvantdatorer.

Eftersom en qbit kan vara både en etta och nolla på samma gång tills den störs, kan två qbits ha sammanlagt fyra värden, tre qbits kan ha åtta värden och så vidare. Problemet är att den bristande stabiliteten gör antalet qbits begränsat. Ett företag som valt en annan väg är Microsoft, som likt IBM erbjuder en molnbaserad kvantdatortjänst kallad Azure Quantum. Microsoft nalkas problemet genom att utveckla en kvantdator med färre, men mer stabila qbits, så kallade topologiska qbits.

Fysiska och logiska qbits

För att någorlunda kompensera för qbitarnas instabilitet väljer forskarna idag att klumpa ihop många fysiska qbits till en logisk qbit. En logisk qbit fungerar fortfarande väl och kan stabilisera ett värde under längre tid även om flera underliggande qbits är instabila. Microsofts teknik med topologiska qbits bygger på färre fysiska qbits för varje logisk qbit, i storleksordningen 10-100 qbits jämfört med 1000-20 000 fysiska qbits.

Dessa topologiska qbits är mycket mindre störningskänsliga, men antalet qbits är alltså färre. Samtidigt samarbetar Microsoft med både företag och forskningsinstitutioner som bygger egna kvantdatorer, men som saknar den plattformsinfrastruktur som Microsoft har, och som behöver en partner för att leverera kvantdatorernas förmågor via en lättillgänglig plattform. Microsoft samarbetar med åtta olika forskningslab, med stort fokus i Danmark, för att plattformsintegrera dessa kvantdatorer.

Detta innebär att i molntjänsten Azure Quantum kan kunderna välja på olika typer av kvantdatorer och kommer troligen under kommande år även att kunna välja Microsofts kvantdatorer som bygger på topologiska qbits. Kvantdatorer kan även simuleras, vilket Microsoft också erbjuder, men nackdelen med simulatorerna är att de inte kan simulera ett större antal qbits, bara några få eftersom den mängd arbetsminne som krävs för att simulera qbits ökar exponentiellt med antalet qbits.

Även Microsoft vill bredda användningen av kvantdatorer och främja utvecklingen av algoritmer för kvantdatorer. Därtill har Microsoft tagit fram ett utvecklingspaket för kvantdatorer, ett QDK eller Quantum Development Kit. Paketet innehåller även ett nytt språk vid namn Q# som är väl integrerat med Visual Studio och Visual Studio Code och interoperatibelt med Python. Microsofts QDK innehåller även många bibliotek, kodexempel, handledningsmaterial och dokumentation. Allt är licensierat under en öppen källkodslicens och finns på Github.

Kvantnätverk säkrar kommunikation

En variant av kvantdatortekniken som utvecklas parallellt med kvantdatorerna och där utvecklingen går lite snabbare är kvantnätverk. Utvecklingen av dessa nätverk syftar till att utveckla datakommunikation som helt enkelt inte går att avlyssna, och ger 100 procent säkra nätverk. En praktisk tillämpning är att kunna skicka symmetriska krypteringsnycklar utan de leveransmetoder med hjälp av asymmetrisk kryptering vi använder idag, och som riskerar att försvagas ju mer kvantdatorerna utvecklas.

I ett kvantnätverk skickas qbitar istället för vanliga bitar, och om qbitarna på något sätt störs på vägen mellan avsändaren och mottagaren, till exempel genom att en mellanhand försöker att läsa dem, så kollapsar de till vanliga bitar med slumpmässiga värden på noll eller ett. Det är med andra ord en typ av nätverk där kommunikationen sker med öppna data, men där det också är fullständigt meningslöst att ens försöka avläsa data under transport. Qbitarna kollapsar även för mottagaren, men denne kan i alla fall vara 100 procent säker på att qbitarna kommit fram orörda.

Artikeln har publicerats tidigare

Läs också:
Google bekräftar det omstridda kvantdatorrekordet
Så byggde IBM den första kommersiella kvantdatorn