La crittografia: algoritmi a chiave simmetrica
(o segreta)
DES, Data Encrytion Standard
Standard federale ancora oggi ufficiale (nella versione triplo-des)
per gli USA, è nato nel 1977 per implementazioni per
lo più hardware come derivazione di Lucifer, un algoritmo
di IBM nato nel '70, su insistenza del National Bureau of
Standard per difendere dati riservati ma non segreti militari.
Il DES brevettato nel 1976 da IBM è royalty-free dal
1993 ed è un codice cifrato a blocchi (si dice che
un codice è cifrato a blocchi quando si applica un
codice cifrato a un bit, byte, parola o gruppi di parole alla
volta). Il blocco che si usa per crittografare è di
64 bits (8 sottoblocchi da 8 bits). Dato che l'ultimo bit
di ogni sottoblocco è di controllo, i bit utili sono
56.
Per cifrare il testo si divide in blocchi da 64 bits che sono
cifrati in successione. Se un messaggio non riempie i 64 bits
si può completare in diversi modi: si possono aggiungere
zeri, si possono aggiungere bit random specificando nell'ultimo
quanti se ne aggiungono, etc.
Il DES è molto usato in ambito commerciale perchè
nonostante consti di numerosi passaggi, questi sono tutti
relativamenti semplici come XOR, sostituzioni e permutazioni.
Occorre ricordare che il DES cambia solo la chiave; questo
porta vantaggi economici immediati, ma appena verrà
scoperto il modo per forzarlo (senza bruteforce) occorrerà
cambiare radicalmente tutto. Un altro difetto fondamentale
è lo spazio limitato delle chiavi pari a 2^56. Per
ovviare al problema si tenta di allungare le chiavi o di applicare
più volte il DES (triplo-DES o TDES).
Il progetto originale dell' IMB per il DES prevedeva una chiave
più lunga dei 56 bits usati di default. Probabilmente
il progetto originario fu influenzato dall'NSA che impose
all'IBM una chiave sicura, ma comunque alla portata dei loro
potenti mezzi.
Eludere il DES
Nel gennaio 1998 la RSA Laboratories lanciò il "DES
challenge II" coordinato e risolto da distributed.net
in 39 days. Record presto battuto, nel 17 luglio 1998.
L'EFF, Electronic Frontier Foundation's, costruì una
macchina (DES Cracker machine) per distruggere il DES e ha
scritto un libro (maggio 1998) dove è spiegato nei
minimi dettagli come si è proceduto ().
La macchina del costo di 210.000 $ (80.000 per lo sviluppo
e il rimanente per i materiali impiegati, il software è
stato scritto da volontari in 2 settimane) forza un DES-56
bits in meno di 3 giorni. Il progetto è stato completato
in 18 mesi.
Hanno così dimostrato ai loro "stolti" (così
li definiscono nel libro) governanti che il DES può
essere forzato con una macchina dedicata. Qualche giorno prima
un funzionario del dipartimento di giustizia, Robert Litt,
si affannava a dire che non era possibile che l'FBI possesse
macchine per craccare il DES.
Sei mesi dopo, il 19 gennaio 1999, Distributed.Net lavorando
con un network mondiale in Internet di 100.000 pc e con il
DES Cracker della EFF, vinse l'RSA Data Security's DES Challenge
III con il tempo record di 22 ore e 15 minuti.
Dal novembre 1998 il DES non è più l'algoritmo
standard federale; è sostituito dal triplo-DES finchè
il nuovo AES non sarà pronto.
IDEA, International Data Encryption Algorithm
Creato nel 1991 da Xuejja Lai e James L. Massey, è,
come il DES, codice cifrato a blocchi di 64 bits con chiave,
però, di 128 bits. Anche IDEA usa calcoli semplici
basati su operazioni (addizioni e moltiplicazioni) modulari,
scambi e concatenamenti. Le sottochiavi usate nel procedimento
sono tutte diversi e a 16 bits.