Differential cryptanalysis is a general form of cryptanalysis
applicable primarily to block ciphers, but also to stream ciphers
and cryptographic hash functions.
In the broadest sense, it is the study of how differences in the input
to a cryptosystem can affect the resultant difference at the output,
and the possible usage of this study towards improving the efficiency
of attacks on the cryptosystem (and so diminishing its apparent security).
In the case of a block cipher, it refers to a set of techniques
for tracing differences through the network of transformations,
discovering where the cipher exhibits easily detectable non-random
behavior, and exploiting such properties to recover the secret key.
Differential cryptanalysis was developed at WIS in the late 1980`s and early 1990`s, and led to numerous attacks against various block ciphers and hash functions.