Modern cryptography is built on the well-established mathematics of group theory, number theory, and the theory of prime numbers. Some of the most common algorithms for factorisation or primality checking have remained almost unchanged for centuries. In this lecture will give a rigorous introduction to these theories, and learn how they are applied in modern cryptosystems.The topics we shall see include:
- Algebra: modular arithmetic, groups, rings, and fields
- Number theory: Euler’s theorem, Fermat’s little theorem, GCD
- Prime numbers: random and deterministic primality testing, factorisation
- Discrete logarithms
- Efficiency of addition and multiplication, bit complexity.
- Cryptosystems: RSA, Rabin, Diffie-Hellman key exchange protocol.
- Hash functions
- Zero knowledge proofs
The course will be taught in English.