
Course unit
CRYPTOGRAPHY
INP9087845, A.A. 2019/20
Information concerning the students who enrolled in A.Y. 2019/20
Mutuating
Course unit code 
Course unit name 
Teacher in charge 
Degree course code 
SC04111836 
CRYPTOGRAPHY 
ALESSANDRO LANGUASCO 
SC1172 
ECTS: details
Type 
ScientificDisciplinary Sector 
Credits allocated 
Educational activities in elective or integrative disciplines 
MAT/05 
Mathematical Analysis 
6.0 
Course unit organization
Period 
First semester 
Year 
1st Year 
Teaching method 
frontal 
Type of hours 
Credits 
Teaching hours 
Hours of Individual study 
Shifts 
Practice 
1.0 
8 
17.0 
No turn 
Lecture 
5.0 
40 
85.0 
No turn 
Prerequisites:

The topics of the following courses: Algebra (congruences, groups and cyclic groups, finite fields), Calculus (differential and integral calculus, numerical series) both for the BA in Mathematics. 
Target skills and knowledge:

The main goal of the Cryptography course is to give an overview
of the theoretical basis of the field in order to allow a critical study of the cryptographic protocols used in many applications (authentication, digital commerce). In the first part we will give the mathematical basic tools (essentially from elementary and analytic number theory) that are required to understand modern publickey methods. In the second part we will see how to apply this knowhow to study and criticize some protocols currently used. 
Examination methods:

Written exam 
Assessment criteria:

During the written exam the student will have to reply to some questions about the topics taught during the lectures.
The maximal mark (30/30) will be conferred to errorfree exams only. If the written exam will not be sufficient to decide
the evaluation mark, the teacher will ask to the candidate some further questions to be directly replied on the blackboard. 
Course unit contents:

First Part: Basic theoretical facts: Modular arithmetic. Prime numbers. Little Fermat theorem. Chinese remainder theorem. Finite fields: order of an element and primitive roots. Pseudoprimality tests. AgrawalKayalSaxena's test. RSA method: first description, attacks. Rabin's method and its connection with the integer factorization. Discrete logarithm methods. How to compute the discrete log in a finite field. Elementary factorization methods. Some remarks on Pomerance's quadratic sieve.
Second Part: Protocols and algorithms. Fundamental crypto algorithms. Symmetric methods (historical ones, DES, AES) . Asymmetric methods. Attacks. Digital signature. Pseudorandom generators (remarks). Key exchange, Key exchange in three steps, secret splitting, secret sharing, secret broadcasting, timestamping. Signatures with RSA and discrete log. 
Planned learning activities and teaching methods:

Classroom lectures. 
Additional notes about suggested reading:

We will use the following textbooks:
1) A.Languasco, A.Zaccagnini  Manuale di Crittografia  Hoepli Editore, 2015. (italian).
2) N.Koblitz  A Course in Number Theory and Cryptography, Springer, 1994.
3) R.Crandall, C.Pomerance  Prime numbers: A computational perspective  Springer, 2005.
4) B. Schneier  Applied Cryptography  Wiley, 1994 
Textbooks (and optional supplementary readings) 

A. Languasco e A. Zaccagnini, Manuale di Crittografia. Milano: Hoepli, 2015. in lingua italiana

Koblitz, Neal, A course in number theory and cryptography. New York: Springer, 1987.

Innovative teaching methods: Teaching and learning strategies
 Lecturing
 Loading of files and pages (web pages, Moodle, ...)
Innovative teaching methods: Software or applications used
 Moodle (files, quizzes, workshops, ...)
 Latex
Sustainable Development Goals (SDGs)

