| 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 | F5, Inc. |
| Algorithm | ACVP Cert |
|---|---|
| AES-CBC | A2711 |
| AES-CBC | A2762 |
| AES-CTR | A2762 |
| AES-ECB | A2711 |
| AES-ECB | A2762 |
| AES-GCM | A2711 |
| AES-GCM | A2762 |
| AES-GCM | A2762 |
| AES-GMAC | A2711 |
| AES-GMAC | A2762 |
| Counter DRBG | A2711 |
| Counter DRBG | A2762 |
| ECDSA KeyGen (FIPS186-4) | A2762 |
| ECDSA KeyVer (FIPS186-4) | A2762 |
| ECDSA SigGen (FIPS186-4) | A2762 |
| ECDSA SigVer (FIPS186-4) | A2762 |
| HMAC-SHA-1 | A2711 |
| HMAC-SHA-1 | A2762 |
| HMAC-SHA2-256 | A2762 |
| HMAC-SHA2-384 | A2762 |
| KAS-ECC-SSC Sp800-56Ar3 | A2762 |
| KAS-FFC-SSC Sp800-56Ar3 | A2762 |
| RSA KeyGen (FIPS186-4) | A2762 |
| RSA SigGen (FIPS186-4) | A2762 |
| RSA SigVer (FIPS186-4) | A2762 |
| Safe Primes Key Generation | A2762 |
| Safe Primes Key Verification | A2762 |
| SHA-1 | A2711 |
| SHA-1 | A2762 |
| SHA2-256 | A2762 |
| SHA2-384 | A2762 |
flowchart LR
%% Deterministic review-risk graph for Cryptographic Module for BIG-IP ®
%% 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>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/>HTTPS<br/>library named: openssl</i>"]
C6["[low] Operating system / runtime<br/>referenced (boundary<br/>membership not asserted)<br/><i>operating system<br/>linux<br/>application</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 Cryptographic Module for BIG-IP ®
%% 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>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/>HTTPS<br/>library named: openssl</i><br/>src: text:keyword"]
C6["[low] Operating system / runtime referenced (boundary membership not asserted)<br/><i>operating system<br/>linux<br/>application</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;F5, Inc. Cryptographic Module for BIG-IP(R) version 1.0.2u-fips document version 1.1 Last update: June 2024 Prepared by: atsec information security corporation
4516 Seton Center Pkwy, Suite 250
Austin, TX 78759 www.atsec.com
| # | Section | Page |
|---|
F5® and BIG-IP® are registered trademarks of F5, Inc. VMware ESXi™ is a registered trademark of VMware ®, Inc. Intel® Xeon® is a registered trademark of Intel® Corporation. Dell is a registered trademark of Dell, Inc. Azure and Hyper-V are registered trademarks of Microsoft AWS is a trademark of Amazon.com, Inc. © 2024 F5, Inc. / atsec information security.
3 of 41
| ISO/IEC 24759 Section 6. [Number Below] | 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 | Not Applicable |
This document is the non-proprietary FIPS 140-3 Security Policy for version 1.0.2u-fips of the Cryptographic Module for BIG-IP. 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 Table 1 - Security Levels © 2024 F5, Inc. / atsec information security.
4 of 41
| # | Operating System | Hardware Platform | Processor | PAA/ Acceleration |
|---|---|---|---|---|
| 1 | BIG-IP 16.1.3.1 on VMware ESXi™ 6.5 hypervisor | Dell PowerEdge M620 | Intel® Xeon® E5- 2670 Sandy Bridge | AES-NI and SHA extensions |
| 2 | BIG-IP 16.1.3.1 on Hyper-V 10.0.20348.1 on Windows Server 2022 | Dell PowerEdge R450 | Intel® Xeon Silver 4309Y | AES-NI and SHA extensions |
| 3 | BIG-IP 16.1.3.1 on KVM on Ubuntu 20.04.2 LTS (Focal Fossa) | Dell PowerEdge M630 | Intel® Xeon® E5- 2690 v4 Broadwell | AES-NI and SHA extensions |
| # | Operating System | Hardware Platform |
|---|---|---|
| 1 | BIG-IP 16.1.3.1 running on Microsoft Corporation Hyper-V Virtual Machine | Azure -cli 2.48.1 on Intel Xeon Platinum 8272CL processor |
| 2 | BIG-IP 16.1.3.1 running on Xen 4.2.amazon | AWS CLI 2.11.19 on Intel Xeon Scalable Processor – Cascade Lake 8259CL |
The Cryptographic Module for BIG-IP (hereafter referred to as “the module”) is a software library implementing general purpose cryptographic algorithms. The module is a multiple-chip standalone cryptographic module. The software module provides cryptographic services to applications through an Application Program Interface (API). The module also interacts with the underlying operating system via system calls.
The module has been tested on the following platforms with the corresponding module variants and configuration options with and without PAA: Table 2 - Tested Operational Environments In addition to the configurations tested by the atsec CST laboratory, vendor-affirmed testing was performed on the following platforms for the module by F5, Inc. Table 3 - 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 keys when so ported if the specific operational environment is not listed on the validation certificate. © 2024 F5, Inc. / atsec information security.
5 of 41
| CAVP Cert1 Assembler implementation | Algorithm and Standard | Mode / Method | Description / Key Size(s) / Key Strengths (bits) | Use / Function |
|---|---|---|---|---|
| A2762 | AES [FIPS 197, | ECB, CBC, CTR, GCM | 128 / 192 / 256-bit AES | Encryption and |
| SP800-38A, | key / strength from 128 to | decryption | ||
| SP800 38C, SP800 38D] | 256 bits | |||
| A2762 | AES [FIPS 197, | GMAC | 128 / 192 / 256-bit AES | MAC generation/ |
| SP800 38D] | key / strength from 128 to 256 bits | verification | ||
| A2762 | KTS (AES) FIPS | GCM | 128 / 256-bit AES key / | Key wrapping |
| 197, SP800-38F] | strength from 128 and 256 bits | |||
| A2762 | Counter DRBG | AES-256 in CTR | DRBG seed, DRBG internal | Random number |
| [SP800- | mode, with/ without | state (V and Key values) / | generation | |
| 90ARev1] | derivation function, prediction resistance enabled and disabled | strength is 256 bits | ||
| Vendor | CKG [SP800- | RSA KeyGen | 2048/ 3072/ 4096-bit | Key pair generation |
| Affirmed | 133Rev2] | modulus / strength from 112 to 150 bits |
The module supports two modes of operation:
The table below lists all security functions of the module, including specific key size(s) employed for approved or vendor-affirmed security functions, and implemented modes of operation.
1 There are algorithms, modes, and key/moduli sizes that have been CAVP-tested but are not used by any approved service
of the module. Only the algorithms, modes/methods, and key lengths/curves/moduli shown in this table are used by an approved service of the module. © 2024 F5, Inc. / atsec information security.
6 of 41
| CAVP Cert1 | Algorithm and Standard | Mode / Method ECDSA KeyGen Safe Primes Key Generation | Description / Key Size(s) / Key Strengths (bits) P-256, P- 384 / strength 128 and 192 bits ffdhe2048, ffdhe3072, ffdhe4096 / strength from 112 to 150 bits | Use / Function |
|---|---|---|---|---|
| A2762 | RSA KeyGen | B.3.3 Probable | 2048/ 3072/ 4096-bit | RSA key pair |
| [FIPS 186-4] | primes with | modulus size / strength | generation | |
| standard key format | from 112 to 150 bits | |||
| A2762 | RSA SigGen | PKCS 1.5 with SHA- | 2048/ 3072/ 4096-bit | RSA signature |
| [FIPS 186-4] | 256, SHA-384 | modulus/ strength from 112 to 150 bits | generation | |
| A2762 | RSA SigVer | PKCS 1.5 with SHA- | 2048/ 3072/ 4096-bit | RSA signature |
| [FIPS 186-4] | 1, SHA2-256, SHA2- | modulus / strength from | verification | |
| 384 | 112 to 150 bits | |||
| A2762 | ECDSA KeyGen | Appendix B.4.2: | ECDSA/ ECDH key pair P- | ECDSA/ ECDH key |
| [FIPS 186-4] | Testing Candidates | 256 and P-384 curves / strength 128 and 192 bits | pair generation | |
| A2762 | ECDSA KeyVer | N/A | ECDSA/ ECDH key pair | ECDSA/ ECDH public |
| [FIPS 186-4] | with P-256 and P-384 curves / strength 128 and 192 bits | key verification | ||
| A2762 | ECDSA SigGen | SHA2-256, SHA2- | ECDSA P-256, P- 384 | ECDSA signature |
| [FIPS 186-4] | 384 | curves / strength 128 and 192 bits | generation | |
| A2762 | ECDSA SigVer | SHA2-256, SHA2- | ECDSA P-256, P- 384 | ECDSA signature |
| [FIPS 186-4] | 384 | curves / strength 128 and 192 bits | verification | |
| A2762 | SHA [FIPS180-4] | SHA-1, SHA2-256, SHA2-384 | N/A | Message digest |
| A2762 | HMAC [FIPS 198] | HMAC-SHA-1, HMAC- | 128-1024-bit HMAC key / | MAC generation/ |
| SHA2-256, HMAC- | strength from 112 to 256 | verification | ||
| SHA2-384 | bits | |||
| A2762 | KAS-ECC-SSC | Ephemeral Unified: | P-256, P-384 / strength | EC Diffie-Hellman |
| [SP800- | KAS Role: initiator, | 128 and 192 bits | shared secret | |
| 56ARev3] | responder | computation IG D.F scenario 2, path 1 |
© 2024 F5, Inc. / atsec information security.
7 of 41
| CAVP Cert1 | Algorithm and Standard | Mode / Method | Description / Key Size(s) / Key Strengths (bits) | Use / Function |
|---|---|---|---|---|
| A2762 | Safe Primes key | Safe prime | Safe Prime Groups: | Safe primes key |
| Generation / | ffdhe2048, ffdhe3072, | generation | ||
| Verification | ffdhe4096 / strength from 112 to 150 bits | |||
| A2762 | KAS-FCC-SSC | dhEphemeral: | ffdhe2048, ffdhe3072, | Diffie-Hellman shared |
| [SP800- | KAS Role: initiator, | ffdhe4096 / strength from | secret computation | |
| AESNI-SSSE3 Implementation | 56ARev3] | responder | 112 to 150 bits | IG D.F scenario 2, path 1 |
| A2711 | AES [FIPS 197, | ECB, CBC | 128 / 192/ 256-bit AES key | Encryption and |
| SP800-38A, | / strength from 128 to 256 | decryption | ||
| SP800 38D] | bits | |||
| A2711 | AES [FIPS 197, | GMAC | 128 / 192/ 256-bit AES key | MAC generation/ |
| SP800 38D] | / strength from 128 to 256 bits | verification | ||
| A2711 | AES [SP800-38F] | GCM | 128 / 256-bit AES key / strength 128 and 256 bits | Key wrapping |
| A2711 | Counter DRBG | AES 256 in CTR | Entropy input string, seed, | Random number |
| [SP800- | mode, with | V and Key values / | generation | |
| 90ARev1] | derivation function, prediction resistance enabled | strength is 256 bits | ||
| A2711 | SHA [FIPS180-4] | SHA-1 | N/A | Message digest |
| A2711 | HMAC [FIPS 198] | HMAC-SHA-1 | 128-1024-bit HMAC key / | MAC generation/ |
| strength from 112 to 256 bits | verification |
Algorithm/Functions
Use/Function
Table 4 - Approved Algorithms The module does not implement any non-Approved but Allowed algorithm in Approved mode of operation with no security claimed. The module does not implement any Non-Approved Algorithms Allowed in the Approved Mode of Operation. The table below lists Non-Approved security functions that are not Allowed in the Approved Mode of Operation. © 2024 F5, Inc. / atsec information security.
8 of 41
| AES with OFB, CCM, CFB, XTS, KW modes, Blowfish, Camellia, CAST5, DES, IDEA, RC2, RC4, SEED, SM2, SM4, Triple-DES | Encryption and decryption |
|---|---|
| SHA2-224, SHA2-512, SM3, MD4, MD5, MDC2, RIPEMD, Whirlpool | Message digest |
| HMAC-SHA2-224, HMAC-SHA2- 512, AES CMAC, Triple-DES CMAC | MAC generation/ verification |
| RSA KeyGen with 1024 and greater than 4096 up to 16384 modulus | RSA key pair generation |
| RSA SigGen with PKCS #1 v1.5 scheme with modulus size 2048, 3072, 4096 bits with SHA-1, SHA2-224, SHA2-512 RSA SigGen with PKCS #1 v1.5 scheme with keys other than the ones listed in Table 4 RSA SigGen with PSS, X9.31 schemes | RSA signature generation |
| RSA SigVer with PKCS #1 v1.5 scheme with modulus size 2048, 3072, 4096 bits with SHA2-224, SHA2-512 RSA SigVer with PKCS #1 v1.5 scheme with keys other than the ones listed in Table 4 RSA SigVer with PSS, X9.31 schemes | RSA signature verification |
| ECDSA KeyGen with P-224, P- 521 curves | ECDSA key pair generation |
| ECDSA KeyVer with P-224, P- 521 curves | ECDSA public key verification |
| ECDSA SigGen with P-256, P- 384 curves and SHA-1, SHA2- 224, SHA2-512 | ECDSA signature generation |
| ECDSA SigVer with P-256, P- 384 curves with SHA2-224, SHA2-512 | ECDSA signature verification |
| ECDSA with SM2 | ECDSA signature generation ECDSA signature verification |
| RSA with modulus sizes up to 16384 bits | RSA encryption and decryption |
© 2024 F5, Inc. / atsec information security.
9 of 41
| DSA | Domain parameter generation Domain parameter verification DSA key pair generation DSA signature generation DSA signature verification |
|---|---|
| HMAC_DRBG and Hash_DRBG for all SHA sizes, CTR_DRBG with AES-128, AES-192, ANSI X9.31 RNG | Random number generation |
| Diffie-Hellman key agreement with groups other than ffdhe2048, ffdhe3072, ffdhe4096 | Diffie-Hellman shared secret computation |
| EC Diffie-Hellman Ephemeral without KDF Unified with curves other than P-256, P-384 EC Diffie-Hellman without KDF one PassDh and StaticUnified | EC Diffie-Hellman shared secret computation |
Table 5 - Non-Approved Algorithms Not Allowed in the Approved Mode of Operation
The software block diagram below shows the module, its interfaces with the operational environment and the delimitation of its cryptographic boundary with red lines. Figure 1
10 of 41
11 of 41
| Physical Port | Logical Interface2 | Data that passes over 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 input parameters for data |
| Data Output | API output parameters for data | |
| Control Input | API function calls for control | |
| Status Output | API return codes, error messages |
The logical interfaces are the API through which the applications request services. The following table summarizes the logical interfaces: Table 6 - Ports and Interfaces Cryptographic bypass capability is not supported by the module. The module does not implement © 2024 F5, Inc. / atsec information security.
12 of 41
| Role | Service | Input | Output | |
|---|---|---|---|---|
| Crypto Officer | Encryption and decryption | Plaintext, key / ciphertext, key | Ciphertext / plaintext | |
| Key wrapping | Wrapping key, key to be wrapped / Unwrapping key, key and key to be unwrapped | Wrapped key / unwrapped key | ||
| Random number generation | Number of bits | Random numbers | ||
| RSA key pair generation | Key size | Public key, private key | ||
| RSA signature generation | Private key, message, hashing algorithm | Computed signature | ||
| RSA signature verification | Public key, digital signature, message, hashing algorithm | Pass/fail result of digital signature verification | ||
| ECDSA/ ECDH key pair generation | Elliptic curve | Private key, public key | ||
| ECDSA/ ECDH public key verification | Public key | Pass/fail result of public key verification | ||
| ECDSA signature generation | Private key, message, hashing algorithm | Computed signature | ||
| ECDSA signature verification | Public key, digital signature, message, hashing algorithm | Pass/fail result of digital signature verification | ||
| EC Diffie-Hellman shared secret computation | Received public key, possessed private key | Shared secret | ||
| Safe primes key generation | Group | Private key, public key | ||
| Diffie-Hellman shared secret computation | Received public key, possessed private key | Shared secret | ||
| Message digest | Message, hashing algorithm | Hashed message | ||
| MAC generation | Message, key, MAC algorithm, MAC length | MAC tag | ||
| MAC verification | MAC tag, key, MAC algorithm | Pass/fail result of MAC verification |
The module supports the Crypto Officer role only. No support is provided for multiple concurrent operators or a Maintenance Operator.
Table below describes the authorized role(s) in which the service can be performed with specification of the service input parameters and associated service output parameters. © 2024 F5, Inc. / atsec information security.
13 of 41
| Show version | N/A | Name and version information |
|---|---|---|
| Show status | N/A | Status output |
| Self-tests | Power | Pass/fail results of self-tests |
| Zeroization | Unencrypted SSPs listed in Table 10 | Zeroized memory |
| RSA encryption and decryption | Message, key | Ciphertext / plaintext |
| Domain parameter generation | L and N pair | Domain parameters |
| Domain parameter verification | Domain parameters | Pass/fail result of verification |
| DSA key pair generation | Domain parameters | Public key, private key |
| DSA signature generation | Private key, message, hashing algorithm | Computed signature |
| DSA signature verification | Public key, digital signature, message, hashing algorithm | Pass/fail result of digital signature verification |
| Service | Description | Approved Security Functions | Keys and/or SSPs | Roles | Access rights to Keys and/or SSPs | Indicator |
|---|---|---|---|---|---|---|
| Encryption and decryption | Executes AES- mode encrypt or decrypt operation | AES-ECB, AES-CBC, AES-CTR | AES key (128 / 192 / 256 bits) | Crypto Officer | W, E | AES-ECB, AES-CBC, AES-CTR |
FIPS 140-3 does not require an authentication mechanism for level 1 modules. Therefore, the module does not implement an authentication mechanism for Crypto Officer. The Crypto Officer role is authorized to access all services provided by the module (see Table - Approved Services and Table - Non-Approved Services below).
The table below lists all approved services that can be used in the approved mode of operation. The status output from the FIPS_set_indicator_status service indicator's call is provided in Indicator column in Table 8. To read this indicator, the calling application must register a callback function using `FIPS_register_indicator_callback'. The callback function shall take the input of the form "char *" which is the form of the indicator being output by the module. © 2024 F5, Inc. / atsec information security.
14 of 41
| Service | Description | Approved Security Functions | Keys and/or SSPs | Roles | Access rights to Keys and/or SSPs | Indicator |
|---|---|---|---|---|---|---|
| Key wrapping | Executes AES- GCM key wrapping or unwrapping operation, per IG D.G | AES-GCM | AES key (128 / 256 bits) | Crypto Officer | W, E | AES-GCM |
| Random number generation | Generate random number | Counter DRBG | Entropy input string | Crypto Officer | W, E | CTR-DRBG- AES-256 |
| DRBG seed | G, E | |||||
| DRBG internal state (V and Key values) | G, E | |||||
| RSA key pair generation | Generate RSA Key Pair | RSA KeyGen (FIPS 186-4) CKG [SP800- 133Rev2], Counter DRBG | RSA private key, RSA public key ( 2048/ 3072/ 4096 bits) | Crypto Officer | G, R | RSA-KEY- GEN-2048, RSA-KEY- GEN-3072 RSA-KEY- GEN- 4096 |
| RSA signature generation | Sign a message with a specified RSA private key | RSA SigGen (FIPS 186-4) | RSA private key (2048 / 3072 / 4096 bits) | Crypto Officer | E, W | RSA-SIG |
| RSA signature verification | Verify the signature of a message with a specified RSA public key | RSA SigVer (FIPS 186-4) | RSA public key (2048/ 3072 / 4096 bits) | Crypto Officer | E, W | RSA-VER |
| ECDSA/ ECDH key pair generation | Generate a keypair for a requested elliptic curve | ECDSA KeyGen (FIPS 186-4) CKG [SP800-133Rev2], Counter DRBG | ECDSA private key, ECDSA public key, EC Diffie-Hellman private key, EC Diffie-Hellman public key (P-256 and P-384 curves) | Crypto Officer | G, R | EC-KEYGEN- P-256, EC- KEYGEN-P- 384 |
| ECDSA/ ECDH public key verification | Public key verification | ECDSA KeyVer (FIPS 186-4) | ECDSA public key, EC Diffie-Hellman public key (P-256 and P-384 curves) | Crypto Officer | E, W | EC-KEY- VERIFY-P- 256, EC- KEY-VERIFY- P-384 |
| ECDSA signature generation | Sign a message with a specified ECDSA private key | ECDSA SigGen (FIPS 186-4) | ECDSA private key (P-256 and P-384 curves) | Crypto Officer | W, E | ECDSA- SIGN-P-256, ECDSA- SIGN-P-384 |
D.G © 2024 F5, Inc. / atsec information security.
15 of 41
| Service | Description | Approved Security Functions | Keys and/or SSPs | Roles | Access rights to Keys and/or SSPs | Indicator |
|---|---|---|---|---|---|---|
| ECDSA signature verification | Verify the signature of a message with a specified ECDSA public key | ECDSA SigVer (FIPS 186-4) | ECDSA public key (P-256 and P-384 curves) | Crypto Officer | W, E | ECDSA- VERIFY-P- 256, ECDSA- VERIFY-P- 384 |
| EC Diffie- Hellman shared secret computatio n IG D.F scenario 2, path 1 | Calculate a shared secret via the ECDH algorithm | KAS-ECC-SSC Sp800-56Ar3 | EC Diffie-Hellman private key (P-256 and P-384 curves) | Crypto Officer | W, E | ECDH- COMPUTE- KEY-P-256, ECDH- COMPUTE- KEY-P-384 |
| EC Diffie-Hellman shared secret | G, R | |||||
| EC Diffie-Hellman public key (remote peer public key) (P-256 and P-384 curves) | W, E | |||||
| Safe primes key generation | Generate a keypair / verify public key | Safe Primes Key Generation, Safe Primes Key Verification | Diffie-Hellman private key (ffdhe2048, ffdhe3072, ffdhe4096) | Crypto Officer | G, R | FFDHE2048 -KEYGEN, FFDHE3072 -KEYGEN, FFDHE4096 -KEYGEN |
| Diffie-Hellman public key (ffdhe2048, ffdhe3072, ffdhe4096) | G, R, W, E | |||||
| Diffie- Hellman shared secret computatio n IG D.F scenario 2, path 1 | Calculate a shared secret via the DH algorithm. | KAS-FFC-SSC Sp800-56Ar3 | Diffie-Hellman private key (ffdhe2048, ffdhe3072, ffdhe4096) | Crypto Officer | W, E | FFDHE2048 -COMPUTE, FFDHE3072 - COMPUTE, FFDHE4096 - COMPUTE |
| Diffie-Hellman shared secret | G, R | |||||
| Diffie-Hellman public key (remote peer public key) (ffdhe2048, ffdhe3072, ffdhe4096) | W, E |
© 2024 F5, Inc. / atsec information security.
16 of 41
| Service | Description | Approved Security Functions | Keys and/or SSPs | Roles | Access rights to Keys and/or SSPs | Indicator |
|---|---|---|---|---|---|---|
| Message digest | Generate a digest for the requested algorithm | SHA-1, SHA2-256, SHA2-384 | N/A | Crypto Officer | N/A | MESSAGE- DIGEST- SHA-1/ SHA- 256/SHA- 384 |
| MAC generation/ verification | Generate/ Verify an HMAC or GMAC digest using the requested SHA algorithm or AES algorithm as appropriate | HMAC-SHA-1, HMAC-SHA2-256, HMAC-SHA2-384, AES-GMAC | HMAC key, AES key | Crypto Officer | W, E | MSG-AUTH- HMAC-SHA- 1, MSG-AUTH- HMAC-SHA- 256 MSG-AUTH- HMAC-SHA- 384 AES-GMAC |
| Show version | Return the SW version and the module's name | N/A | N/A | Crypto Officer | N/A | None |
| Show status | Return the module status | N/A | N/A | Crypto Officer | N/A | None |
| Self-tests | Execute self- tests | AES-ECB, AES-GCM, HMAC-SHA1, HMAC- SHA2-256, HMAC- SHA2-384, RSA (SigGen (FIPS 186-4), RSA SigVer (FIPS 186-4), KAS-ECC-SSC Sp800-56Ar3, KAS- FFC-SSC Sp800- 56Ar3, ECDSA SigGen (FIPS 186-4) / ECDSA SigVer (FIPS 186-4), Counter DRBG | N/A (key for self- tests are not SSPs) | Crypto Officer | N/A | None |
| Zeroization | Zeroize all non- protected SSPs | n/a | All SSPs | Crypto Officer | Z | None |
Table 8 - Approved Services G = Generate: The module generates or derives the SSP. R = Read: The SSP is read from the module (e.g. the SSP is output). © 2024 F5, Inc. / atsec information security.
17 of 41
| Service | Description | Algorithms Accessed | Role | Indic ator |
|---|---|---|---|---|
| Encryption and decryption | Encryption/ decryption | AES with OFB, CFB, CCM, XTS, KW modes Triple-DES Blowfish, Camellia, CAST5, DES, IDEA, RC2, RC4, SEED, SM2, SM4 | Crypto Officer | None |
| Message digest | Generating message digest | SHA2-224, SHA2-512, SM3, MD4, MD5, MDC2, RIPEMD, Whirlpool | None | |
| MAC generation/ verification | MAC computation | HMAC-SHA2-224, HMAC-SHA2-512 AES CMAC, Triple-DES CMAC | None | |
| RSA key pair generation | Generating key pair | RSA KeyGen with 1024, greater than 4096 and up to 16384 modulus | None | |
| RSA signature generation | Generating signature | RSA SigGen with PKCS #1 v1.5 with keys other than the one listed in Table 4 RSA SigGen with PSS, X9.31 schemes RSA SigGen PKCS #1 v1.5 scheme with modulus size 2048, 3072, 4096 bits with SHA-1, SHA2-224, SHA2-512 | None | |
| RSA signature verification | Verifying signature | RSA SigVer with PKCS #1 v1.5 with keys other than the one listed in Table 4 RSA SigVer with PKCS #1 v1.5 scheme with modulus size 2048, 3072, 4096 bits with SHA2-224, SHA2-512 RSA SigVer with PSS, X9.31 schemes | ||
| ECDSA key pair generation | Generating key pair | ECDSA KeyGen using P-224, P-521 curves | None | |
| ECDSA public key verification | Verifying public key | ECDSA KeyVer using P-224, P-521 curves | ||
| ECDSA signature generation | Generating signature | ECDSA SigGen with P-256 and P-384 curves with SHA-1, SHA2-224 and SHA2- 512; ECDSA with SM2 | None | |
| ECDSA signature verification | Verifying signature | ECDSA SigVer with P-256 and P-384 curves with SHA2-224 and SHA2-512; ECDSA with SM2 |
W = Write: The SSP is updated, imported, or written to the module. E = Execute: The module uses the SSP in performing a cryptographic operation. Z = Zeroise: The module zeroises the SSP. The table below lists all non-Approved services that can only be used in the non-Approved mode of operation. © 2024 F5, Inc. / atsec information security.
18 of 41
Service RSA encryption and decryption Domain parameter generation Domain parameter verification DSA key pair generation DSA signature generation DSA signature verification Random number generation Diffie-Hellman shared secret computation EC Diffie-Hellman shared secret computation
Description Encryption/ decryption Generating domain parameters Verifying domain parameters Generating key pair Generating signature Verifying signature Generating deterministic random number Calculating shared secret
Algorithms Accessed RSA with modulus sizes up to 16384 bits DSA HMAC_DRBG and Hash_DRBG for all SHA sizes CTR_DRBG with AES-128 or AES-192 ANSI X9.31 RNG Diffie-Hellman key agreement with groups other than ffdhe2048, ffdhe3072, ffdhe4096 EC Diffie-Hellman Ephemeral without KDF Unified with curves other than P-256, P- 384 EC Diffie-Hellman without KDF one PassDh and StaticUnified
Role
Indic ator None None None None None None
Table 9 - Non-Approved Services © 2024 F5, Inc. / atsec information security.
19 of 41
The integrity of the module is verified by comparing a HMAC value calculated at run time on the libcrypto.so.1.0.2u file, with the HMAC-SHA2-256 value stored in the module file .libcrypto.so.1.0.2u.hmac that was computed at build time. Integrity tests are performed as part of the Pre-Operational Self-Tests.
The on-demand integrity test is performed as part of the Pre-Operational Self-Tests by powercycling the module. © 2024 F5, Inc. / atsec information security.
20 of 41
The module operates in a modifiable operational environment. The module runs on a BIG-IP
16.1.3.1 operating system executing on the hardware and hypervisor specified in section 2.2. BIG-
IP consists of a Linux based operating system customized for performance that runs directly on the hardware or in virtual environment.
The module should be installed as stated in section 11. The operator should confirm that the module is installed correctly by sub-section 11.2. © 2024 F5, Inc. / atsec information security.
21 of 41
The module is comprised of software only and therefore this section is Not Applicable (N/A). © 2024 F5, Inc. / atsec information security.
22 of 41
Currently the non-invasive Security is not required by FIPS 140-3 (see NIST SP 800-140F). © 2024 F5, Inc. / atsec information security.
23 of 41
| Key/ SSP Name/ Type | Strength | S ecurity Function and Cert. Number | Generation | Import /Export | Establis hment | Storage | Zeroizati on | Use and related keys |
|---|---|---|---|---|---|---|---|---|
| AES key / CSP/ symmetr ic | 128 to 256 bits | ECB, CBC, CTR: A2762 ECB, CBC: A2711 | N/A | Input as an API paramete r No export | N/A | RAM | EVP_CIPH ER_CTX_c leanup | Use: Encryption and decryption; Related keys: N/A |
| AES key / CSP/ symmetr ic | 128 to 256 bits | GMAC: A2762, A2711 | N/A | Input as an API paramete r No export | N/A | RAM | EVP_CIPH ER_CTX_c leanup | Use: MAC generation/ verification ; Related keys: N/A |
| AES key / CSP/ symmetr ic | 128 and 256 bits | AES- GCM: A2762, A2711 | N/A | Input as an API paramete r No export | N/A | RAM | FIPS_ciph er_ctx_cle anup() | Use: Key wrapping; Related keys: N/A |
| HMAC key / CSP/ symmetr ic | 112 to 256 bits | HMAC- SHA-1, HMAC- SHA- 256, HMAC- SHA- 384: A2762 HMAC- SHA-1: A2711 | N/A | Input as an API paramete r No export | N/A | RAM | HMAC_CT X_cleanu p() | Use: MAC generation/ verification ; Related keys: N/A |
| RSA private key / CSP/ asymme tric | 112 to 150 bits | RSA SigGen: A2762 | Generated conformant to section 5.1 of SP800- 133Rev2 (CKG) using [FPIS 186-4], Appendix B.3.3 key generation method and the random | Import/ Export: CM to/ from TOEPP Path. Passed to/ from the module via API paramete | N/A | RAM | FIPS_rsa_f ree() | Use: RSA key pair generation, digital signature generation; Related keys: RSA public key, DRBG internal state (V |
© 2024 F5, Inc. / atsec information security.
24 of 41
| Key/ SSP Name/ Type RSA public key / PSP/ asymme tric | Strength | S ecurity Function and Cert. Number RSA SigVer: A2762 | Generation value used in the key generation is obtained using [SP 800- 90ARev1] DRBG | Import /Export rs in plaintext format. | Establis hment | Storage | Zeroizati on | Use and related keys and Key values) Use: RSA key pair generation, digital signature verification ; Related keys: RSA private key, DRBG internal state (V and Key values) |
|---|---|---|---|---|---|---|---|---|
| ECDSA private key / CSP/ asymme tric | 128 and 192 bits | ECDSA SigGen: A2762 | Generated conformant to section 5.1 of SP800- 133Rev2 (CKG) using [FPIS 186-4], Appendix B.4.2 key generation method and the random value used in the key generation is obtained using [SP 800- 90ARev1] DRBG | Import/ Export: CM to/ from TOEPP Path. Passed to/ from the module via API paramete rs in plaintext format. | N/A | RAM | EC_KEY_fr ee() | Use: ECDSA/ ECDH key pair generation, digital signature generation; Related keys: ECDSA public key, DRBG internal state (V and Key values) |
| ECDSA public key / PSP/ asymme tric | ECDSA SigVer: A2762 | Use: ECDSA/ ECDH key pair generation, digital signature verification ; Related keys: |
; ; © 2024 F5, Inc. / atsec information security.
25 of 41
| Key/ SSP Name/ Type | Strength | S ecurity Function and Cert. Number | Generation | Import /Export | Establis hment | Storage | Zeroizati on | Use and related keys ECDSA private key, DRBG internal state (V and Key values) |
|---|---|---|---|---|---|---|---|---|
| EC Diffie- Hellman private key / CSP/ asymme tric | 128 and 192 bits | KAS- ECC-SSC Sp800- 56Ar3: A2762 | Generated conformant to section 5.2 of SP800- 133Rev2 (CKG) using [FIPS 186-4], Appendix B.4.2 key generation method and the random value used in the key generation is obtained using [SP800- 90ARev1] DRBG | Import/ Export: CM to/ from TOEPP Path. Passed to/ from the module via API paramete rs in plaintext format. | N/A | RAM | EC_KEY_fr ee() EC_POINT _free() | Use: EC Diffie- Hellman shared secret computatio n; Related keys: EC Diffie- Hellman public key, DRBG internal state (V and Key values), EC Diffie- Hellman shared secret |
| EC Diffie- Hellman public key / PSP/ asymme tric | Use: EC Diffie- Hellman shared secret computatio n; Related keys: EC Diffie- Hellman private key, DRBG internal state (V and Key values), EC Diffie- Hellman |
© 2024 F5, Inc. / atsec information security.
26 of 41
| Key/ SSP Name/ Type | Strength | S ecurity Function and Cert. Number | Generation | Import /Export | Establis hment | Storage | Zeroizati on | Use and related keys shared secret |
|---|---|---|---|---|---|---|---|---|
| EC Diffie- Hellman shared secret / CSP/ asymme tric | 128 and 192 bits | KAS- ECC-SSC Sp800- 56Ar3: A2762 | N/A | No import Export: CM to TOEPP Path. Passed from the module via API paramete rs in plaintext format. | Establish ed via SP800- 56ARev3 KAS- ECC-SSC | RAM | EC_KEY_fr ee() EC_POINT _free() | Use: EC Diffie- Hellman shared secret computatio n; Related keys: EC Diffie- Hellman private key, EC Diffie- Hellman public key |
| Diffie- Hellman private key / CSP/ asymme tric | 112 to 150 bits | KAS-FFC- SSC Sp800- 56Ar3: A2762 | Generated conformant to section 5.2 of SP800- 133Rev2 (CKG) using [SP800- 56Ar3], Section 5.6.1.1.4 key generation method and the random value used in the key generation is obtained using [SP800- 90ARev1] DRBG | Import/ Export: CM to/ from TOEPP Path. Passed to/ from the module via API paramete rs in plaintext format. | N/A | RAM | DH_free | Use: Diffie- Hellman shared secret computatio n; Related keys: Diffie- Hellman public key, DRBG internal state (V and Key values) |
| Diffie- Hellman public key / PSP/ asymme tric | Use: Diffie- Hellman shared secret computatio n; Related keys: Diffie- Hellman private |
© 2024 F5, Inc. / atsec information security.
27 of 41
| Key/ SSP Name/ Type | Strength | S ecurity Function and Cert. Number | Generation | Import /Export | Establis hment | Storage | Zeroizati on | Use and related keys key, DRBG internal state (V and Key values) |
|---|---|---|---|---|---|---|---|---|
| Diffie- Hellman shared secret / CSP/ asymme tric | 112 to 150 bits | KAS-FFC- SSC Sp800- 56Ar3: A2762 | N/A | No import Export: CM to TOEPP Path. Passed from the module via API paramete rs in plaintext format. | Establish ed via SP800- 56ARev3 KAS- FFC-SSC | RAM | DH_free | Use: Diffie- Hellman shared secret computatio n; Related keys: Diffie- Hellman private key, Diffie- Hellman public key |
| Entropy input string (IG D.L) /CSP | 256 bits | Counter DRBG: A2762, A2711, ESV: E16 | Generated by the entropy source (ESV Cert. #E16) (reference in section 11.2) | Import from the OS No Export | N/A | RAM | when the system is powered down | Use: Random number generation; Related keys: DRBG seed |
| DRBG seed (IG D.L), /CSP | 256 bits | Counter DRBG: A2762, A2711 | Derived from the entropy input string as defined by [SP 800-90ARev1] | No import: it remains within the cryptogra phic boundary. No Export | N/A | RAM | FIPS_drbg _uninstan tiate | Use: Random number generation; Related keys: Entropy input string, DRBG Internal state (V and Key values) |
| DRBG internal state (V and Key values) | 256 bits | Counter DRBG: A2762, A2711 | Derived from the seed as defined by [SP 800-90ARev1] | No import: it remains within the cryptogra | N/A | RAM | FIPS_drbg _uninstan tiate | Use: Random number generation; |
© 2024 F5, Inc. / atsec information security.
28 of 41
Key/ SSP Name/ Type (IG D.L) /CSP
Strength
S ecurity Function and Cert. Number
Generation
Import /Export phic boundary No Export
Establis hment
Storage
Zeroizati on
Use and related keys Related keys: DRBG seed (V and Key values), RSA private key, RSA public key, ECDSA private key, ECDSA public key, EC Diffie- Hellman private key, EC Diffie- Hellman public key, Diffie- Hellman private key, Diffie- Hellman public key
| Entropy Source | Minimum number of bits of entropy | Details | |
|---|---|---|---|
| ESV #E16 (non- physical noise source) | 256 | CPU Jitter 3.4.0 entropy source with SHA-3 as the vetted conditioning component is located within the physical perimeter of the module but outside the cryptographic boundary of the module. |
The module employs a Deterministic Random Bit Generator (DRBG) based on [SP800-90ARev1] for the generation of random value used in asymmetric keys, and for providing a RNG service to calling applications. The Approved DRBG provided by the module is the Counter DRBG with AES256. The module uses the Entropy source specified in Table 11 to seed the DRBG. The operator does not have the ability to modify the F5 entropy source (ES) configuration settings (see details in Public Use Document referenced in section 11.2. The F5 ES is tested in the OEs listed in Table 1. Table 11 - Non-Deterministic Random Number Generation Specification © 2024 F5, Inc. / atsec information security.
29 of 41
The module generates SSPs in accordance with FIPS 140-3 IG D.H. The cryptographic module performs Cryptographic Key Generation (CKG) for asymmetric keys as per section 4 [SP800133Rev2] (vendor affirmed), using DRBG compliant with [SP800-90ARev1]. A seed (i.e., the random value) used in asymmetric key generation is a direct output from [SP800-90ARev1] Counter DRBG. The following methods are implemented:
The module does not support manual SSP entry or intermediate key generation output. The module does not support entry and output of SSPs beyond the physical perimeter of the operational environment. The SSPs can be provided to the module in plaintext form via API parameters, to and from the calling application running on the same operational environment. This is allowed by [FIPS 140-3_IG] IG 9.5.A Table 1, according to the “CM Software to/from App via TOEPP Path” entry which refers to keys communicated within the physical perimeter of the GPC.
The module provides:
256 bits of strength. The TLS protocol has not been reviewed or tested by the CAVP or CMVP.
© 2024 F5, Inc. / atsec information security.
30 of 41
SSPs are provided to the module by the calling process and are destroyed when released by the appropriate API function calls. The module does not perform persistent storage of SSPs.
The memory occupied by SSPs and keys is allocated by regular memory allocation operating system calls. The application is responsible for calling the appropriate destruction functions provided in the module's API. The destruction functions (listed in Table 10) overwrite the memory occupied by keys with “zeros” and deallocate the memory with the regular memory deallocation operating system call. © 2024 F5, Inc. / atsec information security.
31 of 41
| Algorithm | Test |
|---|---|
| Counter DRBG | KAT with AES 256 bits with derivation function SP800-90ARev1 section 11.3 health tests |
| AES-ECB | Encryption KAT with 128 bit-key Decryption KAT with 128 bit-key |
Pre-operational self-tests are performed automatically when the module is loaded into memory; the pre-operational self-tests ensure that the module is not corrupted and that the cryptographic algorithms work as expected. While the module is executing the pre-operational self-tests, services are not available, and input and output are inhibited. The module does not return control to the calling application until the tests are completed. On successful completion of the pre-operational self-tests, the module enters operational mode and cryptographic services are available. If the module fails any of the tests, it will return an error code and enter the error state to prohibit any further cryptographic operations. The module provides the Self-Test service to perform periodic and on-demand self-tests. Both periodic and on demand self-tests (i.e., Conditional Cryptographic Algorithm Self-Tests (CASTs) and integrity test) can be invoked by powering-off and reloading the module. During the execution of the periodic and on-demand self-tests, crypto services are not available, and no data output or input is possible.
The integrity of the module is verified by comparing an HMAC-SHA2-256 value calculated at runtime with the HMAC-SHA2-256 value stored in the module that was computed at build time. Prior to using HMAC-SHA2-256, a CAST is performed. If the CAST on the HMAC-SHA2-256 is successful, the HMAC value of the runtime image is recalculated and compared with the stored HMAC value pre-computed at compilation time.
The following sub-sections describe the conditional self-tests supported by the module. If one of the Conditional self-tests fails, the module transitions to the ‘Halt Error’ state and a corresponding error indication is given. While the module is executing the CASTs, services are not available, and input and output are inhibited. The entropy source performs its required self-tests; those are not listed in this section, as the entropy source is not part of the cryptographic boundary of the module.
The module performs cryptographic algorithm self-tests (CASTs) on all Approved cryptographic algorithms. The module performs CASTs before the integrity test. The CASTs consist in Known Answer Tests for all the approved cryptographic algorithms and the SP800-90ARev1 Health Tests for DRBG. © 2024 F5, Inc. / atsec information security.
32 of 41
| Algorithm | Test |
|---|---|
| AES-GCM | Encryption KAT with 128-bit key Decryption KAT with 128-bit key |
| RSA | PKCS#1 v1.5 signature generation KAT with 2048 bit key and SHA2- 256 PKCS#1 v1.5 signature verification KAT, with 2048 bit key and SHA2-256 |
| ECDSA | Signature generation KAT, with P-256 and SHA2-256 Signature verification KAT, with P-256 and SHA2-256 |
| KAS-ECC-SSC | “Z” computation KAT with P-256 curve |
| KAS-FFC-SSC | “Z” computation KAT with 2048 modulus |
| HMAC-SHA | HMAC-SHA-1 KAT HMAC-SHA2-256 KAT HMAC-SHA2-384 KAT |
| SHA | KATs for all SHA sizes are covered by respective HMAC KATs (allowed per IG 10.3.B) |
| Error State | Cause of Error | Status Indicator |
|---|---|---|
| Halt Error The module must be re- loaded in order to clear the error condition. That data output is inhibited. | HMAC-SHA2-256 KAT failure or HMAC-SHA2-256 integrity test failure | Module will not load |
| Failure of any of the CASTs | Error message related to the crypto function listed in Table 12 and the flag 'fips_selftest_fail' is set. |
Table 12 - Conditional Cryptographic Algorithm Self-Tests
A pairwise consistency test (PCT) is run whenever asymmetric keys (RSA, DH, ECDH/ECDSA) are generated. PCT for ECDSA and RSA key pair generation used for digital signatures is tested by the calculation and verification of a digital signature. PCT for Diffie-Hellman key pair generation is performed following the SP 800-56Arev3 requirements. PCT for EC Diffie-Hellman key pair © 2024 F5, Inc. / atsec information security.
33 of 41
Error State
Cause of Error Failure of any of the PCTs
Status Indicator Error message a PCT failure for RSA, DH, ECDH or ECDSA pairwise consistency test and the flag 'fips_selftest_fail' is set.
Table 13 - Error States © 2024 F5, Inc. / atsec information security.
34 of 41
The module i.e. 1.0.2u-fips binary and its integrity check file are distributed and installed as a part of the BIG-IP product ISO. There are no maintenance requirements.
The FIPS validated module activation requires installation of the BIG-IP System License key file. The Crypto Officer should install this file as /config/bigip.license and verify the FIPS validated module license activation (or reactivation) by running the command: ‘tmsh show sys license' which should output FIPS 140, BIG-IP VE-1G to 10G,’ under the ‘Active Modules’ list. After the FIPS validated module license is installed, the command prompt will change to ‘REBOOT REQUIRED’. The Crypto Officer must reboot the BIG-IP for all FIPS-compliant changes to take effect. On the BIG-IP product the Crypto Officer should call the dedicated Show version API, fips_get_f5fips_module_version, to ensure that the module identifier and version are shown as: Cryptographic Module for BIG-IP OpenSSL 1.0.2u-fips 20 Dec 2019. The ESV Public Use Document (PUD) reference for non-physical entropy source is as follows: https://csrc.nist.gov/projects/cryptographic-module-validation-program/entropyvalidations/certificate/16
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 IG C.H. The module is compliant with SP800-52Rev2 section 3.3.1 and the mechanism for IV generation is compliant with RFC5288. The module does not implement the TLS protocol. The module’s implementation of AESGCM 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.
To comply with the assurances found in Section 5.6.2 of SP 800-56Ar3, the keys for KAS-FFC-SSC and KAS-ECC-SSC must be generated using the approved key generation services specified in section 9.2. For KAS-FFC-SSC the module generates keys using Safe Primes Key Generation with Safe Prime Groups: ffdhe2048, ffdhe3072, ffdhe4096. For KAS-ECC-SSC, the module generates keys using ECDSA KeyGen, Testing Candidates, with curves P-384 and P-256. The module performs full public key validation on the generated public keys. Additionally, the module performs full public key validation on the received public keys. © 2024 F5, Inc. / atsec information security.
35 of 41
Per IG C.F, the module implements FIPS 186-4 RSA SigVer and RSA SigGen with modulus lengths of 2048, 3072, 4096 bits. All these modulus lengths have been CAVP tested. © 2024 F5, Inc. / atsec information security.
36 of 41
The module does not implement security mechanisms to mitigate other attacks. © 2024 F5, Inc. / atsec information security.
37 of 41
Appendix A. Glossary and Abbreviations AES Advanced Encryption Standard AES-NI Advanced Encryption Standard New Instructions 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 Mode DES Data Encryption Standard DSA Digital Signature Algorithm DRBG Deterministic Random Bit Generator ECB Electronic Code Book ECC Elliptic Curve Cryptography ESV Entropy Source Validation FFC Finite Field Cryptography FIPS Federal Information Processing Standards Publication GCM Galois Counter Mode HMAC Hash Message Authentication Code KAS Key Agreement Schema KAT Known Answer Test KW AES Key Wrap MAC Message Authentication Code NIST National Institute of Science and Technology OFB Output Feedback OS Operating System PAA Processor Algorithm Acceleration PCT Pairwise Consistency Test PSS Probabilistic Signature Scheme RNG Random Number Generator RSA Rivest, Shamir, Addleman SHA Secure Hash Algorithm SHS Secure Hash Standard XTS XEX-based Tweaked-codebook mode with cipher text Stealing © 2024 F5, Inc. / atsec information security.
38 of 41
| FIPS140-3 | FIPS PUB 140-3 - Security Requirements For Cryptographic Modules March 2019 https://doi.org/10.6028/NIST.FIPS.140-3 |
| FIPS140-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 |
| FIPS180-4 | Secure Hash Standard (SHS) March 2012 http://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.180-4.pdf |
| FIPS186-4 | Digital Signature Standard (DSS) July 2013 http://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-4.pdf |
| FIPS197 | Advanced Encryption Standard November 2001 http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf |
| FIPS198-1 | The Keyed Hash Message Authentication Code (HMAC) July 2008 http://csrc.nist.gov/publications/fips/fips198-1/FIPS-198-1_final.pdf |
| FIPS202 | SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions August 2015 http://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 http://www.ietf.org/rfc/rfc3447.txt |
| RFC3394 | Advanced Encryption Standard (AES) Key Wrap Algorithm September 2002 http://www.ietf.org/rfc/rfc3394.txt |
| RFC5649 | Advanced Encryption Standard (AES) Key Wrap with Padding Algorithm September 2009 http://www.ietf.org/rfc/rfc5649.txt |
| SP800-38A | NIST Special Publication 800-38A - Recommendation for Block Cipher Modes of Operation Methods and Techniques December 2001 http://csrc.nist.gov/publications/nistpubs/800-38a/sp800-38a.pdf |
| SP800-38B | NIST Special Publication 800-38B - Recommendation for Block Cipher Modes of Operation: The CMAC Mode for Authentication May 2005 http://csrc.nist.gov/publications/nistpubs/800-38B/SP_800-38B.pdf © 2024 F5, Inc. / atsec information security. 39 of 41 |
| SP800-38C | NIST Special Publication 800-38C - Recommendation for Block Cipher Modes of Operation: the CCM Mode for Authentication and Confidentiality May 2004 http://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-38c.pdf |
| SP800-38D | NIST Special Publication 800-38D - Recommendation for Block Cipher Modes of Operation: Galois/Counter Mode (GCM) and GMAC November 2007 http://csrc.nist.gov/publications/nistpubs/800-38D/SP-800-38D.pdf |
| SP800-38E | NIST Special Publication 800-38E - Recommendation for Block Cipher Modes of Operation: The XTS AES Mode for Confidentiality on Storage Devices January 2010 http://csrc.nist.gov/publications/nistpubs/800-38E/nist-sp-800-38E.pdf |
| SP800-38F | NIST Special Publication 800-38F - Recommendation for Block Cipher Modes of Operation: Methods for Key Wrapping December 2012 http://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-38F.pdf |
| SP800-38G | NIST Special Publication 800-38G - Recommendation for Block Cipher Modes of Operation: Methods for Format - Preserving Encryption March 2016 http://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-38G.pdf |
| SP800- | NIST Special Publication 800-56A Revision 3 - Recommendation for Pair Wise Key |
| 56ARev3 | Establishment Schemes Using Discrete Logarithm Cryptography April 2018 https://doi.org/10.6028/NIST.SP.800-56Ar3 |
| SP800- | Recommendation for Key Derivation through Extraction-then-Expansion |
| 56CRev2 | August 2020 https://doi.org/10.6028/NIST.SP.800-56Cr2 |
| SP800-57 | NIST Special Publication 800-57 Part 1 Revision 4 - Recommendation for Key Management Part 1: General January 2016 http://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-57pt1r4.pdf |
| SP800-67 | NIST Special Publication 800-67 Revision 1 - Recommendation for the Triple Data Encryption Algorithm (TDEA) Block Cipher January 2012 http://csrc.nist.gov/publications/nistpubs/800-67-Rev1/SP-800-67-Rev1.pdf |
| SP800- | NIST Special Publication 800-90A - Revision 1 - Recommendation for Random |
| 90ARev1 | Number Generation Using Deterministic Random Bit Generators June 2015 http://dx.doi.org/10.6028/NIST.SP.800-90Ar1 |
| SP800-90B | (Second DRAFT) NIST Special Publication 800-90B - Recommendation for the Entropy Sources Used for Random Bit Generation January 2018 https://doi.org/10.6028/NIST.SP.800-90B © 2024 F5, Inc. / atsec information security. 40 of 41 |
| SP800-131A | NIST Special Publication 800-131A Revision 1- Transitions: Recommendation for Transitioning the Use of Cryptographic Algorithms and Key Lengths November 2015 http://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-131Ar1.pdf |
| SP800-132 | NIST Special Publication 800-132 - Recommendation for Password-Based Key Derivation - Part 1: Storage Applications December 2010 http://csrc.nist.gov/publications/nistpubs/800-132/nist-sp800-132.pdf |
| SP800- | NIST Special Publication 800-133 - Recommendation for Cryptographic Key |
| 133Rev2 | Generation June 2020 https://doi.org/10.6028/NIST.SP.800-133r2 |
| SP800- | NIST Special Publication 800-135 Revision 1 - Recommendation for Existing |
| 135Rev1 | Application-Specific Key Derivation Functions December 2011 http://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-135r1.pdf |
| SP800-140B | NIST Special Publication 800-140B - CMVP Security Policy Requirements March 2020 https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-140B.pdf © 2024 F5, Inc. / atsec information security. 41 of 41 |