struct EntropyPool

Defined at line 25 of file ../../zircon/kernel/lib/crypto/include/lib/crypto/entropy_pool.h

Represents a collection of entropy from multiple sources.

Public Members

static const uint64_t kMaxEntropySize
static const uint8_t kShredValue

Public Methods

void EntropyPool (EntropyPool && )

Defined at line 20 of file ../../zircon/kernel/lib/crypto/entropy_pool.cc

EntropyPool & operator= (EntropyPool && )

Defined at line 22 of file ../../zircon/kernel/lib/crypto/entropy_pool.cc

void ~EntropyPool ()

Defined at line 28 of file ../../zircon/kernel/lib/crypto/entropy_pool.cc

void EntropyPool ()

Defined at line 33 of file ../../zircon/kernel/lib/crypto/include/lib/crypto/entropy_pool.h

void EntropyPool (const EntropyPool & )

Defined at line 34 of file ../../zircon/kernel/lib/crypto/include/lib/crypto/entropy_pool.h

void Add (std::span<const uint8_t> entropy)

Adds |entropy| into the |pool|, collecting |entropy.size()| bits of entropy.

Defined at line 34 of file ../../zircon/kernel/lib/crypto/entropy_pool.cc

void Add (std::span<const uint8_t> entropy)

Adds |entropy| into the |pool|, collecting |entropy.size()| bits of entropy.

EntropyPool & operator= (const EntropyPool & )

Defined at line 36 of file ../../zircon/kernel/lib/crypto/include/lib/crypto/entropy_pool.h

size_t AddFromDigest (std::span<const uint8_t> source)

Adds the entropy of the digested |source| to the pool.

Returns the size in bytes of the digest of |source|.

Defined at line 44 of file ../../zircon/kernel/lib/crypto/entropy_pool.cc

size_t AddFromDigest (std::span<const uint8_t> source)

Adds the entropy of the digested |source| to the pool.

Returns the size in bytes of the digest of |source|.

EntropyPool Clone ()

Creates a copy of the current state of |EntropyPool|.

Defined at line 48 of file ../../zircon/kernel/lib/crypto/include/lib/crypto/entropy_pool.h

std::span<const uint8_t, 32> contents ()

Returns a view into a buffer where entropy can be drawn from.

Defined at line 55 of file ../../zircon/kernel/lib/crypto/include/lib/crypto/entropy_pool.h