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

Merlin transcript RNG #2

Open
noot opened this issue Oct 28, 2019 · 2 comments
Open

Merlin transcript RNG #2

noot opened this issue Oct 28, 2019 · 2 comments
Labels
go-schnorrkel Priority: 4 - Low Issue should be resolved eventually.

Comments

@noot
Copy link
Contributor

noot commented Oct 28, 2019

Right now, sign and verify won't interoperate with don't fully match the implementation in rust library, since in rust schnorrkel uses the transcript RNG to generate randomness when signing. The Go merlin library we're using doesn't have that yet: see gtank/merlin#2

See:
https://github.com/w3f/schnorrkel/blob/798ab3e0813aa478b520c5cf6dc6e02fd4e07f0a/src/sign.rs#L161
https://github.com/w3f/schnorrkel/blob/798ab3e0813aa478b520c5cf6dc6e02fd4e07f0a/src/context.rs#L153
for the relevant code in schnorrkel.

@oleganza
Copy link

oleganza commented Nov 10, 2019

Note that transcript-assisted RNG is not required for interoperability. Verifiers will never know how the signers generate nonces. Using transcript-based RNG is only a matter of securing the prover against weak RNGs or rowhammer attacks.

@noot
Copy link
Contributor Author

noot commented Nov 11, 2019

@oleganza that is true, I should specify that it would be needed for a complete/equivalent implementation.

@dutterbutter dutterbutter added go-schnorrkel Priority: 4 - Low Issue should be resolved eventually. labels Jan 8, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
go-schnorrkel Priority: 4 - Low Issue should be resolved eventually.
Projects
None yet
Development

No branches or pull requests

3 participants