Advances in cryptography are fundamental enablers for novel applications such as secure multiparty computation (grounded in the real world implementation of secret sharing schemes), computing on encrypted data (grounded in the real world implementation of homomorphic encryption schemes), and other privacy preserving techniques such as zero-knowledge proof systems; secret-key sharing is also the fundamental solution to securing cryptographic software and hardware against side-channel key-recovery attacks. This module reviews and explains advanced cryptographic schemes as well as options for practical implementations.
Learning Outcomes
By the end of the module students should be able to:
20.1
Explain the basic principles of some advanced cryptographic schemes.
20.2
Outline how to reason about the security of some advanced cryptographic schemes.
20.3
Illustrate the use of some advanced cryptographic schemes as part of privacy enhancing technologies.
20.4
Demonstrate practical skills in implementing some advanced cryptographic schemes (with the aid of appropriate cryptographic libraries).
20.5
Analyse implementations secured by advanced cryptographic schemes with respect to information leakage via unintended channels.