Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
This repository was archived by the owner on Apr 25, 2026. It is now read-only.

remove support for FIPS 140-2 with boringcrypto - #21292

#21292
Merged
harshavardhana merged 1 commit into
masterminio/minio:masterfrom
fips140-2minio/minio:fips140-2Copy head branch name to clipboard
May 16, 2025
Merged

remove support for FIPS 140-2 with boringcrypto#21292
harshavardhana merged 1 commit into
masterminio/minio:masterfrom
fips140-2minio/minio:fips140-2Copy head branch name to clipboard

Conversation

@aead

@aead aead commented May 16, 2025

Copy link
Copy Markdown
Member

Description

This commit removes FIPS 140-2 related code for the following reasons:

  • FIPS 140-2 is a compliance, not a security requirement. Being FIPS 140-2 compliant has no security implication on its own. From a tech. perspetive, a FIPS 140-2 compliant implementation is not necessarily secure and a non-FIPS 140-2 compliant implementation is not necessarily insecure. It depends on the concret design and crypto primitives/constructions used.
  • The boringcrypto branch used to achieve FIPS 140-2 compliance was never officially supported by the Go team and is now in maintainance mode. It is replaced by a built-in FIPS 140-3 module. It will be removed eventually. Ref: crypto: obtain a FIPS 140-3 validation golang/go#69536
  • FIPS 140-2 modules are no longer re-certified after Sep. 2026. Ref: https://csrc.nist.gov/projects/cryptographic-module-validation-program

Motivation and Context

FIPS

How to test this PR?

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Optimization (provides speedup with no functional changes)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

  • Fixes a regression (If yes, please add commit-id or PR # here)
  • Unit tests added/updated
  • Internal documentation updated
  • Create a documentation update request here

This commit removes FIPS 140-2 related code for the following
reasons:
 - FIPS 140-2 is a compliance, not a security requirement. Being
   FIPS 140-2 compliant has no security implication on its own.
   From a tech. perspetive, a FIPS 140-2 compliant implementation
   is not necessarily secure and a non-FIPS 140-2 compliant implementation
   is not necessarily insecure. It depends on the concret design and
   crypto primitives/constructions used.
 - The boringcrypto branch used to achieve FIPS 140-2 compliance was never
   officially supported by the Go team and is now in maintainance mode.
   It is replaced by a built-in FIPS 140-3 module. It will be removed
   eventually. Ref: golang/go#69536
 - FIPS 140-2 modules are no longer re-certified after Sep. 2026.
   Ref: https://csrc.nist.gov/projects/cryptographic-module-validation-program

Signed-off-by: Andreas Auernhammer <github@aead.dev>
@aead
aead requested review from donatello and harshavardhana May 16, 2025 07:35
@aead aead self-assigned this May 16, 2025

@klauspost klauspost left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm. Good for maintenance.

@harshavardhana
harshavardhana merged commit 1d50cae into master May 16, 2025
@harshavardhana
harshavardhana deleted the fips140-2 branch May 16, 2025 14:27
@dataBjunk

Copy link
Copy Markdown

Hi, by removing the code for FIPS-140-2 code and totally rely on go 1.24 or above for crypto, does that means minio is now FIPS-140-3 compliance then?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

Morty Proxy This is a proxified and sanitized view of the page, visit original site.