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

#include <ot_extension_data.h>

Collaboration diagram for encrypto::motion::OtExtensionSenderData:
Collaboration graph
[legend]

Public Member Functions

 OtExtensionSenderData ()
 
 ~OtExtensionSenderData ()=default
 

Public Attributes

std::atomic< std::size_t > bit_size {0}
 
std::array< AlignedBitVector, 128 > u
 receiver's mask that are needed to construct matrix More...
 
std::array< ReusablePromise< std::size_t >, 128 > u_promises
 
std::array< ReusableFuture< std::size_t >, 128 > u_futures
 
std::mutex u_mutex
 
std::size_t number_of_received_us {0}
 
std::shared_ptr< BitMatrixV
 
std::unordered_map< std::size_t, std::size_t > number_of_ots_in_batch
 
std::unordered_set< std::size_t > received_correction_offsets
 
std::unordered_map< std::size_t, std::unique_ptr< FiberCondition > > received_correction_offsets_condition
 
BitVector corrections
 
std::mutex corrections_mutex
 
std::vector< BitVector<> > y0
 
std::vector< BitVector<> > y1
 
std::vector< std::size_t > bitlengths
 
std::unique_ptr< FiberConditionsetup_finished_condition
 
std::atomic< bool > setup_finished {false}
 
std::atomic< std::size_t > consumed_offset {0}
 

Constructor & Destructor Documentation

◆ OtExtensionSenderData()

encrypto::motion::OtExtensionSenderData::OtExtensionSenderData ( )

◆ ~OtExtensionSenderData()

encrypto::motion::OtExtensionSenderData::~OtExtensionSenderData ( )
default

Member Data Documentation

◆ bit_size

std::atomic<std::size_t> encrypto::motion::OtExtensionSenderData::bit_size {0}

◆ bitlengths

std::vector<std::size_t> encrypto::motion::OtExtensionSenderData::bitlengths

◆ consumed_offset

std::atomic<std::size_t> encrypto::motion::OtExtensionSenderData::consumed_offset {0}

◆ corrections

BitVector encrypto::motion::OtExtensionSenderData::corrections

◆ corrections_mutex

std::mutex encrypto::motion::OtExtensionSenderData::corrections_mutex
mutable

◆ number_of_ots_in_batch

std::unordered_map<std::size_t, std::size_t> encrypto::motion::OtExtensionSenderData::number_of_ots_in_batch

◆ number_of_received_us

std::size_t encrypto::motion::OtExtensionSenderData::number_of_received_us {0}

◆ received_correction_offsets

std::unordered_set<std::size_t> encrypto::motion::OtExtensionSenderData::received_correction_offsets

◆ received_correction_offsets_condition

std::unordered_map<std::size_t, std::unique_ptr<FiberCondition> > encrypto::motion::OtExtensionSenderData::received_correction_offsets_condition

◆ setup_finished

std::atomic<bool> encrypto::motion::OtExtensionSenderData::setup_finished {false}

◆ setup_finished_condition

std::unique_ptr<FiberCondition> encrypto::motion::OtExtensionSenderData::setup_finished_condition

◆ u

std::array<AlignedBitVector, 128> encrypto::motion::OtExtensionSenderData::u

receiver's mask that are needed to construct matrix

Parameters
V

◆ u_futures

std::array<ReusableFuture<std::size_t>, 128> encrypto::motion::OtExtensionSenderData::u_futures

◆ u_mutex

std::mutex encrypto::motion::OtExtensionSenderData::u_mutex

◆ u_promises

std::array<ReusablePromise<std::size_t>, 128> encrypto::motion::OtExtensionSenderData::u_promises

◆ V

std::shared_ptr<BitMatrix> encrypto::motion::OtExtensionSenderData::V

◆ y0

std::vector<BitVector<> > encrypto::motion::OtExtensionSenderData::y0

◆ y1

std::vector<BitVector<> > encrypto::motion::OtExtensionSenderData::y1

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