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

#include <sharing_randomness_generator.h>

Public Member Functions

 SharingRandomnessGenerator (std::size_t party_id)
 
void Initialize (const unsigned char seed[SharingRandomnessGenerator::kMasterSeedByteLength])
 
 ~SharingRandomnessGenerator ()=default
 
std::vector< std::uint8_t > GetSeed ()
 
bool & IsInitialized ()
 
std::unique_ptr< FiberCondition > & GetInitializedCondition () noexcept
 
 SharingRandomnessGenerator (SharingRandomnessGenerator &)=delete
 
 SharingRandomnessGenerator ()=delete
 
template<typename T , typename = std::enable_if_t<std::is_unsigned_v<T>>>
GetUnsigned (const std::size_t gate_id)
 
template<typename T , typename = std::enable_if_t<std::is_unsigned_v<T>>>
std::vector< T > GetUnsigned (std::size_t gate_id, const std::size_t number_of_gates)
 
BitVector GetBits (const std::size_t gate_id, const std::size_t number_of_bits)
 
void ClearBitPool ()
 
void ResetBitPool ()
 

Static Public Attributes

constexpr static std::size_t kMasterSeedByteLength = 32
 

Constructor & Destructor Documentation

◆ SharingRandomnessGenerator() [1/3]

encrypto::motion::primitives::SharingRandomnessGenerator::SharingRandomnessGenerator ( std::size_t  party_id)

◆ ~SharingRandomnessGenerator()

encrypto::motion::primitives::SharingRandomnessGenerator::~SharingRandomnessGenerator ( )
default

◆ SharingRandomnessGenerator() [2/3]

encrypto::motion::primitives::SharingRandomnessGenerator::SharingRandomnessGenerator ( SharingRandomnessGenerator )
delete

◆ SharingRandomnessGenerator() [3/3]

encrypto::motion::primitives::SharingRandomnessGenerator::SharingRandomnessGenerator ( )
delete

Member Function Documentation

◆ ClearBitPool()

void encrypto::motion::primitives::SharingRandomnessGenerator::ClearBitPool ( )

◆ GetBits()

BitVector encrypto::motion::primitives::SharingRandomnessGenerator::GetBits ( const std::size_t  gate_id,
const std::size_t  number_of_bits 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetInitializedCondition()

std::unique_ptr<FiberCondition>& encrypto::motion::primitives::SharingRandomnessGenerator::GetInitializedCondition ( )
inlinenoexcept

◆ GetSeed()

std::vector< std::uint8_t > encrypto::motion::primitives::SharingRandomnessGenerator::GetSeed ( )

◆ GetUnsigned() [1/2]

template<typename T , typename = std::enable_if_t<std::is_unsigned_v<T>>>
T encrypto::motion::primitives::SharingRandomnessGenerator::GetUnsigned ( const std::size_t  gate_id)
inline
Here is the call graph for this function:

◆ GetUnsigned() [2/2]

template<typename T , typename = std::enable_if_t<std::is_unsigned_v<T>>>
std::vector<T> encrypto::motion::primitives::SharingRandomnessGenerator::GetUnsigned ( std::size_t  gate_id,
const std::size_t  number_of_gates 
)
inline
Here is the call graph for this function:

◆ Initialize()

void encrypto::motion::primitives::SharingRandomnessGenerator::Initialize ( const unsigned char  seed[SharingRandomnessGenerator::kMasterSeedByteLength])
Here is the call graph for this function:

◆ IsInitialized()

bool& encrypto::motion::primitives::SharingRandomnessGenerator::IsInitialized ( )
inline

◆ ResetBitPool()

void encrypto::motion::primitives::SharingRandomnessGenerator::ResetBitPool ( )
Here is the call graph for this function:

Member Data Documentation

◆ kMasterSeedByteLength

constexpr static std::size_t encrypto::motion::primitives::SharingRandomnessGenerator::kMasterSeedByteLength = 32
staticconstexpr

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