Oracle attack

In the field of security engineering, an oracle attack is an attack that exploits the availability of a weakness in the system which can be used as an "oracle" which can give a simple go/no go indication to show whether the attacker has reached, or is nearing, their goal. The attacker can then combine the oracle with systematic search of the problem space to complete their attack.[1]

The padding oracle attack, and compression oracle attacks such as BREACH, are examples of oracle attacks, as was the practice of "crib-dragging" in the cryptanalysis of the Enigma machine. An oracle need not be 100% accurate: even a small statistical correlation with the correct go/no go result can frequently be enough for a systematic automated attack.

In a compression oracle attack the use of adaptive data compression on a mixture of chosen plaintext and unknown plaintext can result in content-sensitive changes in the length of the compressed text that can be detected even though the content of the compressed text itself is then encrypted. This can be used in protocol attacks to detect when the injected known plaintext is even partially similar to the unknown content of a secret part of the message, greatly reducing the complexity of a search for a match for the secret text. The CRIME and BREACH attacks are examples of protocol attacks using this phenomenon.

See also

References

  1. Jason Coombs (2 December 2004). "Understanding Oracle Attacks". Dr. Dobbs'. Retrieved 2013-10-04.
This article is issued from Wikipedia - version of the Tuesday, January 19, 2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.