Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

data::entropy(3pm) [debian man page]

Data::Entropy(3pm)					User Contributed Perl Documentation					Data::Entropy(3pm)

NAME
Data::Entropy - entropy (randomness) management SYNOPSIS
use Data::Entropy qw(entropy_source); $i = entropy_source->get_int(12345); use Data::Entropy qw(with_entropy_source); with_entropy_source $source, sub { @a = shuffle(@a); }; DESCRIPTION
This module maintains a concept of a current selection of entropy source. Algorithms that require entropy, such as those in Data::Entropy::Algorithms, can use the source nominated by this module, avoiding the need for entropy source objects to be explicitly passed around. This is convenient because usually one entropy source will be used for an entire program run and so an explicit entropy source parameter would rarely vary. There is also a default entropy source, avoiding the need to explicitly configure a source at all. If nothing is done to set a source then it defaults to the use of Rijndael (AES) in counter mode (see Data::Entropy::RawSource::CryptCounter and Crypt::Rijndael), keyed using Perl's built-in "rand" function. This gives a data stream that looks like concentrated entropy, but really only has at most the entropy of the "rand" seed. Within a single run it is cryptographically difficult to detect the correlation between parts of the pseudo-entropy stream. If more true entropy is required then it is necessary to configure a different entropy source. FUNCTIONS
entropy_source Returns the current entropy source, a "Data::Entropy::Source" object. This will be the source passed to the innermost call to "with_entropy_source", if any, or otherwise the default entropy source. with_entropy_source SOURCE, CLOSURE The SOURCE is selected, so that it will be returned by "entropy_source", and CLOSURE is called (with no arguments). The SOURCE is selected only during the dynamic scope of the call; after CLOSURE finishes, by whatever means, the previously selected entropy source is restored. SOURCE is normally a "Data::Entropy::Source" object. Alternatively, it may be "undef" to cause use of the default entropy source. It may also be a reference to a function of no arguments, which will be called to generate the actual source only if required. This avoids unnecessarily initialising the source object if it is uncertain whether any entropy will be required. The source-generating closure may return a normal source or "undef", but not another function reference. SEE ALSO
Data::Entropy::Algorithms, Data::Entropy::Source AUTHOR
Andrew Main (Zefram) <zefram@fysh.org> COPYRIGHT
Copyright (C) 2006, 2007, 2009, 2011 Andrew Main (Zefram) <zefram@fysh.org> LICENSE
This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.12.3 2011-05-09 Data::Entropy(3pm)

Check Out this Related Man Page

RANDOM(4)						   BSD Kernel Interfaces Manual 						 RANDOM(4)

NAME
random , urandom -- random data source devices. SYNOPSIS
pseudo-device random DESCRIPTION
The random device produces uniformly distributed random byte values of potentially high quality. To obtain random bytes, open /dev/random for reading and read from it. To add entropy to the random generation system, open /dev/random for writing and write data that you believe to be somehow random. /dev/urandom is a compatibility nod to Linux. On Linux, /dev/urandom will produce lower quality output if the entropy pool drains, while /dev/random will prefer to block and wait for additional entropy to be collected. With Yarrow, this choice and distinction is not necessary, and the two devices behave identically. You may use either. OPERATION
The random device implements the Yarrow pseudo random number generator algorithm and maintains its entropy pool. Additional entropy is fed to the generator regularly by the SecurityServer daemon from random jitter measurements of the kernel. SecurityServer is also responsible for periodically saving some entropy to disk and reloading it during startup to provide entropy in early system operation. You may feed additional entropy to the generator by writing it to the random device, though this is not required in a normal operating envi- ronment. LIMITATIONS AND WARNINGS
Yarrow is a fairly resilient algorithm, and is believed to be resistant to non-root. The quality of its output is however dependent on regu- lar addition of appropriate entropy. If the SecurityServer system daemon fails for any reason, output quality will suffer over time without any explicit indication from the random device itself. Paranoid programmers can counteract this risk somewhat by collecting entropy of their choice (e.g. from keystroke or mouse timings) and seed- ing it into random directly before obtaining important random numbers. FILES
/dev/random /dev/urandom HISTORY
A random device appeared in the Linux operating system. Darwin September 6, 2001 Darwin
Man Page