Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: golang/crypto
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.27.0
Choose a base ref
...
head repository: golang/crypto
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v0.31.0
Choose a head ref
  • 17 commits
  • 24 files changed
  • 9 contributors

Commits on Sep 10, 2024

  1. bn256: add missing symbols in comment

    Change-Id: Ibd48a070bd8ce35ef5795a8b73bc4ecac43a993e
    Reviewed-on: https://go-review.googlesource.com/c/crypto/+/611735
    Run-TryBot: shuang cui <[email protected]>
    Commit-Queue: Ian Lance Taylor <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Auto-Submit: Ian Lance Taylor <[email protected]>
    Reviewed-by: Roland Shoemaker <[email protected]>
    TryBot-Result: Gopher Robot <[email protected]>
    Reviewed-by: Ian Lance Taylor <[email protected]>
    cuishuang authored and gopherbot committed Sep 10, 2024
    Configuration menu
    Copy the full SHA
    9e92970 View commit details
    Browse the repository at this point in the history

Commits on Sep 16, 2024

  1. ssh: return ServerAuthError after too many auth failures

    if a client is disconnected due to too many authentication attempts
    we should return a ServerAuthError instead of a generic error.
    
    Some users check the error returned by NewServerConn to determine
    whether or not a client attempted to authenticate.
    
    Fixes golang/go#69191
    
    Change-Id: If68fcecdefd6c810fe9df8256b1216e320d8a916
    Reviewed-on: https://go-review.googlesource.com/c/crypto/+/566398
    Reviewed-by: Filippo Valsorda <[email protected]>
    Reviewed-by: Tim King <[email protected]>
    Auto-Submit: Nicola Murino <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Reviewed-by: Carlos Amedee <[email protected]>
    drakkan authored and gopherbot committed Sep 16, 2024
    Configuration menu
    Copy the full SHA
    42ee18b View commit details
    Browse the repository at this point in the history

Commits on Sep 30, 2024

  1. sha3: fix cSHAKE initialization for extremely large N and or S

    While both impractical and unlikely, the multiplication could overflow
    on 32-bit architectures.
    
    The 64-bit architecture case is unaffected by both the maximum length
    of Go slices being too small to trigger the overflow (everything except
    s390), and it being safe to assume no machine has more than 2 EiB of
    memory.
    
    Fixes golang/go#66232
    
    Change-Id: I19c15d42d2d6af35e296697159d43d02f513e614
    GitHub-Last-Rev: 503e180
    GitHub-Pull-Request: #286
    Reviewed-on: https://go-review.googlesource.com/c/crypto/+/570876
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Reviewed-by: David Chase <[email protected]>
    Reviewed-by: Filippo Valsorda <[email protected]>
    Auto-Submit: Filippo Valsorda <[email protected]>
    Reviewed-by: Michael Knyszek <[email protected]>
    Yawning authored and gopherbot committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    a0819fb View commit details
    Browse the repository at this point in the history

Commits on Oct 4, 2024

  1. go.mod: update golang.org/x dependencies

    Update golang.org/x dependencies to their latest tagged versions.
    
    Change-Id: Id321d3b5909ecb66c0311ba86008509c7895863b
    Reviewed-on: https://go-review.googlesource.com/c/crypto/+/617958
    Auto-Submit: Gopher Robot <[email protected]>
    Reviewed-by: David Chase <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Reviewed-by: Dmitri Shuralyov <[email protected]>
    gopherbot committed Oct 4, 2024
    Configuration menu
    Copy the full SHA
    adef4cc View commit details
    Browse the repository at this point in the history
  2. internal/poly1305: extend ppc64le support to ppc64

    The cipher needs to load the stream in LE order. Use the byte
    reversing loads on BE.
    
    Also, remove the unused variable poly1305Mask in the PPC64
    asm file too.
    
    Change-Id: Ie90fe7bb0ea7a3bcb76583e0cf9c1e4133499541
    Reviewed-on: https://go-review.googlesource.com/c/crypto/+/614298
    Reviewed-by: Michael Knyszek <[email protected]>
    Reviewed-by: Archana Ravindar <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Reviewed-by: David Chase <[email protected]>
    pmur committed Oct 4, 2024
    Configuration menu
    Copy the full SHA
    6c21748 View commit details
    Browse the repository at this point in the history

Commits on Oct 11, 2024

  1. chacha20: extend ppc64le support to ppc64

    This requires fixing an incorrect save of the counter. It is a word
    value. It happens to work on LE because length is limited to u32.
    
    Refactor the constant table to load correctly independent of byte
    ordering.
    
    Add byte order swapping where output needs converted to LE
    ordering for storage.
    
    Change-Id: Ic7e09bd1c769bb77dd6e817f5a8639ba765f4c0f
    Reviewed-on: https://go-review.googlesource.com/c/crypto/+/614297
    Reviewed-by: Cherry Mui <[email protected]>
    Reviewed-by: Michael Knyszek <[email protected]>
    Reviewed-by: Archana Ravindar <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    pmur committed Oct 11, 2024
    Configuration menu
    Copy the full SHA
    b61b08d View commit details
    Browse the repository at this point in the history

Commits on Oct 16, 2024

  1. ssh: return unexpected msg error when server fails keyboard-interacti…

    …ve auth early
    
    Seems the OpenSSH server running on windows fails keyboard-interactive
    auth this way without sending any prompt to client. In such case the
    golang ssh client should not retry keyboard-interactive auth when the
    auth method is wrapped in a RetryableAuthMethod(). Rather the auth
    method should be immediately marked as tried&failed and the client auth
    process should move on to next available and acceptable auth method.
    
    Fixes golang/go#67855
    
    Change-Id: I6c64ae58ff8325774e37af716601b112f8833d8f
    GitHub-Last-Rev: 7fafc4d
    GitHub-Pull-Request: #297
    Reviewed-on: https://go-review.googlesource.com/c/crypto/+/590956
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Reviewed-by: Dmitri Shuralyov <[email protected]>
    Reviewed-by: Ian Lance Taylor <[email protected]>
    Auto-Submit: Nicola Murino <[email protected]>
    Reviewed-by: Nicola Murino <[email protected]>
    samiponkanen authored and gopherbot committed Oct 16, 2024
    Configuration menu
    Copy the full SHA
    7cfb916 View commit details
    Browse the repository at this point in the history

Commits on Oct 21, 2024

  1. sha3: avoid buffer copy

    Previously, the package worked by copying the input (or the output) into
    a buffer, and then XOR'ing (or copying) it into (or out of) the state.
    (Except for an input fast path.) There's no need for that! We can XOR
    straight into the state, and copy straight out of it, at least on little
    endian machines. This is a bit faster, almost halves the state size, and
    will make it easier to implement marshaling, but most importantly look
    at how much simpler it makes the code!
    
    go: go1.23.0
    goos: linux
    goarch: amd64
    pkg: golang.org/x/crypto/sha3
    cpu: AMD Ryzen 7 PRO 8700GE w/ Radeon 780M Graphics
                          │ v0.27.0-2-g42ee18b9637 │    v0.27.0-2-g42ee18b9637-dirty    │
                          │         sec/op         │   sec/op     vs base               │
    PermutationFunction-8              270.8n ± 0%   270.4n ± 0%       ~ (p=0.099 n=10)
    Sha3_512_MTU-8                     5.762µ ± 0%   5.658µ ± 0%  -1.80% (p=0.000 n=10)
    Sha3_384_MTU-8                     4.179µ ± 0%   4.070µ ± 0%  -2.60% (p=0.000 n=10)
    Sha3_256_MTU-8                     3.316µ ± 0%   3.214µ ± 0%  -3.08% (p=0.000 n=10)
    Sha3_224_MTU-8                     3.175µ ± 0%   3.061µ ± 0%  -3.61% (p=0.000 n=10)
    Shake128_MTU-8                     2.779µ ± 0%   2.681µ ± 0%  -3.51% (p=0.000 n=10)
    Shake256_MTU-8                     2.947µ ± 0%   2.957µ ± 0%  +0.32% (p=0.000 n=10)
    Shake256_16x-8                     44.15µ ± 0%   44.45µ ± 0%  +0.67% (p=0.000 n=10)
    Shake256_1MiB-8                    2.319m ± 0%   2.274m ± 0%  -1.93% (p=0.000 n=10)
    Sha3_512_1MiB-8                    4.204m ± 0%   4.219m ± 0%  +0.34% (p=0.000 n=10)
    geomean                            13.75µ        13.54µ       -1.55%
    
                          │ v0.27.0-2-g42ee18b9637 │    v0.27.0-2-g42ee18b9637-dirty     │
                          │          B/s           │     B/s       vs base               │
    PermutationFunction-8             704.3Mi ± 0%   705.4Mi ± 0%       ~ (p=0.105 n=10)
    Sha3_512_MTU-8                    223.5Mi ± 0%   227.6Mi ± 0%  +1.83% (p=0.000 n=10)
    Sha3_384_MTU-8                    308.1Mi ± 0%   316.4Mi ± 0%  +2.67% (p=0.000 n=10)
    Sha3_256_MTU-8                    388.2Mi ± 0%   400.5Mi ± 0%  +3.17% (p=0.000 n=10)
    Sha3_224_MTU-8                    405.5Mi ± 0%   420.7Mi ± 0%  +3.73% (p=0.000 n=10)
    Shake128_MTU-8                    463.4Mi ± 0%   480.2Mi ± 0%  +3.64% (p=0.000 n=10)
    Shake256_MTU-8                    436.9Mi ± 0%   435.5Mi ± 0%  -0.32% (p=0.000 n=10)
    Shake256_16x-8                    353.9Mi ± 0%   351.5Mi ± 0%  -0.66% (p=0.000 n=10)
    Shake256_1MiB-8                   431.2Mi ± 0%   439.7Mi ± 0%  +1.97% (p=0.000 n=10)
    Sha3_512_1MiB-8                   237.8Mi ± 0%   237.1Mi ± 0%  -0.33% (p=0.000 n=10)
    geomean                           375.7Mi        381.6Mi       +1.57%
    
    Even stronger effect when patched on top of CL 616555 (forced on).
    
    go: go1.23.0
    goos: darwin
    goarch: arm64
    pkg: golang.org/x/crypto/sha3
    cpu: Apple M2
                          │    old    │               new                   │
                          │   sec/op  │     sec/op     vs base              │
    PermutationFunction-8   154.7n ± 2%   153.8n ± 1%        ~ (p=0.469 n=10)
    Sha3_512_MTU-8          3.260µ ± 2%   3.143µ ± 2%   -3.60% (p=0.000 n=10)
    Sha3_384_MTU-8          2.389µ ± 2%   2.244µ ± 2%   -6.07% (p=0.000 n=10)
    Sha3_256_MTU-8          1.950µ ± 2%   1.758µ ± 1%   -9.87% (p=0.000 n=10)
    Sha3_224_MTU-8          1.874µ ± 2%   1.686µ ± 1%  -10.06% (p=0.000 n=10)
    Shake128_MTU-8          1.827µ ± 3%   1.447µ ± 1%  -20.80% (p=0.000 n=10)
    Shake256_MTU-8          1.665µ ± 3%   1.604µ ± 3%   -3.63% (p=0.003 n=10)
    Shake256_16x-8          25.14µ ± 1%   25.23µ ± 2%        ~ (p=0.912 n=10)
    Shake256_1MiB-8         1.236m ± 2%   1.243m ± 2%        ~ (p=0.631 n=10)
    Sha3_512_1MiB-8         2.296m ± 2%   2.305m ± 1%        ~ (p=0.315 n=10)
    geomean                 7.906µ        7.467µ        -5.56%
    
                          │    old    │               new                   │
                          │    B/op   │      B/op      vs base              │
    PermutationFunction-8   1.204Gi ± 2%   1.212Gi ± 1%        ~ (p=0.529 n=10)
    Sha3_512_MTU-8          394.9Mi ± 2%   409.7Mi ± 2%   +3.73% (p=0.000 n=10)
    Sha3_384_MTU-8          539.0Mi ± 2%   573.8Mi ± 2%   +6.45% (p=0.000 n=10)
    Sha3_256_MTU-8          660.3Mi ± 2%   732.6Mi ± 1%  +10.95% (p=0.000 n=10)
    Sha3_224_MTU-8          687.1Mi ± 2%   763.9Mi ± 1%  +11.17% (p=0.000 n=10)
    Shake128_MTU-8          704.7Mi ± 2%   889.6Mi ± 2%  +26.24% (p=0.000 n=10)
    Shake256_MTU-8          773.4Mi ± 3%   802.5Mi ± 3%   +3.76% (p=0.004 n=10)
    Shake256_16x-8          621.6Mi ± 1%   619.3Mi ± 2%        ~ (p=0.912 n=10)
    Shake256_1MiB-8         809.1Mi ± 2%   804.7Mi ± 2%        ~ (p=0.631 n=10)
    Sha3_512_1MiB-8         435.6Mi ± 2%   433.9Mi ± 1%        ~ (p=0.315 n=10)
    geomean                 653.6Mi        692.0Mi        +5.88%
    
    Change-Id: I33a0a1ddf305c395f99bf17f81473e2f42c5ce42
    Reviewed-on: https://go-review.googlesource.com/c/crypto/+/616575
    Reviewed-by: Daniel McCarney <[email protected]>
    Reviewed-by: Michael Pratt <[email protected]>
    Reviewed-by: Roland Shoemaker <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Auto-Submit: Filippo Valsorda <[email protected]>
    Reviewed-by: Andrew Ekstedt <[email protected]>
    FiloSottile authored and gopherbot committed Oct 21, 2024
    Configuration menu
    Copy the full SHA
    c17aa50 View commit details
    Browse the repository at this point in the history

Commits on Oct 22, 2024

  1. sha3: fix padding for long cSHAKE parameters

    We used to compute the incorrect value if len(initBlock) % rate == 0.
    
    Also, add a test vector for golang/go#66232, confirmed to fail on
    GOARCH=386 without CL 570876.
    
    Fixes golang/go#69169
    
    Change-Id: I3f2400926fca111dd0ca1327d6b5975e51b28f96
    Reviewed-on: https://go-review.googlesource.com/c/crypto/+/616576
    Reviewed-by: Andrew Ekstedt <[email protected]>
    Reviewed-by: Daniel McCarney <[email protected]>
    Reviewed-by: Michael Pratt <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Auto-Submit: Filippo Valsorda <[email protected]>
    Reviewed-by: Roland Shoemaker <[email protected]>
    FiloSottile authored and gopherbot committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    80ea76e View commit details
    Browse the repository at this point in the history
  2. sha3: avoid trailing permutation

    If you read a multiple of the rate, and then stop, there is no point in
    running the final permutation.
    
    Change-Id: Ic95e70f78b6e139aca1d3e3c11e09d2bbcf54f6c
    Reviewed-on: https://go-review.googlesource.com/c/crypto/+/620555
    Reviewed-by: Daniel McCarney <[email protected]>
    Reviewed-by: Roland Shoemaker <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Reviewed-by: Michael Pratt <[email protected]>
    Auto-Submit: Filippo Valsorda <[email protected]>
    FiloSottile authored and gopherbot committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    36b1725 View commit details
    Browse the repository at this point in the history
  3. sha3: add MarshalBinary, AppendBinary, and UnmarshalBinary

    Fixes golang/go#24617
    
    Change-Id: I1d9d529950aa8a5953435e8d3412cda44b075d55
    Reviewed-on: https://go-review.googlesource.com/c/crypto/+/616635
    Reviewed-by: Roland Shoemaker <[email protected]>
    Auto-Submit: Filippo Valsorda <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Reviewed-by: Daniel McCarney <[email protected]>
    Reviewed-by: Michael Pratt <[email protected]>
    FiloSottile authored and gopherbot committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    750a45f View commit details
    Browse the repository at this point in the history

Commits on Nov 4, 2024

  1. README: don't recommend go get

    These days people will just import the packages and the go tool will
    do the right thing. We don't need to explain it.
    
    Add a pointer to the git repo, though.
    
    For golang/go#62645
    
    Change-Id: I8b1e4a877bd83fe6891688a44d27a6c7902c8979
    Reviewed-on: https://go-review.googlesource.com/c/crypto/+/624155
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Commit-Queue: Ian Lance Taylor <[email protected]>
    Reviewed-by: Ian Lance Taylor <[email protected]>
    Auto-Submit: Ian Lance Taylor <[email protected]>
    Reviewed-by: Roland Shoemaker <[email protected]>
    ianlancetaylor authored and gopherbot committed Nov 4, 2024
    Configuration menu
    Copy the full SHA
    71ed71b View commit details
    Browse the repository at this point in the history

Commits on Nov 7, 2024

  1. go.mod: update golang.org/x dependencies

    Update golang.org/x dependencies to their latest tagged versions.
    
    Change-Id: Ib4976eb0b062bcd71c208afc9ff53e8c3068fbf9
    Reviewed-on: https://go-review.googlesource.com/c/crypto/+/626377
    Reviewed-by: David Chase <[email protected]>
    Auto-Submit: Gopher Robot <[email protected]>
    Reviewed-by: Dmitri Shuralyov <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    gopherbot committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    6018723 View commit details
    Browse the repository at this point in the history

Commits on Nov 27, 2024

  1. x509roots/fallback: update bundle

    This is an automated CL which updates the NSS root bundle.
    
    Change-Id: Ic5267bf9d66b676e1cfc5fc2ae153afb8f33b29c
    Reviewed-on: https://go-review.googlesource.com/c/crypto/+/631635
    Auto-Submit: Gopher Robot <[email protected]>
    Reviewed-by: Dmitri Shuralyov <[email protected]>
    Reviewed-by: Roland Shoemaker <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    gopherbot committed Nov 27, 2024
    Configuration menu
    Copy the full SHA
    8c4e668 View commit details
    Browse the repository at this point in the history

Commits on Dec 4, 2024

  1. go.mod: update golang.org/x dependencies

    Update golang.org/x dependencies to their latest tagged versions.
    
    Change-Id: I580d412fc4a135696d4054f8007593cfa4f64224
    Reviewed-on: https://go-review.googlesource.com/c/crypto/+/633480
    Reviewed-by: David Chase <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Reviewed-by: Dmitri Shuralyov <[email protected]>
    Auto-Submit: Gopher Robot <[email protected]>
    gopherbot committed Dec 4, 2024
    Configuration menu
    Copy the full SHA
    3e90321 View commit details
    Browse the repository at this point in the history
  2. openpgp/clearsign: just use rand.Reader in tests

    Instead of a convoluted fake rand, it is _basically_ just as fast, and
    fixes errors that pop up due to bad entropy.
    
    Fixes golang/go#70682
    
    Change-Id: Ib0f605398d1092b516b03135f602c644be2a060f
    Reviewed-on: https://go-review.googlesource.com/c/crypto/+/633655
    Reviewed-by: Tatiana Bradley <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Auto-Submit: Roland Shoemaker <[email protected]>
    Reviewed-by: Filippo Valsorda <[email protected]>
    rolandshoemaker authored and gopherbot committed Dec 4, 2024
    Configuration menu
    Copy the full SHA
    7042ebc View commit details
    Browse the repository at this point in the history

Commits on Dec 11, 2024

  1. ssh: make the public key cache a 1-entry FIFO cache

    Users of the the ssh package seem to extremely commonly misuse the
    PublicKeyCallback API, assuming that the key passed in the last call
    before a connection is established is the key used for authentication.
    Some users then make authorization decisions based on this key. This
    property is not documented, and may not be correct, due to the caching
    behavior of the package, resulting in users making incorrect
    authorization decisions about the connection.
    
    This change makes the cache a one entry FIFO cache, making the assumed
    property, that the last call to PublicKeyCallback represents the key
    actually used for authentication, actually hold.
    
    Thanks to Damien Tournoud, Patrick Dawkins, Vince Parker, and
    Jules Duvivier from the Platform.sh / Upsun engineering team
    for reporting this issue.
    
    Fixes golang/go#70779
    Fixes CVE-2024-45337
    
    Change-Id: Ife7c7b4045d8b6bcd7e3a417bdfae370c709797f
    Reviewed-on: https://go-review.googlesource.com/c/crypto/+/635315
    Reviewed-by: Roland Shoemaker <[email protected]>
    Auto-Submit: Gopher Robot <[email protected]>
    Reviewed-by: Damien Neil <[email protected]>
    Reviewed-by: Nicola Murino <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    rolandshoemaker authored and gopherbot committed Dec 11, 2024
    Configuration menu
    Copy the full SHA
    b4f1988 View commit details
    Browse the repository at this point in the history
Loading