En ting, der er blevet helt klart i internetalderen, er, at det er ekstremt vanskeligt at forhindre uautoriserede personer i at få adgang til de data, der er lagret i computersystemer med internetadgang. Det kræver blot, at en medarbejder klikker på det forkerte link i en e-mail eller reagerer uforsigtigt på en tilsyneladende legitim anmodning om oplysninger, og så kan en ubuden gæst få fuldstændig adgang til alle dine data. I dagens lovgivningsmæssige og PR-miljøer kan den slags brud være katastrofalt.
Men hvad nu hvis du kunne være sikker på, at selv hvis en angriber fik adgang til dine oplysninger, kunne han ikke bruge dem? Det er den rolle, som datakryptering spiller.
Sådan fungerer kryptering
Den grundlæggende idé med kryptering er at konvertere data til en form, hvor den oprindelige betydning er maskeret, og kun de personer, der er behørigt autoriserede, kan dechifrere den. Dette gøres ved at forvrænge oplysningerne ved hjælp af matematiske funktioner baseret på et tal, der kaldes en nøgle. En omvendt proces med den samme eller en anden nøgle anvendes til at afkode (eller dekryptere) oplysningerne. Hvis den samme nøgle anvendes til både kryptering og dekryptering, kaldes processen symmetrisk. Hvis der anvendes forskellige nøgler, defineres processen som asymmetrisk.
To af de mest udbredte krypteringsalgoritmer i dag er AES og RSA. Begge er meget effektive og sikre, men de anvendes typisk på forskellige måder. Lad os se på, hvordan de kan sammenlignes.
AES-kryptering
AES (Advanced Encryption Standard) er blevet den foretrukne krypteringsalgoritme for regeringer, finansielle institutioner og sikkerhedsbevidste virksomheder i hele verden. USA’s National Security Agency (NSC) bruger den til at beskytte landets “tophemmelige” oplysninger.
AES-algoritmen anvender successivt en række matematiske transformationer på hver 128-bit blok af data. Fordi beregningskravene til denne fremgangsmåde er lave, kan AES anvendes med forbrugercomputere som f.eks. bærbare computere og smartphones samt til hurtig kryptering af store datamængder. F.eks. bruger IBM’s z14-mainframeserie AES til at muliggøre gennemgribende kryptering, hvor alle data i hele systemet, uanset om de er i hvile eller under transport, er krypteret.
AES er en symmetrisk algoritme, som bruger den samme nøgle på 128, 192 eller 256 bit til både kryptering og dekryptering (sikkerheden i et AES-system stiger eksponentielt med nøglelængden). Selv med en nøgle på 128 bit er det så beregningsintensivt at knække AES ved at kontrollere hver af de 2128 mulige nøgleværdier (et “brute force”-angreb), at selv den hurtigste supercomputer i gennemsnit vil have brug for mere end 100 billioner år til at gennemføre det. Faktisk er AES aldrig blevet knækket, og baseret på de nuværende teknologiske tendenser forventes det at forblive sikkert i mange år fremover.
Læs vores e-bog
IBM i Encryption 101
Denne e-bog giver en introduktion til kryptering, herunder bedste praksis for IBM i-kryptering.
RSA-kryptering
RSA er opkaldt efter MIT-forskerne (Rivest, Shamir og Adleman), som først beskrev det i 1977. Det er en asymmetrisk algoritme, som anvender en offentligt kendt nøgle til kryptering, men som kræver en anden nøgle, som kun er kendt af den tilsigtede modtager, til dekryptering. I dette system, der passende nok kaldes offentlig nøglekryptografi (PKC), er den offentlige nøgle produktet af en multiplikation af to store primtal sammen. Kun dette produkt, der har en længde på 1024, 2048 eller 4096 bit, offentliggøres. Men RSA-dekryptering kræver kendskab til de to primfaktorer i dette produkt. Da der ikke findes nogen kendt metode til at beregne primfaktorerne for så store tal, er det kun skaberen af den offentlige nøgle, der også kan generere den private nøgle, der er nødvendig for dekrypteringen.
RSA er mere beregningskrævende end AES og meget langsommere. Den bruges normalt kun til at kryptere små datamængder.
Sådan fungerer AES og RSA sammen
Et stort problem med AES er, at den som symmetrisk algoritme kræver, at både krypteringsenheden og dekrypteringsenheden bruger den samme nøgle. Dette giver anledning til et afgørende nøglehåndteringsproblem – hvordan kan den vigtige hemmelige nøgle distribueres til måske hundredvis af modtagere rundt om i verden uden at løbe en stor risiko for, at den uforsigtigt eller bevidst bliver kompromitteret et eller andet sted undervejs? Svaret er at kombinere styrkerne ved AES- og RSA-kryptering.
I mange moderne kommunikationsmiljøer, herunder internettet, krypteres hovedparten af de udvekslede data ved hjælp af den hurtige AES-algoritme. For at få den hemmelige nøgle, der er nødvendig for at dekryptere disse data, offentliggør de autoriserede modtagere en offentlig nøgle, mens de beholder en tilhørende privat nøgle, som kun de kender. Afsenderen bruger derefter denne offentlige nøgle og RSA til at kryptere og overføre til hver modtager deres egen hemmelige AES-nøgle, som kan bruges til at dekryptere dataene.
For yderligere oplysninger om kryptering kan du læse vores e-bog: IBM i Encryption 101