-
Notifications
You must be signed in to change notification settings - Fork 17.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
crypto: rollback BoringCrypto fips-20220613 update #65321
Comments
@gopherbot please open backport issues for Go 1.20, Go 1.21, and Go 1.22 (if that works). This is rolling back the #64717 cherry-picks. |
Backport issue(s) opened: #65322 (for 1.20), #65323 (for 1.21), #65324 (for 1.22). Remember to create the cherry-pick CL(s) as soon as the patch is submitted to master, according to https://go.dev/wiki/MinorReleases. |
Change https://go.dev/cl/558796 mentions this issue: |
Change https://go.dev/cl/558797 mentions this issue: |
…e to fips-20220613" +1 This reverts commit 7383b2a ("crypto/internal/boring: upgrade module to fips-20220613") and commit 4106de9 ("crypto/tls: align FIPS-only mode with BoringSSL policy"). Fixes #65324 Updates #65321 Updates #64717 Updates #62372 Change-Id: I0938b97e5b4904e6532448b8ae76e920d03d0508 Reviewed-on: https://go-review.googlesource.com/c/go/+/558796 Reviewed-by: Michael Knyszek <[email protected]> Reviewed-by: Roland Shoemaker <[email protected]> Auto-Submit: Filippo Valsorda <[email protected]> LUCI-TryBot-Result: Go LUCI <[email protected]> (cherry picked from commit 09b5de4) Reviewed-on: https://go-review.googlesource.com/c/go/+/558797 Reviewed-by: Dmitri Shuralyov <[email protected]>
Change https://go.dev/cl/560275 mentions this issue: |
Change https://go.dev/cl/560276 mentions this issue: |
…e to fips-20220613" +1 This reverts CL 553855 ("crypto/internal/boring: upgrade module to fips-20220613") and CL 553856 ("crypto/tls: align FIPS-only mode with BoringSSL policy"). Fixes #65323 Updates #65321 Updates #64717 Updates #62372 Change-Id: I0938b97e5b4904e6532448b8ae76e920d03d0508 Reviewed-on: https://go-review.googlesource.com/c/go/+/558796 Reviewed-by: Michael Knyszek <[email protected]> Reviewed-by: Roland Shoemaker <[email protected]> Auto-Submit: Filippo Valsorda <[email protected]> LUCI-TryBot-Result: Go LUCI <[email protected]> (cherry picked from commit 09b5de4) Reviewed-on: https://go-review.googlesource.com/c/go/+/560275
…e to fips-20220613" +1 This reverts CL 553875 ("crypto/internal/boring: upgrade module to fips-20220613") and CL 553876 ("crypto/tls: align FIPS-only mode with BoringSSL policy"). Fixes #65322 Updates #65321 Updates #64717 Updates #62372 Change-Id: I0938b97e5b4904e6532448b8ae76e920d03d0508 Reviewed-on: https://go-review.googlesource.com/c/go/+/558796 Reviewed-by: Michael Knyszek <[email protected]> Reviewed-by: Roland Shoemaker <[email protected]> Auto-Submit: Filippo Valsorda <[email protected]> LUCI-TryBot-Result: Go LUCI <[email protected]> (cherry picked from commit 09b5de4) Reviewed-on: https://go-review.googlesource.com/c/go/+/560276
@FiloSottile are there any plans for the reintroduction of this change in the foreseeable future? |
That depends on when NIST CMVP approves the new BoringCrypto module, which is outside the hands of the Go team. You can follow along here (search for "BoringCrypto"). Once it disappears from that list and shows up here, then the change can be re-introduced. |
This reverts commit 7383b2a ("crypto/internal/boring: upgrade module to fips-20220613") and commit 4106de9 ("crypto/tls: align FIPS-only mode with BoringSSL policy"). Fixes golang#65321 Updates golang#64717 Updates golang#62372 Change-Id: I0938b97e5b4904e6532448b8ae76e920d03d0508 Reviewed-on: https://go-review.googlesource.com/c/go/+/558796 Reviewed-by: Michael Knyszek <[email protected]> Reviewed-by: Roland Shoemaker <[email protected]> Auto-Submit: Filippo Valsorda <[email protected]> LUCI-TryBot-Result: Go LUCI <[email protected]>
@reedloden, @FiloSottile if I am not mistaken, the certificate has been issued very recently 🎉 |
@FiloSottile is there any plan to bring this back now that the cert has been issued? Or is the current plan to have 140-3 compliance only for 1.24+? |
This change was re-submitted in August once the cert was finalized (https://go.dev/cl/603375), it should land in Go 1.24, scheduled for ~Feb 2025. We've not thought much about backporting it. |
Is there any specific way to express interest in having it backported (filing an issue/PR) or is this something the team would decide on internally? |
The backporting guidelines are at https://go.dev/wiki/MinorReleases. |
Note that this is a bigger change than we would normally backport, so there would need to be a very compelling reason. (See also #69536 for the general direction we're hoping to take with regards to FIPS compliance.) |
Following the discussion at #62372, we decided to upgrade to the fips-20220613 module, weighting the compliance risk of an In Review module against the NIST SP 800-52 Rev. 2 TLS 1.3 requirement. The change was applied in #64717.
Since then, it was pointed out that NIST SP 800-52 is only intended for US government users, so it only affects a small subset of FIPS 140 users, if any.
Also considering that, it was decided to wait until the fips-20220613 certificate is available to update.
As a reminder, Go+BoringCrypto (
GOEXPERIMENT=boringcrypto
) is not officially supported and users should independently assess its suitability for any compliance goal. The reasoning shared above is informational./cc @golang/release for the late change. Note that the rollback only affects
GOEXPERIMENT=boringcrypto
files or code paths./cc @golang/security
The text was updated successfully, but these errors were encountered: