Threshold Cryptography in MP-SPDZ
Date:
MP-SPDZ is a versatile framework for multi-party computation implementing more than 40 protocol variants. It achieves this by heavily using C++ templating. This allows implementing a protocol only once for several domains if possible. For example, replicated secret sharing works over any ring, and MP-SPDZ uses the same code for computing modulo primes or powers of two. One way of achieving threshold cryptography is by exploiting the mathematical structure of a cryptosystem based on discrete logarithm and combining it with an MPC protocol in a black-box manner. This has been done with ECDSA where the domain of the secret keys are equivalent to a prime-order field, which allows run a number of MPC protocols over it. A secret sharing scheme over the secret-key domain canonically implies one over the public-key domain and the conversion is straight-forward by applying the exponentiation. In this talk, I will present the infrastructure in MP-SPDZ that underlies the implementation and code examples thereof. The simple interface makes it easy to extend to other cryptosystems with a similar structure.