Fra Caesar-chifferet til moderne kryptering: Lær om de kodene som beskytter hemmeligheter. Se hvilke metoder som brukes i dag og hvordan de fungerer.

Innhold i artikkelen (13)
  1. Fra hemmeligheter til matematikk
  2. Caesar-chifferet: Den eldste og enkleste
  3. Enigma-maskinen: Kryptografiens wendepunkt
  4. Tall som forteller kryptografiens historie
  5. RSA og den moderne krypteringens løfte
  6. Hva en kryptografiekspert tenker om dagens sikkerhet
  7. Hemmelige språk som gikk ut på mode, men fortsetter å leve
  8. De viktigste krypteringsmetodene å kjenne til
  9. Hvordan koder knekkes i praksis
  10. Hvorfor dagens kryptering er praktisk usårbar
  11. Hva fremtiden holder for kryptografi
  12. Slik starter du dine egne kodeleiker i dag
  13. Din hemmelighet venter på å bli beskyttet

Fra hemmeligheter til matematikk

Kryptografi er kunsten å skrive hemmeligheter på måter som bare den tiltenkte mottakeren kan forstå. I over to tusen år har mennesker brukt koder og chiffrer for å kommunisere sikkert, uten at uvedkommende skulle vite hva som ble sagt eller planlagt. Fra Julius Caesars tidlige chiffrer som simpelt rullet alfabetet tre steg, til dagens militærkryptografi basert på matematiske tall på over 600 sifre, forteller kodenes og krypteringens historie en fascinerende reise gjennom sikkerhet, krig, spionasje og vitenskap. Hver epoke har sitt forsvar og sitt angrep på hemmeligheter.

I denne artikkelen skal du oppdage de historiske kodene som endret verden, fra de eldste romerske chiffrene til dagens praktisk uknekkbare militærkryptografi som brukes av regjeringer og militærbaser verden over. Du skal forstå hvordan moderne kryptering basert på store primtall og komplekse matematiske formler beskytter dine personlige hemmeligheter når du bruker nettbanken, sender e-post eller handler på nettet. Vi skal utstyre deg med nok kunnskap og praktisk erfaring til å eksperimentere med dine egne kodeleiker og kanskje til og med bygge en enkel krypteringsapplikasjon for dine venner.

Tastatur og datamaskiner er verktøyene moderne kryptografi bruker for å beskytte hemmeligheter…
Tastatur og datamaskiner er verktøyene moderne kryptografi bruker for å beskytte hemmeligheter og sikker kommunikasjon på internett.

Caesar-chifferet: Den eldste og enkleste

Caesar-chifferet er muligens den mest kjente klassiske koden, oppkalt etter den romerske generalen Julius Caesar som brukte den rundt år 50 f.Kr. for å kommunisere med sine offiserer. Metodens eleganse ligger i sin fryktelig enkelhet: hver bokstav i det originale ordet erstattes med en bokstav som ligger et fast antall steg videre i alfabetet. Caesar brukte et skift på tre steg, noe som betydde at A ble til D, B ble til E, C ble til F, og så videre. Hvis du nådde slutten av alfabetet, gikk du rundt til begynnelsen igjen, slik at X ble til A, Y ble til B, og Z ble til C. Ordet ROMA blev til URPD. Denne metoden var tilstrekkelig sikker for sin tid fordi få mennesker kunne lese og skrive, og de fleste meddelelser ble levert muntlig eller av kurérer som ikke visste innholdet.

Sikkerhetens svakhet i Caesar-chifferet vises når mange mennesker kan lese. Det finnes bare 25 mulige skift i det latinske alfabetet, noe som gjør det trivielt for en person med grunnleggende kunskaper å prøve alle muligheter på noen få minutter. En moderne bærbar datamaskin knekker alle 25 varianter samtidig og finner som løsning på brøkdeler av ett sekund. Du har faktisk sannsynlighet på én av 25, eller fire prosent, for å gjette riktig på første forsøk.

Likevel brukes Caesar-chifferet fortsatt i dag, ikke fordi det beskytter hemmeligheter, men som pedagogisk verktøy til å lære barn og nybegynnere hvordan kryptering og dekryptering fungerer. Mange lærebøker i informatikk og matematikk begynner med Caesar-chifferet fordi det er lett å forstå, lett å implementere i programmeringsspråk, og illustrerer prinsippene som ligger under mer sofistikert kryptografi. I dag brukes Caesar-chifferet også i puslespill, quizer og barnespill, og det kalles noen ganger ROT13 når skiftet er 13 steg (noe som er praktisk i datasamfunn fordi 13 + 13 = 26, som betyr at du anvender chifferet to ganger for å få tilbake originalen).

Annonse

Enigma-maskinen: Kryptografiens wendepunkt

Enigma-maskinen representerte et gigantisk steg fremover i kryptografiens verden på den tiden. Oppfunnet av Arthur Scherbius, en tysk ingeniør, omkring 1918 og senere forbedret gjennom flere iterasjoner av tysk militæringeniører, ble maskinen brukt av Nazi-Tyskland under andre verdenskrig fra 1939 til 1945. Enigma så ut som en skrivemaskkin med tilleggsmekanisme: den hadde tre eller fire rotorer som roterte hver gang en bruker tastet inn en bokstav. Hvis du tastet inn bokstaven A hundre ganger, ville hver enkelt A kunne bli kryptert til en helt annen bokstav avhengig av rotorenes posisjon på akkurat det øyeblikket. Det gjorde kodene praktisk umulig å knekke ved hjelp av klassiske metoder som frekvensianalyse.

Årene 1939–1945 viste seg imidlertid at selv Enigma ikke var uknekkbar, bare veldig vanskelig. Alan Turing, en britisk matematiker og logiker som arbeidet på Bletchley Park i Buckinghamshire i England, lagde det kjent som Bombe-maskinen – en elektromekanisk enhet som kunne finne Enigmas rotorposisjoner ved å prøve mange kombinasjoner samtidig, basert på kjente tips og statistikk fra hvor ordet «Wetter» (værmelding) vanligvis dukket opp. Et team på flere hundre mennesker, mange av dem kvinnelige matematikere og logikere, jobbet på Bletchley Park med å knekke tusenvis av Enigma-meldinger. Historikere og militær-strategier mener at denne innsatsen forkortet andre verdenskrig med flere år og reddet millioner av liv ved å gi de allierte avgjørende etterretningsinformasjon om tysk militærbevegelser.

Enigma-maskinen og knekking av den viste et avgjørende poeng: selv den mest sofistikerte mekanisk kryptering kunne knekkes hvis man hadde tilstrekkelig ressurser, tid, geni og litt maskinell hjelp. Etter krigen ble Bombe-maskinene og teorien bak dem klassifisert i mange år. Men når detaljene kom frem, ble de til en inspirasjon for moderne datakryptografi. Historien om Bletchley Park har blitt en kultursitat i både kryptografi, historie, og populærkultur, og det finnes i dag flere museer og dokumentarer viet til arbeidet som ble gjort der.

Tall som forteller kryptografiens historie

Fra de tidligste chiffer til dagens internettstandard, viser tallene hvor dramatisk kryptografien har utviklet seg i sikkerhet og kompleksitet.

RSA og den moderne krypteringens løfte

RSA-kryptering, oppkalt etter oppfinnerne Ron Rivest, Adi Shamir og Leonard Adleman fra MIT som publiserte sitt arbeide i 1977, er grunnlaget for nesten all moderne internettsikkerhet. I motsetning til klassiske chiffrer som Caesar og Enigma, som krever at både sender og mottaker kjenner den samme hemmeligheten, bruker RSA såkalt asymmetrisk kryptering. Du har en offentlig nøkkel som hvem som helst kan bruke til å kryptere en melding beregnet for deg, og en privat nøkkel som bare du har og som kan dekryptere meldinger sendt til deg. Denne oppfinnelsen løste det som kalles nøkkeldistribusjonsproblemet: hvordan skal to mennesker dele en hemmelighet når de ikke kan møtes ansikt til ansikt og kan være usikre på om fiender eller interessenter lytter på deres samtaler?

Styrken i RSA ligger i den matematiske funksjonen som er lett å gjøre i en retning, men nesten umulig i den andre retningen. Offentlig-nøkkelkryptering bruker to veldig store primtall multiplisert sammen for å skape en offentlig nøkkel som er praktisk umulig å faktorisere tilbake til de originale primtallene. En 2048-bits RSA-nøkkel bruker primtall som hver inneholder rundt 300 sifre. Et tall på 600 sifre er så enormt stort at selv hvis en angriperen hadde tilgang til alle datasentre på Jorden og kunne gjøre en milliard faktoriseringsforsøk per sekund, ville det ta flere milliarder år å knekke krypteringen. For kontekst: universet er bare omkring 14 milliarder år gammelt.

RSA brukes i dag til å sikre nettbanken, e-handel, email-servere, meldingsapper med end-to-end-kryptering, digitale sertifikater som verifikasjon av nettsteder, og de fleste andre former for sensitiv digital kommunikasjon. Hver gang du besøker en nettside som begynner med https (og ikke http), bruker du RSA-kryptering i bakgrunnen. De fleste internettsikkerhetsstandarder som TLS 1.3, som brukes av 95 prosent av alle nettsteder i verden, er avhengig av RSA eller lignende asymmetrisk kryptering for å etablere sikre forbindelser.

Hva en kryptografiekspert tenker om dagens sikkerhet

En leder for sikkerhetsarkitektur ved ett av Europas største teknologifirmaer deler sitt perspektiv på kryptografiens kritiske rolle.

Hemmelige språk som gikk ut på mode, men fortsetter å leve

Mens matematikere og militærer jobbet med kryptering basert på algoritmer og tall, brukte vanlige mennesker mer sosiale og lekende former for hemmelighet. Pig Latin, populær blant amerikanske barn siden 1800-tallet, fungerer ved å ta den første konsonanten eller konsonantgruppen av et ord, flytte det til slutten og legge til stavelsen «ay» eller «ing». Ordet «dog» blir til «og-day», «pig» blir til «ig-pay», og «string» blir til «ing-stray». Hele setninger kan gjøres gåtefulle: «do you want some ice cream» blir til «o-day ou-yay ant-way ome-say ice-cray eam-cray». Rhyming slang i London gikk enda lenger: varierte vanlige ord med ord som rimer eller associeres med det originale ordet. En lue på engelsk kalles «hat», som i rhyming slang kunne bli «cat and rat», som så ble forkortet til bare «cat». En lav på engelsk kalles «penny», som ble «bread and honey», som ble forkortet til «bread». Mange av disse ordene fortsetter å brukes i dag, spesielt i arbeiderklassemiljøer i East London.

Barn i skandinaviske land oppfant røkkspråket ved å sette stavelsen «rö» eller «rø» foran hver vokal: ordet «kaffe» ble til «kröraffröe», og «ord» ble til «rörd». En helt egen verden av hemmeligheter skapes når ungdom skal snakke uten at foreldre eller lærere forstår hva som blir sagt. I Sverige kalles det «Rövarspråket» og i Danmark «Røbersprog», og det brukes fortsatt i dag av barn i barnehage og barneskole. Disse språkene er sjelden helt sikre – en oppvaksen person trenger bare ti minutter for å skjønne mønsteret – men de fungerer som både sosial identitet og minimal beskyttelse fra påsyn.

Moderne barn bruker også mer avanserte koder: emojis brukes som kryptering når de sender meldinger under timene, tall og bokstaver blandes på måter som forandrer betydning («420» har et helt spesifikt språk i ungdomskulturen), og gamle internettkoder fra 1990-tallet som «1337 speak» eller «leet speak» hvor du skriver «L33T HACKER» istedet for «LEET HACKER» continues å være både nostalgisk og praktisk for å unngå voksenkontroll.

Annonse

De viktigste krypteringsmetodene å kjenne til

Her er en oversikt over de metoder som har definert kryptografiens historie og fortsatt er relevante eller fascinerende i dag.

  • Substitusjonskoder: Hver bokstav i klarteksten erstattes med en annen bokstav eller symbol, som Caesar-chifferet eller Atbash-koden som brukes i gamle religiøse tekster.
  • Transposisjonskoder: Bokstavenes rekkefølge endres i stedet for at de erstattes, som i kolonnekryptering som brukes av militærer og i krypteringspuslespill.
  • Polyalfabetiske chiffrer: Bruker flere substitutionsalfabeter som roterer, som Vigenère-chifferet som var praktisk sikker i over 200 år til det ble knakket.
  • Enigma-maskinen: Mekanisk enhet med rotorer som endrer krypteringen for hver bokstav, brukt av Nazi-Tyskland under andre verdenskrig.
  • Asymmetrisk kryptering (RSA): Bruker en offentlig og privat nøkkel, og gjør det mulig å kryptere uten å dele hemmeligheter på forhånd med mottakeren.
  • AES (Advanced Encryption Standard): Moderne symmetrisk blokkchiffre som brukes av alle moderne enheter og er godkjent av NSA.
  • SHA-256: En enveiskryptering som lager en unik fingeravtrykk av data, brukt for lagring av passord og digitale signaturer.
  • TLS/SSL: Protokoller som krypterer all data mellom din nettleser og nettsteder, sikrer at ingen kan se hva du gjør online eller stjele passord.

Hvordan koder knekkes i praksis

Å knekke en kode er ikke alltid rent matematisk. Frekvensianalyse var en av de første metodene brukt mot substitusjonskoder og funksjonerte ved å se på hvor ofte hver bokstav dukket opp i den krypterte teksten, sammenligne det med hvor ofte bokstaver forekommer i normalt norsk eller engelsk, og gjette ut fra mønstre. I norsk er bokstavene E, R, A, N, S, T, I blandt de mest vanlige, mens Z, X, Q, J og K er sjeldne. Hvis bokstaven X forekommer veldig ofte i kryptet tekst og E er den vanligste bokstaven, kan du gjette at X representerer E. Denne metoden fungerte rimelig bra mot enkle substitusjonschiffer med en fast substitusjonstabell, men ikke mot Enigma som endret substitusjonen fra bokstav til bokstav basert på rotorbevegelse.

Moderne kodebryting bruker både høyteknologisk matematikk og råmaskinalkraft. Hvis en kryptering baseres på å faktorisere store tall, forsker matematikere verden over på mer effektive algoritmer for faktorisering – metoder som elliptisk kurvefaktorisering, kvadratisk sil, og fremvoksende kvantealgoritmer basert på Shors algoritme. Hvis krypteringen bruker en hemlig nøkkel, forsøker angriperne å stjele nøkkelen gjennom sidekanalangrep som observerer hvor mye strøm enheten bruker, hvor lenge operasjoner tar (timingattakk), eller hvilke elektromagnetiske signaler som sendes ut fra prosessoren.

De beste moderne hackerne kombinerer også sosial manipulering og sosial engineering: å få personer til å avsløre sine passord eller private nøkler frivillig gjennom bedrag, trusler, falske autoriteter eller flear. En hackers tidligere leder sa at det eneste som var hardere enn matematikk var menneskelig psykologi. Derfor er det like viktig å beskytte sin mentale sikkerhet som teknisk sikkerhet – ikke del dine passord, ikke åpne merkeligheter fra ukjente, og vær skeptisk til e-poster som sier du må oppgi kontopass ord med en gang.

Hvorfor dagens kryptering er praktisk usårbar

Tallene viser hvor sikker moderne kryptering er blitt sammenlignet med klassiske metoder gjennom historien.

Hva fremtiden holder for kryptografi

En professor i tallteori og kryptografi ved Universitetet i Oslo som har forsket på fremtidig kryptering deler sitt syn.

Slik starter du dine egne kodeleiker i dag

Du behøver ikke å være ekspert eller ha høy utdanning for å begynne å eksperimentere med kryptografi. Start enkelt med å lære deg Caesar-chifferet fullt og grundig: skriv ned alfabetet to ganger, det ene rullet noen steg (prøv tre, tretten, eller fem), og bruk det som en løsningsbok eller «cheat sheet» til å kryptere og dekryptere korte meldinger for deg selv. Lag noen setninger og krypter dem, så utveksle dem med en venn som har samme «shift» og la ham eller henne dekryptere. Når det blir kjedeligt eller trivielt, kan du oppgradere til Vigenère-chifferet som bruker et nøkkelord for å skifte hvor mange steg hver bokstav flyttes. For eksempel hvis nøkkelen er «HEMMELIG» og meldingen er «HALLO», bytter den første H med HEMMELIG-H (7 steg), andre A med HEMMELIG-E (4 steg), og så videre.

Neste fase er implementering: du kan håndtegne grittene eller lage en enkel Python-skript som gjør arbeidet automatisk. Lær deg også å forstå hvordan substitusjonskoder kan knekkes ved hjelp av frekvensianalyse – last ned eller lag selv en frekvenstabell for norsk og prøv å knekke chiffertekster som venner har laget. Nettsteder som Cryptopals tilbyr praktiske kodeutfordringer online som lærer både matematikken og implementasjonen av sikkerhet. Når du er klar for moderne kryptering, kan du eksperimentere med GPG (GNU Privacy Guard) som er gratis å laste ned, og lage RSA-nøkkelpar på din egen maskin. Python-biblioteker som pycryptodome gjør det mulig å skrive dine egne krypteringsfunksjoner på under ti linjer kode. Det viktigste av alt er å leke rundt og eksperimentere – kryptografi er ett av få fagfelt hvor du lærer best ved å gjøre, konstruere og prøve, ikke bare ved å lese teori i bøker.

Et solid sted å begynne er nettsidene towardsdatascience.com og freecodecamp.org som har gratis introduksjonskurs. Du kan også finne kommunityet på Reddit på /r/cryptography hvor hobbyister og profesjonelle spør hverandre spørsmål. Mange universiteter inkludert UiO tilbyr også gratis online introduksjonskurs i kryptografi. Det finnes også flere bøker som er klassikere: «The Code Breaker» om Jennifer Doudna og CRISPR (ikke direkte om kryptografi, men fantastisk fortalt), og «The Codebreaker» av Walter Isaacson om Jennifer Doudna er inspirerende, mens pure kryptografi-bøker som «Cryptography: Theory and Practice» av Douglas Stinson er mer teknisk men også lærerik.

Din hemmelighet venter på å bli beskyttet

Fra det øyeblikk da Julius Caesar første gang rullet alfabetet sitt tre steg, har mennesker forstått at hemmeligheter må beskyttes. I dag, med internett som forbinder milliarder av mennesker verden over, er behovet for sterk kryptering større enn noensinne. Når du forstår hvordan kodene fungerer, både de gamle og de nye, blir du ikke bare sikrer med dine egne hemmeligheter, men får også dypere forståelse av den verden du lever i. Hver gang du logger inn på nettbanken eller sender en privat melding, er det matematikk fra 1970-tallet som sikrer at ingen uvedkommende kan lese det.

Begynn i dag: velg deg en enkel chiffre, lag en kode med en venn, eller last ned en kryptoprogramvare. Oppdage hvordan hemmeligheter holdes skjult, og bli selv en del av en tradisjon som strekker seg tilbake to tusen år. Kryptografi er ikke lenger bare for spioner og militærer – det er for deg, for meg, for alle som ønsker å verne om sine hemmeligheter i en digital verden. Starten er alltid den enkleste delen. Bare begynn.

Annonse

Ofte stilte spørsmål

Hva er kryptografi?

Kryptografi er kunsten å skrive hemmeligheter på en måte som bare den tiltenkte mottakeren kan forstå. Det bruker matematikk og algoritmer til å kryptere og dekryptere informasjon, og sikrer at sensitive data som passord, betalingsinformasjon og meldinger forblir skjult for uvedkommende.

Er det ulovlig å bruke kryptering?

I de fleste vestlige land er det helt lovlig å bruke kryptering for personlig og forretningsbruk. Norge og EU tillater sterk kryptering. Noen autoritære regimer har forsøkt å forby eller begrense kryptering, men det er unntaket, ikke regelen.

Hva er forskjellen mellom en kode og en chiffre?

En kode erstatter hele ord eller fraser med symboler eller tall, mens en chiffre arbeider på bokstav-nivå eller bitmengder. Caesar-chifferet er et godt eksempel: hver bokstav erstattes med en annen bokstav. Koder krever ofte en ordbok, mens chiffrer bruker matematiske regler.

Kan alle bruke kryptering?

Ja! Alle har tilgang til sterk kryptering gjennom vanlige programmer og tjenester. E-posttjenester bruker TLS-kryptering, og mange apper bruker end-to-end-kryptering. Du trenger ikke være matematiker eller programmerer for å bruke kryptering daglig.

Hvor lenge har kryptografi eksistert?

Mennesker har brukt kryptering i over 2000 år. Det eldste kjente eksempelet er Caesar-chifferet fra omkring år 50 f.Kr., men bevis tyder på at egyptere og andre tidlige sivilisasjoner brukte hemmelige skriftmåter ennå tidligere.

Emner

Olav Sie Rotvær
Skrevet avOlav Sie RotværSkribent og utvikler

Olav Sie Rotvær skriver og drifter Norsk Næring. Han er utvikler, ikke journalist, og har ingen fagutdanning innenfor språk & lingvistikk. Artiklene bygger derfor på primærkilder som oppgis der påstanden gjøres.

Om forfatteren og hvordan artiklene kildebelegges →