Cryptanalisi differenziale è un tipo di attacco che sfrutta alcuni dettagli nella struttura della cifra attaccata; si guardano coppie di testi in chiaro, crittografati con la stessa chiave e i corrispondenti numeri cifrati. Le coppie devono essere scelte con cura in modo che la differenza tra i due testi in chiaro (di solito, la differenza di bit, cioè un XOR) eserciti con probabilità "alta" l'esatta debolezza dell'algoritmo che è mirata. Non esiste una crittanalisi differenziale "generica" in cui si dovrebbero semplicemente inserire caratteri in chiaro al codice e sperare che si combinino in qualche modo in un Megazord -come attacco.
In parole povere, per fare una crittoanalisi differenziale, devi capire cosa stai facendo, fino ai dettagli matematici pelosi. E quando si raggiunge quel punto , si vede che i bit di base per la crittoanalisi differenziale non sono molto importanti (ciò che conta è la differenza tra i due testi in chiaro). Pertanto, nel contesto di un esperimento di laboratorio , la maggior parte dei generatori casuali faranno - ma probabilmente dovrai generare molte coppie di testi in chiaro, quindi potresti incontrare qualche collo di bottiglia se il PRNG è troppo lento (ma non ci credere ancora; misuralo ).
Se vuoi ottenere il succo della crittanalisi differenziale, leggi questo libro e prova ad implementarlo su una versione ridotta di DES (fino a 8 round invece dello standard 16).