𝒱i
ricordate il film "War Games"? Il computer attaccante trovava la
password cifra a cifra. Bene, fantascienza. Veniamo alla
realtà.
Prendiamo il DES, Data Encription Standard, con la sua lunghezza della parola chiave di 56 bit, otto caratteri ASCII, in un decennio di uso nessun matematico ha scoperto alcuna vulnerabilità.
E' opinione comune che sia un algoritmo robusto dal punto di vista teorico, quindi non esistono scorciatoie per decrittare un messaggio codificato con il DES. Si deve avere la password di 56 bit o in alternativa si devono provare tutte le parole da otto caratteri estesi. Questo se la parola segreta è ben scelta.
Non tutti sanno che contando da zero al massimo numero contenuto in 56 bit, si trovano tutte le combinazioni. La conseguenza di ciò è che se con 7 bit basta contare da zero a 127, con 8 bit occorre arrivare a 255 e ci si impiega il doppio del tempo, con 9 bit ci si impiega il quadruplo e così via.
Il risultato pratico di questo ragionamento è che il triple DES che usa chiavi da 112 bit non è rompibile nel doppio del tempo del DES che usa chiavi da 56 bit. Infatti il doppio del tempo è necessario per chiavi da 56+1 bit.
Dopo questa lunga introduzione veniamo ai tempi di cracking.
Il DES è stato rotto in poche ore anni fa dalla EFF, è presumibile che macchine potenti impieghino oggi pochi secondi. Ovviamente parlo di un attacco "Brute Force" ovvero "contando", scorciatoie non sono state scoperte a parte scorciatoie parziali che rigardano una casistica limitata di testi (crittoanalisi differenziale).
Per ovviare alla chiave troppo corta è stato introdotto il Triple-DES che permette di avere chiavi di lunghezza doppia rispetto al semplice DES.
La domanda che pongo è: "Quanto tempo ci si impiega per rompere il Triple DES?". Se per il DES ci si impiega 1 secondo per il 3DES si parla di 64*1024*1024*1024*1024*1024 secondi. Non voglio annoiare ma se li trasformate in età dell'universo viene fuori un bel numero.
Con giochetti come questo si arriva facilmente a concludere che per craccare il 3DES è necessario:
D'altro canto le organizzazioni malavitose non avranno problemi nell'estorcerci le chiavi di accesso. Poi se veniamo estradati negli USA e incarcerati a Guantanamo non ci sono speranze di mantenere segreti i nostri segreti.
N.B. Questo è un testo introduttivo, questioni come la crittanalisi differenziale applicata al DES non cambiano la sostanza, questioni come l'acquisto di tanti microprocessori quanto è il bilancio della difesa USA, non cambia l'inviolabilità di un algoritmo a 128 bit da parte della NSA. Ho dato per scontato che il tempo è un'arma efficace per cracckare il 3DES visto che le potenze di calcolo aumentano di un fattore 2 ogni due-tre anni.
Prendiamo il DES, Data Encription Standard, con la sua lunghezza della parola chiave di 56 bit, otto caratteri ASCII, in un decennio di uso nessun matematico ha scoperto alcuna vulnerabilità.
E' opinione comune che sia un algoritmo robusto dal punto di vista teorico, quindi non esistono scorciatoie per decrittare un messaggio codificato con il DES. Si deve avere la password di 56 bit o in alternativa si devono provare tutte le parole da otto caratteri estesi. Questo se la parola segreta è ben scelta.
Non tutti sanno che contando da zero al massimo numero contenuto in 56 bit, si trovano tutte le combinazioni. La conseguenza di ciò è che se con 7 bit basta contare da zero a 127, con 8 bit occorre arrivare a 255 e ci si impiega il doppio del tempo, con 9 bit ci si impiega il quadruplo e così via.
Il risultato pratico di questo ragionamento è che il triple DES che usa chiavi da 112 bit non è rompibile nel doppio del tempo del DES che usa chiavi da 56 bit. Infatti il doppio del tempo è necessario per chiavi da 56+1 bit.
Dopo questa lunga introduzione veniamo ai tempi di cracking.
Il DES è stato rotto in poche ore anni fa dalla EFF, è presumibile che macchine potenti impieghino oggi pochi secondi. Ovviamente parlo di un attacco "Brute Force" ovvero "contando", scorciatoie non sono state scoperte a parte scorciatoie parziali che rigardano una casistica limitata di testi (crittoanalisi differenziale).
Per ovviare alla chiave troppo corta è stato introdotto il Triple-DES che permette di avere chiavi di lunghezza doppia rispetto al semplice DES.
La domanda che pongo è: "Quanto tempo ci si impiega per rompere il Triple DES?". Se per il DES ci si impiega 1 secondo per il 3DES si parla di 64*1024*1024*1024*1024*1024 secondi. Non voglio annoiare ma se li trasformate in età dell'universo viene fuori un bel numero.
Kensan.it
Con giochetti come questo si arriva facilmente a concludere che per craccare il 3DES è necessario:
- fare una scoperta matematica sensazionale o diverse scoperte notevoli,
- avere una implementazione fatta male dell'algoritmo,
- usare parole chiavi prevedibili come "pippo",
- costringere il personaggio che conserva la parola chiave a rivelarla.
- avere il PC sotto controllo (spyware, virus, worm, trojan ecc.),
- avere software non fidato in esecuzione (software closed source, programmi non verificati).
- Supponiamo di usare un algoritmo crittografico simmetrico come il 3DES, l'AES "Rijndael" o il BlowFish.
- Supponiamo di avere una macchina sicura quindi non collegata a Internet, con software fidato (Linux e altro sw fidato) e senza accessi non autorizzati.
- Scegliamo di imparare a memoria una nostra poesia non scritta da nessuna parte e usiamo le iniziali di ciascuna parola per comporre la nostra parola segreta che sarà nel caso tipico di algoritmi a "128 bit", di circa 29 caratteri italici.
- Usiamo GnuPG come sistema crittografico.
D'altro canto le organizzazioni malavitose non avranno problemi nell'estorcerci le chiavi di accesso. Poi se veniamo estradati negli USA e incarcerati a Guantanamo non ci sono speranze di mantenere segreti i nostri segreti.
N.B. Questo è un testo introduttivo, questioni come la crittanalisi differenziale applicata al DES non cambiano la sostanza, questioni come l'acquisto di tanti microprocessori quanto è il bilancio della difesa USA, non cambia l'inviolabilità di un algoritmo a 128 bit da parte della NSA. Ho dato per scontato che il tempo è un'arma efficace per cracckare il 3DES visto che le potenze di calcolo aumentano di un fattore 2 ogni due-tre anni.