Campi finiti. Teorema di reciprocita' quadratica. Sistemi crittografici classici. Crittografia a chiave pubblica. Schemi di firma. Funzioni hash. Test di primalita'. Metodi di fattorizzazione.
Koblitz: A course in number theory and cryptography. GTM 114 Springer-Verlag, New York, 1994.
Buchmann: Introduction to cryptography. UTM Springer-Verlag, New York, 2004.
Stinson: Cryptography : theory and practice. Chapman & Hall/CRC, 2006.
Hoffstein, Pipher, Silverman: An introduction to Mathematical Cryptography, Springer-Verlag New York, 2014.
Languasco-Zaccagnini: Introduzione alla crittografia. Hoepli 2004.
Obiettivi Formativi
Conoscenze:
Il corso si propone di esporre i fatti fondamentali della crittografia, e di descrivere alcuni protocolli crittografici.
Vengono inoltre trattati argomenti correlati come, ad esempio, algoritmi per la fattorizzazione e per il calcolo del logaritmo discreto.
Capacità acquisite al termine del corso:
Alla fine del corso lo studente conosce le principali primitive crittografiche, e gli attacchi piu' noti ad alcuni protocolli (RSA, El Gamal, etc..).
Prerequisiti
Corsi raccomandati: Algebra I, II
Metodi Didattici
Lezioni frontali
Modalità di verifica apprendimento
same orale sul programma svolto. Lo studente dovrà mostrare la comprensione degli argomenti trattati a lezione, ed essere in grado di utilizzarli per discutere alcuni esempi.
Programma del corso
Campi finiti. Teorema di reciprocita' quadratica. Simbolo di Legendre e di Jacobi. Complessità. Sistemi crittografici classici: sostituzione monoalfabetica, Vigenerè. Sistemi a blocchi. Sistemi a flusso. Sequenze ricorsive. Crittografia a chiave pubblica. RSA, ElGamal, Diffie-Hellman, Massey-Omura. Algoritmo di Shanks. Algoritmo di Pholig-Hellman-Silver. Schemi di firma. Funzioni hash. Divisione di segreti. Protocolli a conoscenza zero. Test di primalita'. Metodi di fattorizzazione.