-
Notifications
You must be signed in to change notification settings - Fork 2.5k
TypeScript Bandersnatch VRF Suite #2673
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
base: master
Are you sure you want to change the base?
Conversation
ceea3bd to
f21ef3a
Compare
Lederstrumpf
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @mikirov
Thanks for your application & apologies for the long wait.
I've discussed your application with Davide in the meantime.
Cost & scope of your proposal look reasonable to me, and having a typescript implementation is certainly useful since all JAM implementations I'm aware of still piggyback on https://github.com/davxy/ark-vrf, so having yours available too increases resilience (note there's also a python implementation in the pipeline: https://github.com/PolkadotOpenSourceGrants/apply/blob/master/applications/dot-ring.md).
I also don't have a concern with JAM prize here since this is a cryptographic primitive, and third party implementations are acceptable for this.
So an aye from my side.
Just left some nit suggestions so that once your delivery gets reviewed, it's clear which equations you were referring to since line numbers are fragile & ambiguous.
That being said, your delivery should of course be compatible with GP & W3F VRF/ring proof specs at time of your delivery, but I expect the relevant aspects to remain static.
|
|
||
| | Number | Deliverable | Detailed Specification | | ||
| |--------|-------------|------------------------| | ||
| | **1.** | **Entropy VRF Implementation** | Complete implementation of Gray Paper equation 158: `H_vrfsig ∈ bssignature{H_authorbskey}{Xentropy ∥ banderout{H_sealsig}}{[]}` for block entropy generation | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
158 is just the safrole.tex line number.
| | **1.** | **Entropy VRF Implementation** | Complete implementation of Gray Paper equation 158: `H_vrfsig ∈ bssignature{H_authorbskey}{Xentropy ∥ banderout{H_sealsig}}{[]}` for block entropy generation | | |
| | **1.** | **Entropy VRF Implementation** | Complete implementation of Gray Paper 0.7.2 equation 6.17: `H_vrfsig ∈ bssignature{H_authorbskey}{Xentropy ∥ banderout{H_sealsig}}{[]}` for block entropy generation | |
| **Deliverables**: | ||
|
|
||
| - **Entropy VRF**: | ||
| - Implements Gray Paper equation 158: `H_vrfsig ∈ bssignature{H_authorbskey}{Xentropy ∥ banderout{H_sealsig}}{[]}` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| - Implements Gray Paper equation 158: `H_vrfsig ∈ bssignature{H_authorbskey}{Xentropy ∥ banderout{H_sealsig}}{[]}` | |
| - Implements Gray Paper 0.7.2 equation 6.17: `H_vrfsig ∈ bssignature{H_authorbskey}{Xentropy ∥ banderout{H_sealsig}}{[]}` |
| | Number | Deliverable | Detailed Specification | | ||
| |--------|-------------|------------------------| | ||
| | **1.** | **Entropy VRF Implementation** | Complete implementation of Gray Paper equation 158: `H_vrfsig ∈ bssignature{H_authorbskey}{Xentropy ∥ banderout{H_sealsig}}{[]}` for block entropy generation | | ||
| | **2.** | **Audit VRF Implementation** | Full audit signature generation for both tranche 0 and tranche N according to Gray Paper equations 54-62 and 105, including work report hashing | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| | **2.** | **Audit VRF Implementation** | Full audit signature generation for both tranche 0 and tranche N according to Gray Paper equations 54-62 and 105, including work report hashing | | |
| | **2.** | **Audit VRF Implementation** | Full audit signature generation for both tranche 0 and tranche N according to Gray Paper 0.7.2 equations 17.3 and 17.14, including work report hashing | |
Project Abstract
TypeScript Bandersnatch VRF Suite is a comprehensive cryptographic implementation that provides enterprise-grade Verifiable Random Functions (VRFs) for the JAM protocol ecosystem. While the reference implementation exists exclusively in Rust, this project delivers a complete TypeScript alternative that eliminates language barriers and enables seamless integration with web applications, browser-based wallets, and Node.js environments. The implementation includes full IETF VRF, Pedersen VRF, and Ring VRF schemes built on the Bandersnatch curve, while maintaining strict compliance with Web3 Foundation specifications and RFC standards.
Grant level
Application Checklist
project_name.md).@_______:matrix.org(change the homeserver if you use a different one)