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

Tracking issue: Implement FROST #21

Closed
3 tasks
hdevalence opened this issue Jan 17, 2020 · 5 comments
Closed
3 tasks

Tracking issue: Implement FROST #21

hdevalence opened this issue Jan 17, 2020 · 5 comments
Assignees

Comments

@hdevalence
Copy link
Contributor

hdevalence commented Jan 17, 2020

FROST is a threshold signature and DKG construction by @chelseakomlo and Ian Goldberg.

Link: https://crysp.uwaterloo.ca/software/frost/

In terms of the API, I think it would make sense to have the FROST implementation in a frost submodule separated from the main API, and feature-gate the entire submodule on a frost feature.

  • Rebase WIP: Frost implementation #26 onto latest
  • Use zkcrypto/jubjub's SubgroupPoint so as to be closer to 1:1 with the reference impl's Ristretto prime order group assumptions
  • Triple-check the 'general' Schnorr sig divergence of (z, c) vs (R, c)
@hdevalence hdevalence changed the title Implement FROST Tracking issue: Implement FROST Jan 17, 2020
@burdges

This comment has been minimized.

@hdevalence

This comment has been minimized.

@ZcashFoundation ZcashFoundation locked as off-topic and limited conversation to collaborators Feb 4, 2020
@ZcashFoundation ZcashFoundation unlocked this conversation Feb 26, 2020
@hdevalence
Copy link
Contributor Author

In order to remain unopinionated, the messages generated while running the FROST protocols should be Serde'able, so that they can be serialized using whatever method is convenient for the library user. This will require either adding Serde support to jubjub and bls12_381 (allowing the use of derive for the messages) or implementing custom derives for the message types in redjubjub.

@hdevalence
Copy link
Contributor Author

(It may be easier in the short term to use Serde's remote derive functionality, https://serde.rs/remote-derive.html , so that this doesn't block on upstream.)

@dconnolly dconnolly self-assigned this Oct 1, 2020
@chelseakomlo
Copy link
Collaborator

Closing this as we merged #47 ; will open a separate issue for the DKG.

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.

4 participants