The random oracle model is a model used in cryptographic security proofs, in which concrete primitives such as hash functions are replaced with a "random oracle": a hypothetical black box that maps its inputs to truly random outputs, but does it in such a way that the same input always yields the same output.

The use of random oracles in security proofs is somewhat controversial, since no actual function can actually behave like a true random oracle. In particular, there are known methods of constructing artificial cryptographic protocols that can be proven secure in the random oracle model, but whose security fails catastrophically if the random oracle is replaced by any real function, or even by a randomly chosen member of any keyed function family.

See also:

history | show excerpt | excerpt history