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 image set. 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 permuation'''.