Yarrow algorithm

The Yarrow algorithm is a cryptographically secure pseudorandom number generator. The name is taken from the yarrow plant, the stalks of which are dried and used as a randomising agent in I Ching divination.

It was designed by Bruce Schneier, John Kelsey, and Niels Ferguson of Counterpane Labs (Kelsey et al., 1999). The Yarrow algorithm is explicitly unpatented, royalty-free and open source; no license is required to use it. An improved design from Ferguson and Schneier, Fortuna, is described in their book, Practical Cryptography.

Yarrow is incorporated in iOS[1] and Mac OS X for their /dev/random devices. FreeBSD also used Yarrow for /dev/random, but phased it out in favor of Fortuna.[2]

External links

References