Buongiorno Professore,
l’ultima volta avevamo visto quel protocollo che concatenava con ordine diverso le challenge nella funzione hash.
Un possibile attacco potrebbe essere il seguente:
l’attaccante (A) invia un primo messaggio a Flavia (F) fingendo di essere il Boss (B)
B, C1
Flavia risponde:
F, C2, H(segreto, C1, C2)
L’attaccante manda un messaggio al boss del tipo:
F, C1
Il Boss risponde:
B, C2, H(segreto, C2, C1)
A questo punto l’attaccante ha la risposta alla challenge di F.
Le ho allegato un grafico contenente due possibili configurazioni dello stesso attacco.
E’ chiaro che questo attacco non si può fare se siamo sicuri che F e B non scelgano la stessa challenge C2, infatti la challenge, non a caso, è un numero aleatorio, però, dato che questi valori in realtà sono pseudo aleatori, perché vengono sempre calcolati con un algoritmo, ed è impensabile che ci sia un algoritmo diverso per ogni utente, vuol dire che nel calcolo delle challenge si considera in ingresso qualcosa che cambia continuamente (tipo il timestamp)?
Più semplicemente la domanda è: come facciamo a “randomizzare” in modo diverso la scelta delle due challenge?
Saluti.
Saverio Scopelliti.
No virus found in this incoming message.
Checked by AVG - http://www.avg.com
Version: 8.0.176 / Virus Database: 270.9.17/1847 - Release Date: 13/12/2008 16.56
Archivio con motore MhonArc 2.6.16.