Hvorfor asymmetrisk kryptering giver mening

Asymmetrisk kryptering er en metode til at beskytte data ved at bruge to forskellige nøgler: en offentlig og en privat. Ideen er, at du kan lade andre bruge din offentlige nøgle til at sikre, at de kun kan læse indholdet, hvis de ikke kan få fat i den private nøgle. Samtidig kan den private nøgle bruges til at producere en signatur, der gør det muligt at kontrollere, at data stammer fra den relevante ejer.

Det centrale for mange er at forstå, at asymmetrisk kryptering ikke handler om at “skjule alt” i sig selv, men om at skabe tillid omkring: (1) fortrolighed (hvem der kan læse), (2) integritet (om indholdet er ændret) og (3) identitet/authenticitet (om afsenderen er den forventede).

Sådan fungerer offentlige og private nøgler i praksis

Forestil dig, at du vil sende følsomme oplysninger til nogen. Du kan gøre det sådan, at afsender krypterer med modtagerens offentlige nøgle. Når modtageren modtager beskeden, dekrypterer vedkommende med sin private nøgle. Resultatet er, at andre kan se, at der er sendt noget, men de kan ikke læse indholdet uden den private nøgle.

For signaturer (som i mange systemer bruges til at bekræfte identitet og integritet) er logikken spejlvendt: afsender bruger sin private nøgle til at signere. Modtageren kan derefter bruge afsenderens offentlige nøgle til at verificere signaturen. Hvis en ændring sker undervejs, vil verificeringen typisk fejle.

Vigtigt er nøglehåndteringen: Den private nøgle skal forblive hemmelig og beskyttet. Hvis den lækker, kan en angriber ofte efterligne den legitime ejer både til dekryptering og til at lave signaturer.

Hvad asymmetrisk kryptering kan og ikke kan løse

Asymmetrisk kryptering er stærk til at etablere sikkerhed mellem parter, især når de ikke på forhånd har en fælles hemmelighed. Den bruges derfor ofte til at opsætte et sikkert “grundlag” for en session.

En relevant begrænsning er, at asymmetrisk kryptering kan være mere ressourcekrævende end symmetrisk kryptering. Derfor kombineres de tit: Asymmetrisk kryptografi kan bruges til at udveksle eller etablere nøgler, hvorefter resten af kommunikationen typisk beskyttes med symmetrisk kryptering.

Derudover afhænger den reelle sikkerhed af, om systemet kan stole på nøglerne. Hvis en offentlig nøgle bliver byttet ud for en falsk version, kan en angriber forsøge at vildlede. Det er netop derfor, at nøgleverifikation (fx via certificater i websammenhænge) er så vigtig.

Endelig: selv den bedste kryptering beskytter ikke mod alle trusler. Hvis en enhed er kompromitteret, kan data eksfiltreres, før de overhovedet når frem til krypteringslaget, eller mens de behandles efter dekryptering. Asymmetrisk kryptering adresserer primært, hvordan data håndteres i kommunikationen.

Vigtige kontrolpunkter når du vurderer “beskyttelse”

Her er kontrolpunkter, du kan bruge til at sætte asymmetrisk kryptering i rette perspektiv:

  1. Er formålet fortrolighed eller identitet? Fortrolighed kræver typisk korrekt nøglepar og kryptering til den rette modtager. Identitet og integritet kræver i stedet signaturer eller tilsvarende verificeringsmekanismer.

  2. Hvordan verificeres den offentlige nøgle? Spørg, om der findes en pålidelig måde at forbinde en offentlig nøgle med en bestemt identitet. Hvis nøglen ikke kan kobles troværdigt, er sikkerhedsværdien begrænset.

  3. Hvordan håndteres den private nøgle? Hvis den private nøgle gemmes usikkert, kan beskyttelsen omgås. Overvej om nøglen beskyttes af adgangskontrol, hardware eller andre beskyttelsesprincipper.

  4. Er krypteringen end-to-end eller kun under transport? Hvis sikkerheden kun gælder mellem bestemte led, kan der stadig være risici i de dele, der foregår udenfor krypteringsomfanget.

  5. Beskytter det mod hvad der sker på din enhed? Kryptering skjuler indholdet for kommunikationen, men den erstatter ikke grundlæggende sikkerhed som opdateringer, skærm for phishing og malwarebeskyttelse.

Realistiske scenarier: samme teknologi, forskellige udfald

Scenario 1: Kommunikation mellem ukendte parter Hvis to parter ikke kender hinanden på forhånd, kan asymmetrisk kryptering hjælpe med at etablere en sikker proces for at sende data eller udveksle materialer til en session. Muligt resultat: Fortrolighed og mulighed for at opdage ændringer.

Scenario 2: Nøgle bliver ikke verificeret Hvis den offentlige nøgle deles uden en troværdig kontrol, kan en ændring undervejs potentielt gøre systemet mindre robust. Muligt resultat: Du får ikke den ønskede beskyttelse, selv om krypteringsmekanismen i sig selv “kører”.

Scenario 3: Privat nøgle er kompromitteret Hvis en private nøgle lækker, kan en angriber udnytte den til dekryptering eller signaturer. Muligt resultat: Identitets- og fortrolighedsgarantien falder.

Begrænsning (fælles) I alle scenarier afhænger effekten af implementering og nøglehåndtering. Asymmetrisk kryptering giver et robust kryptografisk fundament, men resten af sikkerheden afhænger af, hvordan nøgler og trust håndteres.

Afsluttende nuance: asymmetrisk kryptering er en del af helheden

Asymmetrisk kryptering er relevant, fordi den gør det muligt at skabe sikkerhed i situationer, hvor man ikke deler en hemmelighed på forhånd. Den kan understøtte både fortrolighed og verificering af afsender, især når den offentlige nøgle kan kobles troværdigt til den rigtige identitet.

Samtidig er det vigtigt at holde begrænsningerne for øje: Den kan ikke i sig selv beskytte mod kompromitterede enheder, og den kan kun give reel sikkerhed, hvis nøgler håndteres korrekt og verificeres på en måde, man kan stole på. Når du vurderer “beskyttelse”, så fokuser på disse kontrolpunkter frem for at antage, at kryptering automatisk fjerner alle risici.