MOTION
0.01
Framework for mixed-protocol multi-party computation
|
#include <boolean_gmw_gate.h>
Public Member Functions | |
InputGate (std::span< const BitVector<>> input, std::size_t party_id, Backend &backend) | |
InputGate (std::vector< BitVector<>> &&input, std::size_t party_id, Backend &backend) | |
void | InitializationHelper () |
~InputGate () final=default | |
void | EvaluateSetup () final override |
void | EvaluateOnline () final override |
const boolean_gmw::SharePointer | GetOutputAsGmwShare () |
Public Member Functions inherited from encrypto::motion::OneGate | |
~OneGate () override=default | |
OneGate (OneGate &)=delete | |
Public Member Functions inherited from encrypto::motion::Gate | |
virtual | ~Gate ()=default |
const std::vector< WirePointer > & | GetOutputWires () const |
void | Clear () |
void | RegisterWaitingFor (std::size_t wire_id) |
void | SignalDependencyIsReady () |
bool | AreDependenciesReady () |
void | SetSetupIsReady () |
void | SetOnlineIsReady () |
void | WaitSetup () const |
void | WaitOnline () const |
bool | SetupIsReady () const |
std::int64_t | GetId () const |
Gate (Gate &)=delete | |
Protected Attributes | |
std::vector< BitVector<> > | input_ |
two-dimensional vector for storing the raw inputs More... | |
std::size_t | bits_ |
Number of parallel values on wires. More... | |
std::size_t | boolean_sharing_id_ |
correlated randomness using AES CTR More... | |
Protected Attributes inherited from encrypto::motion::InputGate | |
std::int64_t | input_owner_id_ = -1 |
Protected Attributes inherited from encrypto::motion::OneGate | |
std::vector< WirePointer > | parent_ |
Protected Attributes inherited from encrypto::motion::Gate | |
std::vector< WirePointer > | output_wires_ |
Backend & | backend_ |
std::int64_t | gate_id_ = -1 |
std::unordered_set< std::size_t > | wire_dependencies_ |
GateType | gate_type_ = GateType::kInvalid |
std::atomic< bool > | setup_is_ready_ = false |
std::atomic< bool > | online_is_ready_ = false |
std::atomic< bool > | requires_online_interaction_ = false |
std::atomic< bool > | added_to_active_queue_ = false |
FiberCondition | setup_is_ready_condition_ |
FiberCondition | online_is_ready_condition_ |
std::atomic< std::size_t > | number_of_ready_dependencies_ = 0 |
bool | own_output_wires_ {true} |
Additional Inherited Members | |
Protected Member Functions inherited from encrypto::motion::InputGate | |
~InputGate () override=default | |
InputGate (Backend &backend) | |
InputGate (InputGate &)=delete | |
Protected Member Functions inherited from encrypto::motion::OneGate | |
OneGate (Backend &backend) | |
Protected Member Functions inherited from encrypto::motion::Gate | |
Gate (Backend &backend) | |
Register & | GetRegister () |
Configuration & | GetConfiguration () |
Logger & | GetLogger () |
BaseProvider & | GetBaseProvider () |
MtProvider & | GetMtProvider () |
SpProvider & | GetSpProvider () |
SbProvider & | GetSbProvider () |
communication::CommunicationLayer & | GetCommunicationLayer () |
OtProvider & | GetOtProvider (const std::size_t i) |
encrypto::motion::proto::boolean_gmw::InputGate::InputGate | ( | std::span< const BitVector<>> | input, |
std::size_t | party_id, | ||
Backend & | backend | ||
) |
encrypto::motion::proto::boolean_gmw::InputGate::InputGate | ( | std::vector< BitVector<>> && | input, |
std::size_t | party_id, | ||
Backend & | backend | ||
) |
|
finaldefault |
|
finaloverridevirtual |
|
finaloverridevirtual |
const boolean_gmw::SharePointer encrypto::motion::proto::boolean_gmw::InputGate::GetOutputAsGmwShare | ( | ) |
void encrypto::motion::proto::boolean_gmw::InputGate::InitializationHelper | ( | ) |
|
protected |
Number of parallel values on wires.
|
protected |
correlated randomness using AES CTR
Sharing ID for Boolean GMW for generating
|
protected |
two-dimensional vector for storing the raw inputs