||The English used in this article may not be easy for everybody to understand. (November 2011)|
Differential cryptanalysis is a general form of cryptanalysis applicable to block ciphers, but also can be applied to stream ciphers and cryptographic hash functions. It is the study of how differences in the input can affect the resultant differences at the output. In the case of a block cipher, it refers to a set of techniques and methods for tracing differences through the network of transformations, discovering where the cipher demonstrates non-random behaviour, and extend such properties to recover the secret key.