This module aims to provide students with an understanding of cryptography.
The module begins by presenting a range of topics in number theory, including divisibility, Euclid’s algorithm, linear Diophantine equations, prime numbers, congruences, and primitive roots. These concepts provide the theoretical underpinning needed for the rest of the module.
Cryptography is introduced and its historical significance is discussed. A range of cryptographic systems are then presented, in largely chronological order. These include the Ceasar shift, the Vigenere cipher, the Vernam cipher, the Hill cipher, the exponentiation cipher, the public key cryptosystems known as RSA and ElGamal, and the Merkle-Hellman cryptosystem. The Advanced Encryption Standard and elliptic curve cryptography are mentioned briefly.
Cryptographic protocols are discussed, including Diffie-Hellman key exchange and digital signatures.
Finally, cryptanalysis is considered. In particular, the following topics are explored: frequency analysis, integer factorisation, and the discrete logarithm problem.
This module will develop a range of graduate attributes, including numeracy skills, problem formulation, problem solving skills, and the ability to present a clear argument.
|