|
Botan 3.13.0
Crypto and TLS for C&
|
#include <entropy_src.h>
Public Member Functions | |
| Entropy_Source ()=default | |
| Entropy_Source (const Entropy_Source &other)=delete | |
| Entropy_Source (Entropy_Source &&other)=delete | |
| virtual std::string | name () const =0 |
| Entropy_Source & | operator= (const Entropy_Source &other)=delete |
| Entropy_Source & | operator= (Entropy_Source &&other)=delete |
| virtual size_t | poll (RandomNumberGenerator &rng)=0 |
| virtual | ~Entropy_Source ()=default |
Static Public Member Functions | |
| static std::unique_ptr< Entropy_Source > | create (std::string_view type) |
Abstract interface to a source of entropy
Definition at line 25 of file entropy_src.h.
|
default |
Default constructor
Referenced by Entropy_Source(), Entropy_Source(), operator=(), and operator=().
|
delete |
References Entropy_Source().
|
delete |
References Entropy_Source().
|
virtualdefault |
|
static |
Return a new entropy source of a particular type, or null Each entropy source may require substantial resources (eg, a file handle or socket instance), so try to share them among multiple RNGs, or just use the preconfigured global list accessed by Entropy_Sources::global_sources()
Definition at line 111 of file entropy_srcs.cpp.
References Botan::Processor_RNG::available(), BOTAN_UNUSED, and name().
Referenced by Botan::Entropy_Sources::Entropy_Sources().
|
pure virtual |
Return a free-form string identifying this entropy source
Implemented in Botan::Getentropy, Botan::Intel_Rdseed, and Botan::Win32_EntropySource.
Referenced by create().
|
delete |
References Entropy_Source().
|
delete |
References Entropy_Source().
|
pure virtual |
Perform an entropy gathering poll
| Random Number Generators | will be provided with entropy via calls to add_entropy |
Any implementation of this function should be thread safe; it may be called concurrently in multiple threads if multiple stateful RNGs reseed across different threads.
TODO(Botan4) make this member function const
Implemented in Botan::Getentropy, Botan::Intel_Rdseed, and Botan::Win32_EntropySource.