diff options
| author | Filippo Valsorda <filippo@golang.org> | 2022-11-03 19:27:01 +0100 |
|---|---|---|
| committer | Filippo Valsorda <filippo@golang.org> | 2022-11-12 16:25:23 +0000 |
| commit | 6fad3dfc18918c2ac9c112e46b32473bd2e5e2f9 (patch) | |
| tree | 4fb497ff54ec4aedb597e037db50d3570d4110ac /ssh/client_auth_test.go | |
| parent | 21d60a152191de71c82a8101779e876bb03773b7 (diff) | |
| download | go-x-crypto-6fad3dfc18918c2ac9c112e46b32473bd2e5e2f9.tar.xz | |
ssh: support rsa-sha2-256/512 on the server side
This lets clients know we support rsa-sha2-256/512 signatures from
ssh-rsa public keys. OpenSSH prefers to break the connection rather than
attempting trial and error, apparently.
We don't enable support for the "ext-info-s" because we're not
interested in any client->server extensions.
This also replaces isAcceptableAlgo which was rejecting the
rsa-sha2-256/512-cert-v01@openssh.com public key algorithms.
Tested with OpenSSH 9.1 on macOS Ventura.
Fixes golang/go#49269
Updates golang/go#49952
Co-authored-by: Nicola Murino <nicola.murino@gmail.com>
Co-authored-by: Kristin Davidson <kdavidson@atlassian.com>
Change-Id: I4955c3b12bb45575e9977ac657bb5805b49d00c3
Reviewed-on: https://go-review.googlesource.com/c/crypto/+/447757
Run-TryBot: Filippo Valsorda <filippo@golang.org>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Roland Shoemaker <roland@golang.org>
Reviewed-by: Nicola Murino <nicola.murino@gmail.com>
Reviewed-by: Michael Knyszek <mknyszek@google.com>
Diffstat (limited to 'ssh/client_auth_test.go')
| -rw-r--r-- | ssh/client_auth_test.go | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/ssh/client_auth_test.go b/ssh/client_auth_test.go index a6bedbf..35b62e3 100644 --- a/ssh/client_auth_test.go +++ b/ssh/client_auth_test.go @@ -132,9 +132,7 @@ func TestClientAuthPublicKey(t *testing.T) { if err := tryAuth(t, config); err != nil { t.Fatalf("unable to dial remote side: %s", err) } - // Once the server implements the server-sig-algs extension, this will turn - // into KeyAlgoRSASHA256. - if len(signer.used) != 1 || signer.used[0] != KeyAlgoRSA { + if len(signer.used) != 1 || signer.used[0] != KeyAlgoRSASHA256 { t.Errorf("unexpected Sign/SignWithAlgorithm calls: %q", signer.used) } } |
