Kryptografi – alt om kryptering, nøgler og kryptoanalyse

Lær moderne kryptografi: kryptering, nøgler og kryptoanalyse — hvordan sikker kommunikation beskytter bankkort, adgangskoder og onlinehandel.

Forfatter: Leandro Alegsa

Kryptografi, eller kryptologi, er praksis og studier af at skjule information. Det kaldes nogle gange kode, men det er ikke helt korrekt – der er en vigtig forskel mellem ordet "kode" og de metoder, der i dag normalt betegnes som kryptografi. Målet er at beskytte oplysninger mod uautoriseret adgang, så kun de tiltænkte modtagere kan læse dem. Moderne kryptografi bygger på en kombination af matematik, datalogi og elektroteknik og anvendes i dag bredt, for eksempel til hævekort (bankkort), computeradgangskoder og til at handle på internettet. Kryptografi beskytter fortrolighed, men kan også sikre integritet og ægthed af data.

Når en meddelelse sendes ved hjælp af kryptografi, ændres (eller krypteres) den, før den sendes. Metoden til at ændre teksten kaldes ofte en "kode", men mere præcist en "ciffer" eller krypteringsalgoritme. Den ændrede tekst kaldes "ciphertext" og er uforståelig for dem, der ikke har den rigtige nøgle. Ændringen gør meddelelsen svær at læse; for at gendanne det oprindelige indhold må man ændre teksten tilbage (eller dekryptere den) — det kræver viden om den hemmelige nøgle eller en metode til at bryde krypteringen. Hvordan man ændrer tilbage er en hemmelighed mellem afsender og modtager. At studere cypherteksten for at finde frem til hemmeligheden kaldes "kryptoanalyse" eller "cracking" (ofte omtalt som code breaking).

Grundlæggende begreber

  • Plaintext: Den oprindelige, læselige besked før kryptering.
  • Ciphertext: Den krypterede, uforståelige udgave af beskeden.
  • Algoritme (ciffer): Den procedure eller opskrift, der bruges til at kryptere og dekryptere.
  • Nøgle: En hemmelig værdi, som styrer, hvordan algoritmen omdanner plaintext til ciphertext og tilbage.

Typer af kryptografi

Man skelner typisk mellem flere hovedkategorier:

  • Symmetrisk kryptografi: Afsender og modtager deler samme hemmelige nøgle. Eksempler: AES, ChaCha20. Hurtigt og velegnet til store mængder data, men kræver sikker nøgleudveksling.
  • Asymmetrisk kryptografi (offentlig nøgle): Hver part har et nøglepar: en offentlig nøgle og en privat nøgle. Offentlige nøgler kan deles åbent, mens private nøgler holdes hemmelige. Eksempler: RSA, ECC. Bruges bl.a. til sikker nøgleudveksling, digitale signaturer og PKI.
  • Hashfunktioner: Entydige sammenfattende beregninger (f.eks. SHA-2, SHA-3) der bruges til at sikre dataintegritet og i mange autentificeringsprotokoller.
  • Digitale signaturer: Sikrer ægthed og uforanderlighed af en besked eller et dokument ved hjælp af asymmetriske metoder.

Nøgler og sikkerhed

Krypteringer anvender en "nøgle", som er den hemmelighed, der sikrer meddelelserne. Metoden (algoritmen) behøver ikke at være hemmelig — sikkerheden bygger på nøglen. Flere personer kan bruge samme algoritme, men forskellige nøgler, så de ikke kan læse hinandens meddelelser. Nøgler skal være tilstrækkeligt lange og tilfældigt genererede for at modstå angreb. Svage nøgler eller dårligt valg af algoritme kan gøre selv stærke systemer sårbare.

Historie og kryptoanalyse

Siden antikkens tid har man eksperimenteret med koder og chiffrer. Da Caesar-chifringen kun har lige så mange nøgler som antallet af bogstaver i alfabetet, kan den let knækkes ved at prøve alle nøglerne (brute force) eller ved enkel statistisk analyse. Moderne chiffrer tillader milliarder eller langt flere mulige nøgler, og kryptoanalyse har derfor udviklet avancerede mathematiske og beregningsmæssige metoder til at finde svagheder. I nogle tilfælde angriber man implementeringen (fx sidekanalangreb), ikke kun den teoretiske algoritme.

Moderne anvendelser og praksis

I det 20. og 21. århundrede har computere og netværk ændret både muligheder og trusler. Computere er blevet det vigtigste værktøj til kryptografi, både til at udføre kryptering i stor skala og til at forsøge at bryde den. Standarder som TLS (til sikre internetforbindelser), IPsec, S/MIME og forskellige protokoller i betalingssystemer bygger på velundersøgte kryptografiske konstruktioner (fx AES, RSA, ECC). Kryptografi er også central i nyere teknologier som blockchain og digitale identiteter.

Fremtidige udfordringer

En aktuel udfordring er kvantecomputere, som teoretisk kan true nogle af de nuværende asymmetriske algoritmer (fx RSA og visse ECC-udgaver). Derfor arbejdes der med post-kvantemæssige algoritmer, der skal modstå kvanteangreb.

God praksis

  • Brug velafprøvede, standardiserede algoritmer og biblioteker frem for hjemmelavede løsninger.
  • Sørg for tilstrækkelig nøglestørrelse og godt tilfældighedsgrundlag (secure randomness).
  • Håndter nøgler sikkert (key management): opbevar private nøgler sikkert og roter nøgler regelmæssigt.
  • Opdater systemer og protokoller, når sårbarheder eller bedre metoder opdages.
  • Vær opmærksom på implementeringssikkerhed: sidekanalangreb, timing-angreb og fejlkonfigurationer kan svække selv stærke algoritmer.

Kryptografi er et aktivt forskningsområde og en praktisk nødvendighed i en digital verden. Ved at kombinere korrekt matematisk design, solide implementeringer og sikker nøglehåndtering kan man opnå høj grad af fortrolighed, integritet og troværdighed i kommunikationen.

Cifferhjul fra begyndelsen af det 20. århundredeZoom
Cifferhjul fra begyndelsen af det 20. århundrede

Symmetrisk

I en algoritme med symmetrisk nøgle deler både afsender og modtager nøglen. Afsenderen bruger nøglen til at skjule meddelelsen. Derefter bruger modtageren den samme nøgle på den modsatte måde til at afsløre meddelelsen. I århundreder har det meste kryptografi været symmetrisk. Advanced Encryption Standard er en meget udbredt sådan. Dette skal dog ikke forveksles med symmetri.

Asymmetrisk

Asymmetrisk kryptografi er sværere at bruge. Hver person, der ønsker at bruge asymmetrisk kryptografi, bruger et hemmeligt tal (en "privat nøgle"), som ikke deles, og et andet tal (en "offentlig nøgle"), som de kan fortælle alle om. Hvis en anden person ønsker at sende denne person en besked, bruger vedkommende det nummer, som vedkommende har fået oplyst, til at skjule beskeden. Nu kan meddelelsen ikke afsløres, heller ikke af afsenderen, men modtageren kan nemt afsløre meddelelsen med sin hemmelige eller "private nøgle". På denne måde behøver ingen andre at kende den hemmelige nøgle.

Asymmetrisk kryptografi tager generelt mere tid og kræver mere computerkraft, og derfor bruges den ikke i de fleste tilfælde. I stedet bruges den ofte til computersignaturer, når en computer skal vide, at nogle data (f.eks. en fil eller et websted) er sendt fra en bestemt afsender. F.eks. kan computersoftwarefirmaer, der udsender opdateringer til deres software, signere disse opdateringer for at bevise, at opdateringen er lavet af dem, så hackere ikke kan lave deres egne opdateringer, der kan forårsage skade. Websteder, der anvender HTTPS, bruger en populær algoritme ved navn RSA til at oprette certifikater, der viser, at de ejer webstedet, og at det er sikkert. Computere kan også bruge asymmetriske krypteringskoder til at give hinanden nøglerne til symmetriske krypteringskoder.

Computere

Computere kan beregne hurtigt. De kan lave meget stærk kryptering, og de anvendes i det 21. århundredes kryptografi. Eksempler herpå er computeralgoritmer som RSA, AES og mange andre. Ved at bruge gode algoritmer som disse kan man gøre det meget svært at læse de oplysninger, der sendes.

Personer

Da mennesker er langsommere end computere, kan enhver kryptografi, som de bruger, sandsynligvis brydes, hvis den hemmelige måde at ændre den på er kendt nok til at ændre den.

Simple former for kryptografi, som folk kan udføre uden maskiner, er Cæsar-krypteringer og transpositionskrypteringer, men der blev brugt mange andre former for kryptering, før man begyndte at bruge computere.

Spørgsmål og svar

Q: Hvad er kryptografi?


A: Kryptografi, eller kryptologi, er praksis og studier af at skjule information. Det involverer en blanding af matematik, datalogi og elektroteknik for at holde oplysninger hemmelige og sikre.

Spørgsmål: Hvordan anvendes kryptografi?


A: Kryptografi anvendes til hævekort (bankkort), computeradgangskoder og til at handle på internettet. Når en meddelelse sendes ved hjælp af kryptografi, ændres (eller krypteres) den, inden den sendes.

Spørgsmål: Hvad indebærer ændring af tekst med kryptografi?


A: Ændring af tekst med kryptografi indebærer brug af en "kode" eller "ciffer". Den ændrede tekst kaldes "ciphertext". Dette gør det svært at læse meddelelsen, så nogen skal ændre den tilbage (eller dekryptere den).

Spørgsmål: Hvad kalder man at studere cypherteksten for at finde frem til hemmeligheden?


Svar: At studere kryptoteksten for at finde frem til hemmeligheden kaldes "kryptoanalyse" eller "cracking" eller undertiden "kodebrydning".

Spørgsmål: Hvilken type nøgle bruger kryptering?


A: Krypteringer anvender en "nøgle", som er en hemmelighed, der skjuler de hemmelige meddelelser.

Spørgsmål: Hvor mange nøgler har Cæsars kryptering?


A: Cæsars ciffer har kun lige så mange nøgler, som der er bogstaver i alfabetet, så det er let at knække den ved at prøve alle mulige nøgler.

Spørgsmål: Hvordan blev computere involveret i kryptografi i det 20. århundrede?


A: I det 20. århundrede blev computere et vigtigt redskab for kryptografi, fordi de gjorde det muligt at anvende mere komplekse metoder til at knække krypteringskoder, der tillader milliarder af nøgler.


Søge
AlegsaOnline.com - 2020 / 2025 - License CC3