Crittografia ed aritmetica modulare - Cineca

Crittografia ed aritmetica modulare
Giancarlo Rinaldo
Dipartimento di Matematica - Università di Messina
Progetto Lauree Scientifiche
25 Novembre 2010
Motivazioni
Motivazioni
Criptare e decriptare i messaggi può essere un gioco interessante
per tutti noi...
Motivazioni
Criptare e decriptare i messaggi può essere un gioco interessante
per tutti noi...
... Ma anche conoscere come funziona la navigazione sicura sul
web, la gestione dei conti on-line, le e-mail con firma digitale .
Motivazioni
Criptare e decriptare i messaggi può essere un gioco interessante
per tutti noi...
... Ma anche conoscere come funziona la navigazione sicura sul
web, la gestione dei conti on-line, le e-mail con firma digitale .
Tutto questo è basato sull’affascinante ed in buona parte ignoto
mondo dei numeri primi.
Obiettivi in sintesi
;
Obiettivi in sintesi
Conoscenza di :Codice cesare e cifrari lineari;
Obiettivi in sintesi
Conoscenza di :Codice cesare e cifrari lineari; Cifrario di Vigenere;
Obiettivi in sintesi
Conoscenza di :Codice cesare e cifrari lineari; Cifrario di Vigenere;
One time pad;
Obiettivi in sintesi
Conoscenza di :Codice cesare e cifrari lineari; Cifrario di Vigenere;
One time pad; RSA.
Obiettivi in sintesi
Conoscenza di :Codice cesare e cifrari lineari; Cifrario di Vigenere;
One time pad; RSA.
Aritmetica modulare.
Obiettivi in sintesi
Conoscenza di :Codice cesare e cifrari lineari; Cifrario di Vigenere;
One time pad; RSA.
Aritmetica modulare. Algoritmo di Euclide esteso.
Obiettivi in sintesi
Conoscenza di :Codice cesare e cifrari lineari; Cifrario di Vigenere;
One time pad; RSA.
Aritmetica modulare. Algoritmo di Euclide esteso. Teorema di
Fermat-Eulero.
Obiettivi in sintesi
Conoscenza di :Codice cesare e cifrari lineari; Cifrario di Vigenere;
One time pad; RSA.
Aritmetica modulare. Algoritmo di Euclide esteso. Teorema di
Fermat-Eulero. Crivello di Eratostene.
Obiettivi in sintesi
Conoscenza di :Codice cesare e cifrari lineari; Cifrario di Vigenere;
One time pad; RSA.
Aritmetica modulare. Algoritmo di Euclide esteso. Teorema di
Fermat-Eulero. Crivello di Eratostene.
Programmazione in Pari-GP
I Lezione
I
Test di inizio corso.
I Lezione
I
Test di inizio corso.
I
Codice Cesare.
I Lezione
I
Test di inizio corso.
I
Codice Cesare.
I
Definizione di funzione di criptazione e decrittazione. Funzioni
biiettive.
I Lezione
I
Test di inizio corso.
I
Codice Cesare.
I
Definizione di funzione di criptazione e decrittazione. Funzioni
biiettive.
I
L’insieme Zm .
I Lezione
I
Test di inizio corso.
I
Codice Cesare.
I
Definizione di funzione di criptazione e decrittazione. Funzioni
biiettive.
I
L’insieme Zm .
I
Il programma “Clock” e le “ore” che si equivalgono.
I Lezione
I
Test di inizio corso.
I
Codice Cesare.
I
Definizione di funzione di criptazione e decrittazione. Funzioni
biiettive.
I
L’insieme Zm .
I
Il programma “Clock” e le “ore” che si equivalgono.
I
Algoritmo di Euclide e resto della divisione.
I Lezione
I
Test di inizio corso.
I
Codice Cesare.
I
Definizione di funzione di criptazione e decrittazione. Funzioni
biiettive.
I
L’insieme Zm .
I
Il programma “Clock” e le “ore” che si equivalgono.
I
Algoritmo di Euclide e resto della divisione.
I
Congruenza modulo m.
I Lezione
I
Test di inizio corso.
I
Codice Cesare.
I
Definizione di funzione di criptazione e decrittazione. Funzioni
biiettive.
I
L’insieme Zm .
I
Il programma “Clock” e le “ore” che si equivalgono.
I
Algoritmo di Euclide e resto della divisione.
I
Congruenza modulo m.
I
Giochiamo con la criptazione dei messaggi.
I Lezione
I
Test di inizio corso.
I
Codice Cesare.
I
Definizione di funzione di criptazione e decrittazione. Funzioni
biiettive.
I
L’insieme Zm .
I
Il programma “Clock” e le “ore” che si equivalgono.
I
Algoritmo di Euclide e resto della divisione.
I
Congruenza modulo m.
I
Giochiamo con la criptazione dei messaggi.
I
Somma modulare.
I Lezione
I
Test di inizio corso.
I
Codice Cesare.
I
Definizione di funzione di criptazione e decrittazione. Funzioni
biiettive.
I
L’insieme Zm .
I
Il programma “Clock” e le “ore” che si equivalgono.
I
Algoritmo di Euclide e resto della divisione.
I
Congruenza modulo m.
I
Giochiamo con la criptazione dei messaggi.
I
Somma modulare.
I
La tabella della somma in Pari-GP.
I Lezione
I
Test di inizio corso.
I
Codice Cesare.
I
Definizione di funzione di criptazione e decrittazione. Funzioni
biiettive.
I
L’insieme Zm .
I
Il programma “Clock” e le “ore” che si equivalgono.
I
Algoritmo di Euclide e resto della divisione.
I
Congruenza modulo m.
I
Giochiamo con la criptazione dei messaggi.
I
Somma modulare.
I
La tabella della somma in Pari-GP.
I
Criptazione e decriptazione del codice Cesare tramite la
somma modulare. Calcolo della chiave di decriptazione.
II Lezione
II Lezione
I
Criptazione con il prodotto modulare.
II Lezione
I
Criptazione con il prodotto modulare.
I
Verifichiamo con “Clock” e con Pari-GP.
II Lezione
I
Criptazione con il prodotto modulare.
I
Verifichiamo con “Clock” e con Pari-GP.
I
Importanza del concetto di coprimalità per un buon
funzionamento della criptazione.
II Lezione
I
Criptazione con il prodotto modulare.
I
Verifichiamo con “Clock” e con Pari-GP.
I
Importanza del concetto di coprimalità per un buon
funzionamento della criptazione.
I
Equazioni congruenziali. Algoritmo di Euclide esteso per il
calcolo della chiave di decriptazione.
II Lezione
I
Criptazione con il prodotto modulare.
I
Verifichiamo con “Clock” e con Pari-GP.
I
Importanza del concetto di coprimalità per un buon
funzionamento della criptazione.
I
Equazioni congruenziali. Algoritmo di Euclide esteso per il
calcolo della chiave di decriptazione.
I
Osservazione sui cifrari lineari.
II Lezione
I
Criptazione con il prodotto modulare.
I
Verifichiamo con “Clock” e con Pari-GP.
I
Importanza del concetto di coprimalità per un buon
funzionamento della criptazione.
I
Equazioni congruenziali. Algoritmo di Euclide esteso per il
calcolo della chiave di decriptazione.
I
Osservazione sui cifrari lineari.
I
Giochiamo con la criptazione dei messaggi.
III Lezione
III Lezione
I
Cifrari Polialfabetici. Il Codice di Vigenere.
III Lezione
I
Cifrari Polialfabetici. Il Codice di Vigenere.
I
Rompiamo insieme Vigenere: Il massimo comun divisore che
ritorna!
III Lezione
I
Cifrari Polialfabetici. Il Codice di Vigenere.
I
Rompiamo insieme Vigenere: Il massimo comun divisore che
ritorna!
I
Teorema di Shannon:One Time Pad.
III Lezione
I
Cifrari Polialfabetici. Il Codice di Vigenere.
I
Rompiamo insieme Vigenere: Il massimo comun divisore che
ritorna!
I
Teorema di Shannon:One Time Pad.
I
Valutazione intermedia.
IV Lezione
IV Lezione
I
Numeri primi e crivello di Eratostene.
IV Lezione
I
Numeri primi e crivello di Eratostene.
I
Infinitezza dei numeri primi.
IV Lezione
I
Numeri primi e crivello di Eratostene.
I
Infinitezza dei numeri primi.
I
Cifrari polialfabetici tramite l’aritmetica modulare.
IV Lezione
I
Numeri primi e crivello di Eratostene.
I
Infinitezza dei numeri primi.
I
Cifrari polialfabetici tramite l’aritmetica modulare.
I
Alfabeto allargato e cambio di base.
IV Lezione
I
Numeri primi e crivello di Eratostene.
I
Infinitezza dei numeri primi.
I
Cifrari polialfabetici tramite l’aritmetica modulare.
I
Alfabeto allargato e cambio di base.
I
Criptiamo e decriptiamo un cifrario polialfabetico tramite
Pari-GP.
V Lezione
V Lezione
I
Test di primalità: Teorema di Fermat-Eulero.
V Lezione
I
Test di primalità: Teorema di Fermat-Eulero.
I
Calcolo efficiente delle potenze modulari.
V Lezione
I
Test di primalità: Teorema di Fermat-Eulero.
I
Calcolo efficiente delle potenze modulari.
I
Giochiamo con le potenze modulari.
V Lezione
I
Test di primalità: Teorema di Fermat-Eulero.
I
Calcolo efficiente delle potenze modulari.
I
Giochiamo con le potenze modulari.
I
Ricerchiamo numeri pseudo-primi.
VI Lezione
I
Crittografia a chiave privata e pubblica.
VI Lezione
I
Crittografia a chiave privata e pubblica.
I
Funzione a senso unico.
VI Lezione
I
Crittografia a chiave privata e pubblica.
I
Funzione a senso unico.
I
Prodotto di due numeri primi e scomposizione del prodotto
nei suoi fattori. Esempi di calcolo alla lavagna.
VI Lezione
I
Crittografia a chiave privata e pubblica.
I
Funzione a senso unico.
I
Prodotto di due numeri primi e scomposizione del prodotto
nei suoi fattori. Esempi di calcolo alla lavagna.
I
Descrizione di RSA.
VII Lezione
I
Riepilogo e osservazioni sul laboratorio.
VII Lezione
I
Riepilogo e osservazioni sul laboratorio.
I
Test di fine corso.
Bibliografia
Bibliografia
I
M. Curzio, P. Longobardi, M. Maj, Lezioni di Algebra, Liguori
Editore, 1994.
Bibliografia
I
M. Curzio, P. Longobardi, M. Maj, Lezioni di Algebra, Liguori
Editore, 1994.
I
C. Paar, Applied cryptography and data security, Lecture
notes, http://www.crypto.rhur-uni-bochum.de/, 2000.
Bibliografia
I
M. Curzio, P. Longobardi, M. Maj, Lezioni di Algebra, Liguori
Editore, 1994.
I
C. Paar, Applied cryptography and data security, Lecture
notes, http://www.crypto.rhur-uni-bochum.de/, 2000.
I
Pari Team, PARI/GP, version 2.1.5,
http://pari.math.u-bordeaux.fr/, Bordeaux,2003.
Bibliografia
I
M. Curzio, P. Longobardi, M. Maj, Lezioni di Algebra, Liguori
Editore, 1994.
I
C. Paar, Applied cryptography and data security, Lecture
notes, http://www.crypto.rhur-uni-bochum.de/, 2000.
I
Pari Team, PARI/GP, version 2.1.5,
http://pari.math.u-bordeaux.fr/, Bordeaux,2003.
I
G. Rinaldo, Clock,
http://ww2.unime.it/algebra/rinaldo, Messina, 2005.
I
G. Rinaldo, Crittografia,
http://ww2.unime.it/algebra/rinaldo/public.html,
Messina, 2009.