getamis / alice

Hierarchical Threshold Signature Scheme
Apache License 2.0
375 stars 75 forks source link

"Aux-Info" and "Pre-sign" phase code implementations in Sign protocol of CGGMP #230

Closed Hoodie-Kang closed 1 year ago

Hoodie-Kang commented 1 year ago

Hi all!

I'm trying hard to make a complete result of ECDSA-CGGMP, but I can't :(

About DKG -> I already posted an issue couple of days ago, please check it Sign -> This issue!

I was unable to make input configurations of a signing and found that the DKGresult and input of sign are very different. I thought probably that's because some important parts are missing: Auxiliary Information phase and Presigning phase in the paper. (some of them or all of them)

Are they implemented ? If yes, then please let me know what packages or functions to use to control the input configs. No! Then, can you give me any information to make it work? Or Do you have any plan to implement them/it?

This might be a silly question ... but anyway, thank you in advance!

cychuang0924 commented 1 year ago

Hi Hoodie-Kang,

About the issue of DKG, if we have free time, @alanchchen will help you. However, he is sick now. We apologize for not providing a sample yet. Meanwhile, we should update the Readme!

In cggmp, before you run the sign protocol, you should perform the protocols of DKG and refresh. The DKG protocol generates all shares and the refresh protocol gives us the other necessary data.

Our implementation does not include "Pre-sign". If you perform the sign protocol, then you will get a signature directly. You can refer to the uni-test: https://github.com/getamis/alice/blob/f4081e0922387b5a60ab709e5df9f680704d860f/crypto/tss/ecdsa/cggmp/sign/sign_test.go#L70

This uni-test can tell us how to use the sign protocol. If you have other problems, please let me know. Thanks a lot!

Hoodie-Kang commented 1 year ago

Hi cychuang0924,

Thanks to you, now I fully understood the overall process and will proceed with refresh first.

Thank you for your quick response! and I hope @alanchchen gets well soon :)