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

ed25519ph/HashEdDSA support? #63

Closed
brandonros opened this issue May 9, 2022 · 5 comments
Closed

ed25519ph/HashEdDSA support? #63

brandonros opened this issue May 9, 2022 · 5 comments

Comments

@brandonros
Copy link

brandonros commented May 9, 2022

HashEdDSA, shortened as Ed25519ph when coupled with Edwards25519 (and where ph stands for "prehash").

@brandonros brandonros changed the title ed25519ph support? ed25519ph/HashEdDSA support? May 9, 2022
@paulmillr
Copy link
Owner

What's your use case?

@zamicol
Copy link

zamicol commented Jun 3, 2022

Like ECDSA, we use systems that sign digests. ES224, ES256, ES384, ES512 work well with this.

PureEdDSA prefers the original message. It would be awesome to have Ed25519ph that conforms to same design pattern as ECDSA.

I would also add, the latest FIPS draft is requiring ed25519ph support.

G̶o̶ ̶1̶.̶1̶9̶ Go 1.20 will implemented this: golang/go#31804. PyNaCl is also working on high level support.

@paulmillr
Copy link
Owner

How should the ph api look like to be simple?

@zamicol
Copy link

zamicol commented Jun 3, 2022

As far as API, how about signDigest and verifyDigest?

Looking at this line:

export { getPublicKey, sign, verify, utils, CURVE, Point, ExtendedPoint, RistrettoPoint };

The exported would become:

export { getPublicKey, sign, verify, signDigest, verifyDigest, utils, CURVE, Point, ExtendedPoint, RistrettoPoint };

Edit: I was also thinking "signPH" and "verifyPH" might be more descriptive for those already familiar with Ed.

@paulmillr
Copy link
Owner

paulmillr commented Dec 11, 2022

fixed in https://github.com/paulmillr/noble-curves

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

No branches or pull requests

3 participants