MOTION  0.01
Framework for mixed-protocol multi-party computation
Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
encrypto::motion::OpenSslRng Class Reference

#include <openssl_rng.h>

Inheritance diagram for encrypto::motion::OpenSslRng:
Inheritance graph
[legend]
Collaboration diagram for encrypto::motion::OpenSslRng:
Collaboration graph
[legend]

Public Member Functions

 OpenSslRng ()
 
virtual ~OpenSslRng ()
 
 OpenSslRng (const OpenSslRng &)=delete
 
 OpenSslRng (OpenSslRng &&)=delete
 
OpenSslRngoperator= (const OpenSslRng &)=delete
 
OpenSslRngoperator= (OpenSslRng &&)=delete
 
virtual void SampleKey () override
 
virtual void RandomBytes (std::byte *output, std::size_t number_of_bytes) override
 
virtual void RandomBlocks (std::byte *output, std::size_t number_of_blocks) override
 
virtual void RandomBlocksAligned (std::byte *output, std::size_t number_of_blocks) override
 
- Public Member Functions inherited from encrypto::motion::Rng
 Rng ()=default
 
virtual ~Rng ()=default
 

Static Public Member Functions

static RngGetThreadInstance ()
 

Static Public Attributes

static constexpr std::size_t kBlockSize = 16
 
- Static Public Attributes inherited from encrypto::motion::Rng
static constexpr std::size_t kBlockSize = 16
 

Constructor & Destructor Documentation

◆ OpenSslRng() [1/3]

encrypto::motion::OpenSslRng::OpenSslRng ( )
default

◆ ~OpenSslRng()

encrypto::motion::OpenSslRng::~OpenSslRng ( )
virtualdefault

◆ OpenSslRng() [2/3]

encrypto::motion::OpenSslRng::OpenSslRng ( const OpenSslRng )
delete

◆ OpenSslRng() [3/3]

encrypto::motion::OpenSslRng::OpenSslRng ( OpenSslRng &&  )
delete

Member Function Documentation

◆ GetThreadInstance()

static Rng& encrypto::motion::OpenSslRng::GetThreadInstance ( )
inlinestatic
Here is the caller graph for this function:

◆ operator=() [1/2]

OpenSslRng& encrypto::motion::OpenSslRng::operator= ( const OpenSslRng )
delete

◆ operator=() [2/2]

OpenSslRng& encrypto::motion::OpenSslRng::operator= ( OpenSslRng &&  )
delete

◆ RandomBlocks()

void encrypto::motion::OpenSslRng::RandomBlocks ( std::byte *  output,
std::size_t  number_of_blocks 
)
overridevirtual

Implements encrypto::motion::Rng.

◆ RandomBlocksAligned()

void encrypto::motion::OpenSslRng::RandomBlocksAligned ( std::byte *  output,
std::size_t  number_of_blocks 
)
overridevirtual

Implements encrypto::motion::Rng.

Here is the caller graph for this function:

◆ RandomBytes()

void encrypto::motion::OpenSslRng::RandomBytes ( std::byte *  output,
std::size_t  number_of_bytes 
)
overridevirtual

Implements encrypto::motion::Rng.

◆ SampleKey()

void encrypto::motion::OpenSslRng::SampleKey ( )
overridevirtual

Implements encrypto::motion::Rng.

Here is the caller graph for this function:

Member Data Documentation

◆ kBlockSize

constexpr std::size_t encrypto::motion::OpenSslRng::kBlockSize = 16
staticconstexpr

The documentation for this class was generated from the following files: