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

Check that Schnorr signatures enforce domain separation #5395

Open
AaronFeickert opened this issue May 18, 2023 · 0 comments
Open

Check that Schnorr signatures enforce domain separation #5395

AaronFeickert opened this issue May 18, 2023 · 0 comments

Comments

@AaronFeickert
Copy link
Collaborator

AaronFeickert commented May 18, 2023

A recent PR showed an instance where a Schnorr signature is used without domain separation. This is a good opportunity to check other uses of such signatures and ensure they use domain separation.

The underlying tari-crypto implementation of Schnorr signatures provides for optional domain separation. If a domain separator is not supplied, a default is used.

This is risky. Signatures intended for use in different contexts must use unique domain separation; otherwise, it may be possible to replay a signature in an unexpected context, which can have very bad consequences. The intent of making it optional was simplicity, but it also introduces real risk if not carefully applied.

This issue should be closed when it's confirmed that domain separation is used in all cases throughout the codebase.

Separately, I think it's a good idea to make the underlying tari-crypto library enforce a domain separator, but that's a PR for another day.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Must Do
Development

No branches or pull requests

1 participant