This is a C++ implementation of the protocol provided in the paper "Efficient Secure Two Party ECDSA" by Sermin Kocaman "[email protected]", and Younes Talibi Alaoui "[email protected]".
C++ compiler
secp256k1 (used for operations over the curve)
GMP (used for inverting field elements)
OpenSSL (used for SHA256)
- Run
make
- Run
.\2ecdsa_dummy_communication [number of keys] [number of signatures per key]
The output is the average time of key generation, offline signing, and online signing.
As mentioned, the MtA implemented is a dummy one, where only one party takes the two inputs and generates an additive sharing of their product, then sends one of the shares to the other party. Also the runtimes do not include the communication cost.