ZenGo-X / multi-party-ecdsa

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

gg20 key generation API. This hopefully gives a good example about how this can be used. #101

Closed nmahendru closed 3 years ago

nmahendru commented 3 years ago

The current unit test keygen_t_n_parties function does test the full process but it does not break the whole implementation into stages that are usable as an API.

This test is a sample for that. Hopefully this is self documenting and can help people who are trying to use this project.

I will follow up with a similar PR for signing.

I am also thinking if a json in/json out interface could be setup for these stages to help demonstrate it in much more readable request-json/response-json like log. @omershlo

omershlo commented 3 years ago

@nmahendru fantastic work.

1) Is it still a work in progress? (I assume some changes will happen once you do the same for sign). 2) for completeness you can add encryption scheme. https://github.com/ZenGo-X/rust-elgamal should work. I just think that this might fit well in API

nmahendru commented 3 years ago

@omershlo

  1. Signing coming in the next PR.
  2. I'll see what can be done about adding an encryption scheme in the next PR.