ZenGo-X / multi-party-ecdsa

Rust implementation of {t,n}-threshold ECDSA (elliptic curve digital signature algorithm).
GNU General Public License v3.0
977 stars 310 forks source link

Support several elliptic curves #110

Open survived opened 3 years ago

survived commented 3 years ago

multi-party-ecdsa used to work with several curves by specifying certain features. Currently, curve is fixed: we use secp256k1.

Choice of curve may be added by introducing generic parameters to algorithms (generic over ECPoint/ECScalar traits from curv crate), or by introducing features and adding conditional compilation.

dlhex commented 3 years ago

@survived Hi, I have some question something theoretical.

Can TSS support any kind of ECDSA curve no matter what curve is and also no matter size of key??

Actually What I'm looking for is about p256 or secp384r1.

survived commented 3 years ago

Hi @dlhex, yes, tss scheme implemented in multi-party-ecdsa can be generic over choice of curve, particularly it used to support p256. It just requires to make algorithms, defined in this crate, generic over E: Curve, see examples here

dlhex commented 3 years ago

I see! Thank you for your quick answer