Kvantedatamaskinen stjeler kodene dine

Pengene i nettbank og meldingene i innboksen er sikret av koder som bygger på store primtall. Men nå har kinesiske forskere demonstrert at kvantedatamaskiner snart kan knekke kodene dine. Forstå hvorfor kappløpet mellom kodeskapere og kodeknekkere spisser seg til.

Kvantecomputeren stjaeler dine koder
© Claus Lunau & Shutterstock

Pip! På en brøkdel av et sekund er informasjonen på Visa-kortet ditt overført til butikkens kortleser, og et øyeblikk etter er kjøpet gjennomført.

På den korte tiden er opplysningene sendt via internett til Visa og banken din, og selv om andre skulle snappe dem opp underveis, kan du være helt trygg. Opplysningene er kryptert med ekstremt store primtall som det vil ta en hacker millioner av år å finne.

Koden er dermed i praksis ubrytelig, og opplysningene dine er sikre.

Men slik vil det kanskje ikke fortsette. Kinesiske forskere har nylig vist at kvantedatamaskiner snart kan bli raske nok til å knekke de kodene som blant annet sikrer tilgangen til bankkontoen din.

Vi må derfor finne nye måter å kryptere fortrolige opplysninger på, og også her ligger svaret i kvantemekanikken.

Kampen mellom kodeskapere og kodeknekkere er dermed på vei inn i en ny tidsalder, der den vil foregå med våpen begge parter henter i partikkelfysikkens underlige kvanteverden.

Kodeskaperne tar ledelsen

Det historiske kappløpet mellom kodeskapere og kodeknekkere går tusenvis av år tilbake. Hver gang kodeskapere har funnet nye måter å kryptere budskapene sine på, har det bare vært et spørsmål om tid før kodene har blitt knekt.

Men i 1977 fikk kodeskaperne plutselig et gigantisk forsprang. Det skjedde med utviklingen av det såkalte RSA-systemet, som er oppkalt etter oppfinnerne, matematikerne Ron Rivest, Adi Shamir og Len Adleman.

Kodenes kamp har pågått i årtusener

Gjennom historien har kodeskapere utviklet en lang rekke oppfinnsomme krypteringssystemer, men kodene har hver gang vist seg å kunne knekkes – fram til dagens RSA-system ble utviklet.

RSA-systemet bygger på at krypteringen og avkodingen av den hemmelige informasjonen krever to nøkler.

Avsenderen bruker en såkalt offentlig nøkkel til krypteringen – altså til å oversette vanlig tekst til kodet tekst som er uforståelig for andre selv om de har tilgang til den offentlige nøkkelen.

Avkodingen av budskapet krever nemlig en privat nøkkel som bare den rettmessige mottageren har tilgang til.

To nøkler sikrer hemmelighetene dine

RSA-kryptering beskytter blant annet kortbetaling og kommunikasjon på nettet. Sikkerheten er basert på to nøkler, en offentlig og en privat, som begge bygger på store primtall.

Alice krypterer beskeden til Bob
© Shutterstock & Lotte Fredslund

1: Alice krypterer meldingen til Bob

Alice sender en melding til Bob og krypterer den med hans offentlige nøkkel (rød). Det svarer til å låse meldingen inne i en koffert. Den offentlige nøkkelen bygger på et høyt tall (C) som er to primtall (A og B) ganget med hverandre.

Eva proever at stjaele beskeden
© Shutterstock & Lotte Fredslund

2: Eva prøver å stjele meldingen

Siden kofferten med meldingen er låst med en offentlig nøkkel, kan den snappes opp av andre, for eksempel Eva. Hun kan med andre ord få tak i kofferten, men fordi hun bare har tilgang til Bobs offentlige nøkkel, er det umulig for henne å åpne den.

Bob afkoder beskeden fra Alice
© Shutterstock & Lotte Fredslund

3: Bob avkoder meldingen fra Alice

I tillegg til den offentlige nøkkelen har Bob en privat nøkkel (grønn) som kan åpne kofferten. Den private nøkkelen er dannet ut fra et av de to primtallene (A). Det ville ta Eva tusenvis av år å prøve å regne seg fram til den private nøkkelen.

Det matematiske grunnlaget for RSA-kryptering er primtall, altså tall som bare er delelige med 1 og seg selv. Eksempler på primtall er 2, 3, 5, 7, 11, 13 og 17 – eller litt større: 971, 977, 983, 991 og 997.

Til å lage de to nøklene i RSA-systemet brukes det imidlertid to mye høyere primtall, ofte med over hundre sifre. De to tallene ganges med hverandre, og ut fra resultatet – et såkalt RSA-tall – dannes den offentlige nøkkelen. Den private nøkkelen er derimot basert på både RSA-tallet og de to primtallene.

Det geniale med systemet er at det er relativt enkelt å utvikle nøklene, men mer eller mindre umulig å regne seg fram til den private nøkkelen ut fra den offentlige.

2 store primtall ganges med hverandre. For å bryte RSA-koden må hackere regne ut hvilke tall som ble ganget.

Årsaken er at de to primtallene enkelt kan ganges med hverandre, mens det er uhyre vanskelig å finne tilbake til de to tallene som ble ganget sammen. Faktorisering, som prosessen kalles, krever enorm regnekraft og veldig lang tid.

Med de høye primtallene vi bruker til å beskytte dataene våre på internett, vil selv dagens raskeste superdatamaskiner bruke tusenvis av år på å knekke koden. I praksis er RSA-kryptering dermed ekstremt trygg.

Likevel er eksperter enige om at RSA-systemet står for fall. Hackerne vil nemlig få et nytt sterkt våpen i hendene: kvantedatamaskinen.

Kort fortalt gjør kvantedatamaskinen slutt på en helt grunnleggende begrensning med den klassiske datamaskinen.

Uansett om vi snakker om prosessoren i mobiltelefonen eller Nasas sterkeste superdatamaskiner, er alt de gjør, basert på å behandle binære sifre, altså sekvenser av nuller og ettall. Datamaskinens mest grunnleggende enhet – en såkalt bit – har bare to mulige tilstander: 0 og 1, eller på og av, om man vil.

I kvantedatamaskinen kalles den minste enheten qubit, og den har noen underlige egenskaper som man bare ser i kvantefysikkens verden. Her kan atomer eller mindre partikler som elektroner og fotoner være i flere tilstander samtidig, såkalt superposisjon.

En qubit kan dermed ikke bare være 0 eller 1, men en mellomting, og det gir kvantedatamaskinen en ufattelig høy regnehastighet.

Bit og qubit

Den minste informasjonsenheten i en vanlig datamaskin er en bit (t.v.), som enten har verdien 1 eller 0. Kvantedatamaskiner er basert på qubit (t.h.), som kan være en mellomting av begge verdier samtidig.

© Shutterstock

Derfor frykter kodeskaperne at kvantedatamaskiner vil true sikkerheten i RSA-kodene – og det er nettopp det kinesiske forskere har bevist i et nytt eksperiment.

Forskere jakter på den hellige gral

I spissen for forsøket sto Bao Yan ved det statlige kinesiske laboratoriet for matematikk og informatikk. Forskergruppen utviklet en algoritme for å faktorisere RSA-tall ved å dele regnearbeidet mellom en vanlig datamaskin og en kvantedatamaskin.

Kvantedatamaskinen skulle bare ta seg av de mest tidkrevende trinnene i beregningene, og derfor trengte den ikke inneholde så mange qubit som oppgaven ellers ville kreve.

Med tre qubit faktoriserte forskerne tallet 1961, med fem qubit faktoriserte de tallet 48 567 227, og med ti qubit klarte de å faktorisere tallet 261 980 999 226 229. Tallene har det til felles at de bare har to primtallsfaktorer.

Og dette er bare begynnelsen. I artikkelen skriver forskerne:

«Vi mener at et kvantekretsløp med 372 qubit kan utfordre RSA-2048.»

RSA-2048 er med sine 617 sifre det største av alle RSA-tall – og derfor den hellige gral for matematikere som jobber med denne typen faktorisering. Navnet har tallet fått fordi man trenger 2048 bit for å skrive det i binærkode.

54​​ store RSA-tall ble det skapt i 1991. 31 av dem er fortsatt ikke knekt – blant annet det største, RSA-2048.

Sammen med en rekke andre RSA-tall ble RSA-2048 offentliggjort i 1991 av det amerikanske sikkerhetsfirmaet RSA Laboratories. Det skjedde som et ledd i en konkurranse som ble kalt RSA-utfordringen, og som skulle oppmuntre matematikere til å utfordre RSA-systemet – og dermed også finne ut hvor sikkert det er.

Som en ekstra motivasjon utlovet firmaet store pengepremier, blant annet 200 000 dollar for faktoriseringen av RSA-2048.

Konkurransen ble avsluttet i 2007, men av de i alt 54 RSA-tallene er det 31 som fortsatt ikke har blitt knekt.

I 2020 klarte franske og amerikanske forskere å faktorisere det siste og hittil største, med 250 sifre. Oppgaven ble løst på noen få måneder, men krevde titusenvis av datamaskiner. En enkelt datamaskin ville ha brukt 2700 år.

Det er likevel langt opp til de 617 sifrene som RSA-2048 inneholder, så hvis matematikerne skal nå den hellige gral innen overskuelig tid, krever det antagelig hjelp fra kraftige kvantedatamaskiner.

Allerede i 1994 presenterte den amerikanske matematikeren Peter Shor en algoritme som i teorien kan gjøre kvantedatamaskiner i stand til å faktorisere høye RSA-tall på kort tid. Senere har andre forskere vist at metoden virker i praksis, men foreløpig bare med veldig små tall. Faktisk er tallet 21 (3 ganger 7) det største det har klart.

Problemet er at Shors algoritme krever ekstremt mange qubit for å fungere pålitelig i stor skala. Eksperter har ment at det kanskje kreves opptil en milliard qubit for å knekke RSA-2048.

Ved å forenkle noen av prosessene i Shors algoritme fikk forskere i 2021 kravet ned til tjue millioner qubit, men det ligger fortsatt milevidt fra de kvantedatamaskinene som finnes i dag. Den hittil største er IBMs Osprey fra 2022, som inneholder 433 qubit.

IBM’s kvantecomputer Osprey

IBMs kvantedatamaskin Osprey er verdens kraftigste med 433 qubit. Det er kanskje nok til å knekke RSA-krypteringen.

© Connie Zhou/IBM

Derfor er det nye kinesiske resultatet så oppsiktsvekkende. Hvis Bao Yan og kollegene hans har rett i at 372 qubit er nok til å klare oppgaven, står RSA-2048 for fall mye tidligere enn matematikerne hadde regnet med – kanskje allerede i løpet av de neste ti årene.

Fotoner skjuler hemmeligheter

Når det lykkes å knekke RSA-2048, er datasikkerheten vår på nettet truet, og det blir derfor nødvendig å bytte ut RSA-systemet med noe nytt.

Den aller beste løsningen er – akkurat som kvantedatamaskinen – basert på mekanismer som bare finnes i partikkelfysikkens verden. Ved å utnytte polariseringen i fotoner er det mulig å kryptere informasjon som ingen andre enn den rettmessige mottageren kan avkode.

Hvis en hacker skulle forsøke å måle fotonene på veien fra avsenderen til mottageren, vil det endre polariseringen slik at angrepet blir oppdaget umiddelbart.

Krypteringen tar et kvantesprang

Framtidens kryptering utnytter et kvantemekanisk fenomen som betyr at lyspartikler, fotoner, kan endre seg når man måler dem. Det gjør det mulig å skape en trygg kodenøkkel som ingen andre kan få tak i.

Alice sender fotoner til Bob
© Shutterstock & Lotte Fredslund

1: Alice sender fotoner til Bob

Alice sender fotoner gjennom et filter og veksler tilfeldig mellom to innstillinger. I den ene innstillingen slipper fotoner med loddrett og vannrett polarisering uforandret igjennom, mens fotoner med skrå polarisering endres tilfeldig til loddrett eller vannrett. I den andre innstillingen slipper de skrått polariserte fotonene uforandret igjennom, mens de vannrette og loddrette endres.

Fotonerne baerer bit med sig
© Shutterstock & Lotte Fredslund

2: Hvert foton er en bit

Hvert av de 13 fotonene (gult) som Alice sender, har en avtalt verdi. I eksempelet har Alice og Bob blitt enige om at vannrett polariserte fotoner og skrått polariserte fotoner med vinkelen +45 grader har verdien 0. Loddrett polariserte fotoner og skrått polariserte fotoner med vinkelen −45 grader har verdien 1. Når Alice måler fotonene, får hun resultatet 1 eller 0.

Bob maaler paa fotonerne
© Shutterstock & Lotte Fredslund

3: Bob måler fotonene

Når Bob måler fotonene, skjer det med et filter, akkurat som det Alice brukte. For hvert foton setter han filteret helt tilfeldig i en av de to stillingene. Når han har avsluttet målingene, forteller han Alice hva innstillingene hans har vært. Alice sammenligner det med sine egne innstillinger og forteller Bob i hvilke tilfeller filtrene har hatt samme innstilling.

Den sikre kodenoegle dannes
© Shutterstock & Lotte Fredslund

4: Den trygge kodenøkkelen lages

Alice og Bob forkaster nå alle de målingene der innstillingene har vært ulike. Nå har de en kode av nuller og ettall (grønt) som bare de kjenner, i dette tilfellet 010111. De tester koden ved å sammenligne en liten del av den. Hvis den er identisk, vet de at ingen andre har målt fotonene. De kan nå bruke hele koden til å kryptere kommunikasjonen sin.

En stor fordel med kvantekrypteringen er at infrastrukturen allerede finnes. Fotonene kan nemlig sendes gjennom lyslederkablene i fibernettet som etter hvert er i bruk mange steder.

Utfordringen er å utvikle avsender- og mottagerutstyr som er praktisk, lite og billig nok til at det kan installeres i alle leddene som utveksler fortrolig informasjon via internett.

Spørsmålet er også om det skjer raskt nok. Etter mer enn førti år med den trygge RSA-krypteringen er et nytt kappløp mellom kodeskapere og hackere i gang – og vinneren blir den parten som best utnytter kvantemekanikkens særegenheter.