redogöra för de matematiska grunderna hos några av de krypteringsmetoder och protokoll som ingår i kursen.
2. Färdighet och förmåga
implementera, använda och exemplifiera de kryptosystem och protokoll som ingår i kursen.
3. Värderingsförmåga och förhållningssätt
visa att hen har erfarit behandlade metoders användbarhet och begränsningar vid implementation.
Kursinnehåll
Studenten ska ges en introduktion till kryptologi för att, i ingenjörsmässiga sammanhang, kunna lösa tillämpade problem och kommunicera med matematiskt språk.
Grundläggande terminologi inom kryptologi.
Introduktion till aritmetik
i ändliga kroppar,
i polynomringar över ändliga ringar och kroppar, samt
med matriser över ändliga ringar.
Definition av och grundläggande egenskaper hos primitiva rötter och diskreta logaritmer.
Introduktion till linjära felrättande koder.
Ett urval av klassiska kryptosystem, från t ex:
Monoalfabetiskt substitutionskrypto
Affint krypto
Vigenèrechiffer
Transpositionskrypto
Playfair
ADFGVX
Enigma
Autokey
Vernam
Hills krypto
Kryptoanalys av klassiska kryptosystem.
Symmetriska kryptosystem:
Data Encryption Standard (DES)
Advanced Encryption Standard (AES)
Asymmetriska kryptosystem:
RSA
Pailliers kryptosystem
NTRU
McElieces kryptosystem
Protokoll:
Operationslägen för blockkrypton (ECB, CBC, CFB, CTR, OFB)
Optimal Asymmetric Encryption Padding (OAEP)
Diffie-Hellmans nyckelutväxling
Digitala signaturer
Kryptografiska hackfunktioner:
Merkle-Damgårds konstruktion
SHA-2
Tillämpningar av hackfunktioner i databaser av lösenord och blockkedjor
Matematisk programvara.
Förutsättningar
För tillträde till kursen krävs 6 avklarade högskolepoäng i linjär algebra och genomgången kurs i diskret matematik om 6 hp.