MOTION  0.01
Framework for mixed-protocol multi-party computation
Public Member Functions | List of all members
encrypto::motion::SpProviderFromOts Class Referencefinal

#include <sp_provider.h>

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

Public Member Functions

 SpProviderFromOts (std::vector< std::unique_ptr< OtProvider >> &ot_providers, const std::size_t my_id, Logger &logger, RunTimeStatistics &run_time_statistics)
 
void PreSetup () final override
 
void Setup () final override
 
- Public Member Functions inherited from encrypto::motion::SpProvider
virtual ~SpProvider ()=default
 
bool NeedSps () const noexcept
 
template<typename T >
std::size_t GetNumberOfSps () const noexcept
 
template<typename T , typename = std::enable_if_t<std::is_unsigned_v<T>>>
std::size_t RequestSps (const std::size_t number_of_sps) noexcept
 
template<typename T , typename = std::enable_if_t<std::is_unsigned_v<T>>>
SpVector< T > GetSps (const std::size_t offset, const std::size_t n=1)
 
template<typename T , typename = std::enable_if_t<std::is_unsigned_v<T>>>
const SpVector< T > & GetSpsAll () noexcept
 
void WaitFinished ()
 

Additional Inherited Members

- Protected Member Functions inherited from encrypto::motion::SpProvider
 SpProvider (const std::size_t my_id)
 
 SpProvider ()=delete
 
- Protected Attributes inherited from encrypto::motion::SpProvider
std::size_t number_of_sps_8_ {0}
 
std::size_t number_of_sps_16_ {0}
 
std::size_t number_of_sps_32_ {0}
 
std::size_t number_of_sps_64_ {0}
 
std::size_t number_of_sps_128_ {0}
 
SpVector< std::uint8_t > sps_8_
 
SpVector< std::uint16_t > sps_16_
 
SpVector< std::uint32_t > sps_32_
 
SpVector< std::uint64_t > sps_64_
 
SpVector< __uint128_t > sps_128_
 
const std::size_t my_id_
 
bool finished_ = false
 
std::shared_ptr< FiberConditionfinished_condition_
 

Constructor & Destructor Documentation

◆ SpProviderFromOts()

encrypto::motion::SpProviderFromOts::SpProviderFromOts ( std::vector< std::unique_ptr< OtProvider >> &  ot_providers,
const std::size_t  my_id,
Logger logger,
RunTimeStatistics run_time_statistics 
)

Member Function Documentation

◆ PreSetup()

void encrypto::motion::SpProviderFromOts::PreSetup ( )
finaloverridevirtual

Implements encrypto::motion::SpProvider.

Here is the call graph for this function:

◆ Setup()

void encrypto::motion::SpProviderFromOts::Setup ( )
finaloverridevirtual

Implements encrypto::motion::SpProvider.

Here is the call graph for this function:

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