All modules
CMVP Validated Module · FIPS 140-3 Security Policy

HP Poly Cryptographic Module

Certificate#5011StandardFIPS 140-3Level1TypeSoftwareEmbodimentMulti-Chip Stand AloneStatusActiveVendorHewlett Packard, Inc.
Low review priority  ·  no TCB surface named  ·  last validated 2 months ago. How this is derived →

Certificate

StandardFIPS 140-3
Overall level1
Module typeSoftware
EmbodimentMulti-Chip Stand Alone
StatusActive
Sunset date7/22/2029
CaveatNo assurance of the minimum strength of generated SSPs (e.g., keys). When operated in approved mode.
VendorHewlett Packard, Inc.

Approved Algorithms (56)

AlgorithmACVP Cert
AES-CBCA2811
AES-CBCA6962
AES-CCMA2811
AES-CCMA6962
AES-CTRA2811
AES-CTRA6962
AES-ECBA2811
AES-ECBA6962
AES-GCMA2811
AES-GCMA6962
AES-KWA2811
AES-KWA6962
AES-KWPA2811
AES-KWPA6962
Counter DRBGA2811
Counter DRBGA6962
ECDSA KeyGen (FIPS186-4)A2811
ECDSA KeyGen (FIPS186-4)A6962
ECDSA KeyVer (FIPS186-4)A2811
ECDSA KeyVer (FIPS186-4)A6962
ECDSA SigGen (FIPS186-4)A2811
ECDSA SigGen (FIPS186-4)A6962
ECDSA SigVer (FIPS186-4)A2811
ECDSA SigVer (FIPS186-4)A6962
HMAC-SHA-1A2811
HMAC-SHA-1A6962
HMAC-SHA2-224A2811
HMAC-SHA2-224A6962
HMAC-SHA2-256A2811
HMAC-SHA2-256A6962
HMAC-SHA2-384A2811
HMAC-SHA2-384A6962
HMAC-SHA2-512A2811
HMAC-SHA2-512A6962
KAS-ECC-SSC Sp800-56Ar3A2811
KAS-ECC-SSC Sp800-56Ar3A6962
KDF TLSA2811
KDF TLSA6962
RSA KeyGen (FIPS186-4)A2811
RSA KeyGen (FIPS186-4)A6962
RSA SigGen (FIPS186-4)A2811
RSA SigGen (FIPS186-4)A6962
RSA SigVer (FIPS186-4)A2811
RSA SigVer (FIPS186-4)A6962
SHA-1A2811
SHA-1A6962
SHA2-224A2811
SHA2-224A6962
SHA2-256A2811
SHA2-256A6962
SHA2-384A2811
SHA2-384A6962
SHA2-512A2811
SHA2-512A6962
SHA2-512/256A2811
SHA2-512/256A6962

Derived Review-Risk Graph (review prompts, not findings)

flowchart LR
  %% Deterministic review-risk graph for HP Poly Cryptographic Module
  %% Review prompts and evidence gaps, NOT vulnerability findings.
  subgraph CMVP["CMVP-disclosed clues"]
    C3["[low] Self-test / status surface<br/>(referenced in text)<br/><i>Status Output<br/>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/>library named: boringssl</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"]
    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"]
    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"]
    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
  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 C3,C5,C6 clue;
  class I3,I5,I6 infer;
  class R3,R5,R6 risk;
  class E3,E5,E6 evidence;
Underlying clues
flowchart LR
  %% Deterministic clue tier for HP Poly Cryptographic Module
  %% confidence: high = structured record field; medium = structured but soft; low (dashed) = bare keyword hit, context unverified
  subgraph CMVP["CMVP-disclosed clues (deterministic)"]
    C3["[low] Self-test / status surface (referenced in text)<br/><i>Status Output<br/>Self-Test<br/>Show Status</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: boringssl</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 C3,C5,C6 clueLow;

Security Policy, page by page

Page 1

HP Poly Cryptographic Module Document Version 1.3 May 7, 2026 Prepared for: Prepared by: Hewlett Packard, Inc. Corsec Security, Inc.

345 Encinal Street 12600 Fair Lakes Circle, Suite #210

Santa Cruz, CA 95060 Fairfax, VA 22033 hp.com corsec.com +1 831.426.5858 +1 703.267.6050

Page 2

FIPS 140-3 Security Policy HP Poly Cryptographic Module Table of Contents List of Tables Public Material – May be freely reproduced and distributed in its entirety without modification.

Page 3

FIPS 140-3 Security Policy HP Poly Cryptographic Module List of Figures Public Material – May be freely reproduced and distributed in its entirety without modification.

Page 4
ISO/IEC 24759 Section 6.FIPS 140-3 Section TitleSecurity Level
1General1
2Cryptographic Module Specification1
3Cryptographic Module Interfaces1
4Roles, Services, and Authentication1
5Software/Firmware Security1
6Operational Environment1
7Physical SecurityN/A
8Non-Invasive SecurityN/A
9Sensitive Security Parameter Management1
10Self-Tests1
11Life-Cycle Assurance1
12Mitigation of Other AttacksN/A

This document describes the cryptographic module Security Policy (SP) for the HP Poly Cryptographic Module (Software version: 2022061300) (also referred to as the “module” hereafter). It contains specification of the security rules under which the cryptographic module operates, including the security rules derived from the requirements of the FIPS 140-3 standard. The module is a software module and has a Multi-Chip Stand Alone embodiment. The module meets the overall Level 1 security requirements of FIPS 140-3. The following table lists the level of validation for each area in FIPS 140-3: Table 1. Security Levels Public Material – May be freely reproduced and distributed in its entirety without modification.

Page 5
#Operating SystemHardware PlatformProcessorPAA/Acceleration
1Android 12CCX 400Rockchip PX30 ARMv8-AWith PAA
2Android 12CCX 600NXP i.MX 8M ARMv8-AWith PAA
3Android 13Google Pixel 7 ProGoogle Tensor G2 64-bit and 32-bitWith PAA
4Android 13Google Pixel 7 ProGoogle Tensor G2 64-bit and 32-bitWithout PAA
5Android 13Google Pixel 6 ProGoogle Tensor 64-bit and 32-bitWith PAA
6Android 13Google Pixel 6 ProGoogle Tensor 64-bit and 32-bitWithout PAA
7Android 13Google Pixel 5aQualcomm Snapdragon 765 64-bit and 32-bitWith PAA
8Android 13Google Pixel 5aQualcomm Snapdragon 765 64-bit and 32-bitWithout PAA
9Android 13Google Pixel 4aQualcomm Snapdragon 730 64-bit and 32-bitWith PAA
10Android 13Google Pixel 4aQualcomm Snapdragon 730 64-bit and 32-bitWithout PAA
11Android 13Google Pixel 4XLQualcomm Snapdragon 855 64-bit and 32-bitWith PAA
12Android 13Google Pixel 4XLQualcomm Snapdragon 855 64-bit and 32-bitWithout PAA
#Operating SystemHardware Platform
1Linux 4.Xx86_64 architecture; ARMv7 architecture; ARMv8 architecture
2Linux 5.XX86_64 architecture; ARMv7 architecture; ARMv8 architecture
3Linux 6.Xx86_64 architecture; ARMv7 architecture; ARMv8 architecture
4Android 12CCX 350; ARMv8-A
5Android 12CCX 500; ARMv8-A
6Android 12CCX 505; ARMv8-A
7Android 12CCX 700; ARMv8-A
8Android 12Trio C60; ARMv8-A
9Android 10Poly G7500; ARMv8-A (32-bit)
10Android 10Poly Studio X30; ARMv8-A (32-bit)
11Android 10Poly Studio X50; ARMv8-A (32-bit)
12Android 10Poly Studio X70; ARMv8-A (32-bit)

FIPS 140-3 Security Policy HP Poly Cryptographic Module

2 Cryptographic Module Specification

The module is an open-source, general-purpose cryptographic library which provides approved cryptographic algorithms to serve BoringSSL and other user-space applications. The module is intended for use in environments specified in Table 2 below and any general-purpose environment that requires cryptographic primitives. The Tested Operational Environment’s Physical Perimeter (TOEPP) of the module is the physical perimeter of the tested environment, which is listed in Table 2 below. The module is a software module and has a Multi-Chip Stand Alone embodiment. The installation instructions are provided in Section 11 of this document. The boundary of the module is defined as a single object file, bcm.o. The module version is: 2022061300. The module was tested on the following operational environments: Table

  1. Tested Operational Environments The cryptographic module is also supported on the following operational environments for which operational testing and algorithm testing was not performed. The CMVP makes no statement as to the correct operation of the module on the operational environments for which operational testing was not performed. Table
  2. Vendor Affirmed Operational Environments Public Material – May be freely reproduced and distributed in its entirety without modification.
Page 6
#Operating SystemHardware Platform
13Android 10Poly G62; ARMv8-A (64-bit)
14Android 10Poly Studio X32; ARMv8-A (64-bit)
15Android 10Poly Studio X52; ARMv8-A (64-bit)
16Android 10Poly Studio X72; ARMv8-A (64-bit)
17Android 10Poly Studio TC8; ARMv8-A (64-bit)
18Android 11Poly Studio TC10; ARMv8-A (64-bit)
CAVP Cert1Algorithm and StandardMode/MethodDescription / Key Sizes(s) / Key Strength(s)Use / Function
A2811, A6962A2811,AESCBC, ECB, CTRKey sizes: 128, 192, 256 bits; Strength: 128, 192, 256 bitsKey sizes: 128, 192, 256 bits;Encryption, Decryption
A6962FIPS 197 SP800-38AStrength: 128, 192, 256 bits
A2811, A6962AES FIPS 197 SP800-38DGCMKey sizes: 128, 192, 256 bits; Strength: 128, 192, 256 bitsAuthenticated Encryption, Authenticated Decryption
A2811,AES FIPS 197CCMKey size: 128 bits;Authenticated Encryption,
A6962SP800-38CStrength: 128 bitsAuthenticated Decryption
A2811, A6962AES, KTS FIPS 197 SP800-38FKW, KWPKey sizes: 128, 192, 256 bits; Strength: 128, 192, 256 bitsKey Transport per IG D.G Key establishment methodology provides between 128 and 256 bits of encryption strength
CVLTLS v1.0/1.1N/ASHA2-256, SHA2-384, SHA2-512; Strength: 256, 384, 512 bitsKey Derivation
A2811,and v1.2 KDF2
A6962SP800-135rev1
Vendor AffirmedCKGSP800-133rev2Cryptographic Key Generation: Section 5: Generation of Key Pairs for Asymmetric-Key Algorithms, Section 6.1: The “Direct Generation” of Symmetric KeysKey Generation Symmetric keys and seeds are generated as the direct output of the DRBG
A2811, A6962DRBG SP800-90Arev1CTR_DRBGAES-256; Key size: 256 bits; Strength: 256 bitsRandom Bit Generation
A2811, A6962ECDSA FIPS 186-4Key Pair Generation, Signature Generation, Signature Verification, Public Key ValidationP-224, P-256, P-384, P-521; Strength: 112, 128, 192, 256 bitsDigital Signature Services
A2811, A6962HMAC FIPS 198-1Generate, VerifyHMAC-SHA-1, HMAC-SHA2-224, HMAC-SHA2-256, HMAC-SHA2-384, HMAC-SHA2-512; Strength: 128, 192, 256, 384, 512 bitsGeneration, Authentication

FIPS 140-3 Security Policy HP Poly Cryptographic Module Table 4 below lists all the approved algorithms implemented in the module: Table 4. Approved Algorithms

1 There are algorithms that have been CAVP-tested on the same certificate 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.

2 No parts of this protocol, other than the approved cryptographic algorithms and the KDFs, have been tested by the CAVP and CMVP.

Public Material – May be freely reproduced and distributed in its entirety without modification.

Page 7
CAVP Cert1Algorithm and StandardMode/MethodDescription / Key Sizes(s) / Key Strength(s)Use / Function
A2811, A6962RSA FIPS 186-4Key Generation, Signature Generation, Signature Verification PKCS 1.5 and PSS1024, 2048, 3072, 4096; Strength: 80, 112, 128, 152 bits; Note: Key size 1024 should be only used for Signature VerificationDigital Signature Services
A2811, A6962SHA FIPS 180-4HashingSHA-13, SHA2-224, SHA2-256, SHA2-384, SHA2-512, SHA2-512/256; Strength: 80, 112, 128, 192, 256, 128 bitsDigital Signature Generation, Digital Signature Verification, Non-Digital Signature Applications
A2811, A6962KAS-SSC SP800-56Arev3KAS-ECC-SSC ephemeralUnifiedECC: P-224, P-256, P-384 and P-521; Strength: 112, 128, 192, 256 bitsKey Agreement Scheme Shared Secret Computation per SP800-56Arev3; Key establishment methodology provides between 112 and 256 bits of security strength
AlgorithmCaveatUse / Function
MD5As allowed per SP800-135rev1 (No security claimed)When used with the TLS protocol version 1.0 and 1.1
Algorithm/FunctionUse/Function
MD5, MD4Non-Approved hashing
POLYVALNon-Approved authenticated encryption
DES, Triple-DES (non-compliant)Non-Approved encryption/decryption
AES-GCM-SIV (non-compliant)Non-Approved encryption/decryption
DH (non-compliant)Non-Approved key agreement

FIPS 140-3 Security Policy HP Poly Cryptographic Module Table 6. Non-Approved Algorithms Not Allowed in the Approved Mode of Operation

3 Used for non-digital signature applications or to verify existing digital signatures only.

Public Material – May be freely reproduced and distributed in its entirety without modification.

Page 8

FIPS 140-3 Security Policy HP Poly Cryptographic Module Figure 1. Module Boundary

2.1 Overall Security Design and Rules of Operation
2.1.1 Usage of AES-GCM

AES GCM encryption and decryption are used in the context of the TLS protocol version 1.2 (compliant to Scenario 1a in FIPS 140-3 IG C.H). The module is compliant with NIST SP 800-52 and the mechanism for IV generation is compliant with RFC 5288. The module ensures that it is strictly increasing and thus cannot repeat. When the IV exhausts the maximum number of possible values for a given session key, the first party (client or server) to encounter this condition may either trigger a handshake to establish a new encryption key in accordance with RFC

5246 or fail. In either case, the module prevents any IV duplication and thus enforces the security property.

The module’s IV is generated internally by the module’s Approved DRBG, which is internal to the module’s boundary. The IV is 96 bits in length per NIST SP 800-38D, Section 8.2.2 and FIPS 140-3 IG C.H scenario 2. The selection of the IV construction method is the responsibility of the user of this cryptographic module. In approved mode, users of the module must not utilize GCM with an externally generated IV. Per IG C.H, in the event module power is lost and restored, the consuming application must ensure that any of its AES-GCM keys used for encryption or decryption are re-distributed. The module implements the KDF TLS 1.2, and other cryptographic primitives used in TLS 1.2, but does not implement the TLS 1.2 protocol itself. Public Material – May be freely reproduced and distributed in its entirety without modification.

Page 9

FIPS 140-3 Security Policy HP Poly Cryptographic Module

2.1.2 RSA and ECDSA Keys

The module allows the use of 1024-bit RSA keys for legacy purposes including signature generation, which is disallowed in Approved mode as per NIST SP800-131Arev2. Therefore, cryptographic operations with the NonApproved key sizes will result in the module operating in Non-Approved mode. The elliptic curves utilized shall be the validated NIST-recommended curves and shall provide a minimum of 112 bits of encryption strength.

2.1.3 CSP Sharing

Non-Approved cryptographic algorithms shall not share the same key or CSP as an approved algorithm. As such, Approved algorithms shall not use the keys generated by the module’s Non-Approved key generation methods or the converse.

2.1.4 Modes of Operation

The module supports two modes of operation: Approved and Non-approved. The module will be in approved mode when all self-tests have completed successfully, and only Approved algorithms are invoked. See Table 4 above for a list of the supported Approved algorithms. The non-Approved mode is entered when a non-Approved algorithm is invoked. See Table 6 for a list of non-Approved algorithms. Public Material – May be freely reproduced and distributed in its entirety without modification.

Page 10
Logical InterfaceData that passes over port/interface
Data InputAPI input parameters
Data OutputAPI output parameters and return values
Control InputAPI input parameters
Status OutputAPI return values

FIPS 140-3 Security Policy HP Poly Cryptographic Module

3 Cryptographic Module Interfaces

of the output parameters of the API functions. The Control Input interface consists of the actual API input Table 7. Ports and Interfaces The module does not implement a power input interface or a control output interface. As a software module, control of the physical ports is outside the module scope. However, when the module is performing self-tests, or is in an error state, all output on the module’s logical data output interfaces is inhibited. Public Material – May be freely reproduced and distributed in its entirety without modification.

Page 11
RoleServiceInputOutput
COSymmetric EncryptionPlaintext, encryption keyReturn code, ciphertext
COSymmetric DecryptionCiphertext, decryption keyReturn code, plaintext
COKeyed HashingMessage, keyReturn code, Message Authentication Code
COHashingMessageReturn code, hash
CORandom Bit GenerationAPI call parametersReturn code, random bits
COSignature GenerationMessage, signing keyReturn code, signature
COSignature VerificationSignature, verification keyReturn code
COKey TransportAPI call parameters, wrapping keyReturn code, wrapped key
COKey AgreementAPI call parametersReturn code, shared secret
COTLS Key DerivationAPI call parameters, TLS pre-master secretReturn code, TLS Key
COKey GenerationAPI call parametersReturn code, key pair
COKey VerificationAPI call parameters, key pairReturn code
COOn-Demand Self-TestN/AReturn code
COZeroizationN/AN/A
COShow StatusAPI call parametersReturn code, status

FIPS 140-3 Security Policy HP Poly Cryptographic Module

4 Roles, Services, and Authentication
4.1 Roles

The cryptographic module only implements a Crypto Officer (CO) role. The CO role is implicitly assumed by the entity accessing services implemented by the module. An operator is considered the owner of the thread that instantiates the module and, therefore, only one operator is allowed, and no concurrent operators are allowed. The module does not support operator authentication.

4.3 Services

The Approved services supported by the module and access rights within services accessible over the module’s public interface are listed in the table below: Table 8. Roles, Service Commands, Input and Output Public Material – May be freely reproduced and distributed in its entirety without modification.

Page 12
ServiceDescriptionApproved Security FunctionsKeys and/or SSPsRolesAccess Rights to Keys and/or SSPsIndicator
Symmetric EncryptionPerform symmetric encryption operationsAES CBC, ECB, CTR, CCM (Certs. #A2811 and #A6962) CKGAES Key, AES-GCM KeyCOW, E1
Symmetric DecryptionPerform symmetric decryption operationsAES CBC, ECB, CTR, GCM, CCM (Certs. #A2811 and #A6962) CKGAES Key, AES-GCM Key, AES-GCM IVCOW, E1
Keyed HashingPerform keyed hashing operationsHMAC-SHA-1, HMAC-SHA2-224, HMAC-SHA2-256, HMAC-SHA2-384, HMAC-SHA2-512 (Certs. #A2811 and #A6962)HMAC KeyCOW, E1
HashingPerform hashing operationsSHA-1, SHA2-224, SHA2-256, SHA2-384, SHA2-512, SHA2-512/256 (Certs. #A2811 and #A6962)N/ACON/A1
Random Bit GenerationGenerate random numbersCTR_DRBG (Certs. #A2811 and #A6962) CKGDRBG Seed, CTR_DRBG V, CTR_DRBG KeyCOG, E1
DRBG outputCOG, R
CTR_DRBG Entropy InputCOW, E
Signature GenerationPerform signing operationsCTR_DRBG, RSA SigGen, ECDSA SigGen (Certs. #A2811 and #A6962)RSA Signature Generation Key, ECDSA Signing KeyCOG, W, E1
SignaturePerform verification operationsRSA SigVer, ECDSA SigVer (Certs. #A2811 andRSA Signature Verification Key,COG, W, E1
Verification#A6962)ECDSA Verification Key
Key TransportPerform key encryption operations; KTS using AES-KW, AES-KWP per IG D.GAES KW, KWP (Certs. #A2811 and #A6962) CKGAES Wrapping KeyCOW, E1
KeyPerform key agreementKAS-ECC-SSC (Certs. #A2811 and #A6962)EC DH Private Key, EC DH Public KeyCOG, W, E1
AgreementoperationsShared SecretCOG

FIPS 140-3 Security Policy HP Poly Cryptographic Module Approved services are listed in Table

  1. The SSPs listed in the table indicate the access required using below notation: 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 = Zeroize: The module zeroizes the SSP. Table
  2. Approved Services Public Material – May be freely reproduced and distributed in its entirety without modification.
Page 13
ServiceDescriptionApproved Security FunctionsKeys and/or SSPsRolesAccess Rights to Keys and/or SSPsIndicator
TLS Key DerivationPerform key derivation operationsTLS KDF (Certs. #A2811 and #A6962)TLS Pre-Master SecretCOW, E1
TLS Master SecretCOG, E
Key GenerationPerform generation operationsCTR_DRBG, RSA KeyGen, ECDSA KeyGen (Certs. #A2811 and #A6962) CKGRSA Signature Generation Key, ECDSA Signing KeyCOG, W, E1
Key VerificationPerform key pair verification operationsECDSA KeyVer (Certs. #A2811 and #A6962)ECDSA Signing Key, ECDSA Verification KeyCOG, W, E1
On-Demand Self-TestExecute self-tests on demandN/AN/ACON/A1
ZeroizationZeroize all SSPsN/AAll SSPsCOZN/A
Show StatusObtain the module status and versioning informationN/AN/ACON/AN/A
ServiceDescriptionAlgorithms AccessedRoleIndicator
Hashing (as allowed per SP800-135rev1)Perform hashing operations when used with the TLS protocol version 1.0 and 1.1MD5CO0
HashingPerform hashing operationsMD4CO0
HashingUsed as part of AES-GCM-SIVPOLYVALCO0
Symmetric encryption/decryptionPerform symmetric encryption and/or decryption operationsDES Triple-DES AESCO0
Key GenerationPerform generation operationsDHCO0
RSA Primitives (RSADP, RSAEP, RSASP, RSAVP)Perform RSA related primitive operations (decrypt, encrypt, sign, verify)RSACO0

FIPS 140-3 Security Policy HP Poly Cryptographic Module Non-Approved Services are listed in Table 10 below: Table 10. Non-Approved Services Public Material – May be freely reproduced and distributed in its entirety without modification.

Page 14

FIPS 140-3 Security Policy HP Poly Cryptographic Module

5 Software/Firmware Security

The pre-operational integrity test is performed using HMAC-SHA2-256. The integrity test can be executed on demand by power-cycling the host platform and reloading the module. The module does not support software loading. Please refer to Section 11.1 for instructions on compiling the source code into executable.

5.1 Module Format

The form of the module is a single object file, bcm.o.

6 Operational Environment

The module runs on a GPC, which is a modifiable operational environment, running one of the operating systems specified in Table 2. Each approved operating system manages processes and threads in a logically separated manner. The module’s user is considered the owner of the calling application that instantiates the module. No specific security rules, settings or restrictions to the configuration of the operational environment applies to the module. The module is designed to ensure that all the self-tests are initiated automatically when the module is loaded.

7 Physical Security

As a software module, the physical security requirements are not applicable.

8 Non-Invasive Security

The module does not claim any non-invasive security measures. Public Material – May be freely reproduced and distributed in its entirety without modification.

Page 15
Key/SSP Name/ TypeStrengthSecurity Function and Cert. NumberGenerationImport/ ExportEstablishmentStorageZeroisationUse & Related Keys
AES Key (CSP)AES Key128/192/256 bitsAES-CBC, ECB,ExternalInput via API in plaintext (Electronic Entry)Input via API in plaintextN/APlaintext in RAMPower-cycle hostAES encrypt / decryptAES encrypt /
(CSP)CTR, CCM A2811, A6962(Electronic Entry)decrypt
AES-GCM Key (CSP)128/192/256 bitsAES-GCM A2811, A6962ExternalInput via API in plaintext (Electronic Entry)N/APlaintext in RAMPower-cycle hostAES decrypt / verify
AES-GCM IV496 bitsAES-GCMExternalInput via API in plaintextN/APlaintextPower-cycleAES decrypt /
(CSP)A2811, A6962(Electronic Entry)in RAMhostverify
AES Wrapping Key (CSP)128/192/256 bitsAES-KW, AES-KWP A2811, A6962ExternalInput via API in plaintext (Electronic Entry)N/APlaintext in RAMPower-cycle hostAES key wrapping
ECDSA Signing Key (CSP)112/128/192/ 256 bitsECDSA SigGen A2811, A6962Internally GeneratedInput via API in plaintext (Electronic Entry); Output via API in plaintext (Electronic Entry)N/APlaintext in RAMPower-cycle hostECDSA signature generation
ECDSA Verification Key (PSP)112/128/192/ 256 bitsECDSA SigVer A2811, A6962Internally GeneratedInput via API in plaintext (Electronic Entry); Output via API in plaintext (Electronic Entry)N/APlaintext in RAMPower-cycle hostECDSA signature verification
EC DH Private Key (CSP)112/128/192/ 256 bitsECDSA KeyGen A2811, A6962Internally GeneratedInput via API in plaintext (Electronic Entry); Output via API in plaintext (Electronic Entry)N/APlaintext in RAMPower-cycle hostKey Agreement
EC DH Public Key (PSP)112/128/192/ 256 bitsECDSA KeyGen A2811, A6962Internally GeneratedInput via API in plaintext (Electronic Entry); Output via API in plaintext (Electronic Entry)N/APlaintext in RAMPower-cycle hostKey Agreement

FIPS 140-3 Security Policy HP Poly Cryptographic Module

9 Sensitive Security Parameter Management

All the SSPs are zeroized implicitly when the host platform is restarted. The various SSPs used by the module are listed in Table 11 below: Table 11. SSPs

4 As specified in Section 2.1.1, usage of externally generated IV is only allowed for AES-GCM decryption in the approved mode of operation.

Public Material – May be freely reproduced and distributed in its entirety without modification.

Page 16
Key/SSP Name/ TypeStrengthSecurity Function and Cert. NumberGenerationImport/ ExportEstablishmentStorageZeroisationUse & Related Keys
HMAC Key (CSP)HMAC Key128/192/256/ 384/512 bitsHMAC-SHA-1,ExternalInput via API in plaintext (Electronic Entry)Input via API in plaintextN/APlaintext in RAMPower-cycle hostKeyed hashing
(CSP)HMAC-SHA2-224, HMAC-SHA2-256, HMAC-SHA2-384, HMAC-SHA2-512 A2811, A6962(Electronic Entry)
Shared Secret (CSP)112/128/192/ 256 bitsKAS-ECC-SSC A2811, A6962Internally GeneratedN/ASP800-56Arev3Plaintext in RAMPower-cycle hostKey Agreement
RSA Signature Generation Key (CSP)112, 128, 152 bitsRSA SigGen A2811, A6962Internally GeneratedInput via API in plaintext (Electronic Entry); Output via API in plaintext (Electronic Entry)N/APlaintext in RAMPower-cycle hostRSA signature generation
RSA Signature Verification Key (PSP)80, 112, 128, 152 bitsRSA SigVer A2811, A6962Internally GeneratedInput via API in plaintext (Electronic Entry); Output via API in plaintext (Electronic Entry)N/APlaintext in RAMPower-cycle hostRSA signature verification
TLS Master Secret (CSP)384 bitsTLS KDF A2811, A6962Internally Derived via key derivation function defined in SP800-135rev1 KDF (TLS)N/AN/APlaintext in RAMPower-cycle hostTLS key derivation
TLS Pre-Master Secret (CSP)112-256 bitsTLS KDF A2811, A6962ExternalInput via API in plaintext (Electronic Entry)N/APlaintext in RAMPower-cycle hostTLS key derivation
DRBG Seed384 bitsCTR_DRBGInternallyN/AN/APlaintextPower-cycleDRBG Seeding
(CSP)A2811, A6962Generatedin RAMhostmaterial
CTR_DRBG V (CSP)128 bitsCTR_DRBG A2811, A6962Internally GeneratedN/AN/APlaintext in RAMPower-cycle hostDRBG internal state
CTR_DRBG Key256 bitsCTR_DRBGInternallyN/AN/APlaintextPower-cycleDRBG internal
(CSP)A2811, A6962Generatedin RAMhoststate
CTR_DRBG Entropy Input (CSP)384 bits used as seed, quality of entropy at least 112 bitsCTR_DRBG A2811, A6962ExternalInput via API in plaintext (Electronic Entry)N/APlaintext in RAMPower-cycle hostDRBG entropy

FIPS 140-3 Security Policy HP Poly Cryptographic Module Public Material – May be freely reproduced and distributed in its entirety without modification.

Page 17
Key/SSP Name/ TypeStrengthSecurity Function and Cert. NumberGenerationImport/ ExportEstablishmentStorageZeroisationUse & Related Keys
DRBG output2048 bitsCTR_DRBG A2811, A6962CTR_DRBGInternally GeneratedN/AN/APlaintext in RAMPower-cycle hostRandom bits
A2811, A6962provided for the calling application
Entropy sourcesMinimum number of bits of entropyDetails
Passive Entropy112 bits and aboveUse of a [SP800-90B] compliant entropy source with at least 256 bits of security strength. Entropy is supplied to the Module via callback functions. The callback functions shall return an error if the minimum entropy strength cannot be met. The caveat “No assurance of the minimum strength of generated SSPs (e.g., keys)” is applicable.

FIPS 140-3 Security Policy HP Poly Cryptographic Module Table 12. Non-Deterministic Random Number Generation Specification Public Material – May be freely reproduced and distributed in its entirety without modification.

Page 18

FIPS 140-3 Security Policy HP Poly Cryptographic Module

10 Self-Tests

ISO/IEC 19790 requires the module to perform self-tests to ensure the integrity of the module and the correctness of the cryptographic functionality. Some functions also require conditional tests during normal operation of the module. The self-tests can be requested on demand by power cycling the host platform. The module has a single error state, which is called the error state. This state is entered upon failure of a self-test. The module indicates this error state by providing the output status “*** KAT failed” where *** is the algorithm name (example: ECDSAsign KAT failed). The module can be recovered by terminating execution of the host program and reclamation by the host operating system. The supported tests are listed and described in this section.

10.1 Pre-Operational Self-Tests

Pre-operational self-tests are run upon the initialization of the module and further reboots of the host platform. The CAST (Cryptographic Algorithm Self-Test) for HMAC-SHA2-256 is performed before the integrity test. Self-tests do not require operator intervention to run. If any of the tests fail, the module will not initialize and enter an error state where no services can be accessed. The module implements the following pre-operational self-tests: • Software Integrity Test (HMAC-SHA2-256)

10.2 Conditional Self-Tests

Conditional Cryptographic Algorithm Self-Tests (CAST) are run prior to the first use of the cryptographic algorithm. CASTs do not require operator intervention to run. If any of the tests fail, the module will enter an error state and no services can be accessed. The module implements the following CASTs:

Page 19

FIPS 140-3 Security Policy HP Poly Cryptographic Module

11 Life-Cycle Assurance

The cryptographic module is initialized by loading the module before any cryptographic functionality is available. In User Space, the operating system is responsible for the initialization process and loading of the library. There are no maintenance requirements applicable. General guidance about the module can be found at https://boringssl.googlesource.com/boringssl. This includes information about the APIs, building and specific information related to FIPS can be found at https://boringssl.googlesource.com/boringssl.git/+/refs/heads/fips20220613/crypto/fipsmodule/FIPS.md (note this still mentions 140-2, but the information there is the same).

11.1 Installation Instructions

During the manufacturing process, Hewlett Packard, Inc. (HP) executes the build and installation instructions for the module. The module is pre-installed and configured on HP’s Poly CCX series phones. There are no additional installation, configuration, or usage instructions for operators intending to use the module.

11.1.1 Retrieving Module Name and Version

The following methods will provide the module name and versions:

12 Mitigation of Other Attacks

The module is not designed to mitigate attacks which are outside of the scope of FIPS 140-3. Public Material – May be freely reproduced and distributed in its entirety without modification.

Page 20

Abbreviation

Full Specification Name

FIPS 140-3 Security Policy HP Poly Cryptographic Module References and Standards The following Standards are referenced in this Security Policy:

FIPS 140-3Security Requirements for Cryptographic modules
FIPS 180-4Secure Hash Standard (SHS)
FIPS 186-4Digital Signature Standard (DSS)
FIPS 197Advanced Encryption Standard
FIPS 198-1The Keyed-Hash Message Authentication Code (HMAC)
IGImplementation Guidance for FIPS PUB 140-3 and the Cryptographic Module Validation Program
SP 800-38ARecommendation for Block Cipher Modes of Operation: Three Variants of Ciphertext Stealing for CBC Mode
SP 800-38CRecommendation for Block Cipher Modes of Operation: The CCM Mode for Authentication and Confidentiality
SP 800-38DRecommendation for Block Cipher Modes of Operation: Galois/Counter Mode (GCM) and GMAC
SP 800-38FRecommendation for Block Cipher Modes of Operation: Methods for Key Wrapping
SP 800-52Guidelines for the Selection, Configuration, and Use of Transport Layer Security (TLS) Implementations
SP 800-56ARecommendation for Pair-Wise Key Establishment Schemes Using Discrete Logarithm Cryptography
SP 800-90ARecommendation for Random Number Generation Using Deterministic Random Bit Generators
SP 800-131ATransitioning the Use of Cryptographic Algorithms and Key Lengths
SP 800-133Recommendation for Cryptographic Key Generation
SP 800-135Recommendation for Existing Application-Specific Key Derivation Functions Public Material – May be freely reproduced and distributed in its entirety without modification.
Page 21

Acronym

Definition

FIPS 140-3 Security Policy HP Poly Cryptographic Module Acronyms

AESAdvanced Encryption Standard
APIApplication Programming Interface
CAVPCryptographic Algorithm Validation Program
CBCCipher-Block Chaining
CCCSCanadian Centre for Cyber Security
CFBCipher Feedback
CKGCryptographic Key Generation
CMVPCrypto Module Validation Program
COCryptographic Officer
CRNGTContinuous Random Number Generator Test
CSPCritical Security Parameter
CTRCounter-mode
DESData Encryption Standard
DHDiffie-Hellman
DRBGDeterministic Random Bit Generator
DSSDigital Signature Standard
ECElliptic Curve
ECBElectronic Code Book
ECCElliptic Curve Cryptography
EC DHElliptic Curve Diffie-Hellman
ECDSAElliptic Curve Digital Signature Algorithm
FIPSFederal Information Processing Standards
GCMGalois/Counter Mode
GMACGalois Message Authentication Code
GPCGeneral Purpose Computer
HMACkey-Hashed Message Authentication Code
IGSee References
IVInitialization Vector
KASKey Agreement Scheme
KATKnown Answer Test
KDFKey Derivation Function
KWKey Wrap
KWPKey Wrap with Padding
MACMessage Authentication Code
MD4Message Digest algorithm MD4
MD5Message Digest algorithm MD5
N/ANon Applicable
NISTNational Institute of Standards and Technology
NVLAPNational Voluntary Lab Accreditation Program
OFBOutput Feedback Public Material – May be freely reproduced and distributed in its entirety without modification.
Page 22

Acronym

Definition

PAAProcessor Algorithm Accelerator
RAMRandom Access Memory
RFCRequest For Comment
RSARivest Shamir Adleman
SHASecure Hash Algorithm
SHSSecure Hash Standard
SPSpecial Publication
SSLSecure Socket Layer
TLSTransport Layer Security
Triple-DESTriple Data Encryption Standard Public Material – May be freely reproduced and distributed in its entirety without modification.