Course Code: MTH352
Synopsis
MTH352 Cryptography introduces students to the mathematics behind encryption and decryption. The course examines many deployed protocols and analyses the feasibility and the issues of implementing the algorithms covered. Students will learn how to implement the algorithms learnt from theory in Sage. The course will cover practical computational aspects of cryptography such as discrete logarithms and hash functions.
Level: 3
Credit Units: 5
Presentation Pattern: EVERY JULY
Topics
- Classical Ciphers
- Cryptanalysis
- Linear Complexity
- Data Encryption
- RSA Cryptosystem
- Primality Testing
- Factorisation of Integers
- Discrete Logarithms
- Digital Signatures
- Hash Functions
- Threshold Schemes
- Stream Ciphers
Learning Outcome
- Compare and contrast a range of different cryptosystems
- Analyze the applicability and limits of existing authentication and key agreement protocols
- Explain the role of hash functions in information security
- Implement suitable algorithms to decrypt or encrypt messages of various ciphers
- Apply suitable factoring algorithms to factorize large integers
- Calculate the number of operations required in various cryptography algorithms