| Standard | FIPS 140-3 |
|---|---|
| Overall level | 1 |
| Module type | Software |
| Embodiment | Multi-Chip Stand Alone |
| Status | Historical |
| Caveat | Interim validation; When operated in approved mode; When installed, initialized and configured as specified in Section 11.1 of the Security Policy |
| Vendor | Oracle Corporation |
flowchart LR
%% Deterministic review-risk graph for Oracle Linux 9 OpenSSL FIPS Provider
%% Review prompts and evidence gaps, NOT vulnerability findings.
subgraph CMVP["CMVP-disclosed clues"]
C2["[low] Firmware update / recovery<br/>/ rollback (referenced in<br/>text)<br/><i>Recovery<br/>Update</i>"]
C3["[low] Self-test / status surface<br/>(referenced in text)<br/><i>Status Output<br/>Show Status<br/>Self-Test</i>"]
C5["[low] Protocol / secure-channel<br/>references (may be KDF<br/>names, not a live channel)<br/><i>TLS<br/>SSH<br/>HTTPS</i>"]
C6["[low] Operating system / runtime<br/>referenced (boundary<br/>membership not asserted)<br/><i>operating system<br/>linux<br/>kernel</i>"]
end
subgraph Inference["Derived inference"]
I2["Possible only, trusted<br/>code is reachable through<br/>update and recovery paths."]
I3["Possible only, some<br/>services may process input<br/>before, or without,<br/>operator authentication."]
I5["Possible only, a protocol<br/>is referenced, but whether<br/>it is a live channel or<br/>only a KDF/algorithm name<br/>is unconfirmed."]
I6["Possible only, a<br/>runtime/OS is referenced,<br/>but its membership in the<br/>cryptographic boundary is<br/>not established."]
end
subgraph Risk["Reviewer question"]
R2["Are update images<br/>authenticated before<br/>parsing, and are<br/>downgrade/rollback paths<br/>constrained?"]
R3["Can unauthenticated<br/>services leak state,<br/>consume resources, or<br/>transition security state?"]
R5["If a live TLS/SSH/IKE<br/>channel exists, could<br/>library CVEs apply, or is<br/>this only a<br/>KDF/documentation name?"]
R6["If the OS/runtime is<br/>in-boundary, could its<br/>CVEs be hidden by<br/>firmware-only versioning?"]
end
subgraph Evidence["Evidence needed to close"]
E2["confirm the disclosure<br/>itself (keyword hit,<br/>context unverified) ·<br/>update image format ·<br/>signature-before-parse<br/>proof · anti-rollback /<br/>downgrade policy"]
E3["confirm the disclosure<br/>itself (keyword hit,<br/>context unverified) ·<br/>pre-auth reachability<br/>matrix · rate limits and<br/>output redaction ·<br/>abuse-case tests"]
E5["confirm the disclosure<br/>itself (keyword hit,<br/>context unverified) ·<br/>library identity and<br/>version ·<br/>certificate-validation<br/>behaviour · protocol-CVE<br/>disposition"]
E6["confirm the disclosure<br/>itself (keyword hit,<br/>context unverified) ·<br/>runtime identity and<br/>config · kernel/runtime<br/>hardening profile ·<br/>patch/backport manifest"]
end
C2 --> I2 --> R2 --> E2
C3 --> I3 --> R3 --> E3
C5 --> I5 --> R5 --> E5
C6 --> I6 --> R6 --> E6
classDef clue fill:#eef3f9,stroke:#6f7f91,color:#1f3a5f;
classDef infer fill:#fff7e6,stroke:#b98500,color:#6b4e00;
classDef risk fill:#fbe9e9,stroke:#b02a2a,color:#7a1f1f;
classDef evidence fill:#e6f4ea,stroke:#1e7d34,color:#14532d;
class C2,C3,C5,C6 clue;
class I2,I3,I5,I6 infer;
class R2,R3,R5,R6 risk;
class E2,E3,E5,E6 evidence;flowchart LR
%% Deterministic clue tier for Oracle Linux 9 OpenSSL FIPS Provider
%% confidence: high = structured record field; medium = structured but soft; low (dashed) = bare keyword hit, context unverified
subgraph CMVP["CMVP-disclosed clues (deterministic)"]
C2["[low] Firmware update / recovery / rollback (referenced in text)<br/><i>Recovery<br/>Update</i><br/>src: text:keyword"]
C3["[low] Self-test / status surface (referenced in text)<br/><i>Status Output<br/>Show Status<br/>Self-Test</i><br/>src: text:keyword"]
C5["[low] Protocol / secure-channel references (may be KDF names, not a live channel)<br/><i>TLS<br/>SSH<br/>HTTPS</i><br/>src: text:keyword"]
C6["[low] Operating system / runtime referenced (boundary membership not asserted)<br/><i>operating system<br/>linux<br/>kernel</i><br/>src: text:keyword"]
end
classDef clueHigh fill:#eef3f9,stroke:#2f6fb0,stroke-width:2px,color:#1f3a5f;
classDef clueMedium fill:#eef3f9,stroke:#6f7f91,color:#1f3a5f;
classDef clueLow fill:#f7f7f7,stroke:#999,stroke-dasharray:4 4,color:#444;
class C2,C3,C5,C6 clueLow;Oracle Linux 9 OpenSSL FIPS Provider FIPS 140-3 Level 1 Validation Software Version: 3.0.7-b27cdeb3ba51be46 Last Updated: 2025-05-16 Prepared by: atsec information security corporation
4516 Seton Center Pkwy, Suite 250
Austin, TX 78759 www.atsec.com Document Version 1.3 ©Oracle Corporation
Title: Oracle Linux 9 OpenSSL FIPS Provider Security Policy Date: May 14th, 2025 Contributing Authors: Oracle Linux Engineering Security Evaluations – Global Product Security atsec information security Oracle Corporation World Headquarters
Austin, TX 78741 U.S.A. Worldwide Inquiries: Phone: +1.650.506.7000 Fax: +1.650.506.7200 www.oracle.com change without notice. This document is not warranted to be error-free, nor subject to any other warranties or conditions, whether expressed orally or implied in law, including implied warranties and conditions of merchantability or fitness for a particular purpose. Oracle specifically disclaim any liability with respect to this document and no contractual obligations are formed either directly or indirectly by this document. This document may be reproduced or distributed whole and Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners. Oracle Linux 9 OpenSSL FIPS Provider Security Policy i
| # | Section | Page |
|---|
Oracle Linux 9 OpenSSL FIPS Provider Security Policy iii
| Item | Page |
|---|---|
| Table 1 - Security Levels | 1 |
| Table 2 - Software, Firmware, Hybrid Tested Operating Environments | 3 |
| Table 3 - Executable Code Sets | 3 |
| Table 4 - Vendor Affirmed Operational Environments | 3 |
| Table 5 - Modes List and Description | 3 |
| Table 6 - Approved Algorithms | 12 |
| Table 7 - Vendor Affirmed Algorithms | 12 |
| Table 8 - Non-Approved, Not Allowed Algorithms | 13 |
| Table 9 - Security Function Implementation | 13 |
| Table 10 - Entropy | 15 |
| Table 11 - Key Generation | 16 |
| Table 12 - Key Establishment | 17 |
| Table 13 - Ports and Interfaces | 18 |
| Table 14 - Roles | 19 |
| Table 15 - Approved Services | 22 |
| Table 16 - Non-Approved Services | 23 |
| Table 17 - Storage Areas | 29 |
| Table 18 - SSP Input-Output | 29 |
| Table 19 - SSP Zeroization Methods | 29 |
| Table 20 - SSP Information First | 32 |
| Table 21 - SSP Information Second | 34 |
| Table 22 - Pre-Operational Self-Tests | 36 |
| Table 23 - Conditional Self-Tests | 38 |
| Table 24 - Error States | 38 |
| Figure 1 – Block Diagram | 2 |
| ISO/IEC 24759 Section 6 Subsections | FIPS 140-3 Section Title | Security Level |
|---|---|---|
| 1 | General | 1 |
| 2 | Cryptographic Module Specification | 1 |
| 3 | Cryptographic Module Interfaces | 1 |
| 4 | Roles, Services, and Authentication | 1 |
| 5 | Software/Firmware Security | 1 |
| 6 | Operational Environment | 1 |
| 7 | Physical Security | Not Applicable |
| 8 | Non-invasive Security | Not Applicable |
| 9 | Sensitive Security Parameter Management | 1 |
| 10 | Self-tests | 1 |
| 11 | Life-cycle Assurance | 1 |
| 12 | Mitigation of Other Attacks | 1 |
| Overall Level | 1 |
This document is the non-proprietary FIPS 140-3 Security Policy for software version 3.0.7-b27cdeb3ba51be46 of the Oracle Linux 9 OpenSSL FIPS Provider. It contains the security rules under which the module must operate and describes how this module meets the requirements as specified in FIPS PUB 140-3 (Federal Information Processing Standards Publication 140-3) for Other documentation is proprietary to their authors.
In preparing the Security Policy document, the laboratory formatted the vendor-supplied documentation for consolidation without altering the technical statements therein contained. The further refining of the Security Policy document was conducted iteratively throughout the conformance testing, wherein the Security Policy was submitted to the vendor, who would then edit, modify, and add technical contents. The vendor would also supply additional documentation, which the laboratory formatted into the existing Security Policy, and resubmitted to the vendor for their final editing.
Table 1 describes the individual security areas of FIPS 140-3, as well as the security levels of those individual areas. Table 1 - Security Levels Oracle Linux 9 OpenSSL FIPS Provider Security Policy
Purpose and Use: The Oracle Linux 9 OpenSSL FIPS Provider (hereafter referred to as “the module”) is defined as a software module in a multi-chip standalone embodiment. It provides a C language application program interface (API) for use by other applications that require cryptographic functionality. The module consists of one software component, the “FIPS provider”, which implements the FIPS requirements, and the cryptographic functionality provided to the operator. Module Type: Software Module Embodiment: Multi-chip standalone Module Characteristics: N/A Cryptographic Boundary: Figure 1 shows the cryptographic boundary of the module, its interfaces with the operational environment and the flow of information between the module and operator (depicted through the arrows). Tested Operational Environment’s Physical Perimeter (TOEPP): The TOEPP of the module is defined as the general-purpose computer on which the module is installed. Figure 1 – Block Diagram Oracle Linux 9 OpenSSL FIPS Provider Security Policy
| Operating System | Hardware Platform | Processor(s) | PAA/PAI | Hypervisor and Host OS | ||
|---|---|---|---|---|---|---|
| Oracle Linux 9 | ORACLE SERVER X9-2c | Intel(R) Xeon(R) Platinum 8358 | AES-NI and SHA Extensions | KVM on Oracle Linux 8 | ||
| ORACLE SERVER E4-2c | AMD EPYC 7J13 | AES-NI and SHA Extensions | ||||
| ORACLE SERVER A1-2c | Ampere(R) Altra(R) Q80- 30 | NEON and Cryptography Extensions (CE) | ||||
| Oracle Linux 9 | Marvell Liquid IO II (MIPS64) SmartNIC | OCTEON III | No | N/A |
| Package or File Names | Software/ Firmware Versions | Features | Hybrid Hardware Version | Integrity Test | ||||
|---|---|---|---|---|---|---|---|---|
| fips.so | 3.0.7-b27cdeb3ba51be46 | N/A | N/A | HMAC-SHA-256 |
| Operating Systems | Hardware Platforms | Virtual Platforms |
|---|---|---|
| Oracle Linux 9 | Oracle X Series Servers Oracle E Series Servers Oracle A Series Servers Marvell T93 LiquidIO III (ARM v8.x) SmartNICPensando DSC-200-R (ARM v8.x) SmartNIC | Oracle Linux KVM VmWare ESXi |
| Name | Description | Type | Status Indicator |
|---|---|---|---|
| Approved mode | Automatically entered whenever an approved service is requested | Approved | Equivalent to the indicator of the requested service |
| Non-approved mode | Automatically entered whenever a non- approved service is requested | Non-approved | Equivalent to the indicator of the requested service |
Table 2 - Software, Firmware, Hybrid Tested Operating Environments Executable Code Sets: Table 3 - Executable Code Sets Vendor Affirmed Operating Environments: Table 4 - Vendor Affirmed Operational Environments Note: the CMVP makes no statement as to the correct operation of the module or the security strengths of the generated SSPs when so ported if the specific operational environment is not listed on the validation certificate.
There are no components within the cryptographic boundary excluded from the FIPS 140-3 requirements.
Modes List and Description: Table 5 - Modes List and Description Oracle Linux 9 OpenSSL FIPS Provider Security Policy
| Algorithm Name | CAVP Numbers | Algorithms Capabilities | OE (Implementation) | Reference |
|---|---|---|---|---|
| AES-CBC AES-CBC-CTS-CS1 AES-CBC-CTS-CS2 AES-CBC-CTS-CS3 | #A4313, #A4314, #A4315, #A4327, #A4328, #A4329 | Encryption, Decryption using 128, 192, 256-bit keys | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: AESNI, BAES_CTASM, AESASM Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: CE, VPAES, AES_C Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: AESNI, BAES_CTASM, AESASM Oracle Linux 9 on Marvell OCTEON III: AESASM | FIPS 197, SP 800-38A, SP 800-38A Addendum |
| AES-CCM | Authenticated Encryption, Authenticated Decryption, Key Wrapping, Key Unwrapping (compliant to IG D.G) using 128, 192, 256-bit keys | |||
| AES-CFB1 AES-CFB8 AES-CFB128 | Encryption, Decryption using 128, 192, 256-bit keys | |||
| AES-CMAC | Message Authentication Code Generation, Message Authentication Code Verification using 128, 192, 256-bit keys | FIPS 197, SP 800-38B | ||
| AES-CTR | Encryption, Decryption using 128, 192, 256-bit keys | FIPS 197, SP 800-38A, SP 800-38A Addendum | ||
| AES-ECB | #A4320, #A4327, #A4328, #A4329, #A4331, #A4332, #A4333, #A4334 | Encryption, Decryption using 128, 192, 256-bit keys | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SSH_ASM, AESNI, BAES_CTASM, AESASM, SSH_SHANI, SSH_AVX2, SSH_AVX, SSH_SSSE3 |
After passing all pre-operational self-tests and cryptographic algorithm self-tests executed on start-up, the module automatically transitions to the approved mode. Mode change instructions and status indicators: The module automatically switches between the approved and non-approved modes depending on the services requested by the operator. The status indicator of the mode of operation is equivalent to the indicator of the service that was requested. Degraded Mode Description: The module does not implement a degraded mode of operation. Approved Algorithms: Oracle Linux 9 OpenSSL FIPS Provider Security Policy
| Algorithm Name | CAVP Numbers | Algorithms Capabilities | OE (Implementation) Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SSH_ASM, CE, VPAES, AES_C Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SSH_ASM, AESNI, BAES_CTASM, AESASM, SSH_SHANI, SSH_AVX2, SSH_AVX, SSH_SSSE3 Oracle Linux 9 on Marvell OCTEON III: AESASM | Reference |
|---|---|---|---|---|
| AES-GCM (internal IV) | #A4316, #A4321, #A4322, #A4323, #A4335, #A4336, #A4337, #A4338, #A4339, #A4340, #A4341, #A4342, #A4343 | Authenticated Encryption, Key Wrapping using 128, 192, 256-bit keys | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: AESNI_AVX, AESNI_CLMULNI, AESNI_ASM, BAES_CTASM_AVX, BAES_CTASM_CLMULNI, BAES_CTASM_ASM, AESASM_AVX, AESASM_CLMULNI, AESASM_ASM Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: CE_GCM_UNROLL8_EOR3, CE_GCM, VPAES_GCM, AES_C_GCM Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: AESNI_AVX, AESNI_CLMULNI, AESNI_ASM, BAES_CTASM_AVX, BAES_CTASM_CLMULNI, BAES_CTASM_ASM, AESASM_AVX, AESASM_CLMULNI, AESASM_ASM Oracle Linux 9 on Marvell OCTEON III: AESASM_ASM | FIPS 197 SP 800-38D FIPS 140-3 IG D.G Additional comment 8 |
| AES-GCM (external IV) | Authenticated Decryption, Key Unwrapping using 128, 192, 256-bit keys | |||
| AES-GMAC | Message Authentication Code Generation, Message Authentication Code Verification using 128, 192, 256-bit keys | |||
| AES-OFB | #A4313, #A4314, #A4315, #A4327, #A4328, #A4329 | Encryption, Decryption using 128, 192, 256-bit keys | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: AESNI, BAES_CTASM, AESASM Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: CE, VPAES, AES_C Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: AESNI, BAES_CTASM, AESASM Oracle Linux 9 on Marvell OCTEON III: AESASM | FIPS 197, SP 800-38A, SP 800-38A Addendum |
| AES-KW AES-KWP | Key Wrapping, Key Unwrapping (compliant to IG D.G) using 128, 192, 256-bit keys | FIPS 197, SP 800-38F | ||
| AES-XTS | Encryption, Decryption using 128 and 256-bit keys | FIPS 197, SP 800-38E | ||
| ANS X9.42 KDF (CVL) with AES KW-128, AES KW-192, AES KW-256 and SHA-1, SHA2-224, SHA2-256, SHA2-384, SHA2-512, SHA2- 512/224, SHA2- 512/256, | #A4326, #A4330, #A4344, #A4345, #A4346 | Key Derivation | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3 Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SHA_ASM, SHA_CE Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3 | SP 800-135r1 |
Oracle Linux 9 OpenSSL FIPS Provider Security Policy
| Algorithm Name ANS X9.42 KDF (CVL) with AES KW-128, AES KW-192, AES KW-256 with SHA3-224, SHA3- 256, SHA3-384, SHA3- 512 ANS X9.63 KDF (CVL) with SHA2-224, SHA2- 256, SHA2-384, SHA2- 512, SHA2-512/224, SHA2-512/256, ANS X9.63 KDF (CVL) with SHA3-224, SHA3- 256, SHA3-384, SHA3- 512 | CAVP Numbers #A4312, #A4319, #A4317, #A4326, #A4330, #A4344, #A4345, #A4346 #A4312, #A4319 | Algorithms Capabilities | OE (Implementation) Oracle Linux 9 on Marvell OCTEON III: SHA_ASM Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SHA3_ASM Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SHA3_CE Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SHA3_ASM Oracle Linux 9 on Marvell OCTEON III: SHA3_ASM Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3 Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SHA_ASM, SHA_CE Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3 Oracle Linux 9 on Marvell OCTEON III: SHA_ASM Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SHA3_ASM Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SHA3_CE Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SHA3_ASM Oracle Linux 9 on Marvell OCTEON III: SHA3_ASM | Reference |
|---|---|---|---|---|
| CTR_DRBG | #A4311 | Random Number Generation using 128, 192, 256-bit keys, with/without PR, with/without DF | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: DRBG_3 Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: DRBG_3 Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: DRBG_3 Oracle Linux 9 on Marvell OCTEON III: DRBG_3 | SP 800-90Ar1 |
| ECDSA with SHA2- 224, SHA2-256, SHA2- 384, SHA2-512, SHA2- 512/224, SHA2- 512/256 | #A4317, #A4326, #A4330, #A4344, #A4345, #A4346 | Signature Generation, Signature Verification using P- 224, P-256, P-384, P-521 elliptic curves | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3, Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SHA_ASM, SHA_CE Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SHA_ASM, | FIPS 186-4 |
Oracle Linux 9 OpenSSL FIPS Provider Security Policy
| Algorithm Name ECDSA with SHA3- 224, SHA3-256, SHA3- 384, SHA3-512 | CAVP Numbers #A4312, #A4319 | Algorithms Capabilities Signature Generation, Signature Verification P-224, P-256, P-384, P-521 elliptic curves | OE (Implementation) SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3, Oracle Linux 9 on Marvell OCTEON III: SHA_ASM Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SHA3_ASM Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SHA3_CE Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SHA3_ASM Oracle Linux 9 on Marvell OCTEON III: SHA3_ASM | Reference |
|---|---|---|---|---|
| ECDSA | #A4317, #A4326, #A4330, #A4344, #A4345, #A4346 | Key Pair Generation using P-224, P-256, P-384, P-521 elliptic curves | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3, Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SHA_ASM, SHA_CE Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3, Oracle Linux 9 on Marvell OCTEON III: SHA_ASM | FIPS 186-4 Appendix B.4.2 Testing Candidates |
| Key Pair Verification using P- 224, P-256, P-384, P-521 elliptic curves | FIPS 186-4 | |||
| HKDF with SHA-1, SHA2-224, SHA2-256, SHA2-384, SHA2-512, SHA2-512/224, SHA2- 512/256, SHA3-224, SHA3-256, SHA3-384, SHA3-512 | #A4310 | Key Derivation | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: TLS v1.3 Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: TLS v1.3 Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: TLS v1.3 Oracle Linux 9 on Marvell OCTEON III: TLS v1.3 | SP800-56Cr1 |
| HMAC-SHA-1, HMAC- SHA2-224, HMAC- SHA2-384, HMAC- SHA2-512, HMAC- SHA2-512/224, HMAC-SHA2-512/256 | #A4317, #A4326, #A4330, #A4344, #A4345, #A4346 | Message Authentication Code Generation, Message Authentication Code Verification using 112-524288- bit keys | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3, Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SHA_ASM, SHA_CE Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3 Oracle Linux 9 on Marvell OCTEON III: SHA_ASM | FIPS 198-1 |
Oracle Linux 9 OpenSSL FIPS Provider Security Policy
| Algorithm Name HMAC-SHA2-256 HMAC-SHA3-224, HMAC-SHA3-256, HMAC-SHA3-384, HMAC-SHA3-512 | CAVP Numbers #A4317, #A4318, #A4326, #A4330, #A4344, #A4345, #A4346 #A4312, #A4319 | Algorithms Capabilities | OE (Implementation) Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3, Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SHA_ASM, SHA_CE, NEON Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3 Oracle Linux 9 on Marvell OCTEON III: SHA_ASM Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SHA3_ASM Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SHA3_CE Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SHA3_ASM Oracle Linux 9 on Marvell OCTEON III: SHA3_ASM | Reference FIPS 202 |
|---|---|---|---|---|
| HMAC_DRBG | #A4311 | Random Number Generation using 112-524288-bit keys, with/without PR | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: DRBG_3 Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: DRBG_3 Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: DRBG_3 Oracle Linux 9 on Marvell OCTEON III: DRBG_3 | SP 800-90Ar1 |
| Hash_DRBG | Random Number Generation, with/without PR | |||
| KAS-ECC-SSC | #A4317, #A4326, #A4330, #A4344, #A4345, #A4346 | Shared Secret Computation with P-256, P-384, P-521 elliptic curves | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3, Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SHA_ASM, SHA_CE Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3, Oracle Linux 9 on Marvell OCTEON III: SHA_ASM | SP 800-56Ar3 FIPS 140-3 IG D.F scenario 2 path (1) |
| KAS-FFC-SSC | #A4325 | Shared Secret Computation with MODP-2048, MODP-3072, MODP-4096, MODP-6144, MODP-8192, ffdhe2048, | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: FFC_DH Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: FFC_DH Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: FFC_DH |
Oracle Linux 9 OpenSSL FIPS Provider Security Policy
| Algorithm Name | CAVP Numbers | Algorithms Capabilities ffdhe3072, ffdhe4096, ffdhe6144, ffdhe8192 | OE (Implementation) Oracle Linux 9 on Marvell OCTEON III: FFC_DH | Reference |
|---|---|---|---|---|
| KBKDF with CMAC- AES128, CMAC- AES192, CMAC- AES256 and HMAC SHA-1, SHA2-224, SHA2-256, SHA2-384, SHA2-512, SHA2- 512/224, SHA2- 512/256, SHA3-224, SHA3-256, SHA3-384, SHA3-512 | #A4324 | Key Derivation | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: KBKDF Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: KBKDF Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: KBKDF Oracle Linux 9 on Marvell OCTEON III: KBKDF | SP 800-108r1 |
| KDA OneStep1 with HMAC-SHA-1, HMAC- SHA2-224, HMAC- SHA2-256, HMAC- SHA2-384, HMAC- SHA2-512, HMAC- SHA2-512/224, HMAC-SHA2-512/256, HMAC-SHA3-224, HMAC-SHA3-256, HMAC-SHA3-384, HMAC-SHA3-512 | #A4309 | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: KDA Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: KDA Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: KDA Oracle Linux 9 on Marvell OCTEON III: KDA | SP 800-56Cr2 | |
| PBKDF2 with SHA-1, SHA2-224, SHA2-256, SHA2-384, SHA2-512, SHA2-512/224, SHA2- 512/256, | #A4317, #A4326, #A4330, #A4344, #A4345, #A4346 | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3 Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SHA_ASM, SHA_CE Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3 Oracle Linux 9 on Marvell OCTEON III: SHA_ASM | Option 1a SP 800-132 | |
| PBKDF2 with SHA3- 224, SHA3-256, SHA3- 384, SHA3-512 | #A4312, #A4319 | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SHA3_ASM Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SHA3_CE Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SHA3_ASM Oracle Linux 9 on Marvell OCTEON III: SHA3_ASM |
1 This algorithm is referred to as “Single Step KDF” or “SSKDF” by OpenSSL.
Oracle Linux 9 OpenSSL FIPS Provider Security Policy
| Algorithm Name | CAVP Numbers | Algorithms Capabilities | OE (Implementation) | Reference |
|---|---|---|---|---|
| RSA PKCS#1 v1.5 and PSS with SHA2-224, SHA2-256, SHA2-384, SHA2-512, SHA2- 512/224, SHA2- 512/256 | #A4317, #A4326, #A4330, #A4344, #A4345, #A4346 | Signature Generation using 2048, 3072, 4096- bit keys | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_SSSE3 Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SHA_ASM, SHA_CE Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_SSSE3 Oracle Linux 9 on Marvell OCTEON III: SHA_ASM | FIPS 186-4 |
| Signature Verification using 1024, 2048, 3072, 4096-bit keys | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SHA_ASM, SHA_SHANI Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SHA_ASM Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SHA_ASM, SHA_SHANI Oracle Linux 9 on Marvell OCTEON III: SHA_ASM | |||
| RSA | #A4317, #A4326, #A4330, #A4344, #A4345, #A4346 | Key Pair Generation using 2048-15360- bit keys | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_SSSE3 Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SHA_ASM, SHA_CE Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_SSSE3 Oracle Linux 9 on Marvell OCTEON III: SHA_ASM | FIPS 186-4 Appendix B.3.6 Probable Primes with Conditions Based on Auxiliary Probable Primes |
| Safe Primes | #A4325 | Key Generation using MODP-2048, MODP-3072, MODP-4096, MODP-6144, MODP-8192, ffdhe2048, ffdhe3072, ffdhe4096, ffdhe6144, ffdhe8192 | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: FFC_DH Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: FFC_DH Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: FFC_DH Oracle Linux 9 on Marvell OCTEON III: FFC_DH | SP 800-56Ar3 Section 5.6.1.1.4 Testing Candidates |
| Safe Primes | Key Verification using MODP-2048, MODP-3072, MODP-4096, MODP-6144, MODP-8192, ffdhe2048, ffdhe3072, ffdhe4096, | SP 800-56Ar3 Sections 5.6.2.1.2 and 5.6.2.1.4 |
Oracle Linux 9 OpenSSL FIPS Provider Security Policy
| Algorithm Name | CAVP Numbers | Algorithms Capabilities ffdhe6144, ffdhe8192 | OE (Implementation) | Reference |
|---|---|---|---|---|
| SHA-1, SHA2-224, SHA2-384, SHA2-512, SHA2-512/224, SHA2- 512/256 | #A4317, #A4326, #A4330, #A4344, #A4345, #A4346 | Hashing | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_SSSE3 Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SHA_ASM, SHA_CE Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_SSSE3 Oracle Linux 9 on Marvell OCTEON III: SHA_ASM | FIPS 180-4 |
| SHA2-256 | #A4317, #A4318, #A4326, #A4330, #A4344, #A4345, #A4346 | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_SSSE3 Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SHA_ASM, SHA_CE, NEON Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_SSSE3 Oracle Linux 9 on Marvell OCTEON III: SHA_ASM | ||
| SHA3-224, SHA3-256, SHA3-384, SHA3-512 | #A4312, #A4319 | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SHA3_ASM Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SHA3_CE Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SHA3_ASM Oracle Linux 9 on Marvell OCTEON III: SHA3_ASM | FIPS 202 | |
| SHAKE128, SHAKE256 | XOFs | |||
| SSH KDF (CVL) with AES-128, AES-192, AES-256 and SHA-1, SHA2-224, SHA2-256, SHA2-384, SHA2-512 | #A4320, #A4331, #A4332, #A4333, #A4334 | Key Derivation | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SSH_ASM, SSH_SHANI, SSH_AVX2, SSH_AVX, SSH_SSSE3 Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SSH_ASM Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SSH_ASM, SSH_SHANI, SSH_AVX2, SSH_AVX, SSH_SSSE3 Oracle Linux 9 on Marvell OCTEON III: SSH_ASM | SP 800-135r1 |
| TLS 1.2 KDF (RFC 7627) (CVL) with SHA2-256, SHA2-384, SHA2-512 using RFC | #A4317, #A4326, #A4330, #A4344, #A4345, #A4346 | Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_SSSE3 |
Oracle Linux 9 OpenSSL FIPS Provider Security Policy
Algorithm Name 7627 Extended Master Secret TLS 1.3 KDF (CVL) with SHA2-256, SHA2-384
CAVP Numbers #A4310
Algorithms Capabilities
OE (Implementation) Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: SHA_ASM, SHA_CE Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_SSSE3 Oracle Linux 9 on Marvell OCTEON III: SHA_ASM Oracle Linux 9 on KVM on Oracle Linux 8 on AMD EPYCTM 7001 Series AMD EPYC 7J13: TLS v1.3 Oracle Linux 9 on KVM on Oracle Linux 8 on Ampere® Altra® Q80-30: TLS v1.3 Oracle Linux 9 on KVM on Oracle Linux 8 on Intel® Xeon® Platinum 8358: TLS v1.3 Oracle Linux 9 on Marvell OCTEON III: TLS v1.3
Reference RFC 8446
| Algorithm Name | Algorithm Capabilities | OE (Implementation) | References |
|---|---|---|---|
| Cryptographic Key Generation (CKG) | FIPS 186-4 Key generation RSA KeyGen: 2048, 3072, 4096 bits with 112, 128, 149 bits of key strength. ECDSA KeyGen: P-224, P-256, P 384, P- 521 elliptic curves with 112-256 bits of key strength Safe Primes Key Generation: MODP-2048, MODP-3072, MODP-4096, MODP-6144, ffdhe2048, ffdhe3072, ffdhe4096, ffdhe6144, ffdhe8192 with 112-200 bits of key strength | Same as in Table 6 | SP 800-133Rev2 Section 4, 5.1, 5.2 FIPS 140-3 IG D.H |
| Name | Use and Function |
|---|---|
| AES GCM with external IV | Encryption |
| ANS X9.42 KDF (SHAKE128, SHAKE256) ANS X9.63 KDF (SHA-1, SHAKE128, SHAKE256) | Key Derivation |
| Hash_DRBG (SHA-224, SHA-384) HMAC_DRBG (SHA-224, SHA-384) | Random Number Generation |
| ECDSA with curve P-192 | Key Pair Generation, Key Pair Verification |
| HMAC (< 112-bit keys) | Message Authentication Code Generation, Message Authentication Code Verification |
| KAS1, KAS2 | Shared Secret Computation |
Vendor Affirmed Algorithms: Table 7 - Vendor Affirmed Algorithms Non-Approved, Allowed Algorithms: The module does not implement non-approved algorithms allowed in the approved mode of operation. Non-Approved, Allowed Algorithms with No Security Claimed: The module does not implement non-approved algorithms allowed in the approved mode of operation with no security claimed. Non-Approved, Not Allowed Algorithms: Oracle Linux 9 OpenSSL FIPS Provider Security Policy
| Name | Use and Function |
|---|---|
| KBKDF, KDA OneStep, HKDF, ANS X9.42 KDF, ANS X9.63 KDF (< 112-bit keys) KDA OneStep, HKDF (SHAKE128, SHAKE256) | Key Derivation |
| PBKDF2 (short password; short salt; insufficient iterations; < 112-bit keys) | Password-Based Key Derivation |
| RSA and ECDSA (pre-hashed message), ECDSA with curve P-192 RSA-PSS (invalid salt length) | Signature Generation, Signature Verification |
| RSA-OAEP | Asymmetric Encryption, Asymmetric Decryption |
| SSH KDF (SHA-512/224, SHA-512/256, SHA-3, SHAKE128, SHAKE256) TLS 1.2 KDF (SHA-1, SHA-224, SHA-512/224, SHA-512/256, SHA-3) TLS 1.2 KDF using master secret non-compliant with RFC 7627 TLS 1.3 KDF (SHA-1, SHA-224, SHA-512, SHA-512/224, SHA-512/256, SHA-3) | Key Derivation |
| Name | Type | Description | SF Capabilities | Algorithms |
|---|---|---|---|---|
| KAS-ECC-SSC | KAS | SP 800-56Arev3. KAS-ECC- SSC per IG D.F scenario 2(1) | Ephemeral Unified scheme Curves: P-224, P-256, P-384, P-521 elliptic curves with 112-256 bits of key strength | KAS-ECC-SSC: #A4317, #A4326, #A4330, #A4344, #A4345, #A4346 |
| KAS-FFC-SSC | SP 800-56Arev3. KAS-FFC- SSC per IG D.F scenario 2(1) | Ephemeral Unified scheme Keys: 2048, 3072, 4096, 6144, 8192-bit keys with 112-200 bits of key strength | KAS-FFC-SSC: #A4325 | |
| AES-CCM | KTS | SP 800-38C and SP 800- 38F. KTS (Key wrapping and unwrapping) per IG D.G | 128, 192, 256 bits with 128-256 bits of key strength | AES: #A4313, #A4314, #A4315, #A4327, #A4328, #A4329 |
| AES-GCM | SP 800-38D and SP 800- 38F. KTS (Key wrapping and unwrapping) per IG D.G, Additional Comment 8 | 128, 192, 256 bits with 128-256 bits of key strength | AES: #A4316, #A4321, #A4322, #A4323, #A4335, #A4336, #A4337, #A4338, #A4339, #A4340, #A4341, #A4342, #A4343 | |
| AES-KW AES-KWP | SP 800-38F. KTS (Key wrapping and unwrapping) per IG D.G | 128, 192, 256 bits with 128-256 bits of key strength | AES: #A4313, #A4314, #A4315, #A4327, #A4328, #A4329 |
Table 8 - Non-Approved, Not Allowed Algorithms
D.G Table 9 - Security Function Implementation
The Crypto Officer shall consider the following requirements and restrictions when using the module. For TLS 1.2, the module offers the AES GCM implementation and uses the context of Scenario 1 of FIPS 140-3 IG C.H. The module is compliant with SP 800-52r2 Section 3.3.1 and the mechanism for IV generation is compliant with RFC 5288 and 8446. The module does not implement the TLS protocol. The module’s implementation of AES GCM is used together with an application that runs outside the module’s cryptographic boundary. The design of the TLS protocol implicitly ensures that the counter (the nonce_explicit part of the IV) does not exhaust the maximum number of possible values for a given session key. In the event the module’s power is lost and restored, the consuming application must ensure that a new key for use with the AES GCM key encryption or decryption under this scenario shall be established. Oracle Linux 9 OpenSSL FIPS Provider Security Policy
Alternatively, the Crypto Officer can use the module’s API to perform AES GCM encryption using internal IV generation. These IVs are always 96 bits and generated using the approved DRBG internal to the module’s boundary, compliant with Scenario 2 of FIPS 140-3 IG C.H. The module also provides a non-approved AES GCM encryption service which accepts arbitrary external IVs from the operator. This service can be requested by invoking the EVP_EncryptInit_ex2 API function with a non-NULL iv value. When this is the case, the API will set a non-approved service indicator. Finally, for TLS 1.3, the AES GCM implementation uses the context of Scenario 5 of FIPS 140-3 IG C.H. The protocol that provides this compliance is TLS 1.3, defined in RFC8446 of August 2018, using the cipher-suites that explicitly select AES GCM as the encryption/decryption cipher (Appendix B.4 of RFC8446). The module supports acceptable AES GCM cipher suites from Section
3.3.1 of SP800-52r2. The module’s implementation of AES GCM is used together with an application that runs outside the
module’s cryptographic boundary. The design of the TLS protocol implicitly ensures that the counter (the nonce_explicit part of the IV) does not exhaust the maximum number of possible values for a given session key.
The module provides password-based key derivation (PBKDF2), compliant with SP 800-132. The module supports option 1a from Section 5.4 of SP 800-132, in which the Master Key (MK) or a segment of it is used directly as the Data Protection Key (DPK). In accordance with SP 800-132 and FIPS 140-3 IG D.N, the following requirements shall be met:
The length of a single data unit encrypted or decrypted with AES XTS shall not exceed 220 AES blocks, that is 16MB, of data per XTS instance. An XTS instance is defined in Section 4 of SP 800-38E. The XTS mode shall only be used for the cryptographic protection of data on storage devices. It shall not be used for other purposes, such as the encryption of data in transit. To meet the requirement stated in IG C.I, the module implements a check to ensure that the two AES keys used in AES XTS mode are not identical.
The module offers DH and ECDH shared secret computation services compliant to the SP 800-56Ar3 and meeting IG D.F scenario
2 path (1). To meet the required assurances listed in section 5.6 of SP 800-56Ar3, the module shall be used together with an
application that implements the “TLS protocol” and the following steps shall be performed.
| Name | Type | Operational Environment | Sample Size | Entropy Per Sample | Conditioning Component |
|---|---|---|---|---|---|
| Oracle OpenSSL CPU Time Jitter RNG Entropy Source (Cert. #E90) | Non-physical | See Table 2 | 64 bits | Full entropy | Linear-Feedback Shift Register (LFSR); HMAC-SHA-512 DRBG (AVP cert A3862, A4162); AES-256 CTR DRBG (CAVP cert A4311) |
| Name | Type | Properties |
|---|---|---|
| Safe primes key pair generation | CKG | Key type: DH key pair Groups: MODP-2048, MODP-3072, MODP-4096, MODP-6144, ffdhe2048, ffdhe3072, ffdhe4096, ffdhe6144, ffdhe8192 Security strength: 112-200 bits Method: SP 800-56Ar3 (safe primes) Section 5.6.1.1.4 Testing Candidates Compliant to FIPS 140-3 IG D.H, SP 800-133r2, Section 4, 5.2 |
| ECDSA key pair generation | Key type: EC key pair Curves: P-224, P-256, P-384, P-521 Security strength: 112-256 bits Method: FIPS 186-4 Appendix B.4.2 Testing Candidates Compliant to FIPS 140-3 IG D.H, SP 800-133r2, Section 4, 5.1 | |
| RSA key pair generation | Key type: RSA key pair Modulus: 2048-15360 bits Security strength: 112-256 bits Method: FIPS 186-4 Appendix B.3.6 Probable Primes with Conditions Based on Auxiliary Probable Primes Compliant to FIPS 140-3 IG D.H, SP 800-133r2, Section 4, 5.1 | |
| KBKDF key derivation | Key Derivation | Key type: Symmetric key |
The module provides the following legacy uses as defined in SP 800-131rev2: • RSA Signature Verification, under FIPS 186-4, allows verifying signatures with a bit size of 1024, along with the approved Entropy Information: RNG Information: The module employs two Deterministic Random Bit Generator (DRBG) implementations based on SP 800-90Ar1. These DRBGs are used internally by the module (e.g. to generate seeds for asymmetric key pairs and random numbers for security functions). They can also be accessed using the specified API functions. The following parameters are used:
| Security strength: 112-256 bits Method: Counter and feedback mode, using CMAC and HMAC SHA-1, SHA-224, SHA- 256, SHA-384, SHA-512, SHA-512/224, SHA-512/256, SHA3-224, SHA3-256, SHA3- 384, SHA3-512 Compliant to SP 800-108r1 | |
|---|---|
| KDA OneStep | Key type: Symmetric key Security strength: 112-256 bits Method: (HMAC) SHA-1, SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224, SHA- 512/256, SHA3-224, SHA3-256, SHA3-384, SHA3-512 Compliant to SP 800-56Cr2 |
| HKDF | Key type: Symmetric key Security strength: 112-256 bits Method: (HMAC) SHA-1, SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224, SHA- 512/256, SHA3-224, SHA3-256, SHA3-384, SHA3-512 Compliant to SP 800-56Cr1 |
| ANS X9.42 KDF (CVL) | Key type: Symmetric key Security strength: 112-256 bits Method: AES KW with SHA-1, SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224, SHA-512/256, SHA3-224, SHA3-256, SHA3-384, SHA3-512 Compliant to SP 800-135r1 |
| ANS X9.63 KDF (CVL) | Key type: Symmetric key Security strength: 112-256 bits Method: SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224, SHA-512/256, SHA3- 224, SHA3-256, SHA3-384, SHA3-512 Compliant to SP 800-135r1 |
| SSH KDF (CVL) | Key type: Symmetric key Security strength: 112-256 bits Method: AES-128, AES-192, AES-256 with SHA-1, SHA-224, SHA-256, SHA-384, SHA- 512 Compliant to SP 800-135r1 |
| TLS 1.2 KDF (RFC 7627) (CVL) | Key type: Symmetric key Security strength: 112-256 bits Method: SHA-256, SHA-384, SHA-512 Compliant to SP 800-135r1 |
| TLS 1.3 KDF (CVL) | Key type: Symmetric key Security strength: 112-256 bits Method: SHA-256, SHA-384 Compliant to SP 800-135r1 |
| PBKDF2 | Key type: Symmetric key Security strength: 112-256 bits Method: Option 1a with SHA-1, SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224, SHA-512/256, SHA3-224, SHA3-256, SHA3-384, SHA3-512 Compliant to option 1a of SP 800-132 |
Table 11 - Key Generation Oracle Linux 9 OpenSSL FIPS Provider Security Policy
| Name | Type | Properties |
|---|---|---|
| KAS-FFC-SSC [SP800-56Arev3] | KAS (Shared Secret Computation) | Groups: ffdhe2048, ffdhe3072, ffdhe4096, ffdhe6144, ffdhe8192, MODP-2048, MODP-3072, MODP-4096, MODP-6144, MODP-8192 Security strength: 112-200 bits Compliant with: Scenario 2 (1) of FIPS 140-3 IG D.F: Shared secret computation |
| KAS-ECC-SSC [SP800-56Arev3] | Curves: P-224, P-256, P-384, P-521 Security strength: 112-256 bits Compliant with: Scenario 2 (1) of FIPS 140-3 IG D.F: Shared secret computation | |
| AES CCM [SP 800-38C] | KTS-Wrap (Key Wrapping, Key Unwrapping) | Keys: 128, 192, or 256 bits Security strength: 128, 192, or 256 bits Compliant with IG D.G |
| AES GCM [SP 800-38D] | KTS-Wrap (Key Wrapping) | Keys: 128, 192, or 256 bits Security strength: 128, 192, or 256 bits IV generated internally Compliant with IG D.G Additional comment 8 |
| KTS-Wrap (Key Unwrapping) | Keys: 128, 192, or 256 bits Security strength: 128, 192, or 256 bits IV provided externally Compliant with IG D.G Additional comment 8 | |
| AES KW [SP 800-38F] AES KWP [SP 800-38F] | KTS-Wrap (Key Wrapping, Key Unwrapping) | Keys: 128, 192, or 256 bits Security strength: 128, 192, or 256 bits Compliant with IG D.G |
For DH, the module supports the use of the safe primes defined in RFC 3526 (IKE) and RFC 7919 (TLS) as listed in Table 12. Note that the module only implements key pair generation, key pair verification, and shared secret computation. SSH KDF, TLS 1.2 KDF (RFC 7627), TLS 1.3 KDF implementations shall only be used to generate secret keys in the context of the SSH, TLS 1.2, or TLS 1.3 protocols, respectively. Note that TLS 1.2 KDF must be compliant with RFC 7627 to be considered approved. ANS X9.42 KDF and ANS X9.63 KDF implementations shall only be used to generate secret keys in the context of an ANS X9.42-
No other part of the IKE, SSH or TLS protocols, other than the approved cryptographic algorithms and the KDFs listed above, have been tested by the CAVP and CMVP. Oracle Linux 9 OpenSSL FIPS Provider Security Policy
| Physical Port | Logical Interface | Data That Passes Over the Port/Interface |
|---|---|---|
| As a software-only module, the module does not have physical ports. Physical Ports are interpreted to be the physical ports of the hardware platform on which it runs. | Data Input | API data input parameters |
| Data Output | API output parameters | |
| Control Input | API function calls, API control input parameters | |
| Status Output | API return code, error queue |
Table 13 - Ports and Interfaces The logical interfaces are the APIs through which the applications request services. These logical interfaces are logically separated from each other by the API design.
The module does not implement a trusted channel. Oracle Linux 9 OpenSSL FIPS Provider Security Policy
| Name | Type | Operator Type | Authentication Methods | |||
|---|---|---|---|---|---|---|
| Crypto Officer | Role | CO | N/A (Implicitly assumed) |
| Name | Description | Indicator | Inputs | Outputs | Security Functions | Roles | SSP Access |
|---|---|---|---|---|---|---|---|
| Message Digest | Compute a message digest | EVP_DigestFinal_ex returns 1 | Message | Digest value | SHA-1, SHA2-224, SHA2-256, SHA2- 384, SHA2-512, SHA2-512/224, SHA2-512/256, SHA3-224, SHA3- 256, SHA3-384, SHA3-512 | CO | N/A |
| XOF | Compute the output of an XOF | EVP_DigestFinalXOF returns 1 | Message | Digest value | SHAKE128, SHAKE256 | N/A | |
| Encryption | Encrypt a plaintext | EVP_EncryptFinal_ex returns 1 | AES Key, plaintext | Ciphertext | AES ECB, CBC, CBC-CTS-CS1, CBC-CTS-CS2, CBC-CTS-CS3, CFB1, CFB8, CFB128, CTR, OFB, XTS | AES Key: W, E | |
| Decryption | Decrypt a ciphertext | EVP_DecryptFinal_ex returns 1 | AES Key, ciphertext | Plaintext | |||
| Authenticated Encryption | Encrypt a plaintext | AES GCM: EVP_CIPHER_*_FIPS_INDICA TOR_APPROVED Others: EVP_EncryptFinal_ex returns 1 | AES Key, plaintext, IV (for CCM and GCM only) | Ciphertext, MAC tag | AES CCM, GCM (internal IV) | AES Key: W, E | |
| Authenticated Decryption | Decrypt a ciphertext | AES GCM: EVP_CIPHER_*_FIPS_INDICA TOR_APPROVED Others: EVP_DecryptFinal_ex returns 1 | AES Key, ciphertext, MAC tag | Plaintext or failure | AES CCM, GCM (external IV) | ||
| Message Authentication Code Generation | Compute a MAC tag | HMAC: EVP_MAC_*_FIPS_INDICAT OR_APPROVED Others: EVP_MAC_final returns 1 | AES Key, message | MAC tag | AES CMAC, AES GMAC | AES Key: W, E | |
| HMAC Key, message | HMAC-SHA-1, HMAC-SHA2-224, HMAC-SHA2-256, | HMAC Key: W, E |
The module does not implement authentication. Table 14 - Roles The module supports the Crypto Officer role only. This sole role is implicitly and always assumed by the operator of the module. No support is provided for multiple concurrent operators.
Oracle Linux 9 OpenSSL FIPS Provider Security Policy
Name Message Authentication Code Verification Shared Secret Computation Key Derivation Key-Based Key Derivation Password- Based Key Derivation Key Pair Generation
Description Verify a MAC tag Compute a Shared Secret Derive a key Derive a key from a key Derive a key from a password Generate a key pair
Indicator EVP_PKEY_derive returns 1 EVP_KDF_*_FIPS_INDICATO R_APPROVED EVP_PKEY_generate returns 1
Inputs AES Key, message, MAC tag HMAC Key, message, MAC tag DH Private Key, DH Public Key EC Private Key, EC Public Key TLS Pre- Master Secret TLS Master Secret Shared Secret Key- Derivation Key Password DH Group
Outputs Pass/fail Shared Secret TLS Master Secret TLS Derived Key Derived Key Module Generated DH Private Key, Module Generated
Security Functions HMAC-SHA2-384, HMAC-SHA2-512, HMAC-SHA2- 512/224, HMAC- SHA2-512/256, HMAC-SHA3-224, HMAC-SHA3-256, HMAC-SHA3-384, HMAC-SHA3-512 AES CMAC, AES GMAC HMAC-SHA-1, HMAC-SHA2-224, HMAC-SHA2-256, HMAC-SHA2-384, HMAC-SHA2-512, HMAC-SHA2- 512/224, HMAC- SHA2-512/256, HMAC-SHA3-224, HMAC-SHA3-256, HMAC-SHA3-384, HMAC-SHA3-512 KAS-FFC-SSC KAS-ECC-SSC TLS 1.2 KDF (RFC 7627) (CVL), TLS 1.3 KDF (CVL) TLS 1.2 KDF (RFC 7627) (CVL), TLS 1.3 KDF (CVL) KDA OneStep, KDA HKDF, KDF, ANS X9.42 KDF (CVL), ANS X9.63 KDF (CVL), SSH KDF (CVL) KBKDF PBKDF2 Safe Primes Key Generation CKG
Roles
SSP Access AES Key: W, E HMAC Key: W, E DH Private Key: W, E; DH Public Key: W, E; Shared Secret: G, R EC Private Key: W, E; EC Public Key: W, E; Shared Secret: G, R TLS Pre-Master Secret: G; TLS Master Secret: G TLS Master Secret: E; TLS Derived Key: G, R Shared Secret: W, E; KDA HKDF Derived key: G, R; KDA OneStep Derived key: G, R; SSH KDF Derived Key: G, R ANS X9.42 KDF Derived key: G, R; ANS X9.63 KDF Derived key: G, R; Key-Derivation Key: W, E; KBKDF Derived Key: G, R Password: W, E; PBKDF2 Derived Key: G, R Module Generated DH Private Key: G, R; Module Generated DH Public Key: G, R; Intermediate Key Generation Value: G, E, Z
R; Oracle Linux 9 OpenSSL FIPS Provider Security Policy
Name Key Pair Verification Key Wrapping Key Unwrapping Random Number Generation Signature Verification Signature Generation
Description Verify a key pair. Safe primes key pair verification, ECDSA key pair verification Wrap a key Unwrap a key Generate random bytes Verify a digital signature Generate a digital signature
Indicator EVP_PKEY_public_check or EVP_PKEY_private_check or EVP_PKEY_check returns 1 EVP_EncryptFinal_ex returns 1 EVP_DecryptFinal_ex returns 1 EVP_RAND_generate returns 1 RSA: OSSL_*_FIPSINDICATOR_AP PROVED and EVP_SIGNATURE_*_FIPS_IN DICATOR_APPROVED ECDSA: OSSL_*_FIPSINDICATOR_AP PROVED
Inputs Curve Modulus DH Private Key, DH Public Key EC Private Key, EC Public Key AES Key, key to be wrapped AES Key, key to be unwrapped Output length Message, EC public key or RSA Public Key, signature, hash algorithm Message, EC Private Key or RSA Private Key, hash algorithm
Outputs DH Public Key Module Generated EC Private Key, Module Generated EC Public Key Module Generated RSA Private Key, Module Generated RSA Public Key Pass/fail Wrapped key Unwrappe d key Random bytes Pass/fail Signature
Security Functions ECDSA KeyGen CKG RSA KeyGen CKG Safe Prime KeyVer, ECDSA KeyVer AES CCM, GCM (internal IV), AES KW, AES KWP AES CCM, GCM (external IV), AES KW, AES KWP CTR_DRBG HMAC_DRBG Hash_DRBG RSA PKCS#1 v1.5 and PSS with SHA-224, SHA- 256, SHA-384, SHA-512, SHA- 512/224, SHA- 512/256 ECDSA (P-224, P- 256, P-384, P- 521) with SHA- 224, SHA-256, SHA-384, SHA- 512, SHA- 512/224, SHA- 512/256, SHA3- 224, SHA3-256, SHA3-384, SHA3-
Roles
SSP Access Module Generated EC Private Key: G, R; Module Generated EC Public Key: G, R; Intermediate Key Generation Value: G, E, Z Module Generated RSA Private Key: G, R; Module Generated RSA Public Key: G, R Intermediate Key Generation Value: G, E, Z DH Public Key: W, E; DH Private Key: W, E; EC Private Key: W, E; EC Public Key: W, E AES Key: W, E AES Key: W, E Entropy Input: W, E; DRBG Seed: E, G; Internal State (V, Key): E, G Entropy Input: W, E; DRBG Seed: E, G; Internal State (V, C): E, G RSA Public Key: W, E; ECDSA Public Key: W, E RSA Private Key: W, E; ECDSA Private Key: W, E
Oracle Linux 9 OpenSSL FIPS Provider Security Policy
Name Show Version Show Status Self-Test Zeroization
Description Return the module name and version information Return the module status Perform the CASTs and integrity tests Zeroize all SSPs
Indicator None None None None
Inputs N/A N/A N/A Any SSP
Outputs Module name and version Module status Pass/fail N/A
Security Functions 512 N/A N/A SHA-1, SHA-512, SHA3-256, AES ECB, AES GCM, KBKDF, KDA OneStep, HKDF, ANS X9.42 KDF (CVL), ANS X9.63 KDF (CVL), SSH KDF (CVL), TLS 1.2 KDF (RFC 7627) (CVL), TLS 1.3 KDF (CVL), PBKDF2, CTR_DRBG, Hash_DRBG, HMAC_DRBG, KAS-FFC-SSC, KAS-ECC-SSC, RSA PKCS#1 v1.5, ECDSA See Table 23 for specifics N/A
Roles
SSP Access N/A N/A N/A All SSPs: Z
Table 15 - Approved Services Table 15 above lists the approved services. The following convention is used to specify access rights to SSPs:
| Name | Description | Security Functions | Role |
|---|---|---|---|
| Encryption | Encrypt a plaintext | AES GCM with external IV | CO |
| Message Authentication Code Generation | Compute a MAC tag | HMAC with < 112-bit keys | |
| Message Authentication Code Verification | Verify a MAC tag | ||
| Key Derivation | Derive a key | KDA OneStep with < 112-bit keys HKDF with < 112-bit keys ANS X9.42 KDF with < 112-bit keys ANS X9.63 KDF with < 112-bit keys SSH KDF with < 112-bit keys TLS 1.2 KDF < 112-bit keys TLS 1.3 KDF < 112-bit keys KDA OneStep with SHAKE128, SHAKE256 ANS X9.42 KDF with SHAKE128, SHAKE256 ANS X9.63 KDF with SHA-1, SHAKE128, SHAKE256 SSH KDF with SHA-512/224, SHA-512/256, SHA-3, SHAKE128, SHAKE256 TLS 1.2 KDF using master secret non-compliant with RFC 7627 TLS 1.2 KDF with SHA-1, SHA-224, SHA-512/224, SHA- 512/256, SHA-3 TLS 1.3 KDF with SHA-1, SHA-224, SHA-512, SHA-512/224, SHA-512/256, SHA-3 | |
| Key-Based Key Derivation | Derive a key from a derivation key | KBKDF with < 112-bit keys | |
| Password-Based Key Derivation | Derive a key from a password | PBKDF2 with a short password; short salt; insufficient iterations; < 112-bit keys | |
| Key Pair Generation | Generate a key pair | ECDSA with curve P-192 | |
| Key Pair Verification | Verify a key | ||
| Shared Secret Computation | Compute a shared secret | KAS1, KAS2 | |
| Signature Generation | Generate a signature | ECDSA signature generation with a pre-hashed message, ECDSA with curve P-192 RSA signature generation with a pre-hashed message | |
| Signature Verification | Verify a signature | ECDSA signature verification with a pre-hashed message, ECDSA with curve P-192 RSA signature verification with a pre-hashed message | |
| Asymmetric Encryption | Encrypt a plaintext | RSA-OAEP encryption | |
| Asymmetric Decryption | Decrypt a plaintext | RSA-OAEP decryption |
Table 16 - Non-Approved Services
The module does not load external software or firmware.
The module does not implement a bypass capability. Oracle Linux 9 OpenSSL FIPS Provider Security Policy
The module does not implement a self-initiated cryptographic output capability. Oracle Linux 9 OpenSSL FIPS Provider Security Policy
The integrity of the module is verified by comparing a HMAC SHA-256 value calculated at run time with the HMAC SHA-256 value embedded in the fips.so file that was computed at build time. If the integrity test fails, the module enters the error state.
Integrity tests are performed as part of the pre-operational self-tests, which are executed when the module is initialized. The integrity test may be invoked on-demand by unloading and subsequently re-initializing the module, or by calling the OSSL_PROVIDER_self_test function. This will perform (among others) the software integrity test. Oracle Linux 9 OpenSSL FIPS Provider Security Policy
Type of Operating Environment: modifiable: the module executes on a general purpose operating system (Oracle Linux 9), which allows modification, loading, and execution of software that is not part of the validated module. How Requirements are Satisfied: The operating system provides process isolation and memory protection mechanisms that ensure appropriate separation for memory access among the processes on the system. Each process has control over its own data and uncontrolled access to the data of other processes is prevented.
The module shall be installed as stated in Section 11.1. There are no concurrent operators. The module does not have the capability of loading software or firmware from an external source. Instrumentation tools like the ptrace system call, gdb and strace, userspace live patching, as well as other tracing mechanisms offered by the Linux environment such as ftrace or systemtap, shall not be used in the operational environment. The use of any of these tools implies that the cryptographic module is running in a non-validated operational environment. Oracle Linux 9 OpenSSL FIPS Provider Security Policy
The module is comprised of software only and therefore this section is not applicable. Oracle Linux 9 OpenSSL FIPS Provider Security Policy
This module does not implement any non-invasive security mechanism and therefore this section is not applicable. Oracle Linux 9 OpenSSL FIPS Provider Security Policy
| Storage Area Name | Description | Persistence Type |
|---|---|---|
| RAM | Temporary storage for SSPs used by the module as part of service execution. The module does not perform persistent storage of SSPs. | Dynamic |
| Name | From | To | Format Type | Distribution Type | Entry Type | Related SFI |
|---|---|---|---|---|---|---|
| API input parameters | Operator calling application (TOEPP) | Cryptographic module | Plaintext (P) | Manual (MD) | Electronic (EE) | N/A |
| API output parameters | Cryptographic module | Operator calling application (TOEPP) |
| Zeroization Method | Description | Rationale | Operator Initiation |
|---|---|---|---|
| Calling the zeroization API | Zeroizes the SSPs | Memory occupied by SSPs is overwritten with zeroes, which renders the SSP values irretrievable. All data output is inhibited during zeroization. | By calling the appropriate zeroization functions: AES key: EVP_CIPHER_CTX_free, EVP_MAC_CTX_free HMAC key: EVP_MAC_CTX_free Key-derivation key: EVP_KDF_CTX_free Shared secret: EVP_KDF_CTX_free PBKDF Password: EVP_KDF_CTX_free Derived key: EVP_KDF_CTX_free Entropy input: EVP_RAND_CTX_free DRBG seed: EVP_RAND_CTX_free DRBG Internal state: EVP_RAND_CTX_free DH private key: EVP_PKEY_free DH public key: EVP_PKEY_free EC private key: EVP_PKEY_free EC public key: EVP_PKEY_free RSA private key: EVP_PKEY_free RSA public key: EVP_PKEY_free TLS pre-master secret: EVP_KDF_CTX_free TLS master secret: EVP_KDF_CTX_free TLS derived secret: EVP_KDF_CTX_free |
| Automatic | Intermediate key generation value: zeroized automatically by the module (after the requested service completed) | ||
| Remove power from the module | De-allocates the volatile memory used to store SSPs | Volatile memory used by the module is overwritten within nanoseconds when power is removed | By removing power |
Table 17 - Storage Areas The module does not support entry and output of SSPs beyond the physical perimeter of the operational environment. The SSPs are provided to the module via API input parameters in the plaintext form and output via API output parameters in the plaintext form to and from the calling application running on the same operational environment. Table 19 - SSP Zeroization Methods Oracle Linux 9 OpenSSL FIPS Provider Security Policy
| Name | Description | Size | Strength | Type | Generated By | Established By |
|---|---|---|---|---|---|---|
| AES Key | AES key used for encryption, decryption, authenticated encryption, authenticated decryption, key wrapping, key unwrapping, and computing MAC tags | 128, 192, 256 bits | 128-256 bits | Symmetric key | N/A | N/A |
| HMAC Key | HMAC key | 112-524288 bits | 112-256 bits | Authentication key | N/A | N/A |
| Shared Secret | Shared secret established by DH/ECDH | ECDH: 128-256 bits | 128-256 bits | Shared secret | N/A | KAS-ECC-SSC |
| DH: 112-200 bits | 112-200 bits | KAS-FFC-SSC | ||||
| Key-Derivation Key | Key-derivation key for KBKDF | 112-256 bits | 112-256 bits | Key-derivation key | N/A | N/A |
| Password | PBKDF2 password | At least 14 characters | N/A | Password | N/A | N/A |
| KBKDF Derived Key | KBKDF derived key | 112-4096 bits | 112-256 bits | Derived key | KBKDF | N/A |
| PBKDF2 Derived key | PBKDF2 derived key | 112-4096 bits | PBKDF2 | |||
| KDA OneStep Derived key | KDA OneStep derived key | 112-2048 bits | OneStep KDA | |||
| KDA HKDF Derived key | KDA HKDF derived key | 2048 bits | KDA HKDF | |||
| ANS X9.42 KDF Derived key | ANS X9.42 KDF derived key | 112-4096 bits | ANS X9.42 KDF (CVL) | |||
| ANS X9.63 KDF Derived key | ANS X9.63 KDF derived key | 128-4096 bits | ANS X9.63 KDF (CVL) | |||
| SSH KDF Derived key | SSH KDF derived key | 112-1024 bits | SSH KDF (CVL) | |||
| Entropy Input | Entropy input used to seed the DRBGs | 128-448 bits | 128-256 bits | Entropy | Entropy Source (ESV cert. E90) See Table 10 | N/A |
| DRBG Seed | DRBG seed derived from entropy input as defined in SP 800- 90Ar1 | CTR_DRBG: 128, 192, 256 bits Hash_DRBG: 128, 256 bits HMAC_DRBG: 128, 256 bits | 128-256 bits | Seed | CTR_DRBG, Hash_DRBG, HMAC_DRBG | N/A |
| DRBG Internal State (V, Key) | Internal state of CTR_DRBG and HMAC_DRBG | CTR_DRBG: 128, 192, 256 bits HMAC_DRBG: 128, 256 bits | 128-256 bits | DRBG Internal state | CTR_DRBG, HMAC_DRBG (derived from DRBG seed as defined in SP800-90Ar1) | N/A |
| DRBG Internal State (V, C) | Internal state of | Hash_DRBG: 128, 256 bits | 128-256 bits | Hash_DRBG (derived from DRBG seed as | N/A |
Oracle Linux 9 OpenSSL FIPS Provider Security Policy
| Name | Description Hash_DRBG | Size | Strength | Type | Generated By defined in SP800- 90Ar1) | Established By |
|---|---|---|---|---|---|---|
| DH Public Key | Public key used for Shared Secret Computation | ffdhe2048, ffdhe3072, ffdhe4096, | 112-200 bits | Public key | N/A | KAS-FFC-SSC |
| DH Private Key | Private key used for Shared Secret Computation | ffdhe6144, 2048, MODP-3072, | Private key | |||
| Module Generated DH Public Key | DH public key generated by the module | MODP-4096, MODP-6144, MODP-8192 | Public key | Safe primes (SP 800- 56Ar3 section 5.6.1.1.4 Testing Candidates) CTR_DRBG (for generation of random values per SP 800- 90Ar1) | N/A | |
| Module Generated DH Private Key | DH private key generated by the module | Private key | ||||
| EC Private Key | Private key used for ECDSA signature generation and Shared Secret Computation | P-224, P-256, P- 384, P-521 | 112, 128, 192, 256 bits | Private key | N/A | KAS-ECC-SSC |
| EC Public Key | Public key used for ECDSA signature verification and Shared Secret Computation | Public key | ||||
| Module Generated EC Private Key | EC private key generated by the module | Private key | ECDSA (FIPS 186-4 Appendix B.4.2 Testing Candidates) CTR_DRBG (for generation of random values per SP 800- 90Ar1) | N/A | ||
| Module Generated EC Public Key | EC public key generated by the module | Public key | ||||
| RSA Private Key | Private key used for RSA signature generation | 2048, 3072, 4096 bits | 112, 128, 150 bits | Private key | N/A | N/A |
| RSA Public Key | Public key used for RSA signature verification | 1024, 2048, 3072, 4096 bits | 80, 112, 128, 150 bits | Public key | N/A | N/A |
| Module Generated RSA Private Key | RSA private key generated by the module | 2048, 3072, 4096 bits | 112, 128, 150 bits | Private key | RSA (FIPS 186-4 Appendix B.3.6 Probable Primes with Conditions Based on Auxiliary Probable Primes) CTR_DRBG (random values generation per 800-90Ar1) | N/A |
| Module Generated RSA Public Key | RSA public key generated by the module | Public key | N/A | |||
| Intermediate Key Generation Value | Intermediate key generation value | 224-4096 bits | 112-256 bits | Intermediate key generation value | CKG | N/A |
Oracle Linux 9 OpenSSL FIPS Provider Security Policy
| Name | Description | Size | Strength | Type | Generated By | Established By |
|---|---|---|---|---|---|---|
| TLS Pre-Master Secret | TLS pre-master secret used for deriving the TLS master secret | 112-256 bits | 112-256 bits | TLS pre-master secret | N/A | KAS-FFC-SSC, KAS-ECC-SSC |
| TLS Master Secret | TLS master secret used for deriving the TLS derived secret | 112-256 bits | 112-256 bits | TLS master secret | TLS 1.2 KDF (RFC 7627) (CVL), TLS 1.3 KDF (CVL) | N/A |
| TLS Derived Key | TLS derived key, derived from TLS master secret | 112-256 bits | 112-256 bits | Shared secret | N/A |
| Name | Used By | Inputs/Outputs | Storage | Storage Duration | Zeroization | Type | Related SSPs |
|---|---|---|---|---|---|---|---|
| AES Key | Encryption, Decryption, Authenticated Encryption, Authenticated Decryption, Key Wrapping, Key Unwrapping Message Authentication Code Generation, Message Authentication Code Verification | API input parameters (input) | RAM | For the duration of the service | Free Cipher Handle, Module Reset | CSP | None |
| HMAC Key | Message Authentication Code Generation, Message Authentication Code Verification | ||||||
| Shared Secret | Key Derivation | API output parameters (output) | DH Public Key, DH Private Key, EC Public Key, EC Private Key, KDA OneStep Derived key, KDA HKDF Derived key, ANS X9.63 KDF Derived key, SSH KDF Derived key | ||||
| Key-Derivation Key | Key-Based Key Derivation | API input parameters (input) | For the duration of the service | KBKDF Derived Key | |||
| Password | Password-Based Key Derivation | API input parameters (input) | PBKDF2 Derived Key | ||||
| KBKDF Derived Key | Key-based Key Derivation | API output parameters (output) | Key-derivation Key | ||||
| PBKDF2 Derived | Password-based | Password |
Table 20 - SSP Information First Oracle Linux 9 OpenSSL FIPS Provider Security Policy
Name key KDA OneStep Derived key KDA HKDF Derived key ANS X9.42 KDF Derived key ANS X9.63 KDF Derived key SSH KDF Derived key Entropy Input DRBG Seed DRBG Internal State (V, Key) DRBG Internal State (V, C) DH Public Key DH Private Key Module Generated DH Public Key Module Generated DH Private Key EC Public Key EC Private Key Module Generated EC Public Key
Used By Key Derivation Key Derivation Random Number Generation Shared Secret Computation, Key Pair Verification Shared Secret Computation Shared Secret Computation, Signature Verification, Key Pair Verification Shared Secret Computation, Signature Generation, Key Pair Verification Shared Secret Computation
Inputs/Outputs N/A N/A N/A N/A API input parameters (input) API output parameters (output) API input parameters (input) API output parameters (output)
Storage
Storage Duration From generation until DRBG seed is created While the DRBG is being instantiated From DRBG instantiation until DRBG termination For the duration of the service
Zeroization
Type CSP (Compliant with IG D.L) PSP CSP PSP CSP PSP CSP PSP
Related SSPs Shared secret Shared secret Shared secret Shared secret Shared secret DRBG Seed Entropy Input DRBG Internal State (V, C) DRBG Internal State (V, Key) DRBG Seed DRBG Seed DH Private Key Shared Secret DH Public Key Shared Secret Module Generated DH Private Key Intermediate key generation value Module Generated DH Public Key Intermediate key generation value EC Private Key Shared Secret EC Public Key Shared Secret Module Generated EC Private Key Intermediate key generation value
Oracle Linux 9 OpenSSL FIPS Provider Security Policy
Name Module Generated EC Private Key RSA Private Key RSA Public Key Module Generated RSA Private Key Module Generated RSA Public Key Intermediate Key Generation Value TLS Pre-Master Secret TLS Master Secret TLS Derived Key
Used By Digital Signature Generation Digital Signature Verification N/A Key Pair Generation Key Derivation
Inputs/Outputs API input parameters (input) API output parameters (output) N/A N/A N/A API output parameters (output)
Storage
Storage Duration
Zeroization Automatically Free Cipher Handle, Module Reset
Type CSP CSP PSP CSP PSP CSP CSP CSP CSP
Related SSPs Module Generated EC Public Key Intermediate key generation value RSA Public Key RSA Private Key Module Generated RSA Public Key Intermediate key generation value Module Generated RSA Private Key Intermediate key generation value Module Generated RSA Public Key, Module Generated RSA Private Key, Module Generated DH Public Key, Module Generated DH Private Key, Module Generated EC Public Key, Module Generated EC Private Key TLS Master Secret DH Public Key DH Private Key EC Public Key EC Private Key TLS Pre-Master Secret TLS Derived Secret TLS Master Secret
Table 21 - SSP Information Second
The SHA-1 algorithm as implemented by the module will be non-approved for all purposes, starting January 1, 2030. Oracle Linux 9 OpenSSL FIPS Provider Security Policy
The RSA, ECDSA algorithm as implemented by the module conforms to FIPS 186-4, which has been superseded by FIPS 186-5. FIPS 186-4 will be withdrawn on February 3, 2024. Oracle Linux 9 OpenSSL FIPS Provider Security Policy
| Algorithm | Implementation | Test Properties | Test Method | Test Type | Indicator | Details |
|---|---|---|---|---|---|---|
| HMAC-SHA2-256 | SHA_CE, SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3, NEON | 256-bit key | Message Authentication | Software integrity | Module becomes operational | Integrity test for fips.so |
| Algorithm | Implementation | Test Properties | Test Method | Type | Indicator | Details | Conditions |
|---|---|---|---|---|---|---|---|
| ECDSA | SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3, SHA_ASM, SHA_CE | SHA2-256 | PCT | Pair-Wise Consistency Test | Successful key generation | Signature generation and verification | EC key pair generation |
| RSA | SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3, SHA_ASM, SHA_CE | PKCS#1 v1.5 with SHA2-256 | RSA key pair generation | ||||
| Safe Primes | C | N/A | Public key re- computation and comparison with the existing public key (per SP 800-56Ar3 Section 5.6.2.1.4) | Safe Primes key pair generation | |||
| SHA-1, SHA2-512 | SHA_CE, SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3 | 24-bit message | KAT | CAST | Module is operational | Message Digest | Module initialization |
| SHA3-256 | SHA3_ASM, SHA3_CE | 32-bit message | |||||
| AES-ECB | SSH_ASM, AESNI, BAES_CTASM, AESASM, SSH_SHANI, SSH_AVX2, SSH_AVX, SSH_SSSE3, CE, VPAES, AES_C | 128-bit keys, 128-bit ciphertext | Decryption |
Table 22 - Pre-Operational Self-Tests The pre-operational software integrity test is performed automatically (after the CASTs) when the module is powered on before before the software integrity test is performed. While the module is executing the self-tests, services are not available, and data output (via the data output interface) is inhibited until the tests are successfully completed. The module transitions to the operational state only after the pre-operational self-test has passed successfully. If the pre-operational self-test fails, the module transitions to the error state.
5.6.2.1.4) Oracle Linux 9 OpenSSL FIPS Provider Security Policy
Algorithm AES-GCM KBKDF KDA OneStep HKDF ANS X9.42 KDF (CVL) ANS X9.63 KDF (CVL) SSH KDF (CVL) TLS 1.2 KDF (CVL) TLS 1.3 KDF (CVL) PBKDF2 CTR_DRBG
Implementation AESNI_AVX, AESNI_CLMULNI, AESNI_ASM, BAES_CTASM_AVX, BAES_CTASM_CLMULNI, BAES_CTASM_ASM, AESASM_AVX, AESASM_CLMULNI, AESASM_ASM, CE_GCM_UNROLL8_EOR3, CE_GCM, VPAES_GCM, AES_C_GCM KBKDF KDA TLS v1.3 SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3, SHA_CE SHA3_ASM, SHA_CE, SHA3_CE, SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3, SHA_CE SSH_ASM, SSH_SHANI, SSH_AVX2, SSH_AVX, SSH_SSSE3 SHA_CE, SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3, SHA_CE TLS v1.3 SHA_CE, SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3, SHA_CE DRBG_3
Test Properties 256-bit keys, 96- bit IVs, 128-bit plaintext, 128- bit additional data Counter mode, HMAC-SHA2- 256, 128-bit input key SHA-224, 392-bit input secret SHA-256, 48-bit input secret SHA-1 with AES- 128, KW, 160-bit input secret SHA-256, 192-bit input secret SHA-1, 1056-bit input secret SHA-256, 84-bit input secret Extract and expand modes, SHA-256 SHA-256, 24- character password, 288- bit salt, Iteration count: 4096 AES-128 with prediction resistance and derivation function
Test Method
Type
Indicator
Details Encryption Decryption Key Derivation Instantiate, Generate, Reseed, Generate (compliant
Conditions
Oracle Linux 9 OpenSSL FIPS Provider Security Policy
Algorithm Hash_DRBG HMAC_DRBG KAS-FFC-SSC KAS-ECC-SSC RSA ECDSA
Implementation DRBG_3 DRBG_3 C C SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_SSSE3, SHA_CE, NEON SHA_ASM, SHA_SHANI, SHA_AVX2, SHA_AVX, SHA_SSSE3, SHA_CE
Test Properties SHA-256 with prediction resistance SHA-1 with prediction resistance ffdhe2048 P-256 PKCS#1 v1.5 with SHA-256 and 2048-bit key SHA-256 and P- 224, P-256, P- 384, and P-521
Test Method
Type
Indicator
Details with SP 800- 90Ar1 Section 11.3) Shared Secret Computation Signature Generation Signature Verification Signature Generation Signature Verification
Conditions
| Name | Description | Conditions | Recovery Method | Indicator | ||||
|---|---|---|---|---|---|---|---|---|
| Error State | The module immediately stops functioning due to a self-test failure | Software integrity test failure CAST failure PCT failure | Restart of the module | Module will not load Module stops functioning |
Table 23 - Conditional Self-Tests
The module performs self-tests on all approved cryptographic algorithms as part of the approved services supported in the approved mode of operation, using the tests shown in Table 23. Services are not available, and data output (via the data output interface) is inhibited during the self-tests. If any of these tests fails, the module transitions to the error state.
Upon generation of a DH, EC or RSA key pair, the module will perform a pair-wise consistency test (PCT) as shown in Table 23, which provides some assurance that the generated key pair is well formed. The test for DH consists of the PCT described in Section 5.6.2.1.4 of SP 800-56Ar3. For EC or RSA key pairs, the tests consist of performing signature generation and verification using the generated key pairs. Services are not available, and data output (via the data output interface) is inhibited during
The module does not implement any periodic self-tests.
Table 24 - Error States In the error state, the output interface is inhibited, and the module accepts no more inputs or requests (as the module is no longer running). Oracle Linux 9 OpenSSL FIPS Provider Security Policy
The software integrity tests and CASTs can be invoked on demand by unloading and subsequently re-initializing the module. Additionally, the integrity test may be invoked on-demand by calling the OSSL_PROVIDER_self_test function. The PCTs can be invoked on demand by requesting the Key Pair Generation service. Oracle Linux 9 OpenSSL FIPS Provider Security Policy
The module is distributed as a part of the Oracle Linux 9 (OL9) RPM package in the form of openssl-libs-3.0.7-24.0.3.el9_fips RPM package that is located in the “Oracle Linux 9 Security Validation (Update 3)” yum repository (ol9_u3_security_validation). Also, the module can be distributed using the openssl-fips-provider-3.0.7-6.0.1.el9_5 RPM package. The module can achieve the approved mode by:
The Approved and Non-Approved modes of operation are specified in Section 2.4. The administrative functions are specified in the Approved Services table. All the logical interfaces are specified in Section 3.1.
The approved and non-approved security functions available to users are listed in Section 2. The physical ports and logical interfaces available to users are specified in Section 3.1. The approved and non-approved modes of operation are specified in Section 2.4. All the algorithm-specific information is listed in Section 2.7.
There are no maintenance requirements.
As the module does not persistently store SSPs, secure sanitization of the module consists of unloading the module. This will zeroize all SSPs in volatile memory. Then, if desired, the openssl-libs-3.0.7-24.0.3.el9_fips RPM package can be uninstalled from the Oracle Linux 9 system. Oracle Linux 9 OpenSSL FIPS Provider Security Policy
Certain cryptographic subroutines and algorithms are vulnerable to timing analysis. The module mitigates this vulnerability by using constant-time implementations. This includes, but is not limited to:
| AES | Advanced Encryption Standard |
|---|---|
| AES-NI | Advanced Encryption Standard New Instructions |
| API | Application Programming Interface |
| CAST | Cryptographic Algorithm Self-Test |
| CAVP | Cryptographic Algorithm Validation Program |
| CBC | Cipher Block Chaining |
| CCM | Counter with Cipher Block Chaining-Message Authentication Code |
| CFB | Cipher Feedback |
| CMAC | Cipher-based Message Authentication Code |
| CMVP | Cryptographic Module Validation Program |
| CSP | Critical Security Parameter |
| CTR | Counter |
| CTS | Ciphertext Stealing |
| DH | Diffie-Hellman |
| DRBG | Deterministic Random Bit Generator |
| ECB | Electronic Code Book |
| ECC | Elliptic Curve Cryptography |
| ECDH | Elliptic Curve Diffie-Hellman |
| ECDSA | Elliptic Curve Digital Signature Algorithm |
| ENT (NP) | Non-physical Entropy Source |
| FFC | Finite Field Cryptography |
| FIPS | Federal Information Processing Standards |
| GCM | Galois Counter Mode |
| GMAC | Galois Counter Mode Message Authentication Code |
| HKDF | HMAC-based Key Derivation Function |
| HMAC | Keyed-Hash Message Authentication Code |
| KAT | Known Answer Test |
| KBKDF | Key-based Key Derivation Function |
| MAC | Message Authentication Code |
| NIST | National Institute of Science and Technology |
| PAA | Processor Algorithm Acceleration |
| PBKDF2 | Password-based Key Derivation Function v2 |
| PKCS | Public-Key Cryptography Standards |
| RSA | Rivest, Shamir, Adleman |
| SHA | Secure Hash Algorithm |
| SSC | Shared Secret Computation |
| SSP | Sensitive Security Parameter |
| TOEPP | Tested Operational Environment’s Physical Perimeter |
| XTS | XEX-based Tweaked-codebook mode with cipher text Stealing |
Glossary and Abbreviations Oracle Linux 9 OpenSSL FIPS Provider Security Policy
| ANS X9.42-2001 | Public Key Cryptography for the Financial Services Industry: Agreement of Symmetric Keys Using Discrete Logarithm Cryptography 2001 https://webstore.ansi.org/standards/ascx9/ansix9422001 |
|---|---|
| ANS X9.63-2001 | Public Key Cryptography for the Financial Services Industry, Key Agreement and Key Transport Using Elliptic Curve Cryptography 2001 https://webstore.ansi.org/standards/ascx9/ansix9632001 |
| FIPS 140-3 | FIPS PUB 140-3 - Security Requirements For Cryptographic Modules March 2019 https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.140-3.pdf |
| FIPS 140-3 IG | Implementation Guidance for FIPS PUB 140-3 and the Cryptographic Module Validation Program https://csrc.nist.gov/Projects/cryptographic-module-validation-program/fips-140-3-ig-announcements |
| FIPS 180-4 | Secure Hash Standard (SHS) March 2012 https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.180-4.pdf |
| FIPS 186-4 | Digital Signature Standard (DSS) July 2013 https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-4.pdf |
| FIPS 186-5 | Digital Signature Standard (DSS) February 2023 https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-5.pdf |
| FIPS 197 | Advanced Encryption Standard November 2001 https://csrc.nist.gov/publications/fips/fips197/fips-197.pdf |
| FIPS 198-1 | The Keyed Hash Message Authentication Code (HMAC) July 2008 https://csrc.nist.gov/publications/fips/fips198-1/FIPS-198-1_final.pdf |
| FIPS 202 | SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions August 2015 https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.202.pdf |
| PKCS#1 | Public Key Cryptography Standards (PKCS) #1: RSA Cryptography Specifications Version 2.1 February 2003 https://www.ietf.org/rfc/rfc3447.txt |
| RFC 3526 | More Modular Exponential (MODP) Diffie-Hellman groups for Internet Key Exchange (IKE) May 2003 https://www.ietf.org/rfc/rfc3526.txt |
| RFC 5288 | AES Galois Counter Mode (GCM) Cipher Suites for TLS August 2008 https://www.ietf.org/rfc/rfc5288.txt |
| RFC 7919 | Negotiated Finite Field Diffie-Hellman Ephemeral Parameters for Transport Layer Security (TLS) August 2016 https://www.ietf.org/rfc/rfc7919.txt |
| RFC 8446 | The Transport Layer Security (TLS) Protocol Version 1.3 August 2018 https://www.ietf.org/rfc/rfc8446.txt |
| SP 800-38A | Recommendation for Block Cipher Modes of Operation Methods and Techniques December 2001 https://csrc.nist.gov/publications/nistpubs/800-38a/sp800-38a.pdf |
| SP 800-38A Addendum | Recommendation for Block Cipher Modes of Operation: Three Variants of Ciphertext Stealing for CBC Mode October 2010 https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-38a-add.pdf |
| SP 800-38B | Recommendation for Block Cipher Modes of Operation: The CMAC Mode for Authentication May 2005 https://csrc.nist.gov/publications/nistpubs/800-38B/SP_800-38B.pdf |
| SP 800-38C | Recommendation for Block Cipher Modes of Operation: the CCM Mode for Authentication and Confidentiality |
References Oracle Linux 9 OpenSSL FIPS Provider Security Policy
| May 2004 https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-38c.pdf | |
|---|---|
| SP 800-38D | Recommendation for Block Cipher Modes of Operation: Galois/Counter Mode (GCM) and GMAC November 2007 https://csrc.nist.gov/publications/nistpubs/800-38D/SP-800-38D.pdf |
| SP 800-38E | Recommendation for Block Cipher Modes of Operation: The XTS AES Mode for Confidentiality on Storage Devices January 2010 https://csrc.nist.gov/publications/nistpubs/800-38E/nist-sp-800-38E.pdf |
| SP 800-38F | Recommendation for Block Cipher Modes of Operation: Methods for Key Wrapping December 2012 https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-38F.pdf |
| SP 800-52r2 | Guidelines for the Selection, Configuration, and Use of Transport Layer Security (TLS) Implementations August 2019 https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-52r2.pdf |
| SP 800-56Ar3 | Recommendation for Pair-Wise Key Establishment Schemes Using Discrete Logarithm Cryptography April 2018 https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-56Ar3.pdf |
| SP 800-56Cr1 | Recommendation for Key-Derivation Methods in Key-Establishment Schemes August 2020 https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-56Cr1.pdf |
| SP 800-56Cr2 | Recommendation for Key-Derivation Methods in Key-Establishment Schemes August 2020 https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-56Cr2.pdf |
| SP 800-90Ar1 | Recommendation for Random Number Generation Using Deterministic Random Bit Generators June 2015 https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-90Ar1.pdf |
| SP 800-90B | Recommendation for the Entropy Sources Used for Random Bit Generation January 2018 https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-90B.pdf |
| SP 800-108r1 | NIST Special Publication 800-108 - Recommendation for Key Derivation Using Pseudorandom Functions August 2022 https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-108r1.pdf |
| SP 800-131Ar2 | Transitioning the Use of Cryptographic Algorithms and Key Lengths March 2019 https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-131Ar2.pdf |
| SP 800-132 | Recommendation for Password-Based Key Derivation - Part 1: Storage Applications December 2010 https://csrc.nist.gov/publications/nistpubs/800-132/nist-sp800-132.pdf |
| SP 800-133r2 | Recommendation for Cryptographic Key Generation June 2020 https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-133r2.pdf |
| SP 800-135r1 | Recommendation for Existing Application-Specific Key Derivation Functions December 2011 https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-135r1.pdf |
| SP 800-140B | CMVP Security Policy Requirements March 2020 https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-140B.pdf |
Oracle Linux 9 OpenSSL FIPS Provider Security Policy