Repository navigation
Comparing changes
Open a pull request
base repository: golang/crypto
base: v0.55.0
head repository: golang/crypto
compare: v0.57.0
- 12 commits
- 17 files changed
- 6 contributors
Commits on Aug 17, 2026
-
acme: use crypto.SignMessage instead of calling (crypto.Signer).Sign
crypto.SignMessage allows using crypto.Signers that only usefully implement SignMessage to be used for the ACME account key. This would be useful for opening up integrations with opinionated remote signing APIs that don't support pre-hashing. Fixes golang/go#80877 Change-Id: I86bb76cf5865d3d2b8606a6dbd813cbb26447c86 Reviewed-on: https://go-review.googlesource.com/c/crypto/+/815340 Reviewed-by: Daniel McCarney <daniel@binaryparadox.net> Reviewed-by: Filippo Valsorda <filippo@golang.org> Reviewed-by: Sean Liao <sean@liao.dev> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Carlos Amedee <carlos@golang.org>
Configuration menu - View commit details
-
Copy full SHA for e0a54fd - Browse repository at this point
Copy the full SHA e0a54fdView commit details -
acme: add crypto.SignMessage test coverage
This commit updates the pre-existing TestJWSEncodeJSONCustom test to also verify JWS signature production works with a crypto.MessageSigner. Change-Id: I5156cb4da9a7feee98340ff4fb75848da5827055 Reviewed-on: https://go-review.googlesource.com/c/crypto/+/815480 Auto-Submit: Daniel McCarney <daniel@binaryparadox.net> Reviewed-by: Filippo Valsorda <filippo@golang.org> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Cherry Mui <cherryyz@google.com> Reviewed-by: Carlos Amedee <carlos@golang.org>
Configuration menu - View commit details
-
Copy full SHA for 46efc8b - Browse repository at this point
Copy the full SHA 46efc8bView commit details -
ssh: correctly ignore pre-banner lines
Reading the peer's benner in readVersion() was incorrectly counting lines sent by the server before the actual `SSH-2.0` banner against the line limit for the banner itself. This is incorrect per RFC 4253 section 4.2, where the limit of 255 characters is written to apply only to the `SSH-` banner string itself. This instead limits pre-banner lines to 255 characters each but instead allows a maximum of 1024 lines. Change-Id: Ief014bb3413e26e8d2077d3eb204ceaea9dc9444 Reviewed-on: https://go-review.googlesource.com/c/crypto/+/811320 LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Nicola Murino <nicola.murino@gmail.com> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org> Reviewed-by: Carlos Amedee <carlos@golang.org>
Configuration menu - View commit details
-
Copy full SHA for 593c81a - Browse repository at this point
Copy the full SHA 593c81aView commit details
Commits on Aug 19, 2026
-
all: upgrade go directive to at least 1.26.0 [generated]
By now Go 1.27.0 has been released, and Go 1.25 is no longer supported per the Go Release Policy (see https://go.dev/doc/devel/release#policy). See https://go.dev/doc/godebug#go-126 for GODEBUG setting changes relevant to Go 1.26. For golang/go#69095. [git-generate] (cd . && go get go@1.26.0 && go mod tidy) (cd x509roots/fallback && go get go@1.26.0 && go mod tidy) Change-Id: I54826e019edd4e12ad821915b1d102de719bfb31 Reviewed-on: https://go-review.googlesource.com/c/crypto/+/817981 LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Reviewed-by: Carlos Amedee <carlos@golang.org> Auto-Submit: Gopher Robot <gobot@golang.org>
Configuration menu - View commit details
-
Copy full SHA for c757c98 - Browse repository at this point
Copy the full SHA c757c98View commit details -
ssh: synchronize unexpected response test
Wait for an ordered channel request after sending the unsolicited response flood. This ensures that the client mux has discarded the entire flood before SendRequest opens its response gate, avoiding confusion between an in-flight unsolicited response and the expected reply. This fixes TestChannelUnexpectedResponsesDiscarded from flaking, where otherwise running 1000000 iterations of the test with GOMAXPROCS=16 produced ~15 distinct failures of the form "expected success reply". Change-Id: Ic1125c1f44bd919a5cf32b889d331bbc94c06c25 Reviewed-on: https://go-review.googlesource.com/c/crypto/+/817140 Reviewed-by: Neal Patel <neal@golang.org> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Neal Patel <nealpatel@google.com> Reviewed-by: Nicola Murino <nicola.murino@gmail.com> Auto-Submit: Daniel McCarney <daniel@binaryparadox.net> Reviewed-by: David Chase <drchase@google.com>
Configuration menu - View commit details
-
Copy full SHA for 82adefa - Browse repository at this point
Copy the full SHA 82adefaView commit details
Commits on Aug 23, 2026
-
ssh/knownhosts: compare only public key portions for revocation
Revocation matching compared full marshaled key blobs, so a @Revoked line containing a plain host key did not revoke a certificate certifying that key: when the server presented such a certificate, IsRevoked only matched the whole certificate blob or the CA key, and verification succeeded even though the underlying host key was revoked. OpenSSH's check_key_not_revoked compares keys with sshkey_equal_public, which considers only the public portions and explicitly allows comparisons between certificates and plain keys. Match that behavior by normalizing both @Revoked entries and lookups to the underlying public key: for a certificate, the certified key rather than the certificate blob. This also makes a @Revoked line containing a certificate revoke the plain key it certifies Change-Id: I3029d59e68fb01f2340763e2eae25cac23c6193d Reviewed-on: https://go-review.googlesource.com/c/crypto/+/816841 Reviewed-by: Filippo Valsorda <filippo@golang.org> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: David Chase <drchase@google.com> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
Configuration menu - View commit details
-
Copy full SHA for 71488c4 - Browse repository at this point
Copy the full SHA 71488c4View commit details
Commits on Aug 24, 2026
-
x509roots/fallback: update bundle
This is an automated CL which updates the NSS root bundle. [git-generate] go generate ./x509roots Change-Id: I3be04cd4cb6e44856beaa074fdb62a58ff8ce35b Reviewed-on: https://go-review.googlesource.com/c/crypto/+/820300 Auto-Submit: Gopher Robot <gobot@golang.org> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: David Chase <drchase@google.com> Reviewed-by: Roland Shoemaker <roland@golang.org>
Configuration menu - View commit details
-
Copy full SHA for 89f4e9b - Browse repository at this point
Copy the full SHA 89f4e9bView commit details
Commits on Aug 26, 2026
-
x509roots/fallback/bundle: make subjectsEqual stricter on Go 1.27+
This gradual step towards removing/inlining subjectsEqual can happen after Go 1.27.0 is released and the bundle starts being generated with it. Change-Id: Ib315bae69c45922c3f0aac5d2c0155fb5d94229f Reviewed-on: https://go-review.googlesource.com/c/crypto/+/775782 LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Cherry Mui <cherryyz@google.com> Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Reviewed-by: Daniel McCarney <daniel@binaryparadox.net>
Configuration menu - View commit details
-
Copy full SHA for afebf4c - Browse repository at this point
Copy the full SHA afebf4cView commit details
Commits on Aug 31, 2026
-
ssh: don't skip the source-address critical option in CheckCert
CertChecker.CheckCert ignored source-address on the assumption that serverAuthenticate would enforce it, but that only happens in the server-side user authentication path. Nothing enforced it in the host key path, so CheckHostKey accepted CA-signed host certificates carrying source-address regardless of the server's address, and the same applied to applications calling CheckCert directly. Drop the special case: every critical option must be listed in SupportedCriticalOptions, host and user certificates alike. Authenticate, the only path where serverAuthenticate does enforce source-address, checks against a copy of the CertChecker with that option appended. Fixes golang/go#80872 Change-Id: I3c3554b71ea2a4ce4b17696a9596b973b7d74b00 Reviewed-on: https://go-review.googlesource.com/c/crypto/+/816840 Reviewed-by: David Chase <drchase@google.com> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Filippo Valsorda <filippo@golang.org> Auto-Submit: Nicola Murino <nicola.murino@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 39dc44e - Browse repository at this point
Copy the full SHA 39dc44eView commit details
Commits on Sep 2, 2026
-
ssh: drop traffic on undecided channels
A channel in the mux's chanList is not usable until it is established: an outbound channel has no confirmed remote id until the peer's open confirmation, and an inbound channel is not serviced by the application until it is accepted. handlePacket processed any channel message on it, so a misbehaving peer could flood channel requests and block the mux read loop on the send to incomingRequests, deadlocking the connection, or close an outbound channel before confirming it, making the victim tear down a half-initialized channel and emit a close for remote id 0, an unrelated channel of the peer. No such packet can be legitimate: the peer learns an inbound channel's local id only from the confirmation we have not sent yet, and on an outbound channel RFC 4254 lets it answer the open request only with a confirmation or a failure. Add an established flag, set when the channel becomes usable: for an outbound channel when the open response is received, for an inbound channel by Accept before the confirmation is sent. Until then handlePacket drops every packet other than the open response. The flag is separate from decided, which Reject also sets: a rejected channel is decided but must never carry traffic. Fixes CVE-2026-78662 Fixes golang/go#81316 Change-Id: Ib0983bb216a49808a2db1f4a4d92ee9fe38a3c51 Reviewed-on: https://go-review.googlesource.com/c/crypto/+/826504 Auto-Submit: Gopher Robot <gobot@golang.org> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Roland Shoemaker <roland@golang.org> Reviewed-by: Neal Patel <nealpatel@google.com> Reviewed-by: Nicholas Husin <husin@google.com>
Configuration menu - View commit details
-
Copy full SHA for a6cdac6 - Browse repository at this point
Copy the full SHA a6cdac6View commit details -
ssh: reject unexpected message types on established channels
ch.msg is only read while the channel open or a channel request with a reply is pending, so anything the default arm of channel.handlePacket delivered to it was never consumed. The blocking send there let a misbehaving peer fill the buffer with well-formed but unexpected message types carrying a valid channel id and stall the mux read loop, deadlocking the whole connection. No conforming peer sends such messages during the connection protocol. Treat them as a protocol error and tear the connection down, as handleUnknownChannelPacket already does for the same messages when the channel id is not in use. Fixes CVE-2026-56855 Fixes golang/go#81317 Change-Id: I87420dfe68fcb62a17df4b47dc5ffb6ccd72ba26 Reviewed-on: https://go-review.googlesource.com/c/crypto/+/826524 Reviewed-by: Roland Shoemaker <roland@golang.org> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Neal Patel <nealpatel@google.com> Reviewed-by: Nicholas Husin <husin@google.com>
Configuration menu - View commit details
-
Copy full SHA for 86efde5 - Browse repository at this point
Copy the full SHA 86efde5View commit details
Commits on Sep 8, 2026
-
go.mod: update golang.org/x dependencies
Update golang.org/x dependencies to their latest tagged versions. Change-Id: I39f495ef42016b2ab0c91f54b792ac16b967006f Reviewed-on: https://go-review.googlesource.com/c/crypto/+/829324 LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Auto-Submit: Gopher Robot <gobot@golang.org> Reviewed-by: Cherry Mui <cherryyz@google.com>
Configuration menu - View commit details
-
Copy full SHA for 3f62bf1 - Browse repository at this point
Copy the full SHA 3f62bf1View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff v0.55.0...v0.57.0