Skip to content

Commit

Permalink
ssh: add hmac-sha2-512
Browse files Browse the repository at this point in the history
This adds support for hmac-sha2-512 to ensure compatibility with SSH
clients that request this MAC algorithm.

This rebases golang#18.
  • Loading branch information
stanhu committed Jun 7, 2023
1 parent 1622238 commit 987ccae
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 1 deletion.
2 changes: 1 addition & 1 deletion ssh/common.go
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ var supportedHostKeyAlgos = []string{
// This is based on RFC 4253, section 6.4, but with hmac-md5 variants removed
// because they have reached the end of their useful life.
var supportedMACs = []string{
"[email protected]", "[email protected]", "hmac-sha2-256", "hmac-sha1", "hmac-sha1-96",
"[email protected]", "[email protected]", "hmac-sha2-256", "hmac-sha2-512", "hmac-sha1", "hmac-sha1-96",
}

var supportedCompressions = []string{compressionNone}
Expand Down
3 changes: 3 additions & 0 deletions ssh/mac.go
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,9 @@ var macModes = map[string]*macMode{
"[email protected]": {32, true, func(key []byte) hash.Hash {
return hmac.New(sha256.New, key)
}},
"hmac-sha2-512": {64, false, func(key []byte) hash.Hash {
return hmac.New(sha512.New, key)
}},
"hmac-sha2-256": {32, false, func(key []byte) hash.Hash {
return hmac.New(sha256.New, key)
}},
Expand Down

0 comments on commit 987ccae

Please sign in to comment.