Jump to content

Yarrow algorithm

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Ravi Pokala (talk | contribs) at 23:12, 21 August 2015 (FreeBSD has migrated from Yarrow to Fortuna. Re-arrange things accordingly.). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

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]

References