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

Signature Verification for Beacon Chain #258

Closed
rawfalafel opened this issue Jul 13, 2018 · 5 comments
Closed

Signature Verification for Beacon Chain #258

rawfalafel opened this issue Jul 13, 2018 · 5 comments
Assignees
Labels
Priority: High High priority item Priority: Medium Medium priority item

Comments

@rawfalafel
Copy link
Contributor

Casper 2.0 will likely use BLS multisigs to efficiently secure signatures from attesters and notaries. However we're still undecided on the signature scheme used for Ruby because the implementation details are subject to change and BLS multisig implementations are few and far between. This issue will track our options until we've collectively made a decision. Here's some options:

  1. Punt signature verification altogether and use a noop for signature verification. The obvious downside is that the random beacon chain wouldn't be useful as a consensus machine whatsoever. However, it may be sufficient as a prototype.
  2. Use ECDSA signatures without any fancy aggregation. Downside here is the large data size and performance penalty of transporting and verifying large numbers of signatures for large validator sets.
  3. Explore existing BLS sig libraries and begin implemneting it now. Dfinity has a number of repositories we can look into, and this comment mentions a scheme that's being looked into.

The second option seems like the most reasonable option to me but in order to stay ahead of the curve I'm going to spend some time studying BLS sigs.

@terencechain
Copy link
Member

Please keep in mind. Regarding BLS, both the one from Dfinity and the one from crypto.stanford.edu are using GMP which has tricky licensing (not allowed on app stores for example)

@rauljordan rauljordan changed the title Signature verification for Beacon Chain Signature Verification for Beacon Chain Jul 13, 2018
@rawfalafel
Copy link
Contributor Author

Good point. I'll track noteworthy licenses for any library we choose to import in this issue.

@eolszewski
Copy link

Would this not provide the same benefit?

@rauljordan rauljordan added In Progress Priority: High High priority item Priority: Medium Medium priority item and removed Beacon Chain labels Oct 9, 2018
@rauljordan
Copy link
Contributor

This is being worked on in #637

@rauljordan
Copy link
Contributor

Closed by having the go-bls repo integrated into Prysm. Closing this in favor of #1366.

Redidacove pushed a commit to Redidacove/prysm that referenced this issue Aug 13, 2024
Co-authored-by: Mário Havel <61149543+taxmeifyoucan@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Priority: High High priority item Priority: Medium Medium priority item
Projects
None yet
Development

No branches or pull requests

5 participants