Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Demo for Signature generation: Coordinator CLI #48

Closed
mpguerra opened this issue Feb 23, 2023 · 1 comment · Fixed by #59
Closed

Demo for Signature generation: Coordinator CLI #48

mpguerra opened this issue Feb 23, 2023 · 1 comment · Fixed by #59
Assignees

Comments

@mpguerra
Copy link
Contributor

mpguerra commented Feb 23, 2023

Motivation

We want to simulate a simple execution of FROST to show potential FROST implementers how to use the FROST library.

Scope

Build a simple CLI to demo signature aggregation by a coordinator in a 2-round FROST signature generation protocol, given a number of key shares and commitments from signature participants.

All other actions that the coordinator entity would perform, prior to signature aggregation, during the FROST signature generation can be done by the person running the FROST demo, e.g by entering in the relevant details when prompted by the participant CLI instances in ZcashFoundation/frost#239.

Specification

Round 2: Signature Aggregation

To perform signature aggregation, the CLI will prompt for the following data to be entered:

  • The list of signature shares, sig_shares, for each participant in the signature generation.
  • The message, msg, to be signed
  • The list of commitments, commitment_list.

The CLI will first validate each signature share, sig_share_i, by running DeserializeScalar.

If all signature shares are valid, the Coordinator CLI can proceed to aggregate them and produce the final signature by running, aggregate, with the previously entered data (sig_shares, msg and commitment_list) to generate the final Schnorr signature, (R,z) and output this to the terminal.

Two-Round FROST Signing Protocol with Coordinator - Round 2

@mpguerra
Copy link
Contributor Author

Hey team! Please add your planning poker estimate with Zenhub @conradoplg @dconnolly @natalieesk

@natalieesk natalieesk transferred this issue from ZcashFoundation/frost Jul 11, 2023
@natalieesk natalieesk self-assigned this Jul 11, 2023
natalieesk added a commit that referenced this issue Jul 18, 2023
natalieesk added a commit that referenced this issue Jul 19, 2023
natalieesk added a commit that referenced this issue Jul 19, 2023
natalieesk added a commit that referenced this issue Jul 20, 2023
Fix test values
Improve identifier input so it doesn't need to be in quotes
Remove unecessary text
conradoplg pushed a commit that referenced this issue Jul 20, 2023
* Add coordinator demo (#48)

* Add test for step_3 in coordinator (#48)

* Add validation for participant selection in coordinator demo (#48)

* Add tests for validation in step_1 for coordinator (#48)

* Improve error handling in Coordinator (#48)

* Fix clippy error (#48)

* Improve usability for coordinator demo (#48)

Fix test values
Improve identifier input so it doesn't need to be in quotes
Remove unecessary text
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants