Ci sono state molte critiche al DES, una di queste riguarda i controlli di esportazione.
Il governo degli Stati Uniti mediante l'ITAR (International Traffic in Arms Regulations) restringe attualmente l'esportazione di tecnologie crittografiche con chiave di lunghezza superiore a 40 bit (considerate di interesse strategico a fini militari) di fatto causando, secondo alcuni, la difficoltà nel garantire la sicurezza delle comunicazioni.
Alcune aziende statunitensi vedevano sempre più di cattivo occhio questa limitazione, sostenendo che faceva perdere loro di competitività nei confronti di concorrenti europei o asiatici non sottoposti alle regolamentazioni ITAR.
Il nascere poi di sistemi di crittografia a chiave pubblica, nei quali la chiave deve strutturalmente essere più lunga rispetto a quella usata nei sistemi tradizionali, ha contribuito ad aumentare la tensione e le discussioni anche in sede governativa.
Altre critiche al DES riguardano la sua sicurezza ed in particolare i seguenti punti:
Le S-box. L'algoritmo di per sé è molto semplice e tutte le funzioni sono funzioni lineari (gli xor e le permutazioni) tranne le S-box. Esse sembrano delle semplici matrici costruite a caso; tuttavia esse rispondono a dei precisi criteri che non sono completamente noti, ed è per questo che a molti appaiono come qualcosa di misterioso. In effetti si teme che l'NSA abbia nascosto in esse delle trapdoor in modo tale da permettere (proprio a quelli dell'NSA) di decifrare facilmente messaggi intercettati.
Chiaramente è difficile (se non impossibile) dimostrare che le S-box contengano delle trapdoor, come pure d'altronde dimostrare che esse non ne contengano. Tuttavia c'è gente che spera di trovare qualche proprietà nascosta nelle S-box. Ad esempio la S4 ha importanti proprietà: gli ultimi 3 output possono essere derivati nello stesso modo come i primi tre complementando alcuni bit di input.
Due input diversi alle S-box, ma scelti in maniera opportuna, possono produrre lo stesso output. E possibile inoltre ottenere lo stesso output di un solo ciclo di DES cambiando i bit solo in tre consecutive S-box.
Gli shift Altre critiche riguardano gli shift: perché uno shift di una sola posizione solo alla prima, seconda, nona e sedicesima iterazione, mentre alle altre iterazioni lo shift interessa due posizioni?
Le iterazioni Perché solo 16 iterazioni e non 24 o 32? Alan Konheim, dimostrò che con DES ad 8 iterazioni, il testo cifrato era una funzione random di ogni bit del testo in chiaro e di ogni bit della chiave. Perché allora non fermare DES dopo 8 iterazioni?
E. Biham e A. Shamir, "inventori" della crittoanalisi differenziale hanno dimostrato, nel 1990, che con meno di 16 iterazioni si può rompere il DES con un attacco known-plaintext più efficiente di un attacco "brute force" che esamina 256 chiavi. Con 16 iterazioni i due attacchi sono equivalenti.
Don Coppersmith, ricercatore dell'IBM, quando fu chiamato a rispondere sulla questione affermò che l'IBM conosceva la crittoanalisi differenziale già nel1974 e che quindi progettarono il sistema proprio per evitare attacchi di quel tipo. La diffusione di questa nuova analisi non avvenne per ovvi motivi. In tutti i casi Adi Shamir rispose affermando che fino al 1990 non si conoscevano attacchi migliori della crittoanalisi differenziale, e Coppersmith decise di non protrarre ulteriormente la questione decidendo di rimanere in silenzio.
La lunghezza della chiave La maggiore critica al DES è che la dimensione dello spazio delle chiavi, 256, è troppo piccolo per essere realmente sicuro. Ci si chiede quindi: perché DES usa una chiave a 56 bit mentre LUCIFER ne usava 128?
Un attacco brute force su una chiave a 128 bit non è nemmeno immaginabile mentre sono noti attacchi brute force con chiave a 64 bit. Notiamo che anche quando il metodo di scelta è la forza bruta, le chiavi raramente sono veramente casuali, e possono essere cercate nell'ordine più probabile.
Uno di questi potrebbe essere l'attacco known-plaintext, in cui dato un blocco di 64 bit di testo in chiaro x, ed il corrispondente testo cifrato y, si vanno a testare tutte le possibili chiavi fino a che se ne trova una per cui ek(x) = y. Si noti che potrebbe esistere più di una chiave che verifica tale proprietà.
Relativamente a questo esistono limiti pratici alle dimensioni della chiave, che può essere scoperta con una ricerca di forza bruta, ma dal momento che NSA ha deliberatamente limitato la dimensione della chiave del DES a 56 bit, già nel lontano 1970 il DES era rompibile con un algoritmo di forza bruta.
La maggior parte dei cifrari ha una struttura interna molto diversa dal DES, e può essere possibile eliminare il grande numero di possibili chiavi per trarre vantaggio dalla struttura del cifrario.
Una valutazione del 1996, relativa alle dimensioni di chiavi necessarie per la sicurezza, stabiliva che le chiavi dovevano avere un minimo di 75 bit per proteggere contro gli attacchi di forza bruta ed un minimo di 90 bit per proteggere per ulteriori venti anni.
Tutto ciò a dimostrazione del fatto che lo spazio delle chiavi è relativamente piccolo e che comunque esaminando lo spazio delle chiavi in maniera esaustiva servono in media 255 tentativi prima di indovinare la chiave (cioè la metà di quelle possibili).