Denne artikel stammer fra det trykte Computerworlds arkiv. Artiklen blev publiceret den Computerworld d. 24. november 2006.
Matematikeren Lars Elmegaard-Fessel kastede sig over fremtidens krypteringsalgoritme i sit speciale og gjorde den både hurtigere og sikrere.
Det føles bedst at sende følsomme oplysninger digitalt, når man ved, at andre ikke kan læse med. Med sit speciale fra Københavns Universitet har Lars Elmegaard-Fessel forsket i og forbedret den digitale Ruko-lås i informationssamfund - kryptering af data.
Interessen for algoritmer til kryptering var opstået undervejs i matematik- og datalogistudiet, og specialet skulle helst skrives i samarbejde med det private erhvervsliv.
- Derfor gik jeg ud og stemte dørklokker, og på den måde fik jeg en aftale med lederen af IBM's krypteringscenter om et samarbejde, forklarer Lars Elmegaard-Fessel.
IBM gav ham en testkode til en krypteringsalgoritme, der forventes at afløse de RSA-krypteringer, der typisk bruges i dag. Opgaven lød på at forbedre den, så godt han kunne.
- I mange år har man brugt RSA-algoritmen til kryptering med offentlig nøgle, men efterhånden skal nøglelængderne være meget lange for at opnå en høj sikkerhed, forklarer Lars Elmegaard-Fessel.
Den nyere krypteringsmetode, der er baseret på beregninger over elliptiske kurver, kunne give samme sikkerhed med kortere nøgler. Således har en 160-bits nøgle inden for elliptisk kurve-kryptering potentielt samme sikkerhed som en 1024-bits nøgle med RSA-kryptering.
Første mission var at optimere algoritmen i forhold til den, IBM testkørte. Gennem en række forskellige optimeringsteknikker lykkedes det Lars Elmegaard-Fessel at skrue køretiden for algoritmen ned med 60 procent.
Næste punkt på dagsordenen var at skrue yderligere op for sikkerheden. Selvom en algoritme i sig selv er noget nær ubrydelig med nutidens computerkraft, kan krypteringen stadig godt være sårbar over for fjendtligsindet kodeknækning. Der findes kreative metoder, hvor andre input end de rå krypteringsdata analyseres, også kendt som side channel-angreb. Og krypteringen med elliptiske kurver er ligesom andre krypteringsmetoder sårbar over for angreb, hvor processorens strømforbrug bliver afluret, mens algoritmen bliver kørt.
- Algoritmen består af en række additioner og fordoblinger, og strømforbruget er forskelligt for de to operationer. Så hvis man kender processorens strømforbrug, er det muligt at finde frem til, hvornår der adderes og hvornår der fordobles, og så bruge den viden til at knække krypteringen, forklarer Lars Elmegaard-Fessel.
Derfor gælder det om at sløre strømforbruget med "falske" operationer og andet bluff. Det koster ekstra regnekraft, så udfordringen ligger i at finde frem til den nødvendige mængde røgslør uden at stå tilbage med alenlange svartider.
- Jeg prøvede forskellige løsninger i forskellige scenarier - et system med meget hukommelse og et med meget lidt og så videre - og fandt frem til, hvad der virkede bedst under forskellige forhold, uden at hastigheden blev sat for meget ned, siger Lars Elmegaard-Fessel.
Slutresultatet var en både hurtigere og mere sikker algoritme, og det var så overbevisende, at vejleder og censor kvitterede med et 13-tal, og IBM tilbød Lars Elmegaard-Fessel et job, så han kunne gå videre med sin forskning.
Det takkede han ja til, for der er stadig masser af arbejde i at forbedre algoritmen endnu mere.
- Jeg har ikke mistet gejsten over at forske i elliptisk kurve-kryptering. Det har tværtimod været fantastisk at starte i et nyt job og kunne være i fuld gang fra dag ét, lyder det fra Lars Elmegaard-Fessel.
Hvad er dit speciale? Har du skrevet et speciale, er du i gang med et, eller kender du nogen, der skriver på et interessant speciale på en af it-uddannelserne, hører vi meget gerne fra dig. Skriv til Jesper Kildebogaard på j.kildebogaard@cw.dk.
OriginalModTime: 23-11-2006 15:20:07