Skip to content

refactor(openssl-fips-provider): Better align with openssl's fips provider#16844

Open
corvus-callidus wants to merge 3 commits into3.0-devfrom
lyrydber/fips_openssl
Open

refactor(openssl-fips-provider): Better align with openssl's fips provider#16844
corvus-callidus wants to merge 3 commits into3.0-devfrom
lyrydber/fips_openssl

Conversation

@corvus-callidus
Copy link
Copy Markdown
Contributor

@corvus-callidus corvus-callidus commented Apr 23, 2026

Merge Checklist

All boxes should be checked before merging the PR (just tick any boxes which don't apply to this PR)

  • The toolchain has been rebuilt successfully (or no changes were made to it)
  • The toolchain/worker package manifests are up-to-date
  • Any updated packages successfully build (or no packages were changed)
  • Packages depending on static components modified in this PR (Golang, *-static subpackages, etc.) have had their Release tag incremented.
  • Package tests (%check section) have been verified with RUN_CHECK=y for existing SPEC files, or added to new SPEC files
  • All package sources are available
  • cgmanifest files are up-to-date and sorted (./cgmanifest.json, ./toolkit/scripts/toolchain/cgmanifest.json, .github/workflows/cgmanifest.json)
  • LICENSE-MAP files are up-to-date (./LICENSES-AND-NOTICES/SPECS/data/licenses.json, ./LICENSES-AND-NOTICES/SPECS/LICENSES-MAP.md, ./LICENSES-AND-NOTICES/SPECS/LICENSE-EXCEPTIONS.PHOTON)
  • All source files have up-to-date hashes in the *.signatures.json files
  • sudo make go-tidy-all and sudo make go-test-coverage pass
  • Documentation has been updated to match any changes to the build system
  • Ready to merge

Summary

Simplify openssl-fips-provider by removing all Fedora-derived patches and using upstream openssl fipsinstall to generate the FIPS module config with its integrity HMAC, replacing the embedded HMAC approach. Align both openssl (3.3.7) and openssl-fips-provider (3.1.2) to use the upstream fipsmodule.cnf / [fips_sect] naming convention instead of the custom fips_prov.cnf / [fips_prov_sect].

Change Log
  • Remove 20+ Fedora-derived patches from openssl-fips-provider, building the unmodified OpenSSL 3.1.2 FIPS provider
  • Replace embedded HMAC approach (patch 0033) with upstream openssl fipsinstall for FIPS config generation
  • Update openssl patch 0032 to load fipsmodule.cnf with [fips_sect] instead of fips_prov.cnf with [fips_prov_sect]
  • Bump openssl to 3.3.7-2; bump openssl-fips-provider to 3.1.2-2
  • Add openssl-fips-provider Requires on openssl >= 3.3.7-2
Does this affect the toolchain?

YES

Associated issues
  • #xxxx
Links to CVEs
  • none
Test Methodology
  • Pipeline build id: 1101642
  • LISA tests

…embedded HMAC

Remove all Fedora-derived patches and build unmodified OpenSSL 3.1.2
FIPS provider. Use upstream `openssl fipsinstall` to generate config
with the module integrity HMAC, replacing the embedded HMAC approach
(patch 0033).
Update openssl 3.3.7 patch 0032 to load fipsmodule.cnf with [fips_sect]
instead of fips_prov.cnf with [fips_prov_sect], aligning with upstream
OpenSSL naming. Update openssl-fips-provider to match.

Bump openssl to 3.3.7-2 and update toolkit manifests. Add
openssl-fips-provider Requires on openssl >= 3.3.7-2.
@microsoft-github-policy-service microsoft-github-policy-service Bot added Packaging specs-extended PR to fix SPECS-EXTENDED 3.0-dev PRs Destined for AzureLinux 3.0 labels Apr 23, 2026
@corvus-callidus corvus-callidus changed the title Lyrydber/fips openssl refactor(openssl-fips-provider): Better align with openssl's fips provider Apr 23, 2026
@corvus-callidus corvus-callidus marked this pull request as ready for review April 23, 2026 23:06
@corvus-callidus corvus-callidus requested review from a team as code owners April 23, 2026 23:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

3.0-dev PRs Destined for AzureLinux 3.0 Packaging specs-extended PR to fix SPECS-EXTENDED

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant