FIPS_CONFIG(5SSL)
π fips_config β the OpenSSL FIPS configuration glow-up π
okay bestie, so this is fips_config, a whole entire manual page (section 5SSL, the config-file girlies) about the special little config file that holds all the FIPS module tea. no cap.
πΈ NAME πΈ
fips_config β OpenSSL FIPS configuration. that's the whole vibe. iconic, brief, perfect.
β¨ DESCRIPTION β¨
So here's the deal. There's a separate configuration file, and it uses the OpenSSL config(5) syntax β you know, the same syntax as the regular config files, she's just living in her own file. And what does she hold? The info about the FIPS module. Specifically: a digest of the shared library file, plus status about the self-testing. π₯
And this data? The module itself uses it automatically, for two purposes:
- Run the startup FIPS self-test known answer tests (KATS). This is normally done once, at installation time, but it may also be set up to run each time the module is used.
- Verify the module's checksum. And this one happens each time the module is used. every. single. time. she's thorough like that π
This file is generated by the openssl-fipsinstall(1) program, and it's used internally by the FIPS module during its initialization. so basically, don't hand-craft it unless you know what you're doing. π«Ά
The following options are supported. They should all appear in a section whose name is identified by the fips option in the providers section, as described in "Provider Configuration Module" in config(5). (iykyk)
activateβ if present, the module is activated. The value you assign to this name? doesn't matter, she's not significant. literally any value, she just needs to exist. β¨conditional-errorsβ so the FIPS module normally enters an internal error mode if any self test fails. Once this error mode is active, no services or cryptographic algorithms are accessible from this point on. π Continuous tests are a subset of the self tests (e.g., a key pair test during key generation, or the CRNG output test). Setting this value to0allows the error mode to not be triggered if any continuous test fails. The default value of1will trigger the error mode. Regardless of the value, the operation (e.g., key generation) that called the continuous test will return an error code if its continuous test fails. The operation may then be retried if the error mode has not been triggered. so like,0is the "let me try again bestie" setting, ngl.defer-testsβ if set to1, the module will not run the self tests during initialization. Instead, the self tests will be run on demand when a particular algorithm is used. The default value of0runs the self tests during initialization. procrastination but make it cryptography πmodule-macβ the calculated MAC of the FIPS provider file.install-versionβ a version number for the fips install process. Should be1.install-statusβ π¨ This field is deprecated and is no longer used.install-macβ π¨ This field is deprecated and is no longer used.
π¦ FIPS indicator options π¦
The following FIPS configuration options indicate if run-time checks related to enforcement of FIPS security parameters such as minimum security strength of keys and approved curve names are used. A value of '1' will perform the checks, otherwise if the value is '0' the checks are not performed and FIPS compliance must be done by procedures documented in the relevant Security Policy.
See "OPTIONS" in openssl-fipsinstall(1) for further information related to these options. (she's the source of truth, bestie, go read her too π)
security-checksβ See "OPTIONS" inopenssl-fipsinstall(1)-no_security_checkstls1-prf-ems-checkβ See "OPTIONS" inopenssl-fipsinstall(1)-ems_checkno-short-macβ See "OPTIONS" inopenssl-fipsinstall(1)-no_short_macdrbg-no-trunc-mdβ See "OPTIONS" inopenssl-fipsinstall(1)-no_drbg_truncated_digestssignature-digest-checkβ See "OPTIONS" inopenssl-fipsinstall(1)-signature_digest_checkhkdf-digest-checkβ π¨ This option is deprecated.tls13-kdf-digest-checkβ See "OPTIONS" inopenssl-fipsinstall(1)-tls13_kdf_digest_checktls1-prf-digest-checkβ See "OPTIONS" inopenssl-fipsinstall(1)-tls1_prf_digest_checksshkdf-digest-checkβ See "OPTIONS" inopenssl-fipsinstall(1)-sshkdf_digest_checksskdf-digest-checkβ π¨ This option is deprecated.x963kdf-digest-checkβ See "OPTIONS" inopenssl-fipsinstall(1)-x963kdf_digest_checkdsa-sign-disabledβ See "OPTIONS" inopenssl-fipsinstall(1)-dsa_sign_disabledtdes-encrypt-disabledβ See "OPTIONS" inopenssl-fipsinstall(1)-tdes_encrypt_disabledrsa-pkcs15-pad-disabledβ See "OPTIONS" inopenssl-fipsinstall(1)-rsa_pkcs15_pad_disabledrsa-pss-saltlen-checkβ See "OPTIONS" inopenssl-fipsinstall(1)-rsa_pss_saltlen_checkrsa-sign-x931-pad-disabledβ See "OPTIONS" inopenssl-fipsinstall(1)-rsa_sign_x931_disabledhkdf-key-checkβ See "OPTIONS" inopenssl-fipsinstall(1)-hkdf_key_checkkbkdf-key-checkβ See "OPTIONS" inopenssl-fipsinstall(1)-kbkdf_key_checktls13-kdf-key-checkβ See "OPTIONS" inopenssl-fipsinstall(1)-tls13_kdf_key_checktls1-prf-key-checkβ See "OPTIONS" inopenssl-fipsinstall(1)-tls1_prf_key_checksshkdf-key-checkβ See "OPTIONS" inopenssl-fipsinstall(1)-sshkdf_key_checksskdf-key-checkβ See "OPTIONS" inopenssl-fipsinstall(1)-sskdf_key_checkx963kdf-key-checkβ See "OPTIONS" inopenssl-fipsinstall(1)-x963kdf_key_checkx942kdf-key-checkβ See "OPTIONS" inopenssl-fipsinstall(1)-x942kdf_key_checkpbkdf2-lower-bound-checkβ See "OPTIONS" inopenssl-fipsinstall(1)-no_pbkdf2_lower_bound_checkecdh-cofactor-checkβ See "OPTIONS" inopenssl-fipsinstall(1)-ecdh_cofactor_checkhmac-key-checkβ See "OPTIONS" inopenssl-fipsinstall(1)-hmac_key_checkkmac-key-checkβ See "OPTIONS" inopenssl-fipsinstall(1)-kmac_key_check
For example:
[fips_sect]
activate = 1
install-version = 1
conditional-errors = 1
security-checks = 1
module-mac = 41:D0:FA:C2:5D:41:75:CD:7D:C3:90:55:6F:A4:DC
install-mac = FE:10:13:5A:D3:B4:C7:82:1B:1E:17:4C:AC:84:0C
install-status = INSTALL_SELF_TEST_KATS_RUN
π NOTES π
When using the FIPS provider, it is recommended that the config_diagnostics option is enabled to prevent accidental use of non-FIPS validated algorithms via broken or mistaken configuration. See config(5). like, turn it on bestie, she's your seatbelt π«Ά
π SEE ALSO π
config(5), openssl-fipsinstall(1) β go give them a read, they're the supporting cast and they ate π
π HISTORY π
This functionality was added in OpenSSL 3.0. so she's not ancient, she's just very established. main character since 3.0 β¨
π COPYRIGHT π
Copyright 2019-2026 The OpenSSL Project Authors. All Rights Reserved.
Licensed under the Apache License 2.0 (the "License"). You may not use this file except in compliance with the License. You can obtain a copy in the file LICENSE in the source distribution or at <https://www.openssl.org/source/license.html>.
okay that's the whole page, no skips, no summaries, every single option present and accounted for π§ and for the sign-off: this is from OpenSSL 4.0.3, dated 2026-09-29 β and the page itself lives under the FIPS_CONFIG(5SSL) name. slay, bye bestie! πππ¦
π¦ where this page comes from
- ubuntu stonking: openssl 4.0.3-1ubuntu1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms