Esercizi - AviresLab...La chiave K si ottiene come K = Ba mod p o, equivalentemente, K = A b mod p...
Transcript of Esercizi - AviresLab...La chiave K si ottiene come K = Ba mod p o, equivalentemente, K = A b mod p...
Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica
Esercizi
1
Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica
abcdefghijklmnopqrstuvwxyz
HQBFIOJGWPMZKNAXUEYLVTCDSR ���� alfabeto cifrante
VNIYIEBWRWAYIKXZWBI ���� messaggio cifrato
___________________
Cifratura monoalfabetica
Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica
Playfair
3
• Chiave: ananas
• Testo cifrato: ALHZQFVYVC
• Testo in chiaro:
Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica
Vigenere
4
Chiave: ciao
Testo cifrato: EIRCVI
Testo in chiaro:
Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica
One-Time Pad
5
• Trovare le chiavi che generano il testo in chiaro usando OTP
X B R A F D M O
p i r o m a n e
testo cifrato
chiave
testo in chiaro
chiave
testo in chiaro p o l i t i c o
Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica
Reti di Feistel: esercizio
6
Decifrare il testo cifrato
1100 1010, ottenuto
mediante questa rete di
Feistel con
K1 = 1011
K2 = 1110
e F(K,X) = K+X (somma
binaria modulo 24)
Nota: questa F è una pessima scelta per un algoritmo di cifratura reale, perché non soddisfa il criterio di avalanche
Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica
Meet-in-the-middle attacks
7
DES
Encrypt
DES
Decrypt
DES
Encrypt
K2 K1 K1
• Quanti tentativi bisogna fare al massimo per violare
questa cifratura con un attacco a forza bruta?
DES
Encrypt
K1
Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica
8
Diffie-Hellman
Alice sceglie un numero segreto a, calcola A = ga mod p e lo comunica a Bob
Bob sceglie un numero segreto b, calcola B = gb mod p e lo comunica ad Alice
La chiave K si ottiene come K = Ba mod p o, equivalentemente, K = Ab mod p
G=3 a=8 b=9 p=11
Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica
9
Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica
10
Diffie-Hellman
Alice sceglie un numero segreto a, calcola A = ga mod p e lo comunica a Bob
Bob sceglie un numero segreto b, calcola B = gb mod p e lo comunica ad Alice
La chiave K si ottiene come K = Ba mod p o, equivalentemente, K = Ab mod p
G=2 a=7 b=10 p=19
Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica
11
RSA
calcolare il numero n = pq
scegliere il numero e, coprimo e più piccolo di (p-1)(q-1)
calcolare d tale che de ≡ 1 mod (p-1)(q-1)
la coppia (n,e) è la chiave pubblica, la coppia (n,d) è la chiave privata.
c=m^e mod n
m=c^d mod n
P=7 q=11 e=7 m=13
Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica
12
Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica
13
Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica
14
• A cosa servono l’Autentication Server e il Ticket Granting Server in Kerberos?• Nella topologia di una rete, che cos’è la DMZ?
Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica
15
Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica
16
(8 punti) Sia data la funzione di compressione H(x,y) = x ⊕ rev(y) dove rev(y) è il
numero binario y con l’ordine dei bit invertito (ad es. rev(11100) = 00111 ).
Dimostrare che H non è una buona funzione di compressione trovando una
collisione. In altre parole si trovino quattro numeri binari x1, y1, x2, y2, tali che
(x1,y1) ≠ (x2,y2) e H(x1,y1) = H(x2,y2). Si usino numeri a 8 bit.
Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica
17
(8 punti) Sia H una funzione di compressione definita come: H(x,y) = AES(x,x) ⊕ x
⊕ y. Trovare una collisione per tale funzione di compressione, ovvero due coppie
di numeri (x1,y1) (x2,y2) tali che H(x1,y1) = H(x2,y2). Naturalmente le due coppie
non devono essere uguali, per cui x1≠x2 e/o y1≠y2. Suggerimento: ricordatevi le
proprietà dello XOR!
Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica
18
Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica
Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica
20