Implementering av kryptoalgoritmer säkra mot kvantdatorer
- Diarienummer
- ID17-0072
- Start- och slutdatum
- 171201-171231
- Beviljat belopp
- 0 kr
- Förvaltande organisation
- Lund University
- Forskningsområde
- Beräkningvetenskap och tillämpad matematik
Summary
I en inte alltför avlägsen framtid, kan vi ha kvantdatorer som kommer att knäcka de flesta av våra nuvarande säkerhetssystem. Det föreslagna projektet syftar till att undersöka hur framtida kryptografiska primitiver, som kommer att använda nya algoritmer säkra mot angrepp från kvantdatorer, kan vidareutvecklas och genomföras. Framför allt ser vi på problem som • att undersöka befintliga kryptografiska primitiver som kan vara säkra mot angrepp från kvantdatorer. • att utforma nya och bättre implementeringsmetoder för att bygga några av de framtida primitiver som behövs. • undersöka hur man på bästa sätt implementerar sådana algoritmer i hårdvara. Projektet har en tidsram på ett fem år och kommer att inriktas på att finna effektiva tekniker för implementering av kryptosystem från de två mest lovande klasser av post-kvant kryptografiska system, som är gitter-baserad krypto som huvudkandidat och kodbaserad krypto som en andra kandidat. Den nya industridoktoranden, Alexander Nilsson, kommer att utföra arbetet och sökanden har rollen som huvudhandledare, tillsammans med biträdande handledning från CTO Jonas Dellenvall från Advenica. Fem deluppgifter definieras i planen, som omfattar LWE primitiver; hårdvara; kodbaserade primitiver; sidokanalskydd; samt en slutfas för implementering. Resultatet av projektet förväntas bli resultat kring implementeringstekniker publicerade i vetenskapliga artiklar samt kod och hårdvarudesign som kommer att vara användbart i industriapplikationer.
Populärvetenskaplig beskrivning
För cirka tjugofem år sedan framkom nya revolutionerande idéer inom området kryptologi. De nya idéerna belyste hur stora och viktiga de civila tillämpningarna för kryptologi skulle kunna bli. Dagligen utnyttjar nu de flesta av oss resultat från forskningen genom att de är en viktig del av olika kommunikations eller informationssystem, exempelvis mobiltelefoner, butiks- och banktjänster på Internet samt epost. Kryptologi handlar om att studera olika byggstenar som kan användas för att skapa säkerhet i ett informationssystem. De asymmetriska krypteringssystemen, det mest kända kallat RSA, fungerar så att man har två olika nycklar, en publik krypteringsnyckel och en annan hemlig nyckel. Det betyder att vem som helst kan använda den öppna krypteringsnyckeln och sända ett krypterat meddelande, men bara den som har den hemliga nyckeln kan avkoda och få fram meddelandet. Denna ide kan enkelt modifieras för att skapa digitala signaturer, dvs ett dokument signeras med en hemlig nyckel och dess äkthet kan sedan verifieras av vem som helst genom den publika nyckeln. Alla dessa system byggs från ett antagande att vissa svåra problem inte går att lösa i rimlig tid. Ett typiskt sådant problem är faktorisering, tex givet produkten av två primtal, ta reda på vilka primtalen är. Är primtalen tillräckligt stora (några hundra decimala siffror) är detta idag inte möjligt att lösa inom rimlig tid. En mycket intressant utveckling inom fysiken är de försök som görs med att bygga en kvantdator. Kvantdatorn använder kvantmekanik för att utföra vissa typer av beräkningar potentiellt mycket snabbare än vad dagens datorer klarar av. Speciellt har man visat att en stor kvantdator skulle kunna lösa faktoriseringsproblemet väldigt snabbt. Vissa forskare tror att en sådan kvantdator skulle kunna vara verklighet inom 20 år. Det skulle innebära att de flesta av de lösningar för informationssäkerhet som vi har idag i vårt samhälle plötsligen inte längre skulle vara säkra. I detta projekt studerar vi alternativa metoder för att bygga asymmetriska kryptosystem som förhoppningsvis inte kan attackeras även om vi skulle ha tillgång till en kvantdator. Vi undersöker de system som istället för faktorisering utnyttjar andra svåra problem som står emot kvantdatorn. Vi undersöker hur dessa på bästa sätt byggs i mjukvara och hårdvara så att de beräkningar som måste göras går så fort som möjligt, alternativt kräver så lite energi som möjligt.