| Standard | FIPS 140-3 |
|---|---|
| Overall level | 1 |
| Module type | Software |
| Embodiment | Multi-Chip Stand Alone |
| Status | Active |
| Sunset date | 9/18/2026 |
| Caveat | Interim validation. When operated in approved mode. When installed, initialized and configured as specified in section 11 of the Security Policy. The module generates random strings whose strengths are modified by available entropy. |
| Vendor | Red Hat(R), Inc. |
flowchart LR
%% Deterministic review-risk graph for Red Hat Enterprise Linux 8 Kernel Cryptographic API
%% 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</i>"]
C3["[low] Self-test / status surface<br/>(referenced in text)<br/><i>Self-Test<br/>UnAuth</i>"]
C5["[low] Protocol / secure-channel<br/>references (may be KDF<br/>names, not a live channel)<br/><i>IKEV<br/>IPSEC<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 Red Hat Enterprise Linux 8 Kernel Cryptographic API
%% 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</i><br/>src: text:keyword"]
C3["[low] Self-test / status surface (referenced in text)<br/><i>Self-Test<br/>UnAuth</i><br/>src: text:keyword"]
C5["[low] Protocol / secure-channel references (may be KDF names, not a live channel)<br/><i>IKEV<br/>IPSEC<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;Red Hat, Inc. Red Hat Enterprise Linux 8 Kernel Cryptographic API Document Version: 1.3 Last Modified: 09/16/2024 Prepared by: atsec information security corporation
4516 Seton Center Parkway, Suite 250
Austin, TX 78759 www.atsec.com © 2024 Red Hat, Inc./ atsec information security corporation.
| # | Section | Page |
|---|
© 2024 Red Hat, Inc./ atsec information security corporation.
© 2024 Red Hat, Inc./ atsec information security corporation.
| Item | Page |
|---|---|
| Table 1: Security Levels | 6 |
| Table 3: Tested Operational Environments - Software, Firmware, Hybrid | 9 |
| Table 4: Vendor-Affirmed Operational Environments - Software, Firmware, Hybrid | 9 |
| Table 5: Modes List and Description | 9 |
| Table 6: Approved Algorithms | 12 |
| Table 7: Non-Approved, Not Allowed Algorithms | 13 |
| Table 8: Security Function Implementations | 18 |
| Table 9: Entropy Certificates | 19 |
| Table 10: Entropy Sources | 19 |
| Table 11: Ports and Interfaces | 21 |
| Table 12: Roles | 22 |
| Table 13: Approved Services | 26 |
| Table 14: Non-Approved Services | 27 |
| Table 15: EFP/EFT Information | 30 |
| Table 16: Hardness Testing Temperatures | 30 |
| Table 17: Storage Areas | 32 |
| Table 18: SSP Input-Output Methods | 32 |
| Table 19: SSP Zeroization Methods | 33 |
| Table 20: SSP Table 1 | 34 |
| Table 21: SSP Table 2 | 35 |
| Table 22: Pre-Operational Self-Tests | 36 |
| Table 23: Conditional Self-Tests | 54 |
| Table 24: Pre-Operational Periodic Information | 55 |
| Table 25: Conditional Periodic Information | 60 |
| Table 26: Error States | 60 |
| Figure 1: Block Diagram | 8 |
| 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 | N/A |
| 8 | Non-invasive security | N/A |
| 9 | Sensitive security parameter management | 1 |
| 10 | Self-tests | 1 |
| 11 | Life-cycle assurance | 1 |
| 12 | Mitigation of other attacks | N/A |
| Overall Level | 1 |
This document is the non-proprietary FIPS 140-3 Security Policy for version kernel 4.18.0372.52.1.el8_6; libkcapi 1.2.0-2.el8 of the Red Hat Enterprise Linux 8 Kernel Cryptographic API module. 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 an overall Security Level 1 module. intact and including this notice. 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.
Not applicable. © 2024 Red Hat, Inc./ atsec information security corporation.
Purpose and Use: The Red Hat Enterprise Linux 8 Kernel Cryptographic API (hereafter referred to as “the module”) provides a C language application program interface (API) for use by other (kernel space and user space) processes that require cryptographic functionality. The module operates on a general-purpose computer as part of the Linux kernel. Its cryptographic functionality can be accessed using the Linux Kernel Crypto API. Module Type: Software Module Embodiment: Multi-chip standalone Module Characteristics: Cryptographic Boundary: The cryptographic boundary of the module is defined as the kernel binary and the kernel crypto object files, the libkcapi library, and the sha512hmac binary, which is used to verify the integrity of the software components. In addition, the cryptographic boundary contains the .hmac files which store the expected integrity values for each of the software components. Tested Operational Environment’s Physical Perimeter (TOEPP) [O]: The TOEPP of the module is defined as the general-purpose computer on which the module is installed. © 2024 Red Hat, Inc./ atsec information security corporation.
| Package or File Name | Software/ Firmware Version | Features | Integrity Test | |
|---|---|---|---|---|
| /boot/vmlinuz-4.18.0-372.52.1.el8_6.x86_64; *.ko and *.ko.xz files in /usr/lib/modules/4.18.0- 372.52.1.el8_6.x86_64/kernel/crypto *.ko and *.ko.xz files in /usr/lib/modules/4.18.0- 372.52.1.el8_6.x86_64/kernel/arch/x86/crypto; /usr/lib64/libkcapi.so.1.2.0, /usr/bin/sha512hmac | 4.18.0- 372.52.1.el8_6; 1.2.0-2.el8 | N/A | HMAC- SHA2-512; RSA signature verification |
Tested Module Identification
| Operating System | Hardware Platform | Processors | PAA/PAI | Hypervisor or Host OS | Version(s) |
|---|---|---|---|---|---|
| Red Hat Enterprise Linux 8 | Dell PowerEdge R440 | Intel Xeon Silver 4216 | Yes | N/A | 4.18.0- 372.52.1.el8_6 1.2.0-2.el8 |
| Red Hat Enterprise Linux 8 | Dell PowerEdge R440 | Intel Xeon Silver 4216 | No | N/A | 4.18.0- 372.52.1.el8_6; 1.2.0-2.el8 |
| Operating System | Hardware Platform | |
|---|---|---|
| Red Hat Enterprise Linux 8 | Intel Xeon E5 |
| Mode Name | Description | Type | Status Indicator |
|---|---|---|---|
| Approved mode | Automatically entered whenever an approved service is requested | Approved | Equivalent to the indicator of the requested service as defined in section 4.3 |
| Non- approved mode | Automatically entered whenever a non-approved service is requested | Non- Approved | Equivalent to the indicator of the requested service as defined in section 4.3 |
N/A for this module. Tested Operational Environments - Software, Firmware, Hybrid: Table 3: Tested Operational Environments - Software, Firmware, Hybrid Vendor-Affirmed Operational Environments - Software, Firmware, Hybrid: Table 4: Vendor-Affirmed Operational Environments - Software, Firmware, Hybrid CMVP makes no statement as to the correct operation of the module or the security strengths of the generated keys 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 After passing all pre-operational self-tests and cryptographic algorithm self-tests executed on start-up, the module automatically transitions to the approved mode. No operator intervention is required to reach this point. Mode Change Instructions and Status [O]: © 2024 Red Hat, Inc./ atsec information security corporation.
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 [O]: The module does not implement a degraded mode of operation.
Approved Algorithms: © 2024 Red Hat, Inc./ atsec information security corporation.
© 2024 Red Hat, Inc./ atsec information security corporation.
Table 6: Approved Algorithms Vendor-Affirmed Algorithms: N/A for this module. Non-Approved, Allowed Algorithms: N/A for this module. Non-Approved, Allowed Algorithms with No Security Claimed: N/A for this module. Non-Approved, Not Allowed Algorithms: © 2024 Red Hat, Inc./ atsec information security corporation.
| Name | Use and Function |
|---|---|
| AES-GCM with external IV | Encryption |
| KBKDF (libkcapi) | Key derivation |
| HKDF (libkcapi) | Key derivation |
| PBKDF2 (libkcapi) | Password-based key derivation |
| RSA | Encryption primitive; Decryption primitive |
| RSA with PKCS#1 v1.5 padding | Signature generation (pre-hashed message); Signature verification (pre-hashed message); |
| Name | Type | Description | Properties | Algorithms |
|---|---|---|---|---|
| Encryption with AES | BC-UnAuth | Encrypt a plaintext with AES | Key size(s):128, 192, 256 bits (XTS mode 128 and 256 bits only) | AES-CBC AES-CBC AES-CBC AES-CBC-CS3 AES-CBC-CS3 AES-CFB128 AES-CFB128 AES-CTR AES-CTR AES-CTR AES-ECB AES-ECB AES-ECB AES-ECB AES-ECB AES-ECB AES-ECB AES-ECB AES-ECB AES-XTS Testing Revision 2.0 AES-XTS Testing Revision 2.0 AES-XTS Testing Revision 2.0 |
| Decryption with AES | BC-UnAuth | Decrypt a ciphertext with AES | Key size(s):128, 192, 256 bits (XTS mode 128 and 256 bits only) | AES-CBC AES-CBC AES-CBC AES-CBC-CS3 AES-CBC-CS3 AES-CFB128 AES-CFB128 AES-CTR |
Table 7: Non-Approved, Not Allowed Algorithms
2.0 2.0 2.0 © 2024 Red Hat, Inc./ atsec information security corporation.
| Name | Type | Description | Properties | Algorithms |
|---|---|---|---|---|
| AES-CTR AES-CTR AES-ECB AES-ECB AES-ECB AES-ECB AES-ECB AES-ECB AES-ECB AES-ECB AES-ECB AES-XTS Testing Revision 2.0 AES-XTS Testing Revision 2.0 AES-XTS Testing Revision 2.0 | ||||
| Hashing | SHA | Compute a message digest | SHA-1:N/A SHA2-224:N/A SHA2-256:N/A SHA2-384:N/A SHA2-512:N/A SHA3-224:N/A SHA3-256:N/A SHA3-384:N/A SHA3-512:N/A | SHA-1 SHA-1 SHA-1 SHA-1 SHA2-224 SHA2-224 SHA2-224 SHA2-224 SHA2-256 SHA2-256 SHA2-256 SHA2-256 SHA2-384 SHA2-384 SHA2-384 SHA2-384 SHA2-512 SHA2-512 SHA2-512 SHA2-512 SHA3-224 SHA3-256 SHA3-384 SHA3-512 |
| Message authentication | MAC | Compute a MAC tag for authentication | HMAC key size(s):112- 524288 bits (112-256 bits) AES key size(s):128, 192, 256 bits | AES-CMAC AES-CMAC AES-GMAC AES-GMAC HMAC-SHA-1 HMAC-SHA-1 HMAC-SHA-1 HMAC-SHA-1 |
2.0 2.0 2.0 © 2024 Red Hat, Inc./ atsec information security corporation.
| Name | Type | Description | Properties | Algorithms | ||||
|---|---|---|---|---|---|---|---|---|
| HMAC-SHA2- 224 HMAC-SHA2- 224 HMAC-SHA2- 224 HMAC-SHA2- 224 HMAC-SHA2- 256 HMAC-SHA2- 256 HMAC-SHA2- 256 HMAC-SHA2- 256 HMAC-SHA2- 384 HMAC-SHA2- 384 HMAC-SHA2- 384 HMAC-SHA2- 384 HMAC-SHA2- 512 HMAC-SHA2- 512 HMAC-SHA2- 512 HMAC-SHA2- 512 HMAC-SHA3- 224 HMAC-SHA3- 256 HMAC-SHA3- 384 HMAC-SHA3- 512 | ||||||||
| Random number generation with DRBGs | DRBG | Generate random numbers from DRBGs | Counter DRBG:128, 192, 256 bits HMAC DRBG:SHA-1, SHA-256, SHA- 512 Hash DRBG:SHA-1, SHA-256, SHA- 512 | Counter DRBG Counter DRBG Counter DRBG Counter DRBG Counter DRBG Counter DRBG Counter DRBG Counter DRBG Counter DRBG Hash DRBG Hash DRBG Hash DRBG |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Name | Type | Description | Properties | Algorithms |
|---|---|---|---|---|
| Hash DRBG Hash DRBG Hash DRBG Hash DRBG Hash DRBG Hash DRBG Hash DRBG Hash DRBG Hash DRBG HMAC DRBG HMAC DRBG HMAC DRBG HMAC DRBG HMAC DRBG HMAC DRBG HMAC DRBG HMAC DRBG HMAC DRBG HMAC DRBG HMAC DRBG HMAC DRBG | ||||
| Signature verification with RSA | DigSig-SigVer | Verify a signature with RSA | Padding:PKCS#1 v1.5 Hashes:SHA-256 Key size(s):3072 bits (128 bits) | RSA SigVer (FIPS186-4) RSA SigVer (FIPS186-4) RSA SigVer (FIPS186-4) RSA SigVer (FIPS186-4) RSA SigVer (FIPS186-4) RSA SigVer (FIPS186-4) RSA SigVer (FIPS186-4) RSA SigVer (FIPS186-4) |
| Authenticated encryption with AES | BC-Auth | Encrypt and authenticate a plaintext with AES | Key size(s):128, 192, 256 bits | AES-CCM AES-CCM AES-GCM AES-GCM AES-GCM AES-CBC AES-CBC AES-CBC AES-CTR AES-CTR AES-CTR HMAC-SHA-1 HMAC-SHA2- 256 HMAC-SHA2- |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Name | Type | Description | Properties | Algorithms | ||||
|---|---|---|---|---|---|---|---|---|
| 384 HMAC-SHA2- 512 HMAC-SHA-1 HMAC-SHA2- 256 HMAC-SHA2- 384 HMAC-SHA2- 512 HMAC-SHA-1 HMAC-SHA2- 256 HMAC-SHA2- 384 HMAC-SHA2- 512 HMAC-SHA-1 HMAC-SHA2- 256 HMAC-SHA2- 384 HMAC-SHA2- 512 | ||||||||
| Authenticated decryption with AES | BC-Auth | Decrypt and authenticate a ciphertext with AES | Key size(s):128, 192, 256 bits | AES-CCM AES-CCM AES-GCM AES-GCM AES-GCM AES-GCM AES-GCM AES-GCM AES-CBC AES-CBC AES-CBC AES-CTR AES-CTR AES-CTR HMAC-SHA-1 HMAC-SHA2- 256 HMAC-SHA2- 384 HMAC-SHA2- 512 HMAC-SHA-1 HMAC-SHA2- 256 HMAC-SHA2- 384 HMAC-SHA2- 512 |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Name | Type | Description | Properties | Algorithms |
|---|---|---|---|---|
| HMAC-SHA-1 HMAC-SHA2- 256 HMAC-SHA2- 384 HMAC-SHA2- 512 HMAC-SHA-1 HMAC-SHA2- 256 HMAC-SHA2- 384 HMAC-SHA2- 512 | ||||
| Key wrapping | KTS-Wrap | Key wrapping | Key size(s):128, 192, 256 bits | AES-GCM AES-GCM AES-GCM |
| Key unwrapping | KTS-Wrap | Key unwrapping | Key size(s):128, 192, 256 bits | AES-GCM AES-GCM AES-GCM AES-GCM AES-GCM AES-GCM |
Table 8: Security Function Implementations
Legacy use: Digital Signature Verification with SHA-1 is allowed for legacy use only. The Crypto Officer shall consider the following requirements and restrictions when using the module. For IPsec, the module offers the AES GCM implementation and uses the context of Scenario
1 of FIPS 140-3 IG C.H. The mechanism for IV generation is compliant with RFC 4106. IVs
generated using this mechanism may only be used in the context of AES GCM encryption within the IPsec protocol. The module does not implement IPsec. The module’s implementation of AES GCM is used together with an application that runs outside the module’s cryptographic boundary. This application must use RFC 7296 compliant IKEv2 to establish the shared secret SKEYSEED from which the AES GCM encryption keys are derived. The design of the IPsec 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. © 2024 Red Hat, Inc./ atsec information security corporation.
| Cert | Vendor | ||
|---|---|---|---|
| Number | Name | ||
| E54 | Red Hat, Inc. |
| Name | Type | Operational Environment | Sample Size | Entropy per Sample | Conditioning Component | |
|---|---|---|---|---|---|---|
| RHEL Kernel CPU Time Jitter RNG Entropy Source | Non- Physical | Red Hat Enterprise Linux 8 on Dell PowerEdge R440 | 64 bits | 59.62 bits | Linear-Feedback Shift Register (LFSR) |
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 crypto_aead_encrypt API function with an AES GCM handle. When this is the case, the API will not set an approved service indicator, as described in section 4.3.
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. 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 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.
For RSA signature verification, the module supports modulus size 3072 and 4096 bits. The supported modulus size has been CAVP tested.
The module provides SHA-3 hash functions compliant with IG C.C. Every implementation of each SHA-3 function was tested and validated on all the module’s operating environments. SHAKE functions are not implemented. SHA-3 hash functions are also used as part of a higher-level algorithm for HMAC.
Table 9: Entropy Certificates Table 10: Entropy Sources The module implements three different Deterministic Random Bit Generator (DRBG) implementations based on SP 800-90Ar1: Counter DRBG, Hash DRBG, and HMAC DRBG. Each of these DRBG implementations can be instantiated by the operator of the module. When instantiated, these DRBGs can be used to generate random numbers for external usage. © 2024 Red Hat, Inc./ atsec information security corporation.
Additionally, the module employs a specific HMAC-SHA2-512 DRBG implementation for internal purposes (e.g. to generate initialization vectors). This DRBG is initially seeded with
384 output bits from the entropy source (357 bits of entropy) and reseeded with 256 output
bits from the entropy source (238 bits of entropy).
The module does not provide key generation.
As permitted by IG D.G, the module provides key transport methods by using AES-GCM encryption mode in the context of IPsec protocol.
AES GCM with internal IV generation in the approved mode is compliant with RFC 4106 and shall only be used in conjunction with the IPsec protocol. No parts of this protocol, other than the AES GCM implementation, have been tested by the CAVP and CMVP.
Not applicable. © 2024 Red Hat, Inc./ atsec information security corporation.
| Physical Port | Logical Interface(s) | Data That Passes |
|---|---|---|
| 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, AF_ALG type sockets |
| 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 Output | API data output parameters, AF_ALG type sockets |
| 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. | Control Input | API function calls, API control input parameters, AF_ALG type sockets, kernel command line |
| 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. | Status Output | API return values, AF_ALG type sockets, kernel logs |
Table 11: 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, AF_ALG type socket that allows the applications running in the user space to request cryptographic services from the module.
The module does not implement a trusted channel.
Not applicable. © 2024 Red Hat, Inc./ atsec information security corporation.
| Name | Type | Operator Type | Authentication Methods | |
|---|---|---|---|---|
| Crypto Officer | Role | CO | None |
| Name | Descripti on | Indicator | Inputs | Outputs | Security Function s | SSP Acce ss |
|---|---|---|---|---|---|---|
| Message digest | Compute a message digest | crypto_shash_init returns 0 | Messag e | Digest value | Hashing | Crypt o Offic er |
| Key wrapping | Wrap a key | crypto_skcipher_set key returns 0; crypto_shash_init returns 0 | AES key, key to be wrappe d | wrapped key | Key wrapping | Crypt o Offic er - AES key: W,E - HMA C key: W,E |
| Key unwrappin g | Unwrap a key | crypto_skcipher_set key returns 0; crypto_shash_init returns 0 | AES key, key to be unwrap ped | unwrapped key | Key unwrappin g | Crypt o Offic er - AES key: W,E - HMA C |
N/A for this module. The module does not implement authentication.
Table 12: 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.
W,E C W,E W,E C © 2024 Red Hat, Inc./ atsec information security corporation.
| Name | Descripti on | Indicator | Inputs | Outputs | Security Function s | SSP Acce ss |
|---|---|---|---|---|---|---|
| key: W,E | ||||||
| Encryption | Encrypt a plaintext | crypto_skcipher_set key returns 0 | AES key, plaintex t | Ciphertext | Encryption with AES | Crypt o Offic er - AES key: W,E |
| Decryptio n | Decrypt a ciphertext | crypto_skcipher_set key returns 0 | AES key, cipherte xt | Plaintext | Decryptio n with AES | Crypt o Offic er - AES key: W,E |
| Authentica ted encryption | Encrypt and authentic ate a plaintext | For all except AES GCM: crypto_aead_setkey returns 0; For AES GCM: crypto_aead_get_fla gs(tfm) has the CRYPTO_TFM_ FIPS_COMPLIANCE flag set | AES key, plaintex t | Ciphertext, MAC tag | Authentic ated encryption with AES | Crypt o Offic er - AES key: W,E |
| Authentica ted decryption | Encrypt and authentic ate a ciphertext | For all except AES GCM: crypto_aead_setkey returns 0; For AES GCM: crypto_aead_get_fla gs(tfm) has the CRYPTO_TFM_ FIPS_COMPLIANCE flag set | AES key, cipherte xt, MAC tag | Plaintext or failure | Authentic ated decryption with AES | Crypt o Offic er - AES key: W,E |
| Message authentica tion generatio n | Compute a MAC tag | crypto_shash_init returns 0 | AES: AES key, messag e; HMAC: HMAC key, messag e | MAC tag | Message authentica tion | Crypt o Offic er - AES key: W,E - HMA C key: W,E |
W,E W,E W,E e C W,E © 2024 Red Hat, Inc./ atsec information security corporation.
| Name | Descripti on | Indicator | Inputs | Outputs | Security Function s | SSP Acce ss |
|---|---|---|---|---|---|---|
| Message authentica tion verificatio n | Compute a MAC tag | crypto_shash_init returns 0 | AES: AES key, messag e, MAC tag; HMAC: HMAC key, messag e, MAC tag | Success/Fa ilure | Message authentica tion | Crypt o Offic er - AES key: W,E - HMA C key: W,E |
| Random number generatio n | Generate random bytes | crypto_rng_get_byt es returns 0 | Output length | Random bytes | Random number generatio n with DRBGs | Crypt o Offic er - Entro py input: W,E - DRB G seed: G,E - DRB G Inter nal state (V, Key): G,W, E - DRB G Inter nal state (V, C): G,W, E |
| Error detection code | Compute an EDC (crc32, crct10dif) | None | Messag e | EDC | None | Crypt o Offic er |
W,E G G,E G (V, G,W, E G (V, C): G,W, E © 2024 Red Hat, Inc./ atsec information security corporation.
| Name | Descripti on | Indicator | Inputs | Outputs | Security Function s | SSP Acce ss |
|---|---|---|---|---|---|---|
| Compressi on | Compress data (deflate, lz4, lz4hc, lzo, zlibdeflat e, zstd) | None | Data | Compresse d data | None | Crypt o Offic er |
| Generic system call | Use the kernel to perform various non- cryptogra phic operation s | None | Identifie r, various argume nts | Various return values | None | Crypt o Offic er |
| Show version | Return the module name and version informatio n | None | N/A | Module name and version | None | Crypt o Offic er |
| Show status | Return the module status | None | N/A | Module status | None | Crypt o Offic er |
| Self-test | Perform the CASTs and integrity tests | None | N/A | Pass/fail | Encryption with AES Decryptio n with AES Hashing Message authentica tion Random number generatio n with DRBGs Signature verificatio n with RSA Authentic ated encryption with AES Authentic ated | Crypt o Offic er |
s n © 2024 Red Hat, Inc./ atsec information security corporation.
| Name | Descripti on | Indicator | Inputs | Outputs | Security Function s | SSP Acce ss | |
|---|---|---|---|---|---|---|---|
| decryption with AES | |||||||
| Zeroizatio n | Zeroize all SSPs | None | Any SSP | N/A | None | Crypt o Offic er - AES key: Z - HMA C key: Z - Entro py input: Z - DRB G Inter nal state (V, Key): Z - DRB G Inter nal state (V, C): Z - DRB G seed: Z |
Z C Z Z G (V, Z G (V, C): Z G Z Table 13: Approved Services The table above lists the approved services. The following convention is used to specify access rights to SSPs:
| Name | Description | Algorithms | Role |
|---|---|---|---|
| AES GCM external IV encryption | Encrypt a plaintext using AES GCM with an external IV | AES-GCM with external IV | CO |
| Key derivation | Derive a key from a key- derivation key or a shared secret | KBKDF (libkcapi) HKDF (libkcapi) | CO |
| Password-based key derivation | Derive a key from a password | PBKDF2 (libkcapi) | CO |
| RSA encryption primitive | Compute the raw RSA encryption of a plaintext | RSA | CO |
| RSA decryption primitive | Compute the raw RSA decryption of a cipertext | RSA | CO |
| RSA signature generation (pre-hashed message) | Generate a digital signature for a pre-hashed message | RSA with PKCS#1 v1.5 padding | CO |
| RSA signature verification (pre-hashed message) | Verify a digital signature for a pre-hashed message | RSA with PKCS#1 v1.5 padding | CO |
• Zeroize (Z): The module zeroizes the SSP.
Table 14: Non-Approved Services
The module does not load external software or firmware.
The module does not implement a bypass capability.
The module does not implement a self-initiated cryptographic output capability.
Not applicable. © 2024 Red Hat, Inc./ atsec information security corporation.
The Linux kernel binary is integrity tested using an HMAC-SHA2-512 calculation performed by the sha512hmac utility (which utilizes the module’s HMAC and SHA-512 implementations). An HMAC-SHA2-512 calculation is also performed on the sha512hmac utility and the libkcapi library to verify their integrity. The kernel crypto object files listed in section 2.2 are loaded on start-up by the module and verified using RSA signature verification with PKCS#1 v1.5 padding, SHA-256, and a 3072-bit key.
Integrity tests are performed as part of the pre-operational self-tests, which are executed when the module is initialized. The integrity tests can be invoked on demand by unloading and subsequently re-initializing the module, which will perform (among others) the software integrity tests.
Not applicable. © 2024 Red Hat, Inc./ atsec information security corporation.
Type of Operational Environment: Modifiable How Requirements are Satisfied [O]: 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. Instrumentation tools like the ptrace system call, gdb and strace, as well as other tracing mechanisms offered by the Linux environment such as ftrace or systemtap, shall not be used in the operational environments. The use of any of these tools implies that the cryptographic module is running in a non-validated operational environment.
The Red Hat Enterprise Linux operating system is used as the basis of other products which include but are not limited to:
Temp/Voltage Type LowTemperature HighTemperature LowVoltage HighVoltage
Temperature or Voltage
EFP or EFT
Result
| Temperature Type | Temperature |
|---|---|
| LowTemperature | |
| HighTemperature |
N/A for this module. The module is comprised of software only and therefore this section is not applicable.
Not applicable. Table 15: EFP/EFT Information Not applicable.
Table 16: Hardness Testing Temperatures Not applicable.
Not applicable. © 2024 Red Hat, Inc./ atsec information security corporation.
This module does not implement any non-invasive security mechanism and therefore this section is not applicable.
Not applicable. © 2024 Red Hat, Inc./ atsec information security corporation.
| Storage Area Name | Description | Persistence Type | |
|---|---|---|---|
| RAM | Temporary storage for SSPs used by the module as part of service execution | Dynamic |
Name API input parameters; AF_ALG_typ e sockets (input)
From Operator calling applicatio n (TOEPP)
To Cryptographi c module
Format Type Plaintex t
Distributio n Type Manual
Entry Type Electroni c
SFI or Algorith m
| Zeroization Method | Description | Rationale | Operator Initiation |
|---|---|---|---|
| Free cipher handle | Zeroizes the SSPs contained within the cipher handle | Memory occupied by SSPs is overwritten with zeroes, which renders the SSP values irretrievable. The completion of the zeroization routine indicates that the zeroization procedure succeeded. | By calling the appropriate zeroization functions: AES key: crypto_free_skcipher and crypto_free_aead; HMAC key: crypto_free_shash and crypto_free_ahash; DRBG internal state: crypto_free_rng; DRBG seed: crypto_free_rng; Entropy input string: crypto_free_rng; |
| 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. Module power off indicates that the zeroization procedure succeeded. The | By removing power |
Table 17: Storage Areas The module does not perform persistent storage of SSPs. The SSPs are temporarily stored in the RAM in plaintext form. SSPs are provided to the module by the calling process and are destroyed when released by the appropriate zeroization function calls.
m Table 18: SSP Input-Output Methods © 2024 Red Hat, Inc./ atsec information security corporation.
Zeroization Method
Description
Rationale successful removal of power implicitly indicates that the zeroization is complete.
Operator Initiation
| Name | Descriptio n | Size - Strengt h | Type - Category | Generate d By | Establishe d By | Used By |
|---|---|---|---|---|---|---|
| AES key | AES key used for encryption, decryption, and computing MAC tags. | 128, 192, 256 bits - 128, 192, 256 bits | Symmetric Key - CSP | Encryption with AES Decryption with AES Authenticate d encryption with AES Authenticate d decryption with AES Key wrapping Key unwrapping | ||
| HMAC key | HMAC key. | 112- 524288 bits - 112-256 bits | Authenticatio n key - CSP | Message authenticatio n | ||
| Entrop y input | Entropy input used to seed the DRBGs. Compliant with IG D.L. | 128-384 bits - 117-357 bits | Entropy input - CSP | Random number generation with DRBGs | ||
| DRBG seed | DRBG seed derived from entropy input. Compliant with IG D.L. | Counter DRBG: 128, 192, 256 bits; Hash DRBG: 128, 256 bits; HMAC DRBG: 128, 256 | Seed - CSP | Random number generation with DRBGs | Random number generation with DRBGs |
Table 19: SSP Zeroization Methods All data output is inhibited during zeroization.
h © 2024 Red Hat, Inc./ atsec information security corporation.
| Name | Descriptio n | Size - Strengt h | Type - Category | Generate d By | Establishe d By | Used By |
|---|---|---|---|---|---|---|
| bits - Counter DRBG: 128, 192, 256 bits; Hash DRBG: 128, 256 bits; HMAC DRBG: 128, 256 bits | ||||||
| DRBG Interna l state (V, Key) | Internal state of Counter DRBG and HMAC DRBG instances. Compliant with IG D.L. | Counter DRBG: 128, 192, 256 bits; HMAC DRBG: 128, 256 bits - Counter DRBG: 128, 192, 256 bits; HMAC DRBG: 128, 256 bits | Internal state - CSP | Random number generation with DRBGs | Random number generation with DRBGs | |
| DRBG Interna l state (V, C) | Internal state of Hash DRBG instances. Compliant with IG D.L. | Hash DRBG: 128, 256 bits - Hash DRBG: 128, 256 bits | Internal state - CSP | Random number generation with DRBGs | Random number generation with DRBGs |
| Name | Input - Output | Storage | Storage Duration | Zeroization | Related SSPs | ||
|---|---|---|---|---|---|---|---|
| AES key | API input parameters; AF_ALG_type sockets (input) | RAM:Plaintext | Until cipher handle is freed or module powered off | Free cipher handle Remove power from the module |
h Table 20: SSP Table 1 © 2024 Red Hat, Inc./ atsec information security corporation.
| Name | Input - Output | Storage | Storage Duration | Zeroization | Related SSPs | |
|---|---|---|---|---|---|---|
| HMAC key | API input parameters; AF_ALG_type sockets (input) | RAM:Plaintext | Until cipher handle is freed or module powered off | Free cipher handle Remove power from the module | ||
| Entropy input | RAM:Plaintext | From generation until DRBG seed/reseed | Free cipher handle Remove power from the module | DRBG seed:Derives | ||
| DRBG seed | RAM:Plaintext | While the DRBG is being instantiated | Free cipher handle Remove power from the module | Entropy input:Derived From DRBG Internal state (V, Key):Derives DRBG Internal state (V, C):Derives | ||
| DRBG Internal state (V, Key) | RAM:Plaintext | From DRBG instantiation until DRBG termination | Free cipher handle Remove power from the module | DRBG seed:Derived From | ||
| DRBG Internal state (V, C) | RAM:Plaintext | From DRBG instantiation until DRBG termination | Free cipher handle Remove power from the module | DRBG seed:Derived From |
The SHA-1 algorithm as implemented by the module will be non-approved for all purposes, starting January 1, 2030. The RSA 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.
Not applicable. © 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Properties | Test Method | Test Type | Indicator | Details |
|---|---|---|---|---|---|
| HMAC- SHA2-512 (A3664) | 128-bit key | Message Authentication | SW/FW Integrity | Module becomes operational and services are available for use. | Integrity test for vmlinuz, libkcapi components and sha512hmac binary |
| RSA SigVer (FIPS186-4) (A3648) | 3072-bit key with SHA- 256 | Signature Verification | SW/FW Integrity | Module becomes operational and services are available for use. | Integrity test for kernel object files |
| Algorithm or Test | Test Properties | Test Method | Test Type | Indicator | Details | Conditions |
|---|---|---|---|---|---|---|
| SHA-1 (A3648) | 0-8184 bit messages | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
| SHA-1 (A3662) | 0-8184 bit messages | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
Table 22: Pre-Operational Self-Tests The pre-operational software integrity tests are performed automatically when the module is powered on, before the module transitions into the operational state. The algorithms used CASTs before the 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 pre-operational software integrity self-tests are successfully completed. The module transitions to the operational state only after the pre-operational self-tests are passed successfully.
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Properties | Test Method | Test Type | Indicator | Details | Conditions |
|---|---|---|---|---|---|---|
| SHA-1 (A3663) | 0-8184 bit messages | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
| SHA-1 (A3664) | 0-8184 bit messages | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
| SHA2-224 (A3648) | 0-8184 bit messages | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
| SHA2-224 (A3662) | 0-8184 bit messages | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
| SHA2-224 (A3663) | 0-8184 bit messages | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
| SHA2-224 (A3664) | 0-8184 bit messages | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
| SHA2-256 (A3648) | 0-8184 bit messages | KAT | CAST | Module becomes operational | Message digest | Module initialization |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Properties | Test Method | Test Type | Indicator and services are available for use. | Details | Conditions |
|---|---|---|---|---|---|---|
| SHA2-256 (A3662) | 0-8184 bit messages | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
| SHA2-256 (A3663) | 0-8184 bit messages | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
| SHA2-256 (A3664) | 0-8184 bit messages | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
| SHA2-384 (A3648) | 0-8184 bit messages | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
| SHA2-384 (A3662) | 0-8184 bit messages | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
| SHA2-384 (A3663) | 0-8184 bit messages | KAT | CAST | Module becomes operational and services are | Message digest | Module initialization |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Properties | Test Method | Test Type | Indicator available for use. | Details | Conditions |
|---|---|---|---|---|---|---|
| SHA2-384 (A3664) | 0-8184 bit messages | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
| SHA2-512 (A3648) | 0-8184 bit message | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
| SHA2-512 (A3662) | 0-8184 bit messages | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
| SHA2-512 (A3663) | 0-8184 bit messages | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
| SHA2-512 (A3664) | 0-8184 bit messages | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
| SHA3-224 (A3649) | 0-8184 bit message | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Properties | Test Method | Test Type | Indicator | Details | Conditions |
|---|---|---|---|---|---|---|
| SHA3-256 (A3649) | 0-8184 bit message | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
| SHA3-384 (A3649) | 0-8184 bit message | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
| SHA3-512 (A3649) | 0-8184 bit message | KAT | CAST | Module becomes operational and services are available for use. | Message digest | Module initialization |
| AES-ECB (A3648) | 128, 192, 256 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Encryption, Decryption | Module initialization |
| AES-ECB (A3652) | 128, 192, 256 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Encryption, Decryption | Module initialization |
| AES-ECB (A3653) | 128, 192, 256 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Encryption, Decryption | Module initialization |
| AES-ECB (A3654) | 128, 192, 256 bit keys | KAT | CAST | Module becomes operational | Encryption, Decryption | Module initialization |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Properties | Test Method | Test Type | Indicator and services are available for use. | Details | Conditions |
|---|---|---|---|---|---|---|
| AES-ECB (A3655) | 128, 192, 256 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Encryption, Decryption | Module initialization |
| AES-ECB (A3656) | 128, 192, 256 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Encryption, Decryption | Module initialization |
| AES-ECB (A3658) | 128, 192, 256 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Encryption, Decryption | Module initialization |
| AES-ECB (A3659) | 128, 192, 256 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Encryption, Decryption | Module initialization |
| AES-ECB (A3657) | 128, 192, 256 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Encryption, Decryption | Module initialization |
| AES-CBC (A3648) | 128, 192, 256 bit keys | KAT | CAST | Module becomes operational and services are | Encryption, Decryption | Module initialization |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Properties | Test Method | Test Type | Indicator available for use. | Details | Conditions |
|---|---|---|---|---|---|---|
| AES-CBC (A3654) | 128, 192, 256 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Encryption, Decryption | Module initialization |
| AES-CBC- CS3 (A3661) | 128 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Encryption, Decryption | Module initialization |
| AES- CFB128 (A3660) | 128, 192, 256 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Encryption, Decryption | Module initialization |
| AES-CTR (A3648) | 128, 192, 256 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Encryption, Decryption | Module initialization |
| AES-CTR (A3657) | 128, 192, 256 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Encryption, Decryption | Module initialization |
| AES-CCM (A3657) | 128, 192, 256 bit keys; 128-bit IVs | KAT | CAST | Module becomes operational and services are available for use. | Encryption, Decryption | Module initialization |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Properties | Test Method | Test Type | Indicator | Details | Conditions |
|---|---|---|---|---|---|---|
| AES-GCM (A3648) | 128, 192, 256 bit keys, 96-bit IVs | KAT | CAST | Module becomes operational and services are available for use. | Encryption, Decryption | Module initialization |
| AES-GCM (A3652) | 128, 192, 256 bit keys, 96-bit IVs | KAT | CAST | Module becomes operational and services are available for use. | Encryption | Module initialization |
| AES-GCM (A3653) | 128, 192, 256 bit keys, 96-bit IVs | KAT | CAST | Module becomes operational and services are available for use. | Encryption, Decryption | Module initialization |
| AES-GCM (A3654) | 128, 192, 256 bit keys, 96-bit IVs | KAT | CAST | Module becomes operational and services are available for use. | Encryption, Decryption | Module initialization |
| AES-GCM (A3655) | 128, 192, 256 bit keys, 96-bit IVs | KAT | CAST | Module becomes operational and services are available for use. | Encryption | Module initialization |
| AES-GCM (A3656) | 128, 192, 256 bit keys, 96-bit IVs | KAT | CAST | Module becomes operational and services are available for use. | Encryption, Decryption | Module initialization |
| AES-GCM (A3657) | 128, 192, 256 bit keys, 96-bit IVs | KAT | CAST | Module becomes operational | Encryption, Decryption | Module initialization |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Properties | Test Method | Test Type | Indicator and services are available for use. | Details | Conditions |
|---|---|---|---|---|---|---|
| AES-GCM (A3658) | 128, 192, 256 bit keys, 96-bit IVs | KAT | CAST | Module becomes operational and services are available for use. | Encryption | Module initialization |
| AES-GCM (A3659) | 128, 192, 256 bit keys, 96-bit IVs | KAT | CAST | Module becomes operational and services are available for use. | Encryption, Decryption | Module initialization |
| AES-XTS Testing Revision 2.0 (A3648) | 128 and 256 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Encryption, Decryption | Module initialization |
| AES-XTS Testing Revision 2.0 (A3657) | 128 and 256 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Encryption, Decryption | Module initialization |
| AES-CMAC (A3657) | 128 and 256 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization |
| HMAC- SHA-1 (A3648) | 32-64 bit keys | KAT | CAST | Module becomes operational and services are | Message authentication | Module initialization |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Properties | Test Method | Test Type | Indicator available for use. | Details | Conditions |
|---|---|---|---|---|---|---|
| HMAC- SHA-1 (A3662) | 32-64 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization |
| HMAC- SHA-1 (A3663) | 32-64 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization |
| HMAC- SHA-1 (A3664) | 32-64 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization |
| HMAC- SHA2-224 (A3648) | 32-1048 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization |
| HMAC- SHA2-224 (A3662) | 32-1048 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization |
| HMAC- SHA2-224 (A3663) | 32-1048 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Properties | Test Method | Test Type | Indicator | Details | Conditions |
|---|---|---|---|---|---|---|
| HMAC- SHA2-224 (A3664) | 32-1048 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization |
| HMAC- SHA2-256 (A3648) | 32-64 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization |
| HMAC- SHA2-256 (A3662) | 32-64 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization |
| HMAC- SHA2-256 (A3663) | 32-64 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization |
| HMAC- SHA2-256 (A3664) | 32-64 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization |
| HMAC- SHA2-384 (A3648) | 32-1048 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization |
| HMAC- SHA2-384 (A3662) | 32-1048 bit keys | KAT | CAST | Module becomes operational | Message authentication | Module initialization |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Properties | Test Method | Test Type | Indicator and services are available for use. | Details | Conditions |
|---|---|---|---|---|---|---|
| HMAC- SHA2-384 (A3663) | 32-1048 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization |
| HMAC- SHA2-384 (A3664) | 32-1048 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization |
| HMAC- SHA2-512 (A3648) | 32-1048 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization. Before integrity test. |
| HMAC- SHA2-512 (A3662) | 32-1048 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization. Before integrity test. |
| HMAC- SHA2-512 (A3663) | 32-1048 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization. Before integrity test. |
| HMAC- SHA2-512 (A3664) | 32-1048 bit keys | KAT | CAST | Module becomes operational and services are | Message authentication | Module initialization. Before integrity test. |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Properties | Test Method | Test Type | Indicator available for use. | Details | Conditions |
|---|---|---|---|---|---|---|
| HMAC- SHA3-224 (A3649) | 32-1048 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization |
| HMAC- SHA3-256 (A3649) | 32-1048 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization |
| HMAC- SHA3-384 (A3649) | 32-1048 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization |
| HMAC- SHA3-512 (A3649) | 32-1048 bit keys | KAT | CAST | Module becomes operational and services are available for use. | Message authentication | Module initialization |
| Counter DRBG (A3648) | 128, 192, 256 bit keys With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| Counter DRBG (A3652) | 128, 192, 256 bit keys With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Properties | Test Method | Test Type | Indicator | Details | Conditions |
|---|---|---|---|---|---|---|
| Counter DRBG (A3653) | 128, 192, 256 bit keys With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| Counter DRBG (A3654) | 128, 192, 256 bit keys With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| Counter DRBG (A3655) | 128, 192, 256 bit keys With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| Counter DRBG (A3656) | 128, 192, 256 bit keys With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| Counter DRBG (A3657) | 128, 192, 256 bit keys With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| Counter DRBG (A3658) | 128, 192, 256 bit keys With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| Counter DRBG (A3659) | 128, 192, 256 bit keys With/without | KAT | CAST | Module becomes operational | Seed, Generate | Module initialization |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Properties | Test Method | Test Type | Indicator | Details | Conditions |
|---|---|---|---|---|---|---|
| PR; Health test per section 11.3 of SP 800- 90Arev1 | and services are available for use. | |||||
| Hash DRBG (A3648) | SHA-256 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| Hash DRBG (A3652) | SHA-256 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| Hash DRBG (A3653) | SHA-256 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| Hash DRBG (A3654) | SHA-256 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| Hash DRBG (A3655) | SHA-256 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| Hash DRBG (A3656) | SHA-256 With/without PR; Health test per section 11.3 | KAT | CAST | Module becomes operational and services are | Seed, Generate | Module initialization |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Properties | Test Method | Test Type | Indicator | Details | Conditions |
|---|---|---|---|---|---|---|
| of SP 800- 90Arev1 | available for use. | |||||
| Hash DRBG (A3657) | SHA-256 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| Hash DRBG (A3658) | SHA-256 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| Hash DRBG (A3659) | SHA-256 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| Hash DRBG (A3662) | SHA-256 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| Hash DRBG (A3663) | SHA-256 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| Hash DRBG (A3664) | SHA-256 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Properties | Test Method | Test Type | Indicator | Details | Conditions |
|---|---|---|---|---|---|---|
| HMAC DRBG (A3648) | SHA-256, SHA512 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| HMAC DRBG (A3652) | SHA-256, SHA512 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| HMAC DRBG (A3653) | SHA-256, SHA512 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| HMAC DRBG (A3654) | SHA-256, SHA512 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| HMAC DRBG (A3655) | SHA-256, SHA512 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| HMAC DRBG (A3656) | SHA-256, SHA512 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| HMAC DRBG (A3657) | SHA-256, SHA512 With/without | KAT | CAST | Module becomes operational | Seed, Generate | Module initialization |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Properties | Test Method | Test Type | Indicator | Details | Conditions |
|---|---|---|---|---|---|---|
| PR; Health test per section 11.3 of SP 800- 90Arev1 | and services are available for use. | |||||
| HMAC DRBG (A3658) | SHA-256, SHA512 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| HMAC DRBG (A3659) | SHA-256, SHA512 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| HMAC DRBG (A3662) | SHA-256, SHA512 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| HMAC DRBG (A3663) | SHA-256, SHA512 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| HMAC DRBG (A3664) | SHA-256, SHA512 With/without PR; Health test per section 11.3 of SP 800- 90Arev1 | KAT | CAST | Module becomes operational and services are available for use. | Seed, Generate | Module initialization |
| RSA SigVer (FIPS186- 4) (A3648) | 4096-bit key with SHA- 256 | KAT | CAST | Module becomes operational and services are | Verify | Module initialization. Before integrity test. |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Properties | Test Method | Test Type | Indicator available for use. | Details | Conditions |
|---|---|---|---|---|---|---|
| RSA SigVer (FIPS186- 4) (A3662) | 4096-bit key with SHA- 256 | KAT | CAST | Module becomes operational and services are available for use. | Verify | Module initialization. Before integrity test. |
| RSA SigVer (FIPS186- 4) (A3663) | 4096-bit key with SHA- 256 | KAT | CAST | Module becomes operational and services are available for use. | Verify | Module initialization. Before integrity test. |
| RSA SigVer (FIPS186- 4) (A3664) | 4096-bit key with SHA- 256 | KAT | CAST | Module becomes operational and services are available for use. | Verify | Module initialization. Before integrity test. |
| Entropy Source | 1024 samples | RCT | CAST | Module becomes operational and services are available for use. | Entropy source start- up test | Entropy source initialization |
| Entropy Source | 1024 samples | APT | CAST | Module becomes operational and services are available for use. | Entropy source start- up test | Entropy source initialization |
| Entropy Source | Cutoff C = 61 | RCT | CAST | Entropy source is operational | Entropy source continuous test | Continuously |
| Entropy Source | Cutoff C = 355 | APT | CAST | Entropy source is operational | Entropy source continuous test | Continuously |
operationalcontinuous Table 23: Conditional Self-Tests © 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Method | Test Type | Period | Periodic Method |
|---|---|---|---|---|
| HMAC-SHA2- 512 (A3664) | Message Authentication | SW/FW Integrity | On demand | Manually |
| RSA SigVer (FIPS186-4) (A3648) | Signature Verification | SW/FW Integrity | On demand | Manually |
| Algorithm or Test | Test Method | Test Type | Period | Periodic Method |
|---|---|---|---|---|
| SHA-1 (A3648) | KAT | CAST | On demand | Manually |
| SHA-1 (A3662) | KAT | CAST | On demand | Manually |
| SHA-1 (A3663) | KAT | CAST | On demand | Manually |
| SHA-1 (A3664) | KAT | CAST | On demand | Manually |
| SHA2-224 (A3648) | KAT | CAST | On demand | Manually |
| SHA2-224 (A3662) | KAT | CAST | On demand | Manually |
| SHA2-224 (A3663) | KAT | CAST | On demand | Manually |
| SHA2-224 (A3664) | KAT | CAST | On demand | Manually |
| SHA2-256 (A3648) | KAT | CAST | On demand | Manually |
| SHA2-256 (A3662) | KAT | CAST | On demand | Manually |
| SHA2-256 (A3663) | KAT | CAST | On demand | Manually |
| SHA2-256 (A3664) | KAT | CAST | On demand | Manually |
| SHA2-384 (A3648) | KAT | CAST | On demand | Manually |
| SHA2-384 (A3662) | KAT | CAST | On demand | Manually |
| SHA2-384 (A3663) | KAT | CAST | On demand | Manually |
| SHA2-384 (A3664) | KAT | CAST | On demand | Manually |
| SHA2-512 (A3648) | KAT | CAST | On demand | Manually |
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 the table above. Services are not available, and data output (via the data output interface) is inhibited during the conditional self-tests. If any of these tests fails, the module transitions to the Error State.
Table 24: Pre-Operational Periodic Information © 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Method | Test Type | Period | Periodic Method |
|---|---|---|---|---|
| SHA2-512 (A3662) | KAT | CAST | On demand | Manually |
| SHA2-512 (A3663) | KAT | CAST | On demand | Manually |
| SHA2-512 (A3664) | KAT | CAST | On demand | Manually |
| SHA3-224 (A3649) | KAT | CAST | On demand | Manually |
| SHA3-256 (A3649) | KAT | CAST | On demand | Manually |
| SHA3-384 (A3649) | KAT | CAST | On demand | Manually |
| SHA3-512 (A3649) | KAT | CAST | On demand | Manually |
| AES-ECB (A3648) | KAT | CAST | On demand | Manually |
| AES-ECB (A3652) | KAT | CAST | On demand | Manually |
| AES-ECB (A3653) | KAT | CAST | On demand | Manually |
| AES-ECB (A3654) | KAT | CAST | On demand | Manually |
| AES-ECB (A3655) | KAT | CAST | On demand | Manually |
| AES-ECB (A3656) | KAT | CAST | On demand | Manually |
| AES-ECB (A3658) | KAT | CAST | On demand | Manually |
| AES-ECB (A3659) | KAT | CAST | On demand | Manually |
| AES-ECB (A3657) | KAT | CAST | On demand | Manually |
| AES-CBC (A3648) | KAT | CAST | On demand | Manually |
| AES-CBC (A3654) | KAT | CAST | On demand | Manually |
| AES-CBC-CS3 (A3661) | KAT | CAST | On demand | Manually |
| AES-CFB128 (A3660) | KAT | CAST | On demand | Manually |
| AES-CTR (A3648) | KAT | CAST | On demand | Manually |
| AES-CTR (A3657) | KAT | CAST | On demand | Manually |
| AES-CCM (A3657) | KAT | CAST | On demand | Manually |
| AES-GCM (A3648) | KAT | CAST | On demand | Manually |
| AES-GCM (A3652) | KAT | CAST | On demand | Manually |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Method | Test Type | Period | Periodic Method |
|---|---|---|---|---|
| AES-GCM (A3653) | KAT | CAST | On demand | Manually |
| AES-GCM (A3654) | KAT | CAST | On demand | Manually |
| AES-GCM (A3655) | KAT | CAST | On demand | Manually |
| AES-GCM (A3656) | KAT | CAST | On demand | Manually |
| AES-GCM (A3657) | KAT | CAST | On demand | Manually |
| AES-GCM (A3658) | KAT | CAST | On demand | Manually |
| AES-GCM (A3659) | KAT | CAST | On demand | Manually |
| AES-XTS Testing Revision 2.0 (A3648) | KAT | CAST | On demand | Manually |
| AES-XTS Testing Revision 2.0 (A3657) | KAT | CAST | On demand | Manually |
| AES-CMAC (A3657) | KAT | CAST | On demand | Manually |
| HMAC-SHA-1 (A3648) | KAT | CAST | On demand | Manually |
| HMAC-SHA-1 (A3662) | KAT | CAST | On demand | Manually |
| HMAC-SHA-1 (A3663) | KAT | CAST | On demand | Manually |
| HMAC-SHA-1 (A3664) | KAT | CAST | On demand | Manually |
| HMAC-SHA2- 224 (A3648) | KAT | CAST | On demand | Manually |
| HMAC-SHA2- 224 (A3662) | KAT | CAST | On demand | Manually |
| HMAC-SHA2- 224 (A3663) | KAT | CAST | On demand | Manually |
| HMAC-SHA2- 224 (A3664) | KAT | CAST | On demand | Manually |
| HMAC-SHA2- 256 (A3648) | KAT | CAST | On demand | Manually |
| HMAC-SHA2- 256 (A3662) | KAT | CAST | On demand | Manually |
| HMAC-SHA2- 256 (A3663) | KAT | CAST | On demand | Manually |
| HMAC-SHA2- 256 (A3664) | KAT | CAST | On demand | Manually |
| HMAC-SHA2- 384 (A3648) | KAT | CAST | On demand | Manually |
| HMAC-SHA2- 384 (A3662) | KAT | CAST | On demand | Manually |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Method | Test Type | Period | Periodic Method |
|---|---|---|---|---|
| HMAC-SHA2- 384 (A3663) | KAT | CAST | On demand | Manually |
| HMAC-SHA2- 384 (A3664) | KAT | CAST | On demand | Manually |
| HMAC-SHA2- 512 (A3648) | KAT | CAST | On demand | Manually |
| HMAC-SHA2- 512 (A3662) | KAT | CAST | On demand | Manually |
| HMAC-SHA2- 512 (A3663) | KAT | CAST | On demand | Manually |
| HMAC-SHA2- 512 (A3664) | KAT | CAST | On demand | Manually |
| HMAC-SHA3- 224 (A3649) | KAT | CAST | On demand | Manually |
| HMAC-SHA3- 256 (A3649) | KAT | CAST | On demand | Manually |
| HMAC-SHA3- 384 (A3649) | KAT | CAST | On demand | Manually |
| HMAC-SHA3- 512 (A3649) | KAT | CAST | On demand | Manually |
| Counter DRBG (A3648) | KAT | CAST | On demand | Manually |
| Counter DRBG (A3652) | KAT | CAST | On demand | Manually |
| Counter DRBG (A3653) | KAT | CAST | On demand | Manually |
| Counter DRBG (A3654) | KAT | CAST | On demand | Manually |
| Counter DRBG (A3655) | KAT | CAST | On demand | Manually |
| Counter DRBG (A3656) | KAT | CAST | On demand | Manually |
| Counter DRBG (A3657) | KAT | CAST | On demand | Manually |
| Counter DRBG (A3658) | KAT | CAST | On demand | Manually |
| Counter DRBG (A3659) | KAT | CAST | On demand | Manually |
| Hash DRBG (A3648) | KAT | CAST | On demand | Manually |
| Hash DRBG (A3652) | KAT | CAST | On demand | Manually |
| Hash DRBG (A3653) | KAT | CAST | On demand | Manually |
| Hash DRBG (A3654) | KAT | CAST | On demand | Manually |
| Hash DRBG (A3655) | KAT | CAST | On demand | Manually |
| Hash DRBG (A3656) | KAT | CAST | On demand | Manually |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Method | Test Type | Period | Periodic Method |
|---|---|---|---|---|
| Hash DRBG (A3657) | KAT | CAST | On demand | Manually |
| Hash DRBG (A3658) | KAT | CAST | On demand | Manually |
| Hash DRBG (A3659) | KAT | CAST | On demand | Manually |
| Hash DRBG (A3662) | KAT | CAST | On demand | Manually |
| Hash DRBG (A3663) | KAT | CAST | On demand | Manually |
| Hash DRBG (A3664) | KAT | CAST | On demand | Manually |
| HMAC DRBG (A3648) | KAT | CAST | On demand | Manually |
| HMAC DRBG (A3652) | KAT | CAST | On demand | Manually |
| HMAC DRBG (A3653) | KAT | CAST | On demand | Manually |
| HMAC DRBG (A3654) | KAT | CAST | On demand | Manually |
| HMAC DRBG (A3655) | KAT | CAST | On demand | Manually |
| HMAC DRBG (A3656) | KAT | CAST | On demand | Manually |
| HMAC DRBG (A3657) | KAT | CAST | On demand | Manually |
| HMAC DRBG (A3658) | KAT | CAST | On demand | Manually |
| HMAC DRBG (A3659) | KAT | CAST | On demand | Manually |
| HMAC DRBG (A3662) | KAT | CAST | On demand | Manually |
| HMAC DRBG (A3663) | KAT | CAST | On demand | Manually |
| HMAC DRBG (A3664) | KAT | CAST | On demand | Manually |
| RSA SigVer (FIPS186-4) (A3648) | KAT | CAST | On demand | Manually |
| RSA SigVer (FIPS186-4) (A3662) | KAT | CAST | On demand | Manually |
| RSA SigVer (FIPS186-4) (A3663) | KAT | CAST | On demand | Manually |
| RSA SigVer (FIPS186-4) (A3664) | KAT | CAST | On demand | Manually |
| Entropy Source | RCT | CAST | On demand | Manually |
| Entropy Source | APT | CAST | On demand | Manually |
© 2024 Red Hat, Inc./ atsec information security corporation.
| Algorithm or Test | Test Method | Test Type | Period | Periodic Method |
|---|---|---|---|---|
| Entropy Source | RCT | CAST | On demand | Manually |
| Entropy Source | APT | CAST | On demand | Manually |
| Name | Description | Conditions | Recovery Method | Indicator | |
|---|---|---|---|---|---|
| Error State | The Linux kernel immediately stops executing | Any self-test failure | Restart of the module | Kernel Panic |
Table 25: Conditional Periodic Information
Table 26: 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).
All self-tests, with the exception of the continuous health tests, can be invoked on demand by unloading and subsequently re-initializing the module.
Not applicable. © 2024 Red Hat, Inc./ atsec information security corporation.
The module is distributed as a part of the Red Hat Enterprise Linux 8 (RHEL 8) package in the form of the kernel-4.18.0-372.52.1.el8_6, libkcapi-1.2.0-2.el8, and libkcapi-hmaccalc1.2.0-2.el8 RPM packages. The module can achieve the approved mode by:
After installation of the kernel-4.18.0-372.52.1.el8_6, libkcapi-1.2.0-2.el8, and libkcapihmaccalc-1.2.0-2.el8 RPM packages, the Crypto Officer must execute the “cat /proc/sys/crypto/fips_name” command. The Crypto Officer must ensure that the proper name is listed in the output as follows: Red Hat Enterprise Linux 8 - Kernel Cryptographic API Then, the Crypto Officer must execute the “cat /proc/sys/crypto/fips_version” and “rpm -q libkcapi” commands. These commands must output the following (one line per output): 4.18.0-372.52.1.el8_6.x86_64 libkcapi-1.2.0-2.el8.x86_64
There is no non-administrator guidance.
Not applicable for this module.
There are no maintenance requirements.
© 2024 Red Hat, Inc./ atsec information security corporation.
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 kernel-4.18.0-372.52.1.el8_6, libkcapi-1.2.0-2.el8, and libkcapi-hmaccalc-1.2.0-2.el8 RPM packages can be uninstalled from the RHEL 8 system.
Not applicable. © 2024 Red Hat, Inc./ atsec information security corporation.
The module does not offer mitigation of other attacks and therefore this section is not applicable.
Not applicable. © 2024 Red Hat, Inc./ atsec information security corporation.
Appendix A. Glossary and Abbreviations
| AES | Advanced Encryption Standard |
| 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 |
| DRBG | Deterministic Random Bit Generator |
| ECB | Electronic Code Book |
| FIPS | Federal Information Processing Standards |
| GCM | Galois Counter Mode |
| GMAC | Galois Counter Mode Message Authentication Code |
| HMAC | Keyed-Hash Message Authentication Code |
| IPsec | Internet Protocol Security |
| KAT | Known Answer Test |
| MAC | Message Authentication Code |
| NIST | National Institute of Science and Technology |
| PAA | Processor Algorithm Acceleration |
| PKCS | Public-Key Cryptography Standards |
| RSA | Rivest, Shamir, Addleman |
| SHA | Secure Hash Algorithm |
| SSP | Sensitive Security Parameter |
| XTS | XEX-based Tweaked-codebook mode with cipher text Stealing © 2024 Red Hat, Inc./ atsec information security corporation. |
| 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-5 | Digital Signature Standard (DSS) February 2023 https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-5.pdf |
| FIPS 186-4 | Digital Signature Standard (DSS) July 2013 https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-4.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 |
| 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-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 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 © 2024 Red Hat, Inc./ atsec information security corporation. |
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-90Ar1 Recommendation for Random Number Generation Using Deterministic Random Bit Generators June 2015 https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-90Ar1.pdf © 2024 Red Hat, Inc./ atsec information security corporation.