-
Notifications
You must be signed in to change notification settings - Fork 703
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
Add Ed25519 signing support #206
Comments
So without ser/de, what does the SigningKey instantiation look like? Just a 64-element u8 slice? |
Should it be a 64-element u8 slice, or two 32-element u8 slices, one for the private part and one for the public part? Anyway, yes, at least until we have deserialization and serialization support, setting the key via a slice or slices is fine. |
If you're interested in working on this, I suggest that you just try to implement SigningKey in the most simple way possible, hard-coding Ed25519 (and SHA-512). Then we can evolve the API from there. For example, instead of trying to define a generic
|
Note: [Edit: s/agreement/signature/] |
Rough Steps:
[Edit: s/agreement/signature/] |
I agree to license my contributions to each file under the terms given at the top of each file I changed.
I'm going to close this, since the only thing left on the checklist is the benchmarks, and crypto-bench already is keeping track of what needs to be done. Thanks again @djc. |
This should be relatively easy because there's good code in crypto/curve25519/curve25519.c that can be used. Actually, in
src/ec/eddsa.rs
, there is already a function nameded25519_sign
that implements the signing. So, the bulk of this work is just implementing thering::signature::SigningKey
API that is consistent with the rest of ring, and then addingring::signature::ED25519_SIGNING
.The tricky part is that there's no code to load a serialized private key, and there's no way to serialize a private key, which would be important to many uses. Deserialization and serialization could be done as a follow-on.
See also any general notes about signing APIs in #205.
The text was updated successfully, but these errors were encountered: