MOTION
0.01
Framework for mixed-protocol multi-party computation
|
Go to the documentation of this file.
30 void ThreadSetName(std::thread& thread,
const std::string& name);
std::vector< std::unique_ptr< Party > > MakeLocallyConnectedParties(const std::size_t number_of_parties, std::uint16_t, const bool)
constructs number_of_parties motion::Party's locally connected via TCP.
Definition: party.cpp:227
std::enable_if_t< std::conjunction_v< std::is_integral< T >, std::is_unsigned< T >, std::negation< std::is_same< T, bool > >> > IsUnsignedInt
Definition: type_traits.h:31
TEST_P(TcpTransportTest, dummy)
Definition: test_tcp_transport.cpp:31
ShareWrapper Out(std::size_t output_owner=std::numeric_limits< std::int64_t >::max()) const
constructs an output gate, which reconstructs the cleartext result. The default parameter for the out...
Definition: share_wrapper.cpp:414
Definition: share_wrapper.h:44
T operator()(const T &left, const T &right) const
Definition: test_low_depth_reduce.cpp:33
virtual void RandomBlocksAligned(std::byte *output, std::size_t number_of_blocks) override
Definition: openssl_rng.cpp:37
TEST_P(CommunicationLayerTest, Tcp)
Definition: test_communication_layer.cpp:95
SharePointer & Get()
Definition: share_wrapper.h:107
static Block128Vector MakeRandom(std::size_t size)
Creates a vector of size elements filled with random data.
Definition: block.h:315
std::vector< std::unique_ptr< encrypto::motion::OtProviderManager > > ot_provider_wrappers_
Definition: test_ot_flavors.cpp:99
virtual void SampleKey() override
Definition: openssl_rng.cpp:35
T As() const
converts the information on the wires to T. Boolean and arithmetic GMW returns the secret-shared valu...
Definition: share_wrapper.cpp:616
TYPED_TEST_SUITE(AcOtTest, integer_types)
Definition: sp_provider.h:46
static BitVector SecureRandom(const std::size_t size) noexcept
Returns a random BitVector.
Definition: bit_vector.cpp:893
Definition: ot_provider.h:204
Definition: reusable_future.h:129
constexpr auto kDetailedLoggingEnabled
Definition: test_constants.h:30
void NotifyOne() noexcept
Unblocks one thread waiting for condition_variable_.
Definition: condition.h:66
std::vector< T > AddVectors(const std::vector< T > &a, const std::vector< T > &b)
Adds each element in a and b and returns the result.
Definition: helpers.h:100
TYPED_TEST(AcOtTest, AcOt)
Definition: test_ot_flavors.cpp:163
constexpr auto kNumberOfPartiesList
Definition: test_constants.h:32
const std::size_t sender_i_
Definition: test_ot_flavors.cpp:92
Definition: test_ot_flavors.cpp:155
TEST_F(OtFlavorTest, FixedXcOt128)
Definition: test_ot_flavors.cpp:102
void ThreadSetName(std::thread &thread, const std::string &name)
Definition: thread.cpp:29
Definition: test_low_depth_reduce.cpp:32
ReusableFuture< R, MutexType, ConditionVariableType > get_future()
Definition: reusable_future.h:242
virtual void SampleKey() override
Definition: aes128_ctr_rng.cpp:41
std::vector< T > a
Definition: sp_provider.h:47
static Aes128CtrRng & GetThreadInstance()
Definition: aes128_ctr_rng.h:56
T LowDepthReduce(std::vector< T > input, BinaryOperation operation)
Definition: low_depth_reduce.h:40
void RunOtExtensionSetup()
Definition: test_ot_flavors.cpp:79
std::vector< std::unique_ptr< CommunicationLayer > > MakeDummyCommunicationLayers(std::size_t number_of_parties)
Definition: communication_layer.cpp:503
Definition: tcp_transport.h:69
Definition: openssl_rng.h:37
choices
Definition: geninput.py:153
std::vector< std::unique_ptr< encrypto::motion::BaseOtProvider > > base_ot_providers_
Definition: test_ot_flavors.cpp:97
INSTANTIATE_TEST_SUITE_P(LowDepthReduceTestParameters, LowDepthReduceTest, testing::Values(1, 2, 3, 4, 7, 8, 16, 17, 23, 32, 53, 64, 100, 999999))
static Rng & GetThreadInstance()
Definition: openssl_rng.h:63
int main(int argc, char **argv)
Definition: test_motion_main.cpp:27
static BitVector RandomSeeded(const std::size_t size, const std::size_t seed=0) noexcept
Returns a random BitVector using an input seed. Internally uses Mersenne twister, do not use as crypt...
Definition: bit_vector.cpp:870
std::vector< bool > boolean_values
Definition: test_low_depth_reduce.cpp:56
int size
Definition: test_low_depth_reduce.cpp:54
Definition: test_ot_flavors.cpp:35
const std::size_t receiver_i_
Definition: test_ot_flavors.cpp:93
constexpr auto kTestIterations
Definition: test_constants.h:29
Definition: algorithm_description.h:43
Definition: aes128_ctr_rng.h:32
Definition: algorithm_description.cpp:35
bool valid() const noexcept
Definition: reusable_future.h:166
TEST(AesNi128, KeyExpansion)
Definition: test_aesni.cpp:31
INSTANTIATE_TEST_SUITE_P(CommunicationLayerTcpTests, CommunicationLayerTest, testing::Bool(), [](auto &info) { return info.param ? "ipv6" :"ipv4";})
TEST(ReusableFuture, SetAfterGetFuture)
Definition: test_reusable_future.cpp:29
Definition: test_low_depth_reduce.cpp:39
Definition: secure_unsigned_integer.h:33
static AlgorithmDescription FromBristol(const std::string &path)
Definition: algorithm_description.cpp:37
SecureUnsignedInteger Out(std::size_t output_owner=std::numeric_limits< std::int64_t >::max()) const
constructs an output gate, which reconstructs the cleartext result. The default parameter for the out...
Definition: secure_unsigned_integer.cpp:272
virtual void RandomBlocksAligned(std::byte *output, std::size_t number_of_blocks) override
Definition: aes128_ctr_rng.cpp:55
Wraps a std::condition_variable with a std::mutex and a condition checking function.
Definition: condition.h:35
std::vector< std::unique_ptr< encrypto::motion::BaseProvider > > motion_base_providers_
Definition: test_ot_flavors.cpp:98
Definition: reusable_future.h:123
T invert(std::size_t k, T a)
Definition: sb_impl.h:82
Definition: test_tcp_transport.cpp:29
static ShareWrapper Simdify(std::span< SharePointer > input)
constructs a SimdifyGate that composes the shares in input into a "larger" share with all the input s...
Definition: share_wrapper.cpp:907
encrypto::motion::OtProvider & GetReceiverProvider()
Definition: test_ot_flavors.cpp:75
constexpr std::string_view kRootDir
Definition: config.h:39
::testing::Types< std::uint8_t, std::uint16_t, std::uint32_t, std::uint64_t, __uint128_t > integer_types
Definition: test_ot_flavors.cpp:160
void SetUp() override
Definition: test_low_depth_reduce.cpp:41
static Block128 MakeRandom()
Create a random-initialized Block128.
Definition: block.h:70
ShareWrapper & Get()
Definition: secure_unsigned_integer.h:67
INSTANTIATE_TEST_SUITE_P(TcpTransportSuite, TcpTransportTest, testing::Values("127.0.0.1", "::1"), [](auto &info) { return info.param=="::1" ? "ipv6" :"ipv4";})
TEST(Aes128CtrRng, NoTrivialOutput)
Definition: test_rng.cpp:31
struct Attributes party_0
void set_value(const R &value)
Definition: reusable_future.h:226
encrypto::motion::OtProvider & GetSenderProvider()
Definition: test_ot_flavors.cpp:71
std::vector< std::uint32_t > integer_values
Definition: test_low_depth_reduce.cpp:55
constexpr auto kPortOffset
Definition: test_constants.h:31
std::vector< T > c
Definition: sp_provider.h:47
T sqrt(size_t k, T a)
Definition: sb_impl.h:43
void TearDown() override
Definition: test_ot_flavors.cpp:62
std::vector< std::unique_ptr< encrypto::motion::communication::CommunicationLayer > > communication_layers_
Definition: test_ot_flavors.cpp:96
std::vector< BitVector< Allocator > > ToInput(IntegralType integral_value)
Definition: bit_vector.cpp:1189
TEST_P(LowDepthReduceTest, OperationDepth)
Definition: test_low_depth_reduce.cpp:76
std::vector< std::unique_ptr< Transport > > SetupConnections()
Definition: tcp_transport.cpp:203
R get()
Definition: reusable_future.h:155
void SetUp() override
Definition: test_ot_flavors.cpp:37