| Standard | FIPS 140-3 |
|---|---|
| Overall level | 1 |
| Module type | Firmware |
| Embodiment | Multi-Chip Stand Alone |
| Status | Active |
| Sunset date | 11/11/2029 |
| Caveat | Interim validation |
| Vendor | Senetas Corporation Ltd., distributed by Thales SA |
| Algorithm | ACVP Cert |
|---|---|
| AES-CBC | A4648 |
| AES-CFB128 | A4648 |
| AES-CTR | A4648 |
| AES-ECB | A4648 |
| AES-GCM | A4648 |
| ECDSA KeyGen (FIPS186-4) | A4648 |
| ECDSA KeyVer (FIPS186-4) | A4648 |
| ECDSA SigGen (FIPS186-4) | A4648 |
| ECDSA SigVer (FIPS186-4) | A4648 |
| Hash DRBG | A4648 |
| HMAC-SHA-1 | A4648 |
| HMAC-SHA2-256 | A4648 |
| HMAC-SHA2-384 | A4648 |
| HMAC-SHA2-512 | A4648 |
| KAS-ECC Sp800-56Ar3 | A4648 |
| KAS-FFC Sp800-56Ar3 | A4648 |
| KDF SP800-108 | A4648 |
| KTS-IFC | A4648 |
| RSA KeyGen (FIPS186-4) | A4648 |
| RSA SigGen (FIPS186-4) | A4648 |
| RSA SigVer (FIPS186-4) | A4648 |
| SHA-1 | A4648 |
| SHA2-256 | A4648 |
| SHA2-384 | A4648 |
| SHA2-512 | A4648 |
| SHA3-256 | A3449 |
| Requirement area | Level |
|---|---|
| Cryptographic Module Specification | 1 |
| Cryptographic Module Interfaces | 1 |
| Software/Firmware Security | 1 |
| Operational Environment | 1 |
| Physical Security | 1 |
| Sensitive Security Parameter Management | 1 |
| Mitigation of Other Attacks | N/A |
flowchart LR
%% Deterministic review-risk graph for CE Crypto Module
%% Review prompts and evidence gaps, NOT vulnerability findings.
subgraph CMVP["CMVP-disclosed clues"]
C1["[high] Firmware / bootloader<br/>versions disclosed<br/>(identity, not provenance)<br/><i>5.5.0</i>"]
C2["[low] Firmware update / recovery<br/>/ rollback (referenced in<br/>text)<br/><i>update</i>"]
C3["[high] Unauthenticated /<br/>self-test / status service<br/>surface<br/><i>Self-test<br/>Show Status</i>"]
C5["[low] Protocol / secure-channel<br/>references (may be KDF<br/>names, not a live channel)<br/><i>TLS<br/>HTTPS<br/>no library/version identified</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"]
I1["Component identity is<br/>disclosed, but provenance<br/>and patch lineage are not."]
I2["Possible only, trusted<br/>code is reachable through<br/>update and recovery paths."]
I3["Some services may process<br/>input 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"]
R1["Do the vendor version<br/>strings obscure the<br/>upstream baseline, fork<br/>lineage, or known-CVE<br/>exposure?"]
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"]
E1["SBOM / component baselines<br/>· patch and backport<br/>manifest · CVE disposition"]
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["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
C1 --> I1 --> R1 --> E1
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 C1,C2,C3,C5,C6 clue;
class I1,I2,I3,I5,I6 infer;
class R1,R2,R3,R5,R6 risk;
class E1,E2,E3,E5,E6 evidence;flowchart LR
%% Deterministic clue tier for CE Crypto Module
%% confidence: high = structured record field; medium = structured but soft; low (dashed) = bare keyword hit, context unverified
subgraph CMVP["CMVP-disclosed clues (deterministic)"]
C1["[high] Firmware / bootloader versions disclosed (identity, not provenance)<br/><i>5.5.0</i><br/>src: certificate.firmwareVersions"]
C2["[low] Firmware update / recovery / rollback (referenced in text)<br/><i>update</i><br/>src: text:keyword"]
C3["[high] Unauthenticated / self-test / status service surface<br/><i>Self-test<br/>Show Status</i><br/>src: securityPolicy.services"]
C5["[low] Protocol / secure-channel references (may be KDF names, not a live channel)<br/><i>TLS<br/>HTTPS<br/>no library/version identified</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 C1,C3 clueHigh;
class C2,C5,C6 clueLow;Senetas Corporation Ltd., distributed by Thales SA CE Crypto Module Module Version: 5.5.0 Level 1 Validation September 2024 Once released this document may be freely reproduced and distributed whole and intact www.senetas.com
| Authors | Date | Version | Comment |
|---|---|---|---|
| Senetas Corp. Ltd. | 22-Dec-2023 | 1.00 | CMVP Release for firmware version 5.5.0 |
| Senetas Corp. Ltd. | 04-Sep-2024 | 1.01 | Interim validation update |
| # | Section | Page |
|---|---|---|
| Document History | 2 | |
| 1 | General | 4 |
| 1.1 | References | 5 |
| 1.2 | Acronyms and Abbreviations | 6 |
| 1.3 | Security Levels | 7 |
| 2 | Cryptographic Module Specification | 8 |
| Operational Environment | 8 | |
| Modes of Operation | 8 | |
| Cryptographic Algorithms | 9 | |
| Approved Algorithms | 9 | |
| 2.4 | Cryptographic Boundary | 11 |
| 3 | Cryptographic Module Interfaces | 12 |
| 4 | Roles, Services and Authentication | 13 |
| 4.1 | Supported Roles | 13 |
| 4.2 | Roles and Services | 14 |
| Approved Services | 14 | |
| 5 | Software/Firmware Security | 16 |
| 5.1 | Software/Firmware Integrity Test | 16 |
| On Demand Software/Firmware Integrity Test | 16 | |
| 6 | Operational Environment | 17 |
| 7 | Physical Security | 18 |
| 8 | Non-Invasive Security | 19 |
| 9 | Sensitive Security Parameter Management | 20 |
| 9.1 | Cryptographic Keys and SSPs | 20 |
| 9.2 | Random Number Generation/Entropy | 23 |
| 10 | Self-tests | 24 |
| 10.1 | Pre-Operational Self-Tests | 24 |
| 10.2 | Conditional Self-tests | 24 |
| 10.3 | On-Demand and Periodic Self-tests | 24 |
| 10.4 | Error State | 24 |
| 11 | Life-cycle Assurance | 26 |
| 12 | Mitigation of Other Attacks | 27 |
| 11 | Life Cycle Assurance | 1 |
1. General This is a non-proprietary FIPS 140-3 Security Policy for the Senetas Corporation Ltd. CE Crypto Module v.5.5.0. This Security Policy specifies the security rules under which the module operates to meet the FIPS 140-3 Level 1 requirements. The CE Crypto Module is used in a range of Senetas encryption appliances. The vendor distributes under their own Senetas brand, and jointly with their master worldwide distributor, Thales SA. FIPS 140-3 (Federal Information Processing Standards Publication 140-3), Security Requirements for Cryptographic Modules, specifies the security requirements for a cryptographic module utilized within a security system protecting sensitive but unclassified information. Based on four security levels for cryptographic modules, this standard identifies requirements in twelve sections. For more information about the NIST/CCCS Cryptographic Module Validation Program (CMVP) and the FIPS 140-3 standard, visit www.nist.gov/cmvp . This Security Policy, using the terminology contained in the FIPS 140-3 specification, describes how the CE Crypto Module complies with the twelve sections of the standard. In this document, the CE Crypto Module is more generally referred to as “the module”. This Security Policy contains only non-proprietary information. Any other documentation associated with FIPS 1403 conformance testing and validation is proprietary and confidential to Senetas Corporation Ltd. and is releasable only under appropriate non-disclosure agreements. For more information describing the module and associated platforms, visit http://www.senetas.com. Senetas Corp. Ltd. Version 1.01
1.1 References For more information on the FIPS 140-3 standard and validation program please refer to the National Institute of Standards and Technology website at www.nist.gov/cmvp. The following standards from NIST are all available via the URL: www.nist.gov/cmvp . [1] FIPS PUB 140-3: Security Requirements for Cryptographic Modules. [2] NIST Special Publication (SP) 800-140 FIPS 140-3 Derived Test Requirements (DTR). [3] NIST Special Publication (SP) 800-140A CMVP Documentation Requirements. [4] NIST Special Publication (SP) 800-140B CMVP Security Policy Requirements. [5] NIST Special Publication (SP) 800-140Crev2 CMVP Approved Security Functions. [6] NIST Special Publication (SP) 800-140Drev2 CMVP Approved Sensitive Security Parameter Generation and Establishment Methods. [7] NIST Special Publication (SP) 800-140E CMVP Approved Authentication Mechanisms. [8] NIST Special Publication (SP) 800-140F CMVP Approved Non-Invasive Attack Mitigation Test Metrics. [9] ISO/IEC 19790:2012(E), Information technology
1.2 Acronyms and Abbreviations AES Advanced Encryption Standard AES-NI Advanced Encryption Standard New Instructions API Application Programming Interface CBC Cipher Block Chaining CCCS Canadian Centre for Cyber Security CFB Cipher Feedback CAVP Cryptographic Algorithm Validation Program CMVP Cryptographic Module Validation Program CNF Cloud Network Function CSP Critical Security Parameter CTR Counter Mode DH Diffie-Hellman DRBG Deterministic Random Bit Generator ECC Elliptic Curve Cryptography ECDH Elliptic Curve Diffie-Hellman ECDSA Elliptic Curve Digital Signature Algorithm ESV(NP) Non-Physical Entropy Source ESV Entropy Source Validation FIPS Federal Information Processing Standard GCM Galois Counter Mode HMAC Keyed-Hash Message Authentication Code IV Initialisation Vector KAS-ECC Elliptic Curve Key Agreement Scheme (ECDH) KAS-FCC Finite Field Key Agreement Scheme (DH) KAT Known Answer Test KDF Key Derivation Function NIST National Institute of Standards and Technology NVLAP National Voluntary Laboratory Accreditation Program OAEP Optimal Asymmetric Encryption Padding PAA Processor Algorithm Accelerator PKCS Public Key Cryptography Standards PSP Public Security Parameter PUB Publication RAM Random Access Memory RNG Random Number Generator RSA Rivest Shamir and Adleman Public Key Algorithm SP Special Publication SHA Secure Hash Algorithm SSP Sensitive Security Parameter TOEPP Tested Operational Environment Physical Perimeter VNF Virtual Network Function Senetas Corp. Ltd. Version 1.01
| Name | ISO Section | Requirement | Level |
|---|---|---|---|
| 1 | 1 | General | 1 |
| 2 | 2 | Cryptographic Module Specification | 1 |
| 3 | 3 | Cryptographic Module Interfaces | 1 |
| 4 | 4 | Roles, Services and Authentication | 1 |
| 5 | 5 | Software/Firmware Security | 1 |
| 6 | 6 | Operational Environment | 1 |
| 7 | 7 | Physical Security | 1 |
| 8 | 8 | Non-invasive Security | N/A |
| 9 | 9 | Sensitive Security Parameter Management | 1 |
| 10 | 10 | Self-tests | 1 |
| 11 | 11 | Life Cycle Assurance | 1 |
| 12 | 12 | Mitigation of Other Attacks | N/A |
1.3 Security Levels The module meets the overall Security Level 1 requirements for FIPS 140-3. See Table 1 below, which indicates the security level of each of the twelve sections of the FIPS 140-3 standard. Table 1 Security Levels [Number Below] N/A N/A Senetas Corp. Ltd. Version 1.01
| Name | Operating System | Hardware Platform | Processor | Paa Pai | # 1 2 | |||
|---|---|---|---|---|---|---|---|---|
| 1 | 1 | Debian Linux v11 | Intel Xeon D-2145NT (Skylake) | AES-NI | Dell VEP4600 | |||
| 3 | Debian Linux v11 | Dell VEP4600 with Intel Xeon D-2145NT (Skylake) CPU | 3 | 3 | Dell VEP4600 with Intel Xeon D-2145NT (Skylake) CPU |
| Name | Operating System | Hardware Platform | Processor | Paa Pai | # 1 2 | |||
|---|---|---|---|---|---|---|---|---|
| 1 | 1 | Debian Linux v11 | Intel Xeon D-2145NT (Skylake) | AES-NI | Dell VEP4600 | |||
| 3 | Debian Linux v11 | Dell VEP4600 with Intel Xeon D-2145NT (Skylake) CPU | 3 | 3 | Dell VEP4600 with Intel Xeon D-2145NT (Skylake) CPU |
2. Cryptographic Module Specification The CE Crypto Module version 5.5.0 is a firmware cryptographic module running on a multi-chip standalone general-purpose compute platform. The module provides low-level cryptographic primitives to the overall platform and its functions. The Module exists as a number of shared libraries and is linked against various encryption applications to supply all cryptographic operations as required by those applications. Operational Environment 2.1 The module has been tested by the certification lab, Lightship Security, Inc. on the following platform with and without PAA: Table 2 Tested Operational Environments # In addition to the platforms listed in Table 2 above, Senetas Corporation has also tested the module on the following platforms and claims vendor affirmation on them: 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 ported onto an Operating Environment that is not listed on the validation certificate. 2.2 Modes of Operation The module only supports an approved mode of operation. Senetas Corp. Ltd. Version 1.01
| Name | CAVP Cert | Mode Method | Key Size | Use Function | Mode/Method | ||
|---|---|---|---|---|---|---|---|
| AES FIPS PUB 197, SP 800-38A SP 800-38D | A4648 | CFB128 (e/d; 128,256) | 128-bit | Symmetric Encryption and Decryption | 128-bit 256-bit | ||
| CTR (e; 128, 256) | CTR (e; 128, 256) | 256-bit | |||||
| RSA FIPS186-4 | A4648 | KeyGen; MOD: 2048 | Asymmetric Key Generation, Digital Signature Generation and Verification | 2048-bit 4096-bit | |||
| ECDSA FIPS186-4 | A4648 | KeyGen | Asymmetric Key Generation, Digital Signature Generation and Verification | P-256 P-384 P-521 | |||
| KAS-ECC SP 800-56Arev3 | A4648 | (Cofactor) Ephemeral Unified | NIST P-256, P-384 | Key Agreement | (Cofactor) Ephemeral Unified Model key agreement | ||
| Model key agreement | Model key agreement | and P-521 curves | |||||
| KAS-FFC SP 800-56Arev3 | A4648 | MODP-2048 bit | Key Agreement | dhEphem key agreement | |||
| SHA FIPS 180-4 | A4648 | SHA-1 (BYTE only) | Message Digest | ||||
| HMAC | A4648 | HMAC-SHA-1 | Key Sizes Ranges | HMAC-SHA-1 | Message | ||
| Tested: KS<BS | Tested: KS<BS | Authentication |
2.3 Cryptographic Algorithms Approved Algorithms Table 4 lists the approved security functions of the module in the approved mode of operation. 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. Table 4 Approved Algorithms Senetas Corp. Ltd. Version 1.01
| Name | CAVP Cert | Key Size | Use Function | |||||
|---|---|---|---|---|---|---|---|---|
| FIPS 198-1 | HMAC-SHA-256 | FIPS 198-1 | ||||||
| A4648 | A4648 | Hash_Based DRBG: [ | DRBG | Random Number Generation | ||||
| Counter based KDF using HMAC-SHA-256 | A4648 | Counter based KDF using | KBKDF | Key Derivation | ||||
| RSA-OAEP-256 Key Transport rsakpg1-basic | A4648 | KTS-IFC SP 800-56Brev2 FIPS 140-3 IG D.G | KTS-IFC | Key Encapsulation/ Un-encapsulation | 2048-bit | |||
| SP 800-56Brev2 | SP 800-56Brev2 | Key establishment | ||||||
| AES-256 CFB key wrapping authenticated with HMAC- SHA-256 | A4648 | KTS FIPS 140-3 IG D.G | Key Wrapping and Unwrapping | 256-bit | ||||
| SHA3-256 (BYTE only) | A3449 | 256-bit | SHA3 | ESV Conditioning | 256-bit | |||
| E49 | E49 | 256-bit | ESV (NP) SP 800-90B | ESV (NP) | Entropy Source for | |||
| SP 800-90B | SP 800-90B | DRBG | ||||||
| Vendor Affirmed | Vendor Affirmed | Sections 5.1 & 5.2 - | CKG2 SP 800-133rev2 | Key Generation |
Note 1: AES-ECB Is only validated as part of the AES-CTR validation. The mode is not actively used by the module. Note 2: The seeds used in the asymmetric key generation are from the unmodified output from the Approved NIST SP 800-90A DRBG. The module does not implement:
Whilst the module does not provide the TLS protocol (this protocol has not been reviewed or tested by the CAVP and CMVP) itself, it does supply the underlying cryptographic functionality required by TLS including AES-GCM. IG C.H Scenario 1a applies:
2.4 Cryptographic Boundary The CE Crypto Module is a firmware library, providing user space based cryptographic primitives for use by the wider system. The cryptographic boundary is depicted in the diagram below. TOEPP Figure 1 Cryptographic Boundary Block Diagram Senetas Corp. Ltd. Version 1.01
| Name | Physical Port | Logical Interface |
|---|---|---|
| Data Input | Data read from variables passed in the API | Data Input |
| Data Output | Data written to user supplied variables or pointers in the API | Data Output |
| Control Input | The API function called and the parameters by which it is invoked. | Control Input |
| Status Output | The return value of the invoked API call. | Status Output |
| Power Input | Power Input |
3. Cryptographic Module Interfaces As a firmware only module, the module does not have any physical ports. Any reference to physical ports refers to that hardware on which the module is operating and outside of the cryptographic boundary. With regard to logical interfaces, the cryptographic API (C programming language) delineates the module interfaces. Table 5 Ports and Interfaces Senetas Corp. Ltd. Version 1.01
| Name | Input | Output | ||||
|---|---|---|---|---|---|---|
| AES Encryption/ Decryption | API call parameters, AES Keys and | Status, Cipher/Plain text | Crypto Officer | AES Encryption/ Decryption | API call parameters, AES Keys and cipher/plain text | Status, Cipher/Plain text |
| RSA Key Generation | Status, RSA Private and | RSA Key Generation | API call parameters | |||
| RSA Signature Generation and Verification | API call parameters, RSA Private and | Status, Signature | RSA Signature Generation and Verification | Status, Signature | ||
| ECDSA Key Generation | API call parameters | Status, ECDSA Private | ECDSA Key Generation | API call parameters | ||
| ECDSA Signature Generation and Verification | API call parameters, ECDSA Private | Status, Signature | ECDSA Signature Generation and Verification | Status, Signature | ||
| ECDH Key Agreement | API call parameters | Status, Agreed Key | ||||
| DH Key Agreement | API call parameters | Status, Agreed Key | DH Key Agreement | Status, Agreed Key | ||
| Secure Hash Generation | API call parameters, message | Status, Hash | ||||
| HMAC Generation and Verification | API call parameters, HMAC Key and | Status, Hash | HMAC Generation and Verification | Status, Hash | ||
| Random Number Generation | API call parameters | Random numbers | ||||
| Key Based Key Derivation Function | API call parameters, KBKDF Key | Status, Derived Key | Key Based Key Derivation Function | Status, Derived Key | ||
| RSA Key Encapsulation/ Un-encapsulation | API call parameters, RSA Public and | RSA Key Encapsulation/ Un-encapsulation | Status, Symmetric Key | |||
| AES Key Wrapping | API call parameters, AES Key- | AES Key Wrapping | Status, Symmetric Key | |||
| Self-test | API call parameters | Test results | ||||
| Show Status | API call parameters | Status | ||||
| Show Module Info | API call (inventory) | Module version number | Show Module Info | API call (inventory) | ||
| Zeroisation | Reboot command | N/A |
4. Roles, Services and Authentication The cryptographic module supports a single role of Crypto Officer. No authentication mechanism is provided, this aligns with the requirements for a FIPS 140-3 Level 1 module. The Crypto Officer has access to all approved services. The “Roles and Authentication” table listed in SP 800-140B is not applicable. 4.1 Supported Roles The supported role and services are summarized in Table 6 Table 6 Roles, Service Commands, Input and Output N/A Senetas Corp. Ltd. Version 1.01
| Name | Roles | Csps Accessed | Approved Functions | Access | Indicator | Approved Security Functions | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| AES Encryption/ Decryption | CO | AES Keys | CFB128 (e/d; 128,256) | W, E | Status | W, E | ||||||
| RSA Key Generation | CO | RSA Private Keys RSA Public Keys | KeyGen; MOD: 2048 | Status | G, R, E | |||||||
| RSA Signature Generation and Verification | CO | RSA Private Keys RSA Public Keys | ALG[RSASSA-PKCS1_V1_5]; | Status | W, E | |||||||
| ECDSA Key Generation | CO | ECDSA Private Keys ECDSA Public Keys | KeyGen | Status | G, R, E | |||||||
| ECDSA | CO | ECDSA Private Keys ECDSA Public Keys | SigGen | Status | W, E | ECDSA | SigGen SigVer | |||||
| ECDH Key Agreement | CO | ECDHE Private Keys ECDHE Public Keys ECDHE Shared Secret | CKG | Status | G, R, W, E | ECDH Key | ||||||
| DH Key Agreement | CO | CKG | Status | G, R, W, E | Diffie Hellman Private Keys | t | ||||||
| Secure Hash Generation | CO | None | SHA-1 (BYTE only) | Status | N/A | None | ||||||
| HMAC | HMAC Key | HMAC-SHA-1 | W, E | HMAC | CO | Status |
4.2 The CE Crypto Module supports the Crypto Officer services listed in the following table. Legend for access rights column in Table 7: G = Generate: The module generates or derives the SSP. R = Read: The SSP is read from the module (e.g. the SSP is output). 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. N/A - Not Applicable. Approved Services The module supports the approved services listed in Table 7. Table 7 Approved Services W, E G, R, E W, E G, R, E W, E G, R, W, E G, R, W, E N/A W, E Senetas Corp. Ltd. Version 1.01
| Name | Use Function | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| HMAC-SHA-256 | and Verification | ||||||||
| Hash_Based DRBG: [Prediction | Random Number Generation | Hash_Based DRBG: [Prediction Resistance Tested: Not Enabled (SHA-256)] | DRBG Entropy Input and | CO | G, R, E | Status | |||
| Resistance Tested: Not Enabled | Nonce | ||||||||
| (SHA-256)] | DRBG Seed | ||||||||
| Key Based | Counter based KDF using HMAC- SHA-256 | KBKDF Key Derivation Key | CO | G, R, W, E | Status | Key Based | KBKDF Key Derivation Key Derived AES Key-wrapping Key HMAC Key | ||
| Derivation | Key | Derivation | |||||||
| RSA Key | RSA-OAEP-256 Key Transport | CO | W, E | Status | RSA Key | RSA Private Keys RSA Public Keys | |||
| AES Key | AES-256 CFB key wrapping authenticated with HMAC-SHA-256 | CO | W, E | Status | AES Key | AES Key-wrapping Key | |||
| Self-test | Self-test | N/A | CO | N/A | Status | Self-test | None | Run self- | |
| Show | NA | CO | N/A | None | Show | None | API call | ||
| Status | Status | return code | |||||||
| Show Module Info | Show Module Info | NA | CO | N/A | None | Show | None | API call | |
| Module Info | Module Info | (inventory), | |||||||
| Zeroisation | Zeroisation | NA | CO | Z | None | All | Reboot |
G, R, E G, R, W, E Unencapsulati W, E W, E Run selftests N/A N/A N/A N/A Z Senetas Corp. Ltd. Version 1.01
5. Software/Firmware Security 5.1 Software/Firmware Integrity Test The approved SHA-256 algorithm implemented in the module is used to verify the integrity of the module. If this integrity test fails, the module is prevented from providing any cryptographic services and the module is effectively disabled. Refer to Section 10.1 for more detail. On Demand Software/Firmware Integrity Test On demand testing can be initiated by rebooting the module’s host platform. Senetas Corp. Ltd. Version 1.01
6. Operational Environment The module is designed to operate as a component of a larger general-purpose operating system. The operational environment is non-modifiable. Senetas Corp. Ltd. Version 1.01
7. Physical Security The module is a firmware module with a multi-chip standalone cryptographic embodiment. The module's host platform provides production-grade components and chassis, using standard passivation. Senetas Corp. Ltd. Version 1.01
8. Non-Invasive Security The requirements in this section are Not Applicable. Senetas Corp. Ltd. Version 1.01
| Name | Strength | Security Function | Generation | Establishment | Storage | Import Export | Key/SSP Name/ Type | Generation | Zeroisation | ||
|---|---|---|---|---|---|---|---|---|---|---|---|
| AES Keys (CSP) | 128-bit / 256-bit | AES A4648 | N/A | In volatile system memory by caller (plaintext) | Imported from | AES Keys (CSP) | N/A | Imported from calling application | • Internal buffers cleared. • Power cycle | Symmetric | |
| calling application | calling application | Encryption and | |||||||||
| Key Generation, Digital Signature/ Generation, Key un- encapsulation | 2048-bits | RSA A4648 KTS-IFC A4648 | Internal | N/A | In volatile system memory by caller (plaintext) | RSA Private Keys (CSP) | Imported from and exported to calling function | • Internal buffers cleared • Power cycle | Key Generation, | ||
| SP 800-133rev2 | SP 800-133rev2 | encapsulation | |||||||||
| Key Generation, Digital Signature/ Verification, Key encapsulation | 2048-bits | RSA A4648 KTS-IFC A4648 | Internal | N/A | In volatile system memory by caller (plaintext) | RSA Public Keys (PSP) | Imported from and exported to calling function | • Internal buffers cleared • Power cycle | |||
| Key Generation, Digital Signature/ Generation | P-256 P-384 P-521 | ECDSA A4648 | Internal | N/A | In volatile system memory by caller (plaintext) | ECDSA Private Keys (CSP) | Imported from and exported to calling function | • Internal buffers cleared • Power Cycle | |||
| Key Generation, Digital Signature/ Verification | P-256 P-384 P-521 | ECDSA A4648 | Internal | N/A | In volatile system memory by caller (plaintext) | ECDSA Public Keys (PSP) | Imported from and exported to calling function | • Internal buffers cleared • Power Cycle |
9. Sensitive Security Parameter Management 9.1 Cryptographic Keys and SSPs The following table identifies the Cryptographic Keys and Sensitive Security Parameters (SSPs) employed within the module. Table 8 SSPs N/A N/A N/A N/A N/A N/A Senetas Corp. Ltd. Version 1.01
| Name | ||
|---|---|---|
| P-521 | P-521 | key agreement |
N/A N/A N/A N/A Senetas Corp. Ltd. Version 1.01
N/A N/A N/A N/A N/A N/A N/A N/A N/A Senetas Corp. Ltd. Version 1.01
| Entropy Sources | Minimum number of bits of | Details |
|---|---|---|
| entropy |
9.2 Random Number Generation/Entropy An approved NIST [SP800-90A] deterministic random bit generator using a hash based DRBG (SHA-256) is used. The DRBG is seeded via a Linux Inter Process Communication (IPC) pipe (/tmp/sp80090bd), which in turn is filled via a user space daemon that utilises the software-based CPU jitter library (https://www.chronox.de/jent.html). The user space daemon ensures a watermark entropy pool is maintained for seeding the DRBG. Based on testing and analysis, the estimated minimum amount of entropy per output bit is 1.0 bits. The overall amount of generated entropy meets the required security strength of 256 bits based on the entropy per bit and the amount of entropy requested by the module. Table 9 Non-Deterministic Random Number Generation Specification Senetas CPU Jitter Entropy Source
The module employs a software based random bit generator ESV E49 Senetas Corp. Ltd. Version 1.01
| Pre-Operational Self-Tests | Notes |
|---|---|
| Pre-Operational Software/Firmware Integrity Test |
| SHA-1, SHA-256, SHA-384, SHA-512 | KATs |
|---|---|
| HMAC-SHA-1, HMAC-SHA-256, HMAC-SHA-384, HMAC-SHA-512 | KATs |
| KDF CTR HMAC-SHA-256 | KAT |
| AES-CFB128-128 (e/d), AES-CFB128-256 (e/d) | KATs |
| AES-CBC-128 (e/d), AES-CBC-256 (e/d) | KATs |
| AES-GCM-128 (e/d), AES-GCM-256 (e/d) | KATs |
| RSA-2048 (priv enc, pub dec) | KATs |
| RSA-2048 (pub enc, priv dec) | KATs |
| RSA-4096 (priv enc, pub dec) | KATs |
| RSA-4096 (pub enc, priv dec) | KATs |
| RSA-2048-OAEP-SHA2 (pub enc, priv dec) | KATs |
| RSA-2048 sign/verify | KATs |
| RSA-4096 sign/verify | KATs |
| SP 800-90Arev1 HASH-DRBG Instantiate, reseed, generate, un-instantiate | KATs |
| DH dhEphem 2048 MODP group SP 800-56Arev3 | KAT |
| ECDH (Cofactor) Ephemeral Unified Model SP 800-56Arev3 | KAT |
The module performs pre-operational self-tests and conditional self-tests to assure that faults have not been introduced that would prevent the module’s correct operation. 10.1 10.2 The module performs a set of Conditional Cryptographic Algorithm Self-Tests. These Conditional Cryptographic Algorithm Self-Tests run in the pre-operational state. The cryptographic algorithm used to perform the approved integrity technique for the Pre-Operational Software/Firmware Integrity Test (listed in Table 10, below), is tested using a Cryptographic Algorithm Self-Test A Conditional Pair-wise Consistency Test is performed on asymmetric key pairs generated by the module (refer to Table 10 below). 10.3 On-Demand and Periodic Self-tests The Crypto Officer can initiate the Pre-Operational Self-Test and Conditional Cryptographic Algorithm Self-Tests on-demand and for periodic testing of the module by issuing a reboot of the module’s host operating system.
Failure of the Pre-Operational Self-Test or any of the Conditional Cryptographic Algorithm Self-Tests will cause the module to remain in the pre-operational state (or error state). Once all of the self-tests have passed the preoperational flag is removed and the module will transition to the operational state. The self-tests are detailed in Table 10. Table 10 Self-Tests Cryptographic Algorithm Self-Tests Senetas Corp. Ltd. Version 1.01
| Name | Use Function | |
|---|---|---|
| ECDH P-256, P-384, P-521 (primitive KAT) | KATs | |
| ECDSA P-256-SHA256, P-384-SHA384, P-521-SHA512 sign/verify | KATs | |
| Entropy Related Health Tests | The entropy source is tested using adaptive | Entropy Related Health Tests |
| proportion and repeat count tests compliant | proportion and repeat count tests compliant | |
| with SP 800-90B Section 4.4 during the start- | with SP 800-90B Section 4.4 during the start- | |
| up sequence and then continuously. | up sequence and then continuously. | |
| Conditional Pair-wise Consistency | RSA Public and Private keys are used for the | Conditional Pair-wise Consistency |
| calculation and verification of digital | calculation and verification of digital | |
| signatures and for key transport. These keys | signatures and for key transport. These keys | |
| are tested for consistency, based on their | are tested for consistency, based on their | |
| purpose, at the time they are used. RSA | purpose, at the time they are used. RSA | |
| wrapping keys are tested by an encrypt/ | wrapping keys are tested by an encrypt/ | |
| decrypt pair-wise consistency test; signature | decrypt pair-wise consistency test; signature | |
| keys are tested by a sign/verify pair-wise | keys are tested by a sign/verify pair-wise | |
| consistency test. | consistency test. | |
| ECDSA Public and Private keys are used for | ECDSA Public and Private keys are used for | |
| the calculation and verification of digital | the calculation and verification of digital | |
| signatures. These keys are tested at the time | signatures. These keys are tested at the time | |
| they are used with a sign/verify pair-wise | they are used with a sign/verify pair-wise | |
| consistency test. | consistency test. | |
| ECDH Public and Private keys are used for | ECDH Public and Private keys are used for | |
| SP 800-56Arev3 approved key agreement. | SP 800-56Arev3 approved key agreement. | |
| These keys are tested at the time they are | These keys are tested at the time they are | |
| used with a pair-wise consistency test. | used with a pair-wise consistency test. | |
| DH Public and Private keys are used for SP | DH Public and Private keys are used for SP | |
| 800-56Arev3 approved key agreement. | 800-56Arev3 approved key agreement. | |
| These keys are tested at the time they are | These keys are tested at the time they are | |
| used with a pair-wise consistency test. | used with a pair-wise consistency test. |
Senetas Corp. Ltd. Version 1.01
11. Life-cycle Assurance The module is part of a larger Senetas encryption platform distributed on a range of comparable compute devices as a complete Linux distribution and set of services, and as such is installed as part of the encompassing Senetas encryption application. The development and operational processes around which the module is supported are strictly controlled across the complete development life cycle and supply chain and externally audited for correctness. Senetas Corp. Ltd. Version 1.01
12. Mitigation of Other Attacks The requirements in this section are Not Applicable. Senetas Corp. Ltd. Version 1.01