crypto
crypto copied to clipboard
ssh: sign and verify
Initial implementation of proposal of SSHSIG closes golang/go#68197
Want to make sure the API is all right before adding more tests. Also seeking feedback on how to best test this - is it OK to sign and verify in the same test, or do you have other ideas? Maybe a fixed rand reader?
This PR (HEAD: 40fe82dd956cf77ace0f2a270747689e34566783) has been imported to Gerrit for code review.
Please visit Gerrit at https://go-review.googlesource.com/c/crypto/+/659715.
Important tips:
- Don't comment on this PR. All discussion takes place in Gerrit.
- You need a Gmail or other Google account to log in to Gerrit.
- To change your code in response to feedback:
- Push a new commit to the branch used by your GitHub PR.
- A new "patch set" will then appear in Gerrit.
- Respond to each comment by marking as Done in Gerrit if implemented as suggested. You can alternatively write a reply.
- Critical: you must click the blue Reply button near the top to publish your Gerrit responses.
- Multiple commits in the PR will be squashed by GerritBot.
- The title and description of the GitHub PR are used to construct the final commit message.
- Edit these as needed via the GitHub web interface (not via Gerrit or git).
- You should word wrap the PR description at ~76 characters unless you need longer lines (e.g., for tables or URLs).
- See the Sending a change via GitHub and Reviews sections of the Contribution Guide as well as the FAQ for details.
PS, usage would be something like this:
const ns = "my@namespace"
const data = "the data to be signed"
// to sign:
signer, _ := ssh.ParsePrivateKey(keypem)
signature, _ := ssh.Sign(signer, rand.Reader, []byte(data), ns)
// to verify:
pub, _ := ssh.ParsePublicKey(pubkeypem)
block, _ := pem.Decode(signature)
err := ssh.Verify(pub, []byte(data), block.Bytes, ns)
Message from Gopher Robot:
Patch Set 1:
(1 comment)
Please don’t reply on this GitHub thread. Visit golang.org/cl/659715. After addressing review feedback, remember to publish your drafts!