Cryptography (2019/2020)

Course code
4S02797
Name of lecturer
Roberto Segala
Coordinator
Roberto Segala
Number of ECTS credits allocated
6
Academic sector
INF/01 - INFORMATICS
Language of instruction
Italian
Period
I semestre dal Oct 1, 2019 al Jan 31, 2020.

Lesson timetable

Go to lesson schedule

Learning outcomes

The course aims to provide the basic skills related to computational tools for data encryption, the use of such tools for the management of secure communications, and the problems associated with the implementation of cryptographic primitives.

At the end of the course the student will have to demonstrate to know and understand the structure of the main algorithms and cryptographic protocols and the definitional aspects of the problems together with the formal tools for their analysis.

This will allow the student to choose autonomously the most appropriate algorithms for the various situations and to understand the existing literature, and consequently to learn independently new proposals in cryptographic field.

Syllabus

Symmetric key cryptography (DES, AES), CBC, public key cryptography (Diffie-Hellman, RSA, BBS, El Gamal), provable security and provably secure cryptosystems, one-way trapdoor functions, pseudo-random bit and function generators, digital signatures (RSA), collision-free hash functions (MD5, SHA1), bit commitment, verifiable secret sharing, Zero-Knowledge, message authentication, agent authentication.

Reference books
Author Title Publisher Year ISBN Note
W. Stallings Cryptography and Network Security: Principles and Practice (Edizione 2) Prentice Hall 1999 0-13-86901
Menezes A, Van Oorschot P, Vanstone S Handbook of Applied Cryptography CRC Press 1996 0-8493-852

Assessment methods and criteria

The exam is an oral colloquium on the topics of the program.

The evaluation scale is the following. 18-28 (pure notionistic knowledge), 22-24 (acceptable understanding of the arguments), 25-27 (ability to apply the concepts learned in the course), 28-30 (ability to elaborate autonomous ideas based on the concepts learned in the course).