-
Notifications
You must be signed in to change notification settings - Fork 2
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
Join forces? #1
Comments
Definitely, this is something worth to do it. Also, I think traits must be more granular. This is a small example, of course, but I think Rust allows a fine-grained design that we can leverage to have good API's. |
The other crates in https://github.com/RustCrypto all provide a pure Rust portable implementation (written in a constant time-ish manner, assuming the underlying architecture has a constant time arithmetic instruction among a handful of other assumption), and then layer on top of that architecture-specific optimizations. We've used a handful of FFI-based linking to assembly in the past, but have largely stopped doing that going forward to instead use things like
Beyond ECDSA, the notion of "keys" are also useful for things like D-H and ECIES, but also note that "keys" in that crate provide additional functionality over the values they wrap.
For scalars, the |
Just wanted to note we have full scalar, field, and curve arithmetic support in both the I am looking at adding support for computing ECDSA generically over any Weierstrass curve. |
Hello! I saw this crate and wanted to note there are a few other overlapping efforts here:
See the RustCrypto
elliptic-curve
crate and curve-specific crates implemented with it:As an example of a curve implemented with it, there's the
p256
crate:These are used by the
ecdsa
crate:Note there's also the
algebra
crate which providesField
andGroup
traits:Anyway, I think it'd be good to collaborate on one solid set of crates for this particular problem, and open to discussing how!
The text was updated successfully, but these errors were encountered: