Ekspertudtalelse om kryptering



Relaterede dokumenter
Konfidentialitet og kryptografi 31. januar, Jakob I. Pagter

Kryptografi Anvendt Matematik

Note omkring RSA kryptering. Gert Læssøe Mikkelsen Datalogisk institut Aarhus Universitet

Matematikken bag kryptering og signering NemID RSA Foredrag i UNF

Kryptologi 101 (og lidt om PGP)

Kursusgang 3: Autencificering & asymmetrisk kryptering. Krav til autentificering. Kryptering som værktøj ved autentificering.

Fortroligt dokument. Matematisk projekt

Note omkring RSA kryptering. Gert Læssøe Mikkelsen Datalogisk institut Aarhus Universitet

Køreplan Matematik 1 - FORÅR 2005

Koder og kryptering. Foredrag UNF 4. december 2009 Erik Zenner (Adjunkt, DTU)

Moderne kryptografi. Olav Geil Institut for Matematiske Fag Aalborg Universitet. Elektronik og IT-Gruppen 24. april 2008

Digital Signatur Infrastrukturen til digital signatur

Integer Factorization

Introduktion til Kryptologi

Af Marc Skov Madsen PhD-studerende Aarhus Universitet

Kursus i IT Sikkerhed

Praktisk kryptering i praksis

Kryptologi og RSA. Jonas Lindstrøm Jensen

sætning: Hvis a og b er heltal da findes heltal s og t så gcd(a, b) = sa + tb.

HVOR SIKKER ER ASSYMETRISK KRYPTERING? Nat-Bas Hus semesters projekt, efterår 2004 Gruppe 12

Camp om Kryptering. Datasikkerhed, RSA kryptering og faktorisering. Rasmus Lauritsen. August 27,

Matematikken bag kryptering og signering RSA

Introduktion til Kryptologi. Mikkel Kamstrup Erlandsen

Større Skriftlig Opgave

Affine - et krypteringssystem

Kursusgang 2: Symmetrisk kryptering (II). 3DES og Rijndael. Kursusgang 2: Symmetrisk kryptering (II). 3DES og Rijndael

Indledning. Sikkerhed I: At undgå det forkerte. Notat om oplæg til sikkerhedsforskning. Erik Hollnagel

RSA Kryptosystemet. Kryptologi ved Datalogisk Institut, Aarhus Universitet

Den automatiske sanseforventningsproces

Om at løse problemer En opgave-workshop Beregnelighed og kompleksitet

LP-HÆFTE SOCIAL ARV

Eksempel på logistisk vækst med TI-Nspire CAS

Persondata og IT-sikkerhed. Vejledning i sikker anvendelse og opbevaring af persondata

Hvad er matematik? C, i-bog ISBN L&R Uddannelse A/S Vognmagergade 11 DK-1148 København K Tlf: info@lru.

BitLocker. Vejledning: Kryptering University College Lillebælt - IT-afdelingen /

Teknologihistorie. Historien bag FIA-metoden

Din brugermanual NOKIA

Analyse af PISA data fra 2006.

UNDERVISNING I PROBLEMLØSNING

Kryptering og Sikker Kommunikation Første kursusgang Værktøjer (1): Introduktion til kryptering

SSOG Scandinavian School of Gemology

Sikkerhed på Android. Der kan være forskelle i fremgangsmåden på de forskellige Android modeller.

Syddansk Universitet. Dataklassificering på. Version 1.8 Sidst revideret d. 29. november 2007 Side 1 af 13

1.1 Formål Webservicen gør det muligt for eksterne parter, at fremsøge informationer om elevers fravær.

Den digitale signatur

Informationssikkerhedspolitik. Frederiksberg Kommune

Pervasive computing i hjemmet et sikkerhedsproblem?

Det store danske Sprogplanlægningsprojekt

RSA-KRYPTERING. Studieretningsprojekt. Blerim Cazimi. Frederiksberg Tekniske Gymnasium. Matematik A. Vejleder: Jonas Kromann Olden

Perspektiverende Datalogi 2014 Uge 39 Kryptologi

Kommunikationssikkerhed til brugere bibliotek.dk projekt

Nøglehåndtering. Sikkerhed04, Aften

DI og DI ITEKs vejledning om beskyttelse mod elektronisk industrispionage fra udlandet

Sikkert og pålideligt peer-topeer. Jacob Nittegaard-Nielsen. Kgs. Lyngby 2004 IMM-THESIS

Appendiks 1: Om baggrund og teori bag valg af skala

Fokus på innovation med Walt Disneys. kreativitetsstrategi? Præsentationens Indhold: Indledning Hvad er Walt Disneys

Notat vedr. muligheder for permanente og midlertidige boliger til flygtninge i Faaborg-Midtfyn Kommune.

MAMMOGRAFI. Screening for brystkræft

Øvelse 10. Tobias Markeprand. 11. november 2008

November 2010 ATEX INFO Kennet Vallø. INFO om ATEX

Hvad er KRYPTERING? Metoder Der findes to forskellige krypteringsmetoder: Symmetrisk og asymmetrisk (offentlig-nøgle) kryptering.

LEKTION 22 FARVEBEHANDLING

Indholdsfortegnelse. Indledning...2. Tidsplan...2. Målgruppe...3. Spørgeskema...3. Kode eksempler...5. Procesbeskrivelse...7. Evaluering...

Deltagerinformation om deltagelse i et videnskabeligt forsøg

Indledende niveau - Afklaring af alkoholerfaring

DM536. Rapport og debug

Guide til pressekontakt

DET NYE VÆKSTMARKED BEDSTEFORÆLDREKØB TIL BØRNEBØRN BLIV FIRST MOVER OG FÅ DANMARKS FØRSTE ANALYSE AF BEDSTEFORÆLDREMARKEDET!

Password hashing og salt

De Midaldrende Danske Tvillinger

Vi ønsker stadig at skabe et bredt favnende FDF, faktisk endnu bredere end vi tidligere har kendt det.

LITTERATURSØGNING. ref. Lund H(1999)

Tredje kapitel i serien om, hvad man kan få ud af sin håndflash, hvis bare man bruger fantasien

Transkript:

Ekspertudtalelse om kryptering Professor Lars R. Knudsen Opsummerering I konsulentkontrakt med rekvisitionsnummer 62010142 mellem Digitaliseringsstyrelsen og undertegnede bedes om bistand til ekspertudtalelse om kryptering. Specielt bedes der om korte svar på en række punkter. Disse punkter er angivet nedenfor sammen med relativt korte svar. Der refereres i disse svar til en længere tekst, som er inkluderet efter de korte svar. 1. Kort beskrivelse af såkaldt stærk kryptering. Ved stærk kryptering forstår vi symmetrisk kryptering via AES med 256-bit nøgler og/eller asymmetrisk kryptering via RSA med 15000-bit nøgler. 2. Kort beskrivelse af, hvordan forsøg på brud af kryptering foregår i praksis. Brud på symmetrisk kryptering foregår ved at en angriber opfanger nogle krypterede beskeder, som bruges til at opstille et ligningssystem, hvis løsning er den hemmelige nøgle. Det simpleste angreb, som dog ikke nødvendigvis er let at udføre i praksis, er en udtømmende søgning efter den hemmelige nøgle. Her prøver man simpelthen alle mulige værdier af den hemmelige nøgle een efter een, og det er oftest kun nødvendigt med en enkelt krypteret tekst. Brud på asymmetrisk kryptering foregår typisk ved at en angriber fra den offentlige nøgle forsøger at løse det underliggende talteoretiske problem. Vi gør opmærksom på, at vi her taler om brud på kryptering via algoritmiske tiltag. Sidst i denne rapport giver vi eksempler på andre situationer, hvor kryptering kan brydes uden at selve krypteringsalgoritmen kompromitteres. Et simpelt eksempel er, hvor en angriber får fat i den hemmelige nøgle, fordi denne har været let tilgængelig. 3. Er det muligt at bryde en stærk kryptering, hvor sandsynligt er det og hvor lang tid vil det i givet fald tage afhængigt af hvilke ressourcer angriberen har til rådighed? Herunder en vurdering af, om eksempelvis store firmaer eller stater, som besidder tilstrækkelige midler, kan fremskynde sådanne brud. Medmindre der sker meget store fremskridt i den kryptografiske forskning i fremtiden, vurderer vi at det vil være umuligt for enhver, inklusive efterretningstjenester, at bryde stærk kryptering, som defineret ovenfor, i mindst 30 år fra nu. Herunder om udviklingen inden for krypteringsteknologi kan betyde, at man inden for en kortere årrække let vil kunne bryde tidligere krypteringer. Det er usandsynligt at tidligere krypteringer vil kunne brydes indenfor en kortere årrække. 4. Eksperten bedes vurdere/kommentere sikkerheden i følgende hypotetiske sikkerhedsmodel: For at beskytte kritisk data anvendes en sikkerhedsmodel, hvor krypteret data placeres 1

hos en cloudleverandør uden for landets grænser. Dekrypteringsnøglen opbevares under strenge kontrolforanstaltninger i Danmark. I forlængelse heraf etableres der en klar procedure for, hvordan denne nøgle kan slettes øjeblikkeligt, for at bortskaffes eller utilgængeliggøre data. På baggrund af den beskrevne sikkerhedsmodel vurderer vi, at der anvendes symmetrisk kryptering til hemmeligholdelse. Der synes ikke at være nogen fordele i at bruge asymmetrisk kryptering, tværtimod. Vi antager at den symmetriske kryptering foretages i sikre omgivelser, således at ingen får utilsigtet adgang til beskeden og til den hemmelige nøgle, og det antages, at kun korrekt chiffrerede data derefter transmitteres eller transporteres til en cloud. Under antagelse af at krypteringen foregår ved brug af AES med 256-bit nøgler vurderer vi endvidere, at de krypterede data vil være sikrede i mindst 30 år fra nu. Det vil sige, at hvis den hemmelige nøgle destrueres fuldstændigt, da kan den chiffrerede data ikke læses af nogen førend tidligst om 30 år. Vi gør opmærksom på, at for sikkerhed generelt og i særdeleshed for langsigtet sikkerhed, er der mange andre sikkerhedsforanstaltninger end bare kryptering, der skal tages i betragtning, se f.eks. afsnittet Andre faktorer. 2

Litteratur [1] CNSS policy no. 15, fact sheet no. 1 national policy on the use of the advanced encryption standard (aes) to protect national security systems and national security information. http://csrc.nist.gov/groups/st/toolkit/documents/aes/cnss15fs.pdf. [2] Federal Information Processing Standards Publication 197. Specification for the advanced encryption standard (AES). http://csrc.nist.gov/publications/fips/fips197/ fips-197.pdf, 2001. [3] M. Blaze, W. Diffie, R. Rivest, B. Schneier, T. Shimomura, E. Thompson, and M. Wiener. Minimal key lengths for symmetric ciphers to provide adequate commercial security. Report of ad hoc panel of cryptographers and computer scientists, Jan. 1996. Available via http://www.crypto.com/papers/. [4] ECRYPT II. Yearly report on algorithms and keysizes (2010-2011). http://www.ecrypt. eu.org/documents/d.spa.17.pdf, June 2011. [5] Auguste Kerckhoffs. La cryptographie militaire. Journal des sciences militaires, IX:5 83, 161 191, January, February 1883. [6] Lars R. Knudsen and Matt Robshaw. The Block Cipher Companion. Springer-Verlag, 2011. [7] Alfred Menezes, Paul van Oorschot, and Scott Vanstone. Handbook of Applied Cryptography. CRC Press LLC, 1997. 3

Sikkerhedsniveauer for kryptering Sikkerhedsmål Der er forskellige mål med kryptografi, såsom hemmeligholdelse, autentificering, data integritet og uafviselighed for blot at nævne nogle få, men vigtige [7]. I denne rapport fokuserer vi næsten udelukkende på hemmeligholdelse. Den typiske situation er: når man sender en besked på en usikker kanal (telefon, www) eller gemmer data et usikkert sted (såsom i en sky (eng: cloud), så skal det være sådan, at det kun er den legitime, eller autoriserede, modtager, der er i stand til at læse beskeden eller genskabe beskeden. En ikke-autoriseret person skal ikke kunne uddrage nogen brugbar information fra den sendte besked eller fra den gemte besked. Hemmeligholdelse opnås typisk via kryptografiske algoritmer, som tager som inddata den besked, der skal sendes eller gemmes, samt en kryptografisk nøgle. Uddata er den krypterede besked. Man antager ofte at selve algoritmen (opskriften), der viser hvordan krypteringen skal udføres i praksis er kendt, og at sikkerheden ligger i beskyttelsen af den hemmelige nøgle. Dette princip er kendt som Kerckhoffs s princip [5]. Der er forskellige måder at bestemme sikkerhedsniveauet for kryptografiske algoritmer. Sikkerhedsniveau Det er muligt at opnå, hvad der kaldes ubetinget sikkerhed for kryptering. Det betyder, at en angriber, som får fat i en chiffertekst ikke kan få nogen ny information om klarteksten uanset hvor megen beregningskraft han har. Ved ny information menes ingen yderligere information om beskeden, end den han kunne opnå før han fik chifferteksten. En sådan slags information kan eksempelvis være at beskeden er skrevet på dansk. Desværre er det bevist, at ubetinget sikkerhed kræver at de hemmelige nøgler skal være ligeså store som de tekster, man vil kryptere. Derfor bruger man i dag kryptosystemer, hvor man højest kan opnå, hvad der kaldes beregningsmæssig sikkerhed. Det vil sige, at systemerne kan angribes i teorien, men i praksis vil det kræve for mange beregninger. Så man må sørge for, at omkostningerne ved at knække systemet altid er større end det udbytte, angriberen får ved at knække det. I systemer til kryptering består den hemmelige nøgle af et vist antal bits. Hvis nøglerne har n bits, så er der i alt 2 n mulige værdier for nøglen. Man må derfor vælge n, således at ingen kan prøve alle muligheder for nøglen i overkommelig tid. Her er der selvfølgelig kun tale om en øvre grænse, idet nøglelængden alene ikke afgør, hvor sikkert et system er. Forskellig type angriber og Moore s fingerregel Vi bruger følgende klassificering af forskellige angribere, inspireret af [3] fra 1996, hvor budgettallene er opdateret til 2012 niveau. Hacker : har kun standard PC(er), og meget lille budget. Lille organisation: budget 100.000 kr. Middelstor organisation: budget 3 mio kr. Stor organisation: budget 100 mio kr. Efterretningstjeneste: budget 3 mia kr. 4

Når et sikkerhedsniveau skal opretholdes over længere tid, må vi også tage i betragtning at hardware bliver billigere og mindre med tiden. Man bruger her ofte Moore s law, eller Moore s fingerregel, selvom den har sine kritikere. Fingerreglen siger, at den computerkraft man kan købe for et bestemt beløb fordobles cirka hvert 1,5 år. Selvom fingerreglen er meget rå, så passer den meget godt i det store hele, og vi bruger den i det følgende. Angrebstyper Vi skelner mellem fire slags angreb, som er velkendte fra litteraturen [7]. Chiffertekst-kun angreb: Angriberen har kun nogle chiffertekster, som er krypteret med samme nøgle. Kendt-klartekst angreb: Angriberen har adgang til flere klartekster og de tilsvarende chiffertekster. Men han har ingen kontrol over, hvilke klartekster der er tilgængelige. Valgt-klartekst angreb: Angriberen kan vælge et antal klartekster og derefter få de tilsvarende chiffertekster. Valgt-chiffertekst angreb: Angriberen kan vælge et antal chiffertekster og derefter få de tilsvarende klartekster. Man betragter også situationer hvor der er flere angreb efter hinanden, f.eks. flere valgtklartekst angreb efter hinanden ( adaptive attacks på engelsk). I kryptografi kræver man ofte at man skal have stor sikkerhed mod selv de værst-tænkelige angreb. Og hvis et system er sikkert mod de værst-tænkelige angreb (valgt-tekst angreb), så er de også sikre mod svagere, men mere realistiske angreb (f.eks. chiffertekst-kun angreb). Vi skelner også mellem generiske angreb og dedikerede angreb. Generiske angreb kan i princippet anvendes mod alle krypteringssystemer, hvorimod dedikerede angreb bruger specielle egenskaber ved de enkelte systemer. Litteraturen er fuld af dedikerede angreb [6], og vi går ikke i flere detaljer her. Udtømmende nøglesøgning, som diskuteret ovenfor, er et generisk angreb. Angrebet kan gøres ubetydeligt, hvis antallet af mulige værdier for nøglen vælges så stort, at det er praktisk umuligt for en angriber at prøve alle værdier i overkommelig tid. Hvis nøglerne har n bits, vil det kræve 2 n beregninger at prøve alle værdier af nøglen. Men der er varianter af sådanne angreb, hvor tingene ikke er helt så enkle. Et eksempel er en situation, hvor en angriber kan angribe flere eller mange anvendte nøgler parallelt. En angriber kan så siges at have succes, hvis han finder bare een af disse nøgler. I et udtømmende nøglesøgningsangreb mod 2 m nøgler, kan man forvente at finde en første nøgleværdi efter cirka 2 n m beregninger. Andre varianter af generiske angreb er de såkaldte time-memory-data trade-offs, hvor man kan variere tid, hukommelse og data efter hvad der er tilgængeligt. Som eksempel er det muligt at en angriber udnytter, at han kan lave beregninger off-line og gemme disse (eller nogle eller mange af disse) i sin computers hukommelse. Når han så efterfølgende opsnapper chiffertekster krypteret med en hemmelig nøgle kan han udnytte, at han har forudberegnet visse data allerede. Her er et konkret eksempel. Hvis en angriber har hukommelse til at lagre 2 64 tekster, hvis han laver 2 96 beregninger forud (off-line), og hvis han laver 2 64 beregninger on-line, så kan han finde en 128-bits nøgle ud af i alt 2 32 nøgler. Tabel 1 angiver et par andre eksempler. Man bemærker, at antallet af nøgler ganget med antal beregninger off-line altid er 2 n. 5

Tabel 1: Eksempler på time-memory-data trade-offs. Antal nøgler On-line tid Hukommelse Off-line tid 2 n/4 2 n/2 2 n/2 2 3n/4 2 n/3 2 2n/3 2 n/3 2 2n/3 2 n/2 2 n/2 2 n/2 2 n/2 Tabel 2: Mindste symmetriske nøglestørrelse for beskyttelse mod diverse angribere. Bemærk. at dette er et anbefalet minimum, og at beskyttelsen kun gælder kort tid, cirka et par måneder. Angriber Budget i kroner Minimum antal bits Hacker 0 53 < 20.000 58 Lille organisation 100.000 64 Middelstor organisation 3 mio 68 Stor organisation 100 mio 78 Efterretningstjeneste 3 mia 84 Symmetrisk kryptering versus asymmetrisk kryptering I symmetrisk kryptografi, som navnet antyder, bruges den samme nøgle til kryptering og til dekryptering. I asymmetrisk kryptografi (også kaldet public-key kryptografi) bruges til gengæld forskellige nøgler, en offentlig nøgle til kryptering og en privat nøgle til dekryptering. Symmetrisk kryptografi er generelt hurtigere end asymmetrisk kryptografi, det kræver mindre beregningskraft og bruger en kortere nøgle for et tilsvarende sikkerhedsniveau. Ulempen med symmetrisk kryptering er, at de to parter i en kommunikationsprotokol begge skal have den samme, hemmelige nøgle, og denne nøgle skal udveksles på en sikker kanal, inden krypteringen af data går i gang. Dette gælder ikke nødvendigvis ved lagring af data. Forskelligt er asymmetrisk kryptografi, hvor enhver offentlige nøgle kan publiceres og bruges af alle til at kryptere beskeder. De krypterede beskeder kan kun dekrypteres af den, som har den private nøgle, som passer til den givne offentlige nøgle. Hvis man antager at de bedste angreb på et bestemt symmetrisk krypteringssystem med n-bits nøgler er de generiske angreb, så siger man sædvanligvis at systemet har n bits sikkerhed. Det vil sige, at en angriber i en udtømmende søgning efter netop den nøgle må lave mindst 2 n beregninger. I tabel 2 angiver vi den mindste nøglestørrelse for symmetrisk kryptering der skal til for at opnå beskyttelse mod forskellige slags angribere. Dette er et minimum og den angivne bitstørrelse giver kun beskyttelse i kort tid, et par måneder (inspireret af [4]). Det vil sige, at det vil tage en hacker cirka to måneder at knække et krypteringssystem med 53-bit nøgler osv. For asymmetrisk kryptering er situationen en helt anden. Hvor symmetriske systemer typisk har nøgler med et par hundrede bits, så har asymmetrisk systemer typisk nøgler med flere tusinde bits. For asymmetrisk kryptering kan enhver, der kender den offentlige nøgle, 6

Tabel 3: Nøglestørrelser og sikkerhedsniveauer. Sikkerhed (bits) RSA DLOG EC 64 816 816 128 80 1248 1248 160 128 3248 3248 320 192 7936 7936 384 256 15424 15424 512 Tabel 4: Sikkerhedniveauer. Bits Sikkerhed Kommentar < 80 Kortsigtet sikkerhed mod stærke angribere 80 Kortsigtet sikkerhed mod efterretningstjenester 96 Middel niveau God beskyttelse i omkring 10 år 128 Langsigtet sikkerhed God beskyttelse i omkring 30 år 256 Meget langsigtet sikkerhed God beskyttelse i mere end 30 år kryptere en besked, men kun den, der kender den private nøgle kan genskabe beskeden ved dekryptering af chifferteksten. Det mest kendte system er RSA-systemet, som blev opfundet i 1976. Selvom RSA-systemet stadig anses for at være sikkert, så kræver en implementering af systemet, at beskederne kodes på en bestemt måde, samt at der bruges tilfældige tal i beregningerne. Asymmetrisk systemer er som regel baseret på vanskeligheden ved at løse kendte matematiske problemer indenfor talteori, som er lette at formulere, hvorimod sikkerheden af symmetriske systemer er baseret på vanskeligheden ved at løse store, komplekse ligningssystemer. Er asymmetrisk kryptering bedre end symmetrisk kryptering? Dette er et ofte stillet spørgsmål, svaret er, at spørgsmålet ikke har et (kort) svar! Kryptografisk sikkerhed er et relativt begreb, som afhænger af, hvilket niveau af sikkerhed man er interesseret i, og hvilke problemer, man tror er de vanskeligste at løse. Som eksempel nævnes her RSA og AES. RSA er baseret på vanskeligheden ved at faktorisere et produkt at to store ukendte primtal. AES er baseret på vanskeligheden ved at løse et stort ikke-lineært ligningssystem med flere tusinde ligninger og ubekendte. De to slags problemer, sikkerheden af systemerne beror på er vidt forskellige, og ingen kan med sikkerhed sige, hvordan udviklingen i løsningen af problemerne vil udvikle sig. Vi giver her et bud på anbefalede nøglestørrelser for asymmetrisk kryptering. DLOG henviser til systemer baseret på vanskeligheden ved at løse det såkaldte diskrete logaritme problem og EC står for kryptografi baseret på elliptiske kurver. Tabel 3 angiver sikkerhedsniveauer i bits (symmetrisk kryptering) og de tilsvarende bitstørrelser for RSA, DLOG og EC. Disse er de tre mest anvendte slags asymmetriske systemer. I tabel 4 angiver vi forskellige sikkerhedsniveauer. Som det antydes, anbefales det at anvende 80 bits sikkerhed eller mere. 7

Langsigtet sikkerhed Det er selvfølgelig vanskeligt at angive, hvad der kræves for langsigtet sikkerhed. Som eksempel, så troede designerne af RSA systemet af nøglestørrelser på 512 bits ville være sikre i flere millioner år. I dag har man knækket RSA systemer med op til 768 bits! Grunden til dette er ikke alene en øgning i tilgængelig computerkraft men i høj grad fordi angrebsmetoderne er langt bedre i dag. Og hvordan skal man kunne forudsige, hvor kreative forskerne vil være i de næste 10-20-30 år? Vores anbefalinger er derfor lavet på baggrund af tingenes tilstand i dag og med vores gæt på, hvordan udviklingen vil være. Det er klart, at vi ikke med sikkerhed kan vide, hvordan fremtidens kryptologer arbejder, så der er al mulig grund til at opdatere definitionerne af diverse sikkerhedsniveauer kontinuerligt. Andre faktorer Størrelsen på de kryptografiske nøgler er en vigtig faktor ved bestemmelse af et bestemt sikkerhedsniveau, men der er naturligt nok mange andre faktorer, der spiller ind. Vi giver her en række eksempler på andre ting, som også bør tages i betragtning. Hvis ikke den kryptografiske (dekrypterings)nøgle opbevares forsvarligt, så er det i princippet ligegyldigt hvor lang nøglen er, sikkerheden vil være helt i bund. Kryptografiske nøgler skal vælges tilfældigt og på en uniform måde, det vil sige, at alle værdier af nøglen skal kunne vælges med lige stor sandsynlighed. Hvis for eksempel nøglen vælges som en dansk tekst bestående af 16 bogstaver (kodet efter ASCII standarden), så er den egentlige bitstørrelse kun cirka 30 bits, forstået på den måde, at nøglen vil kunne gættes ved cirka 2 30 forsøg. En dansk tekst indeholder en masse redundans, som i dette tilfælde vil kunne komme en angriber til gavn. Den samme kryptografiske nøgle bør ikke bruges i forskellige kryptografiske systemer. Systemer som AES og RSA er såkaldte bloksystemer, som kan bruges til at kryptere beskeder af en vis, relativ kort, længde. For kryptering af længere beskeder skal der ske en opdeling af beskeden i mindre del-beskeder, som derefter krypteres og sættes sammen til en chiffertekst. Dette er ikke trivielt og der findes standarder indenfor dette område, som bør anvendes. Der er situationer hvor krypteringen kan knækkes uden at selve den kryptografiske algoritme brydes, såkaldte side-channel angreb. Et eksempel er en angrebsmetode mod smartcards, hvor den indbyggede chip har et krypteringssystem implementeret. Der er situationer, hvor information om den hemmelige nøgle kan opnås ved at måle strømforbruget i chippen. Et andet eksempel er angreb på PCer, hvor en angriber udnytter at krypteringssystemer ofte gemmer delresultater af krypteringer i PCens (cache)hukommelse. Hvis en angriber har adgang til denne information kan han i visse situationer udlede information om nøglen. Afrunding Som nævnt så er der mange aspekter man skal tage i betragtning når man vurderer sikkerhedsniveauer ved systemer som bruger kryptografi. Anbefalingerne i denne rapport omhandler 8

kun den rene, kryptografiske sikkerhed. Vi anbefaler at man kun bruger kryptografiske systemer, som har overlevet mange års forsøg på brydning af mange, erfarne kryptologer. Endvidere skal systemerne bruges på en forsvarlig måde jvf. tidligere. Organisationer som NIST og ISO offentliggør løbende standarder, nye såvel som reviderede, for kryptering og nøglehåndtering osv. Som eksempel blev standarden AES, Advanced Encryption Standard, offentliggjort af NIST, National Institute of Standards and Technology, med navnet US FIPS PUB 197[2] den 26. november 2001. Forud var gået en 5-års standardiseringsproces, der involverede kryptografiske forskere fra hele verden. AES standarden giver mulighed for at bruge tre forskellige nøglestørrelser, 128, 192 og 256 bits. Den amerikanske regering har godkendt AES til beskyttelse af konfidentiel information: The design and strength of all key lengths of the AES algorithm (i.e., 128, 192 og 256) are sufficient to protect classified information up to the SECRET niveau. TOP SECRET information will require use of either the 192 or 256 key lengths. The implementation of AES in products intended to protect national sikkerhed systemer and/or information must be reviewed og certified by NSA prior to their acquisition og use. [1]. Nu mere end 10 år efter offentliggørelsen af standarden betragtes AES stadig som en sikker algoritme. I særdeleshed vurderes det at kryptering via AES med 256-bit nøgler giver meget langsigtet sikkerhed. Vi kan naturligvis ikke give nogen garanti for, at der ikke vil ske dramatiske videnskabelige fremskridt, men omvendt har vi ingen specielle grunde til at tro at det vil ske snart. Vi er overbeviste om, at AES med 256-bit nøgler yder tilstrækkelig kryptografisk sikkerhed de næste 30 år. Men vi anbefaler også, at denne vurdering fornyes løbende, eksempelvis hvert 3. år eller hyppigere. DTU, Kgs. Lyngby, 15. marts 2012 Professor Lars R. Knudsen 9