Establish the security of a cryptographic system relative to a model (security objective/attacker model/security proof).
Develop knowledge of algebraic and number theoretic results that underlie the “hard problems” that underpin the security of current cryptographic techniques, both in conventional and quantum computing.
Classify different types of cryptanalysis attacks, such as known cleartext attacks; chosen cleartext; chosen ciphertext; “man-in-the-middle” and brute force.
Reason about the security of cryptographic protocols (e.g. multi-party computation (MPC) protocols; zero-knowledge proofs (ZK))
Program
Mathematical foundations: discrete probabilities; formal logic; concepts of algebra and number theory.
Definition of security in cryptographic systems: absolute and computational security; security models for different security properties (e.g. confidentiality; integrity; authenticity).
Security proofs: reduction arguments (game-hoping); security assumptions (hard problems); attacker models; examples of proofs or counterarguments of the various families of cryptographic primitives.