Lunghezza della chiave per un sistema crittografico basato sul DES
Questione di costi
Nel ’79 Diffie ed Hellman suggerirono che si sarebbe potuto costruire un chip a tecnologia VLSI che avrebbe potuto testare 106 chiavi al secondo. Una macchina che utilizzava tale chip avrebbe violato il sistema in un giorno. Il costo di tale macchina era di $20.000.000.
Nel ’93 fu la volta di Michael Wiener: alla Rump Session di CRYPTO ’93 propose il progetto di una macchina composta da vari chip collegati tra loro (pipelined) che operassero in parallelo. Ogni chip costava $10,50 per cui con una macchina costruita con 5760 chip (e per un costo complessivo di $100.000) si sarebbe violato il sistema in circa un giorno e mezzo. Con 10 di tali macchine e quindi con $1.000.000 si sarebbe violato il DES in 3 ore e mezzo.
Questione di tempo
Utilizzando una chiave a 56 bit (Lunghezza della chiave) si possono avere 256 chiavi distinte per come è realizzato il DES.
Inoltre, essendo che il sistema DES per essere violato, basta esaminarne la metà delle chiavi (proprietà delle chiavi complemento), pertanto, se ammettiamo che un PC possa verificare un milione di chiavi al secondo (e questo è gia molto), ci occorreranno:
255/106=36.028.797.018,96 secondi = 600.479.950,32 minuti pari a 10.007.999,17 ore = 416.999,97 giorni = 1.142,47 anni.
Quindi, per calcolare tutte le chiavi possibili dovremo aspettare circa 1143 anni! Se vogliamo essere sicuri di trovare la chiave in giornata, dovremo calcolare quanti computer dovrebbero lavorare simultaneamente, ciò :
1.143 x 365 = 417.195 macchine.
Riassumendo, bisogna far lavorare 417.195 computers contemporaneamente per 24 ore al fine di poter testare tutte le chiavi possibili.
Ora si comprendera meglio perche il sistema viene ritenuto relativamente sicuro.