CRYPTOGRAPHY
Undergraduate course
CRYPTOGRAPHY
Undergraduate course
This is a 48 hours (6 CFU) given during the first semester. It is for undergraduate students in Mathematics, but can be attended also by students from other degrees, such as Computer Science or Engineer. The course can be given in English or in Italian, according to students' needs.
Prerequisites are basic notions of linear algebra, group, ring and field theory. If needed, some lectures will be devoted to revise background material, especially about finite fields.
We will discuss (some of) the following families of algorithms, together with their cryptoanalysis:
Symmetric cryptography: classical algorithms, one time pad and perfect secrecy, Substitution Permutation Networks, Advanced Encryption System, stream ciphers
Hash functions
Asymmetric cryptography: RSA (which is usually presented together with some primality tests and factorization algorithms), discrete logarithms on finite fields, discrete logarithm on elliptic curves, and lattices.
We will follow the book: D. R. Stinson, M. B. Paterson, Cryptography Theory and Practice, Fourth Edition.
Attending students will be asked to solve and present some of the exercise from the book, and the final exam will be a presentation on a topic agreed with the lecturer. For non-attending student, the exam will be an oral exam, where we will discuss also the exercises.
For more details, contact the lecturer Prof. G. Codogni at codogni@mat.uniroma2.it