Sicurezza nelle applicazioni multimediali: lezione 3, crittografia contemporanea
Crittografia contemporanea Sicurezza nelle applicazioni multimediali: lezione 3, crittografia contemporanea Classificazione dei sistemi crittografici contemporanei • Il criterio di distinzione più importante per i sistemi crittografici contemporanei riguarda il tipo e numero di chiavi usate: nei sistemi a chiave simmetrica viene utilizzata una sola chiave, nei sistemi a chiave asimmetrica ogni utente dispone di due chiavi, una pubblica e una privata.
• Secondariamente, i sistemi crittografici possono essere distinti in base al tipo di dati su cui lavorano: i sistemi a blocchi elaborano i dati in blocchi di dimensione fissa (ad es. 64 bit), i sistemi a flusso elaborano i dati un byte (o bit, o altra unità di informazione) per volta.
2 Sicurezza nelle applicazioni multimediali: lezione 3, crittografia contemporanea Sistemi a chiave simmetrica
• In questa lezione parleremo di sistemi a chiave simmetrica (e principalmente di sistemi a blocchi).
X: messaggio in chiaro, Y: messaggio cifrato, K: chiave. X’, K’: stime di X e K da parte di un attaccante 3 Sicurezza nelle applicazioni multimediali: lezione 3, crittografia contemporanea Problemi della cifratura a chiave simmetrica
• Il problema principale della cifratura a chiave simmetrica consiste nella diffusione della chiave • Se n persone devono comunicare tra di loro mediante messaggi crittati, sono necessarie n(n-1)/2 chiavi diverse (ordine di grandezza quadratico!). Ognuna di queste chiavi deve essere concordata tra mittente e destinatario su un canale sicuro…
• Vedremo nelle prossime lezioni come questo problema possa essere mitigato dai sistemi a chiave asimmetrica
4 Sicurezza nelle applicazioni multimediali: lezione 3, crittografia contemporanea Caratteristica fondamentale dell’algoritmo di cifratura
• Essere facilmente computabile ed invertibile se la chiave è nota • Essere difficilmente invertibile in assenza della chiave
• In questo contesto, “facile” e “difficile” si riferiscono alla fattibilità pratica di effettuare una data computazione in tempi ragionevoli con le tecnologie disponibili attualmente o che potranno essere disponibili in un prossimo futuro (sicurezza computazionale).
5 Sicurezza nelle applicazioni multimediali: lezione 3, crittografia contemporanea Principio di Kerckhoffs
• un crittosistema deve essere sicuro anche se il suo funzionamento è di pubblico dominio, con l'eccezione della chiave
• In altre parole l’algoritmo non deve essere segreto. Al contrario, renderlo noto al pubblico contribuisce a garantire la sua robustezza in quanto può essere analizzato dalla comunità crittanalitica.
6 Sicurezza nelle applicazioni multimediali: lezione 3, crittografia contemporanea
OTP e cifrari a flusso
7 Sicurezza nelle applicazioni multimediali: lezione 3, crittografia contemporanea One-Time Pad
• OTP (o cifrario di Vernam ) è un cifrario di Vigenère con chiave lunga quanto il testo (senza ripetizioni), totalmente casuale e utilizzabile una volta sola
• Il testo cifrato non ha più alcuna relazione con quello originario: questa cifratura è inviolabile se l’attaccante ha accesso al solo testo cifrato (sicurezza incondizionata contro attacchi passivi)
8 Sicurezza nelle applicazioni multimediali: lezione 3, crittografia contemporanea Sicurezza di OTP (dim. intuitiva)
• Dimostrazione intuitiva dell’inviolabilità di OTP: • Dato un testo cifrato, per qualsiasi testo in chiaro della stessa lunghezza esiste una chiave (unica ed equiprobabile ) che lo genera. Esempio:
testo cifrato DREMUFCA
chiave i j l t g o u a
testo in chiaro v i t t o r i a Esercizio: scrivere un testo cifrato casuale, e trovare almeno due chiavi che lo trasformino in parole di chiave o d s x q u q m senso compiuto testo in chiaro p o m p e l m o
9 Sicurezza nelle applicazioni multimediali: lezione 3, crittografia contemporanea Sicurezza di OTP (dim. formale)
• Shannon: un cifrario è sicuro se il testo cifrato non rivela alcuna informazione riguardo al testo in chiaro. • Formalmente, si richiede che: