Jump to content

Random function

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by AnomieBOT (talk | contribs) at 15:52, 8 December 2011 (Dating maintenance tags: {{Cn}}). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

A random function is a function chosen at random from a finite family of functions. Typically, the family consists of the set of all maps from the domain to the codomain.[clarification needed] Thus, a random function can be considered to map each input independently at random to any one of the possible outputs. Viewed this way it is an idealization of a cryptographic hash function. A special case of a random function is a random permutation.

A random function is a useful building block in enabling cryptographic protocols. However, there are scenarios where it is not possible for mutually distrustful parties to agree on a random function (i.e., coin flipping is impossible).[citation needed] Therefore, cryptographers study models which explicitly allow for the use of a random function or a related object. See random oracle model, common reference string model.