-
Notifications
You must be signed in to change notification settings - Fork 32
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
ssh-key: add partial support for U2F signatures verification #44
Conversation
This is definitely something we'd like to add. See also #4, where I had discussed with @obelisk about merging some similar code from the Just a general thought having looked through the code: this implementation is putting a lot of code in Putting the implementation in Also it'd be good to avoid breaking changes to public APIs for now, like the one made to |
7828287
to
1cb17e4
Compare
Hi, thanks for the reply. I have made a few changes and moved most of the additions into the I've also added tests for |
It looks like there are redundant imports when the crate is built with |
ssh-key/src/signature.rs
Outdated
use crate::{private::Ed25519Keypair, public::Ed25519PublicKey}; | ||
use { | ||
crate::{private::Ed25519Keypair, public::Ed25519PublicKey}, | ||
sha2::{Digest, Sha256}, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You need to consolidate these imports with the ones for the rsa
crate.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I noticed the lints but haven't had the time to fix them. I have pushed a new commit now.
All checks seem to pass now.
237151b
to
6d78afa
Compare
@tarcieri done. |
@a-dma looks like the build is failing. In one case, it's with the |
Initial work to add support for verifying `sk-ssh-ed25519` signatures.
6d78afa
to
ce0c34c
Compare
Interesting, I couldn't see those failures before, did you allow more checks? It looks like the issue is |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good now, thanks!
Hi,
I saw the recent release of v0.5 that added support for SSH signatures, and noticed that U2F/sk signatures were still missing.
I did some preliminary work to implement verification of ed25519-sk signatures. This is almost in a mergeable state, there's a few outstanding items and before doing too much I thought I'd check in with you.
Here's a short recap:
Sshsig
layer, but it could make sense to have a dedicated one for this format as those signature are a sort of wrapper around regular SSH signatures;Signature
decoding mechanism expects length-prefixed data, but sk signatures have 5 trailing bytes that are just added at the end. They are part of the signed data. Is there a good way to read those? Alternatively they could be removed from the test data given that they're not included in the length.As mentioned before, I can (time permitting) incorporate comments that you may have, or I'm perfectly fine if you'd like to take it from here and hit this into shape.
Bye
A.