ssh-key: add partial support for U2F signatures verification#44
ssh-key: add partial support for U2F signatures verification#44tarcieri merged 1 commit intoRustCrypto:masterfrom
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.
You need to consolidate these imports with the ones for the rsa crate.
There was a problem hiding this comment.
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 |
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:
Sshsiglayer, 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;Signaturedecoding 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.