Skip to content

feat(kernel): enable baseline FIPS crypto configs for AZL4#18029

Draft
rlmenge wants to merge 1 commit into
4.0from
rlmenge/feature/kernel-fips-configs
Draft

feat(kernel): enable baseline FIPS crypto configs for AZL4#18029
rlmenge wants to merge 1 commit into
4.0from
rlmenge/feature/kernel-fips-configs

Conversation

@rlmenge

@rlmenge rlmenge commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

Summary

Enable kernel crypto configurations required for FIPS 140-3 compliance on Azure Linux 4, and add CI guardrails to prevent regressions.

Changes

Kernel configs (x86_64 + arm64)

  • FIPS core: CONFIG_CRYPTO_FIPS=y, CONFIG_CRYPTO_FIPS_NAME
  • Self-tests: CONFIG_CRYPTO_SELFTESTS=y (required for FIPS KAT at boot)
  • tcrypt: CONFIG_CRYPTO_BENCHMARK=m
  • Jitterentropy tuning: CONFIG_CRYPTO_JITTERENTROPY_OSR=3 (was 1)
  • DRBG: Enable all variants (HMAC, HASH, CTR)
  • arm64: CONFIG_CRYPTO_SHA3_ARM64=y (built-in instead of module)
  • Disable legacy: CONFIG_CRYPTO_ANSI_CPRNG=n (prohibited in FIPS mode)

CI

  • Add FIPS-related configs to azl4-os-required-kernel-configs.json to enforce via kernel config checker

Testing (in progress)

  • Boot tested with fips=1 on x86_64
  • Boot tested with fips=1 on arm64
  • Kernel self-tests pass (dmesg shows no FIPS failures)

Related

Fixes AB#22294
koji: 3805647

Copilot AI review requested due to automatic review settings July 15, 2026 19:41

Copilot AI 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.

Pull request overview

Enables baseline FIPS 140-3 kernel configuration for Azure Linux 4 and adds CI regression checks.

Changes:

  • Enables FIPS, crypto self-tests, DRBG variants, and jitterentropy tuning.
  • Disables legacy ANSI CPRNG and enables built-in ARM64 SHA-3.
  • Bumps the kernel package release and updates rendered artifacts and lock data.

Reviewed changes

Copilot reviewed 7 out of 8 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
base/comps/kernel/kernel.comp.toml Bumps package release.
base/comps/kernel/6.18-x86_64-azl.config Adds x86_64 FIPS configuration.
base/comps/kernel/6.18-aarch64-azl.config Adds arm64 FIPS configuration.
specs/k/kernel/kernel.azl.macros Renders the release bump.
specs/k/kernel/6.18-x86_64-azl.config Renders the x86_64 configuration.
specs/k/kernel/6.18-aarch64-azl.config Renders the arm64 configuration.
scripts/ci/kernel/kernel-config-checker/kernel_config_checker/kernel_configs_json/azl4-os-required-kernel-configs.json Adds FIPS policy checks.
locks/kernel.lock Refreshes the component fingerprint.

Comment on lines +323 to +324
{
"name": "CONFIG_CRYPTO",
Comment on lines +627 to +640
{
"name": "CONFIG_CRYPTO_SHA3",
"values": [
{
"architecture": "x86_64",
"value": "y"
},
{
"architecture": "arm64",
"value": "y"
}
],
"justification": "https://dev.azure.com/mariner-org/mariner/_workitems/edit/22294"
},
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants