Course overview
This course will provide knowledge in applied cryptography and skills for applying data protection methods to data-at-rest and data-in-transit in modern communication networks and emerging technologies. The course content includes: Essential mathematical background including concepts of complexity theory, modular arithmetic, factoring of large numbers, the discrete log problem; Core cryptographic concepts: attacker or threat model, security notions, principles of cryptanalysis; Symmetric-key cryptography: block ciphers, stream ciphers, authenticated encryption, hashing and collision resistance, message authentication codes for data integrity and sender authentication; Asymmetric-key cryptography: signing and verification using RSA, DSA and ECC algorithms, homomorphic encryption; Principles of cryptographic protocols, e.g. Diffie-Hellman key exchange; Introduction to quantum computing and post-quantum cryptography; Applications of cryptographic methods to information assurance problems; Development of security policies based on technical and non-technical standards and frameworks.
Course learning outcomes
- Explain the assumptions and threat model on which a cryptographic scheme is based, and therefore its strengths and weaknesses.
- Determine appropriate cryptographic schemes and associated parameters for a given problem or application.
- Implement cryptographic protocols for a given problem or application using established cryptographic libraries.
- Apply data protection methods to both data-at-rest and data-in-transit.
- Develop product-focused security policies using existing standards and frameworks.
- Apply research methodology to analyse and discuss a contemporary topic on cryptographic data protection.