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

Crypto Module for Intel® Alder Point PCH Converged Security and Manageability Engine (CSME)

Certificate#4749StandardFIPS 140-3Level2TypeFirmware-hybridEmbodimentSingle ChipStatusHistoricalVendorIntel Corporation
Medium review priority  ·  no TCB surface named  ·  last validated 23 months ago. How this is derived →

Certificate

StandardFIPS 140-3
Overall level2
Module typeFirmware-hybrid
EmbodimentSingle Chip
StatusHistorical
CaveatInterim Validation. When operated in approved mode. When initialized and configured as specified in Section 11 of the Security Policy.
VendorIntel Corporation

Approved Algorithms (31)

AlgorithmACVP Cert
AES-CBCA3362
AES-CFB128A3362
AES-CMACA3362
AES-CTRA3362
AES-ECBA3362
AES-GCMA3362
AES-OFBA3362
Counter DRBGA3362
ECDSA KeyGen (FIPS186-4)A3362
ECDSA KeyVer (FIPS186-4)A3362
ECDSA SigGen (FIPS186-4)A3362
ECDSA SigVer (FIPS186-4)A3362
HMAC-SHA-1A3362
HMAC-SHA2-224A3362
HMAC-SHA2-256A3362
HMAC-SHA2-384A3362
HMAC-SHA2-512A3362
KAS-ECC Sp800-56Ar3A3362
KDF SP800-108A3362
KTS-IFCA3362
KTS-IFCA3362
RSA Decryption PrimitiveA3362
RSA KeyGen (FIPS186-4)A3362
RSA SigGen (FIPS186-4)A3362
RSA Signature PrimitiveA3362
RSA SigVer (FIPS186-4)A3362
SHA-1A3362
SHA2-224A3362
SHA2-256A3362
SHA2-384A3362
SHA2-512A3362

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

flowchart LR
  %% Deterministic review-risk graph for Crypto Module for Intel® Alder Point PCH Converged Security and Manageability Engine (CSME)
  %% 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>Firmware Load<br/>recovery</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>HTTPS<br/>no library/version identified</i>"]
    C6["[low] Operating system / runtime<br/>referenced (boundary<br/>membership not asserted)<br/><i>operating system<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;
Underlying clues
flowchart LR
  %% Deterministic clue tier for Crypto Module for Intel® Alder Point PCH Converged Security and Manageability Engine (CSME)
  %% 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>Firmware Load<br/>recovery</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>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/>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;

Security Policy, page by page

Page 1

Crypto Module for Intel® Alder Point PCH Converged Security and Manageability Engine (CSME) Hardware Version 4.6.0.0 Firmware Version 5.2.0.0 Prepared by: atsec information security corporation

4516 Seton Center Parkway, Suite 250

Austin, TX 78759 www.atsec.com © 2024 Intel® Corporation / atsec information security.

Page 2
Table of Contents
#SectionPage
Page 3

3 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 4

© 2024 Intel® Corporation / atsec information security corporation. This document can be

4 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 5
ISO/IEC 24759 Section 6 [Number Below]FIPS 140-3 Section TitleSecurity Level
1General2
2Cryptographic Module Specification2
3Cryptographic Module Interfaces2
4Roles, Services and Authentication2
5Software/Firmware security2
6Operational environmentN/A
7Physical security2
8Non-invasive securityN/A
9Sensitive security parameter management2
10Self-tests2
11Life-cycle assurance2
12Mitigation of other attacks2
Overall Level2

This document is the non-proprietary FIPS 140-3 Security Policy of the Crypto Module for Intel® Alder Point PCH Converged Security and Manageability Engine (CSME). 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 for a Hybrid Firmware module at an overall security level 2. The table below shows the security level claimed for each of the security requirement area that comprise the Table 1 - Security Levels

5 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 6
ComponentTypeVersion NumbersDescription
Converged Security Management Engine (CSME) DriverFirmware5.2.0.0Firmware running in CSME to interface with the hardware components of the module.
CSME ROMHardware4.6.0.0Non-modifiable code which initiates and bootstraps the CSME firmware.
Offload and Crypto Subsystem (OCS)Hardware4.6.0.0AES, ECC, and HCU hardware cryptographic engines embedded within the Intel PCH chipset.
fips_hmacFileN/Afile containing the integrity check value of the module.

2.1. Module Overview is classified as a Hybrid Firmware module operating in a single-chip environment. In this document, “CSME”, and “module” are used interchangeably. They all refer to the Crypto Module for Intel® The components of the hybrid cryptographic module are specified in the following table:

6 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 7
Operating SystemHardware PlatformProcessorPAA/Acceleration
CSME OS running firmware version 16.1.25.2124Alder Point PCH-SAlder Lake SNone
CSME OS running firmware version 16.1.25.2124Alder Point PCH-M/PAlder Lake MNone
CSME OS running firmware version 16.1.25.2124Alder Point PCH-SRaptor Lake SNone
CSME OS running firmware version 16.1.25.2124Alder Point PCH-SRaptor Lake HXNone
CSME OS running firmware version 16.1.25.2124Alder Point PCH-M/PRaptor Lake PNone

The module has been tested on the following single-chip platform: Table 3 - Operational Environments 2.3. Cryptographic Boundary The module is a firmware hybrid module implemented in the physical embodiment of either a Alder Point PCH-S with Alder Lake S (referred to as ADL-S), Raptor Lake S (RPL-S) or Raptor Lake HX (RPL-

1 RPL-HX is the same exact HW as RPL-S but using a LGA socket.

7 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 8

HX) CPU or an Alder Point PCH-M/P with Alder Lake M (ADL-M) or Raptor Lake P (RPL-P) CPU. The Tested Operational Environment’s Physical Perimeter (TOEPP) is represented by the dashed purple lines in the block diagram shown below. The module provides cryptographic services to operators through an application program interface (API). The cryptographic boundary consists of the OCS ROM, CSME Driver FW, the AES, ECC, and HCU hardware cryptographic engines along with the fips_hmac integrity file. The cryptographic boundary is represented by the dashed red lines below. Figure 5

8 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 9
CAVP CertAlgorithm and StandardMode / MethodDescription / Key Size(s) / Key Strength(s)Use / Function
A3362AES [FIPS 197] [SP800-38A]CBC, CFB128, CTR, ECB, OFBDescription: Data Encryption and Decryption using AES with CBC, CFB128, CTR, ECB and OFB modes Key Size(s): 128, 256 bits Strength: 128 and 256 bitsAES Encryption / AES Decryption
A3362AES [FIPS 197] [SP800-38D]GCM Internal IV (Mode 8.2.2)Description: Authenticated Encryption and Decryption using AES with GCM mode and internally generated IV Key Size(s): 128, 256 bits Strength: 128 and 256 bitsAES Encryption / AES Decryption
A3362AES [FIPS 197] [SP800-38B]CMACDescription: Message Authentication Code using AES with CMAC mode Key Size(s): 128, 256 bits Strength: 128 and 256 bitsAES Message Authentication Code Generation and Verification
A3362HMAC [FIPS 198-1]SHA-1 SHA-224 SHA-256 SHA-384 SHA-512Description: Message Authentication Code using HMAC with SHS Key Size(s): 112 bits or greater Strength: 112 bits or greaterHMAC Message Authentication Code Generation
A3362CTR_DRBG [SP800- 90Arev1]AES-256Description: No Prediction Resistance, With Derivation Function Enabled Key Size(s): 256 bits Strength: 256-bitsRandom Number Generation
A3362ECDSA KeyGen [FIPS 186-4] [ANSI X9.62]Testing CandidatesDescription: ECDSA Key Generation using Testing Candidates generation mode Key Size(s): Curves P-256, P- 384 Strength: 128 or 192 bitsECDSA key- pair Generation
A3362ECDSA KeyVer [FIPS 186-4] [ANSI X9.62]N/ADescription: ECDSA public key verification Key Size(s): Curves P-256, P- 384 Strength: 128 or 192 bitsECDSA public- key verification
A3362ECDSA SigGen [FIPS 186-4] [ANSI X9.62]N/ADescription: ECDSA Digital Signature Generation with SHA-256 or SHA-384 message digest Key Size(s): Curves P-256, P- 384 Strength: 128 or 192 bitsECDSA digital signature generation

9 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 10
CAVP CertAlgorithm and StandardMode / MethodDescription / Key Size(s) / Key Strength(s)Use / Function
A3362ECDSA SigVer [FIPS 186-4] [ANSI X9.62]N/ADescription: ECDSA Digital Signature Verification with SHA-256 or SHA-384 message digest Key Size(s): Curves P-256, P- 384 Strength: 128 or 192 bitsECDSA digital signature verification
A3362KAS-ECC [SP 800 56Arev3]Ephemeral UnifiedDescription: ECDH Key Agreement with Full Validation, Key Pair Generation; KAS Role: Initiator, Responder; KDF Methods: One Step KDF; Auxiliary Function Methods: SHA-224, SHA-256, SHA- 384, SHA-512 Key Size(s): Curves P-256, P- 384 Strength: 128 or 192 bitsECDH key agreement
A3362KBKDF [SP 800- 108rev1]CounterDescription: Key Based Key Derivation with Counter Length: 32-bits; MAC Mode: HMAC-SHA-1, HMAC-SHA- 224, HMAC-SHA-256, HMAC-SHA-384, HMAC- SHA-512; Fixed Data Order: Before Fixed Data Key Size(s): 112-bits or greater Strength: Min 112 bitsKey Derivation
A3362KTS-RSA (KTS- IFC) [SP 800- 56Brev2]KTS-OAEP- basicDescription: Key Encapsulation using 2048-, 3072- or 4096-bit modulus with SHA-224, SHA-256, SHA-384 or SHA-512 message digest Key Sizes: 2048, 3072, 4096 bits Strength: 112 to 150 bitsRSA Key Transport (key encapsulation)
A3362KTS-RSA (KTS- IFC) [SP 800- 56Brev2]KTS-OAEP- basicDescription: Key Un- encapsulation using 2048- bit modulus with SHA-224, SHA-256, SHA-384 or SHA- 512 message digest Key Size(s): 20483 bits Strength: 112 bitsRSA Key Transport (key un- encapsulation)

3 Although other sizes were validated by CAVP, only modulus size 2048 is considered approved for key un-encapsulation.

See Section 6.3.1 for more details.

10 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 11
CAVP CertAlgorithm and StandardMode / MethodDescription / Key Size(s) / Key Strength(s)Use / Function
A3362RSA KeyGen [FIPS 186-4]B.3.3 Generation of Random Primes that are Probably PrimeDescription: RSA Key Generation with 2048-bit modulus using random probable prime generation method Key Size(s): 2048 bits Strength: 112 bitsRSA key-pair generation
A3362RSA SigGen [FIPS 186-4]PKCS#1 v1.5 RSA-PSSDescription: RSA Digital Signature Generation using PKCS#1 v1.5 or RSA-PSS scheme with SHA-224, SHA-256, SHA-384 or SHA- 512 message digest Key Size(s): 2048, 3072, 4096 bits Strength: 112 to 150 bitsRSA digital signature generation
A3362RSA SigVer [FIPS 186-4]PKCS#1 v1.5 RSA-PSSDescription: RSA Digital Signature Generation using PKCS#1 v1.5 or RSA-PSS scheme with 2048-, 3072- or 4096-bit modulus and SHA-1, SHA-224, SHA-256, SHA-384 or SHA-512 message digest Key Size(s): 1024, 2048, 3072, 4096 bits Strength: 80 to 150 bitsRSA digital signature verification
A3362 (CVL)RSA (Signature Primitive) [FIPS 186-4]PKCS#1 v1.5 RSA-PSSDescription: RSA Digital Signature Generation using PKCS#1 v1.5 or RSA-PSS scheme with 2048-bit modulus on a pre-hashed message digest Key Size(s): 2048 bits Strength: 112 bitsRSA digital signature generation primitive
A3362 (CVL)RSA Decryption Primitive [SP 800- 56Brev2]N/ADescription: RSA Un- encapsulation Primitive decryption using 2048-bit modulus Key Size(s): 2048 bits Strength: 112 bitsRSA decryption primitive
A3362SHS [FIPS 180-4]SHA-1, SHA-224, SHA-256, SHA-384, SHA-512Description: Message Digest Generation using SHA-1, SHA-224, SHA-256, SHA- 384 or SHA-512 Key Size(s): N/A Strength: N/ASHS message digest generation

11 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 12
CAVP CertAlgorithm and StandardMode / MethodDescription / Key Size(s) / Key Strength(s)Use / Function
Vendor AffirmedCryptographic Key Generation (CKG) for asymmetric keys [SP800- 133rev2]SP800- 133rev2 section 5.1 for ECDSA and RSA key pairs, SP800- 133rev2 section 5.2 for ECDHDescription: Vendor Affirmed Asymmetric Key Generation for RSA and ECDSA Key Size(s): RSA: 2048 bits ECC: Curves P-256, P-384 Strength: RSA: 112 bits ECC: 128 or 192 bitsECDSA key- pair generation / RSA key-pair generation
N/AENT (P) [SP800-90B]N/ADescription: Random Number Generation from a Physical Entropy Source Key Size(s): N/A Strength: 256Random Number Generation
AlgorithmUse/Function
MD5Message Digest generation using MD5 algorithm
SM2SM2 digital signature generation SM2 digital signature verification
SM3SM3 message digest generation
SM4SM4 data encryption and decryption
HMAC-MD5HMAC-MD5 MAC generation
ECC Commit ComputationECC commit computation used in ECSCHNORR and ECDAA Signature Generation
ECDAAECDAA digital signature generation ECDAA digital signature verification
ECSCHNORRECSCHNORR digital signature generation ECSCHNORR digital signature verification
AES-GCMAES-GCM data encryption using an externally generated IV
HMACHMAC MAC generation using with keys less than 112 bits
ECDSAECDSA key-pair generation using secp256k1 curve
ECDHE Shared Secret ComputationECDHE shared secret computation using brainpoolp384r1 curve

Table 4 – Approved Algorithms 2.6. Non-Approved Algorithms The module does not implement any Non-Approved Algorithms Allowed in the Approved Mode of Operation nor Non-Approved Algorithms Allowed in the Approved Mode of Operation with No Security Claimed. The module implements the following non-Approved algorithms Not Allowed in the Approved Mode of Operation listed in the table below.

12 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 13
RSARSA key-pair generation using 1024 bits modulus size RSA digital signature generation using MD5, SM3 or SHA-1 hash algorithm RSA digital signature verification using MD5 or SM3 hash algorithm
RSARSA key encapsulation and un-encapsulation using MD5 or SHA-1 RSA key encapsulation and un-encapsulation using 1024-bit modulus RSA key un-encapsulation using 3072 or 4096-bit modulus

Table 5 - Non-Approved Algorithms Not Allowed in the Approved Mode of Operation

13 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 14
Physical PortLogical Interface4Data that passes over port/interface
SRAMData InputAll data (except control data entered via the control input interface) that is input to and processed by a cryptographic module
SRAMData OutputAll data (except status data output via the status output interface and control data output via the control output interface) that is output from a cryptographic module
SRAMControl InputControl data used to control the operation of a cryptographic module
SRAMStatus OutputAll status data used to indicate the status of a cryptographic module
Provided by the underlying SoC/PCH.Power Inputexternal electrical power that is input to a cryptographic module

The cryptographic module is defined as a Firmware-Hybrid module. The logical interfaces are the application program interface (API) through which operators request services from the module power interfaces are provided by the computing platform on which it runs. The module does not implement a control output interface. The following table summarizes the four logical interfaces: Table 6 - Ports and Interfaces

4 Control Output Interface is not implemented in the module and thus omitted from this table.

14 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 15
RoleServiceInputOutput
UserAES data encryptionKey and Plaintext DataCiphertext Data
UserAES data decryptionKey and Ciphertext DataPlaintext Data
UserAES message authentication code generationKey and MessageMessage Authentication Code
UserAES message authentication code verificationKey and Message Authentication CodeTrue or False
UserHMAC message authentication code generationKey and MessageMessage Authentication Code
UserRSA key pair generationKey SizeRSA Key Pair
UserRSA public key validationRSA Public KeyTrue or False
UserRSA digital signature generationRSA Private Key and MessageDigital Signature
UserRSA digital signature verificationRSA Public Key and Digital SignatureTrue or False
UserRSA Key Transport (Key encapsulation)RSA Public Key and Plaintext KeyEncrypted Key
UserRSA Key Transport (Key un-encapsulation using a key size of 2048 bits)RSA Private Key and Encrypted KeyPlaintext Key
UserECDSA key pair generationEC curveECDSA Key Pair
UserECDSA public key verificationECDSA Public KeyTrue or False
UserECDSA signature generationECDSA Private Key and MessageDigital Signature

4. Roles, Services and Authentication 4.1. Roles The module supports the following roles:

15 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 16
UserECDSA signature verificationECDSA Public Key and Digital SignatureTrue or False
UserECDH key agreementEC Curve, Party U’s ephemeral private key, and Party V’s ephemeral public keyDerived Key
UserSHS Message digest generationMessageMessage Digest
UserRandom Number GenerationEntropy input string and nonceRandom Numbers
UserKey DerivationKey Derivation KeyDerived Key
UserShow Module VersionNoneModule Base Name + Module Version Number
UserShow StatusNoneOperational/Error status
UserOn Demand Self-Test (Pre-operational Integrity Test and Conditional Algorithm Self-Test)NonePass/Fail status
UserZeroizationNoneNone
Crypto OfficerModule InitializationBIOS settingsNone
User(Non-Approved) Data Encryption using AES- GCM with externally generated IVKey and Plaintext DataCiphertext Data
User(Non-Approved) Data Encryption and Decryption using SM4Key and Plaintext Data for Encryption; Key and Ciphertext Data for DecryptionCiphertext Data for Encryption; Plaintext Data for Decryption
User(Non-Approved) Message digests using MD5 or SM3MessageMessage Digest
User(Non-Approved) MAC generation using HMAC-MD5Key and MessageMessage Authentication Code
User(Non-Approved) MAC generation using less than 112 bits HMAC keyKey and MessageMessage Authentication Code
User(Non-Approved) Key generation using RSA with 1024 bits modulus sizeKey SizeRSA Key Pair
User(Non-Approved) Key generation using ECDSA using secp256k1 curveEC curveRSA Key Pair

16 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 17
User(Non-Approved) Digital signature generation using RSA with MD5, SM3 or SHA-1 for any modulus sizePrivate Key and MessageDigital Signature
User(Non-Approved) Digital signature verification using RSA with MD5, or SM3 for any modulus sizePublic Key and Digital SignatureTrue or False
User(Non-Approved) Digital signature generation using ECSCHNORR, ECDAA, or SM2 algorithmPrivate Key and MessageDigital Signature
User(Non-Approved) Digital signature verification using ECSCHNORR, ECDAA, or SM2 algorithmPublic Key and Digital SignatureTrue or False
User(Non-Approved) Key Transport (key encapsulation and un- encapsulation) using RSA-OAEP with MD5 or SHA-1Public Key and Plaintext Key for encapsulation; Private Key and Encrypted Key for un- encapsulationEncrypted Key for encapsulation; Plaintext Key for un- encapsulation
User(Non-Approved) Key Transport (key encapsulation and un- encapsulation) using RSA-OAEP with 1024- bit modulusPublic Key and Plaintext Key for encapsulation; Private Key and Encrypted Key for un- encapsulationEncrypted Key for encapsulation; Plaintext Key for un- encapsulation
User(Non-Approved) Key Transport (key un- encapsulation) using RSA-OAEP with 3072 or 4096-bit modulusPrivate Key and Encrypted KeyPlaintext Key
User(Non-Approved) Shared secret computation using ECDHE with brainpoolp384r1 curveParty U’s ephemeral private key, and Party V’s ephemeral public keyShared Secret
User(Non-Approved) ECC Commit Computation using ECSCHNORR and ECDAA (used in ECSCHNORR and ECDAA Signature Generation)EC Curve, Hash function, public and private keysECC Commit Computation

Table 7 - Roles, Service Commands, Input and Output 4.2. Services The module provides services to the operator that assumes one of the authorized roles, User role after operator is authenticated or CO role which is not authenticated but can only perform

17 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 18

fips_indicator

FIPS_APPROVED_SEC_FUN

ServiceDescriptionApproved Security FunctionsKeys and/or SSPsRoleAccess rights to Keys and/or SSPsIndicat or
AES data encryptionData Encryption using Advanced Encryption Standard algorithmAES-CBC, AES-CFB128, AES-CTR, AES-ECB, AES-OFB, AES-GCMAES keysUserWrite, Execute, Zeroise1
AES data decryptionData Decryption using Advanced Encryption Standard algorithmAES-CBC, AES-CFB128, AES-CTR, AES-ECB, AES-OFB, AES-GCMAES keyUserWrite, Execute, Zeroise1
AES message authentication code generationMessage Authenticatio n Code Generation using Advanced Encryption Standard algorithmAES-CMACAES keyUserWrite, Execute, Zeroise1

initialization service. All services are described in detail in the user documentation. For Approved services, a fips_indicator flag is enabled in the crypto_ioctl_status_t structure and is set to FIPS_APPROVED_SEC_FUN when a function is an approved service. After the module completes the requested service, it will report the status as an output parameter indicating whether the service was Approved (i.e., set to “1”). The following table lists the Approved services and the non-Approved but allowed services in approved mode of operation, the roles that can perform the service, the Critical Security Parameters involved and how they are accessed: Generate: The module generates or derives the SSP. Read: The SSP is read from the module (e.g., the SSP is output). Write: The SSP is updated, imported, or written to the module. Execute: The module uses the SSP in performing a cryptographic operation. Zeroise: The module zeroises the SSP.

18 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 19
ServiceDescriptionApproved Security FunctionsKeys and/or SSPsRoleAccess rights to Keys and/or SSPsIndicat or
AES message authentication code verificationMessage Authenticatio n Code Verification using Advanced Encryption Standard algorithmAES-CMACAES keyUserWrite, Execute, Zeroise1
HMAC message authentication code generationMessage Authenticatio n Code Generation using Hashed Message Authenticatio n Code algorithmHMAC-SHA-1 HMAC-SHA-224 HMAC-SHA-256 HMAC-SHA-384 HMAC-SHA-512HMAC keyUserWrite, Execute, Zeroise1
RSA key-pair generationAsymmetric Key Pair GenerationRSA Key Generation, (CKG Vendor Affirmed), DRBGModule Generated RSA public key / Module Generated RSA private keyUserGenerate, Read1
RSA public key validationPublic Key Validation of RSA public keyRSA Key ValidationModule Generated RSA public key/RSA public keyUserWrite, Zeroize1
RSA digital signature generationDigital Signature Generation using RSAPKCS#1 v1.5 RSASSA-PSS, DRBG, SHAModule Generated RSA private key/RSA private keyUserWrite, Execute, Zeroise1
RSA digital signature generation primitiveDigital Signature Generation on a pre- hashed message using RSAPKCS#1 v1.5 RSASSA-PSS, DRBGModule Generated RSA private key/RSA private keyUserWrite, Execute, Zeroise1
RSA digital signature verificationDigital Signature Verification using RSAPKCS#1 v1.5 RSASSA-PSS, SHAModule Generated RSA public key/RSA public keyUserWrite, Execute, Zeroise1

19 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 20
ServiceDescriptionApproved Security FunctionsKeys and/or SSPsRoleAccess rights to Keys and/or SSPsIndicat or
RSA key transport (key encapsulation)Plaintext Key Encryption (encapsulatio n) using KTS- RSAKTS-OAEP-basic, DRBGRSA public keyUserWrite, Execute, Zeroise1
RSA key transport (key un- encapsulation)Encrypted Key Decryption (un- encapsulatio n) using KTS- RSA with a key size of 2048 bitsKTS-OAEP-basicModule Generated RSA private keyUserWrite, Execute, Zeroise15
RSA decryption primitiveRSA decryption primitive as defined in SP800- 56BRev2 Section 7.1.2.1RSADPModule Generated RSA private key/RSA private keyUserWrite, Execute, Zeroise1
ECDSA key-pair generationAsymmetric Key Pair GenerationECDSA Key Generation (CKG Vendor Affirmed), DRBGECDSA public key, ECDSA private keyUserGenerate, Read1
ECDSA public key validationPublic Key Validation of ECDSA public keyECDSA Public Key ValidationECDSA public keyWrite, Zeroise1
ECDSA digital signature generationDigital Signature Generation using ECDSAECDSA Digital Signature Generation, DRBG, SHAECDSA private keyWrite, Execute, Zeroise1
ECDSA digital signature verificationDigital Signature Verification using ECDSAECDSA Digital Signature Verification, SHAECDSA public keyWrite, Execute, Zeroise1
ECDH key agreementDiffie- Hellman Key Agreement using Elliptic CurveKAS-ECCECDH private key and remote public keyUserWrite, Execute,1
shared secretGenerate

20 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 21
ServiceDescription Cryptograph yApproved Security FunctionsKeys and/or SSPs SP 800-56C KDF derived keyRoleAccess rights to Keys and/or SSPs Generate, ReadIndicat or
SHS message digest generationMessage Digest Generation using Secure Hash Standard algorithmSHA-1 SHA-224 SHA-256 SHA-384 SHA-512NoneUserNone1
Random Number GenerationDeterministic Random Number GenerationCTR_DRBGEntropy Input StringUserWrite, Execute1
DRBG SeedWrite, Read, Zeroize
DRBG internal states (V and Key)Write, Read, Zeroize
Key DerivationDerive key using KBKDF in counter modeKBKDFKBKDF key derivation keyUserWrite, Execute, Zeroise1
KBKDFGenerate, Execute
Show Module VersionOutput Module Name and Module Hardware and Firmware Version NumbersNoneNoneUserNoneN/A
Show StatusOutputs Operational / Error Status of the ModuleNoneNoneUserNoneN/A
On Demand Self- Test (Pre- operational Integrity Test and Conditional Algorithm Self- Test)Performs On Demand Self- TestSee Section 10NoneUserNoneN/A
ZeroizationZeroizes all CSPsSee Section 9.6All CSPsUserZeroizeN/A

21 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 22
ServiceDescriptionApproved Security FunctionsKeys and/or SSPsRoleAccess rights to Keys and/or SSPsIndicat or
Module InitializationConfigure BIOS to Initialize in FIPS Validated ConfigurationNoneNoneCrypt o Offic erNoneN/A
ServiceDescriptionAlgorithms AccessedRoleIndicator
Data Encryption using AES- GCM with externally generated IVData Encryption using AES- GCM with externally generated IVAES-GCMUserN/A
Data Encryption and Decryption using SM4Data Encryption and Decryption using SM4SM4UserN/A
Message digests using MD5 or SM3Message digests using MD5 or SM3MD5 or SM3UserN/A
MAC generation using HMAC- MD5MAC generation using HMAC- MD5HMAC-MD5UserN/A
MAC generation using less than 112 bits HMAC keyMAC generation using less than 112 bits HMAC keyHMACUserN/A
Key generation using RSA with 1024 bits modulus sizeKey generation using RSA with 1024 bits modulus sizeRSAUserN/A
Key generation using ECDSA using secp256k1 curveKey generation using ECDSA using secp256k1 curveECDSAUserN/A
Digital signature generation using RSA with MD5, SM3 or SHA-1 for any modulus sizeDigital signature generation using RSA with MD5, SM3 or SHA-1 for any modulus sizeRSA with MD5, SM3 or SHA-1UserN/A
Digital signature verification using RSA with MD5, or SM3 for any modulus sizeDigital signature verification using RSA with MD5, or SM3 for any modulus sizeRSA with MD5, or SM3UserN/A
Digital signature generation using ECSCHNORR, ECDAA, or SM2 algorithmDigital signature generation using ECSCHNORR, ECDAA, or SM2 algorithmECSCHNORR, ECDAA, or SM2UserN/A
Digital signature verification using ECSCHNORR, ECDAA, or SM2 algorithmDigital signature verification using ECSCHNORR, ECDAA, or SM2 algorithmECSCHNORR, ECDAA, or SM2UserN/A
Key Transport (key encapsulation and un- encapsulation) using RSA- OAEP with MD5 or SHA-1Key Transport (key encapsulation and un- encapsulation) using RSA- OAEP with MD5 or SHA-1RSA, MD5, SHA-1UserN/A

Table 8 – Approved Services The following table lists the services only available in non-approved mode of operation:

22 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 23
ServiceDescriptionAlgorithms AccessedRoleIndicator
Key Transport (key encapsulation and un- encapsulation) using RSA- OAEP with 1024-bit modulusKey Transport (key encapsulation and un- encapsulation) using RSA- OAEP with 1024-bit modulusRSAUserN/A
Key Transport (key un- encapsulation) using RSA- OAEP with 3072 or 4096-bit modulusKey Transport (key un- encapsulation) using RSA- OAEP with 3072 or 4096-bit modulusRSAUserN/A
Shared secret computation using ECDHE with brainpoolp384r1 curveShared secret computation using ECDHE with brainpoolp384r1 curveKAS-ECCUserN/A
ECC Commit Computation using ECSCHNORR and ECDAA (used in ECSCHNORR and ECDAA Signature Generation)ECC Commit Computation using ECSCHNORR and ECDAA (used in ECSCHNORR and ECDAA Signature Generation)ECSCHNORR and ECDAAUserN/A

Table 9 – Non-Approved Services 4.3. Operator Authentication The module implements role-based operator authentication to authenticate the User Role. The authentication mechanism is based on the RSASSA-PSS signature algorithm with 3072-bit modulus (Cert. #A3362). The Crypto Officer role is not authenticated. The Crypto Officer role can only perform the initialization service, which is a non-authenticated service and does not affect the security of the module per IG 4.1.A. An operator with the User role is the CSME firmware application (Figure 5). There can be only one CSME application running and interfacing with the module during the module’s operation, enforced by the design of the module. Thus, the module does not support concurrent operators. The manufacturer utilizes their unique RSA private key to sign the CSME application images. The private signing keys are kept in a HSM (Hardware Security Module) within an Intel secured facility and remain unknown to both the module and the CSME application. The public key and the signature are provided as part of the firmware manifest. The hash of the public key is also hardcoded in the module. During runtime, the public key in the provided firmware manifest is first hashed, then compared with the hash stored in module. If the hash matches, the module proceeds to assert whether the signature of the CSME application verifies, using the public key. If the signature verification succeeds, the CSME application firmware is authenticated and hence can be loaded and executed. The module does not maintain authentication after computing platform power loss (power-off, reset, etc.). The authentication process occurs within the physical perimeter of the module, and thus it is not visible outside of this perimeter. The authentication data is essentially composed of public data (signature and public key); therefore, their disclosure does not affect the security of the authentication mechanism. 4.3.1. Strength of Authentication The digital signature verification authentication mechanism using RSA PSS with 3072-bit modulus provides an encryption strength of 128 bits. The strength of this mechanism is equivalent to the probability of correctly guessing the private signing key, and this probability is 1/2128 (or 2.94e39).

23 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 24
RoleAuthentication MethodAuthentication Strength
Crypto OfficerN/A (IG 4.1.A)N/A
UserRole-based128-bits

If attempts are made to authenticate an operator by guessing the private key and presenting the corresponding signature of the CSME firmware, we may suppose a rate of 1μs per attempted authentication (i.e., per guess of the private key and respective signature). This rate would allow 60,000,000 consecutive attempts per minute. The probability of successfully authenticating at this rate is less than or equal to 60,000,000 * 1/2128 (≤1.7632e-31). Table 10 - Roles and Authentication

24 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 25

5. Software/Firmware Security 5.1. Integrity Techniques A firmware integrity test is performed on the runtime image of the module. The HMAC-SHA256 implemented in the module is used as an approved algorithm for the integrity test. If the test fails, the module enters an error state where no cryptographic services are provided, and data output is prohibited i.e., the module is not operational. The OCS ROM component of the module is a non-reconfigurable memory (specifically masked ROM), which is exempt from the requirements of integrity test. The vendor performed memory degradation testing to assert that the memory will not degrade before 10 (ten) years of manufacture date, thus complying with the requirements of IG 5.A. 5.2. On-Demand Integrity Test The on-demand integrity self-tests can be invoked by the user performing reboot, the device which will cause pre-operational and conditional self-tests to run. 5.3. Executable Code The Converged Security Management Engine (CSME) Driver i.e., module’s firmware, is made up of a single component, provided in the form of binary executable code. The firmware wholly contains the executable form without further compilation.

25 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 26

6. Operational Environment 6.1. Applicability The module operates in a non-modifiable operational environment per FIPS 140-3 security level 2 specifications. The operator cannot modify the firmware component of the module. The module runs on an internal customized proprietary OS (i.e., CSME OS) within the Intel SoC.

26 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 27

7. Physical Security The module is a hybrid firmware module that operates on a single-chip standalone platform which conforms to the Level 2 requirements for physical security. The single chip cryptographic module is a production grade component that include standard passivation (e.g., a sealing coat applied over the chip circuitry to protect it against environmental and other physical damage). The layering process which is used to embed the die into the PCB of the single chip computing platform also provides opacity that prevents viewing internal construction within the visible spectrum. The single chip enclosure prevents accessing of the module’s hardware components without leaving physical tamper evidence.

27 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 28

8. Non-invasive Security This module does not implement any non-invasive security mechanism, and therefore this section is not applicable.

28 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 29
SSP NameStrengthSecurity Function Cert NumberGenerati onImport / ExportEstablish mentStorag eZeroizatio nUse & related keys
AES keys128-bits and 256-bitsAES-ECB AES-CMAC AES-CBC, AES- CFB128, AES-CTR, AES-GCM AES-OFB A3362N/AInput: API input parameters Output: N/A, the module does not output any AES keys; MD/EEN/AStore d as plaint ext in the RAM.Keys in RAM are automatic ally zeroized at the conclusio n of every service or by power- cycling (e.g., reset, power- off).Use: Symmetric encryption and decryption ; Message authentica tion code (MAC) generation and verification Related keys: N/A
HMAC keysMinimu m of 112-bitsHMAC A3362N/AInput: API input parameters Output: N/A, the module does not output any HMAC keys; MD/EEN/AStore d as plaint ext in the RAM.Keys in RAM are automatic ally zeroized at the conclusio n of every service or by power- cycling (e.g., reset, power- off).Use: Message authentica tion code (MAC) generation and verification Related keys: N/A
Module generated RSA public key (Including intermediat e keygen values)112-bitsRSA CTR_DRBG A3362The RSA public key can be generate d using FIPS 186-4 RSA Key Generati on method. The prime number used inInput: N/A Output: API output parameters ; MD/EEN/AStore d as plaint ext in the RAM.Keys in RAM are automatic ally zeroized at the conclusio n of every service or by power- cycling (e.g., reset, power- off).Use: RSA key generation , RSA public key validation Related keys: DRBG internal state, Module generated RSA private key

9. Sensitive Security Parameter Management Keys residing in internal storage can only be accessed using the defined API. Memory and process space is protected from unauthorized access by the operating system. Only the process that According to FIPS 140-3, Sensitive Security Parameters (SSPs) consist of Critical Security Parameters (CSPs) and Public Security Parameters (PSPs). The following table summarizes all CSPs, and PSPs

29 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 30
SSP NameStrengthSecurity Function Cert NumberGenerati on the RSA Key Generati on is generate d using SP 800- 90Arev1 DRBG.Import / ExportEstablish mentStorag eZeroizatio nUse & related keys (Including intermedia te keygen values)
Module generated RSA private key (Including intermediat e keygen values)112-bitsRSA CTR_DRBG A3362The RSA public key can be generate d using FIPS 186-4 RSA Key Generati on method. The prime number used in the RSA Key Generati on is generate d using SP 800- 90Arev1 DRBG.Input: N/A Output: N/AN/AStore d as plaint ext in the RAM.Keys in RAM are automatic ally zeroized at the conclusio n of every service or by power- cycling (e.g., reset, power- off).Use:RSA key generation , RSA digital signature generation , RSA Key Transport, RSA Decryption Primitive Related keys: DRBG internal state, Module generated RSA public key (Including intermedia te keygen values)
RSA public key (including intermediat e keygen values)80- bits6, 112- bits, 128-bits and 150-bitsRSA A3362N/AInput: API input parameters Output: N/A; MD/EEN/AStore d as plaint ext in the RAM.Keys in RAM are automatic ally zeroized at the conclusio n of every service or by power- cycling (e.g., reset, power- off).Use: RSA digital signature verification , RSA Key Transport, RSA public key validation. Related keys: RSA private key (including intermedia te keygen values)

30 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 31
SSP NameStrengthSecurity Function Cert NumberGenerati onImport / ExportEstablish mentStorag eZeroizatio nUse & related keys
RSA private key (including intermediat e keygen values)112- bits, 128-bits and 150-bitsRSA A3362N/AInput: API input parameters Output: N/A; MD/EEN/AStore d as plaint ext in the RAM.Keys in RAM are automatic ally zeroized at the conclusio n of every service or by power- cycling (e.g., reset, power- off).Use: RSA digital signature generation Related keys: RSA public key (including intermedia te keygen values)
ECDSA/ ECDH (ECC) public key (including inter- mediate keygen values)128-bits and 192-bitsECDSA, KAS-ECC- SSC CTR_DRBG A3362The ECC public key can be generate d using FIPS 186-4 ECDSA Key Generati on method and the random value used in key generati on is generate d using SP 800- 90Arev1 DRBG.Input: API input parameters Output: API output parameters ; MD/EEN/AStore d as plaint ext in the RAM.Keys in RAM are automatic ally zeroized at the conclusio n of every service or by power- cycling (e.g., reset, power- off).Use: ECDSA digital signature verification , ECDSA key generation , ECDSA public key validation, Shared secret computati on Related SSPs: DRBG internal state, EC Diffie- Hellman Shared Secret, ECDSA/ ECDH (ECC) private key (including inter- mediate keygen values)
ECDSA/ ECDH (ECC) private key (including inter- mediate128-bits and 192-bitsECDSA, KAS-ECC- SSC CTR_DRBG A3362The ECC private key can be generate d using FIPS 186-4Input: API input parameters Output: API output parameters ; MD/EEN/AStore d as plaint ext in the RAM.Keys in RAM are automatic ally zeroized at the conclusio n of everyUse: ECDSA digital signature generation , ECDSA key generation

31 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 32
SSP Name keygen values)StrengthSecurity Function Cert NumberGenerati on ECDSA Key Generati on method and the random value used in key generati on is generate d using SP 800- 90Arev1 DRBG.Import / ExportEstablish mentStorag eZeroizatio n service or by power- cycling (e.g., reset, power- off).Use & related keys , Shared secret computati on Related SSPs: DRBG internal state, EC Diffie- Hellman Shared Secret, ECDSA/ ECDH (ECC) public key (including inter- mediate keygen values)
Shared Secret128- bits and 192- bitsKAS-ECC- SSC A3362N/AInput: N/A Output: N/AThe shared secret is generate d in the EC Diffie- Hellman key agreeme nt function.Store d as plaint ext in the RAM.Keys in RAM are automatic ally zeroized at the conclusio n of every service or by power- cycling (e.g., reset, power- off).Use: Shared Secret Computati on Related SSPs: ECDSA/ ECDH (ECC) public key (including inter- mediate keygen values), ECDSA/ ECDH (ECC) private key (including inter- mediate keygen values), SP 800-56C KDF derived key
SP 800-56C KDF derived keyConting ent on key derivati on keyKey Agreement Key Derivation A3362Derived using 800-56C KDF algorithInput: N/A Output: API outputN/AStore d as plaint ext inUse: Key Derivation Related SSPs:

32 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 33
SSP NameStrength and length of outputSecurity Function Cert NumberGenerati on m in the EC Diffie- Hellman key agreeme nt functionImport / Export parameters ; MD/EEEstablish mentStorag e the RAM.Zeroizatio nUse & related keys Shared Secret
KBKDF key derivation keyConting ent on key derivati on key and length of outputKey-Based Key Derivation A3362N/AInput: API input parameters Output: N/A; MD/EEN/AStore d as plaint ext in the RAM.Keys in RAM are automatic ally zeroized at the conclusio n of every service or by power- cycling (e.g., reset, power- off).Use: Key Derivation Related SSPs: KBKDF derived key
KBKDF derived keyConting ent on key derivati on key and length of outputKey-Based Key Derivation A3362Derived using KBKDF algorith mInput: N/A Output: API output parameters ; MD/EEN/AStore d as plaint ext in the RAM.Use: Key Derivation Related SSPs: KBKDF key derivation key
Entropy Input String256-bitsCTR_DRBG A3362N/AInput: Obtained from the hardware ENT (P) outside of the cryptograp hic boundary but within its TOEPP Output: N/AN/AStore d as plaint ext in the RAM.Zeroized during the power cycle of the module.Use: Random number generation Related SSPs: Entropy Input, DRBG Seed
DRBG Seed256-bitsCTR_DRBG A3362Derived from the entropy string as defined by SP 800- 90ARev1Input: N/A Output: N/AN/AStore d as plaint ext in the RAM.Zeroized during the power cycle of the module.Use: Random number generation Related SSPs: Entropy input, DRBG internal state: (V and Key values)

33 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 34
SSP NameStrengthSecurity Function Cert NumberGenerati onImport / ExportEstablish mentStorag eZeroizatio nUse & related keys
DRBG internal state: (V and Key values)256-bitsCTR_DRBG A3362Generat ed internall y in the DRBG.Input: N/A Output: N/AN/AStore d as plaint ext in the RAM.Zeroized during the power cycle of the module.Use: Random number generation Related SSPs: DRBG Seed
Entropy SourceMinimum number of bits of entropyDetails
SP800-90B ENT (P) Physical128-bits per 128-bitsHardware entropy source with CBC-MAC conditioning component (Cert. #A2542) located within the tested execution environment’s physical perimeter.

Table 11 - Life cycle of Sensitive Security Parameters (SSP) derivation function and without prediction resistance as the approved Random Number Generator. The CTR_DRBG is implemented in the firmware (i.e., CSME Crypto Driver) and provides between 128 and 65536 bits of output data per each request. (V and key values)' are considered CSPs by the module. Non-DRBG functions cannot access the DRBG internal state. for seeding the CTR_DRBG inside the module. The entropy source provides a 128-bit output. At the Table 12 - Non-Deterministic Random Number Generation (Entropy Source) Specification The module implements asymmetric key generation services for RSA7, ECDSA and EC Diffie-Hellman keys, compliant to SP800-133rev2 Cryptographic Key Generation (CKG, vendor affirmed) in accordance with IG D.H. For generating RSA and ECDSA keys, a seed (i.e., random value) used in asymmetric key generation obtained directly from the module’s approved SP800-90Arev1 DRBG (i.e., CTR_DRBG, Cert. #A3362). This follows asymmetric key generation method compliant with FIPS186-4 and defined in Section 5.1 of SP 800-133rev2 . The EC Diffie-Hellman keys are generated internally by the module using the ECDSA key generation method compliant with FIPS186-4 and SP800-56Arev3 as defined in section 5.2 of SP800-133rev2. The module does not offer a dedicated service for generating symmetric keys.

7 Approved RSA Key Generation will only use public key exponent e = 2 16 + 1

34 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 35

9.3. SSP Establishment The module provides an approved [SP800-56Arev3] EC Diffie-Hellman Key Agreement Scheme. The key agreement scheme is compliant with IG D.F scenario 2 path (2). The CAVP testing was performed end-to-end, using the Ephemeral Unified Model with approved domain parameters (i.e., P-256 and P-384 curves and SHA-224, SHA-256, SHA-384, and SHA-512 auxiliary function) resulting in a KASECC Cert. #A3362. The module provides key derivation service using SP800-108 KBKDF. The module supports SP800-56Brev2 Key Transport using KTS-OAEP-basic8. RSA-KTS encapsulation is approved with the key sizes of 2048, 3072 and 4096 bits in approved mode while RSA-KTS unencapsulation is approved only with a key size of 2048 bits in the approved mode. 9.3.1. Assurances The following statements explain the SP800-56Brev2 assurances found in its Section 5:

6.4.1.1 of the SP 800-56BRev2. Additionally the entity shall renew these assurances

over time by using any method described in section 6.4.1.5 of the SP 800-56BRev2. 2) For use of an RSA key wrapping (encapsulation) service in the context of key transport per IG D.G,

8 KTS-OAEP-basic is the basic scheme without key confirmation defined in section 9.2.3 of SP800-56Brev2.

35 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 36

9.4. SSP Entry / Output The module does not support manual key entry or intermediate key generation key output. SSPs entered into the module are electronically entered in plain text form. SSPs are output from the module in plain text form if required by the calling application. 9.5. SSP Storage The symmetric keys and HMAC keys are provided to the module via API input parameters and are zeroized by the module before they are released in the memory. Asymmetric public and private keys are provided to the module via API input parameters and are destroyed by the module before they are released in the memory. 9.6. SSP Zeroization The memory occupied by SSPs is stored in RAM during runtime, allocated by regular memory allocation operating system calls. Every service of the module performs a zeroization operation as the last step before exiting from the function. The zeroization operation overwrites the memory occupied by keys with “zeros” before de-allocating the memory with the regular memory deallocation operating system call. In addition, the RAM is volatile so zeroization of all SSPs can be performed by power-cycling (i.e., reset) or power-off the computing platform. Additionally, while zeroization is in progress, data output is inhibited. Once a SSP is zeroized, it is no longer retrievable. The module uses an implicit indicator to express the completion of the zeroization operation. Zeroization is performed by the module through the course of executing its services. The module implicitly indicates the success of the zeroization by accepting the proceeding request. If the module accepts the next service request, this implicitly indicates that the zeroization of the previous service request successfully completed. Lastly, temporary SSPs are zeroized when they are no longer needed.

36 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 37
AlgorithmConditional CAST Performed
AES• AES-ECB Encryption KAT • AES-ECB Decryption KAT • AES-CMAC Generation (Encryption) KAT
HMAC• HMAC-SHA-1 KAT • HMAC-SHA-256 KAT • HMAC-SHA-512 KAT

10. Self-Tests The module performs pre-operational firmware integrity test and conditional algorithm self-tests to ensure the correctness of the cryptographic algorithm implementations within the module boundary. The pre-operational and conditional cryptographic algorithm self-tests (CAST) are performed automatically at power-up or reset without any user interaction and must successfully pass all tests prior to providing any services to the caller. While the module is performing self-test, all access through data input, data output, control input and status output are inhibited. The module executes functions sequentially. While the self-tests are executing, no interaction is possible. The module does not implement a Software/Firmware Load Test, Manual Entry Test, Conditional Bypass Test nor Conditional Critical Functions Test, as the related functions are not implemented. If any test fails, the module reports an error message through the status interface and enters the Error State. No data output and cryptographic operation are performed while the module is in the Error State. To recover from the Error State, the module must transition to the power off state, then to the power on state by a power cycle and must successfully pass both pre-operational integrity test and conditional algorithm self-tests. That is to say, when an error condition is detected and the error state is entered, all data output via the data output interface is inhibited, until error recovery occurs. 10.1. Pre-operational Firmware Integrity Test The module performs pre-operational firmware integrity tests automatically when the computing platform is powered on, and the module is loaded into memory. The module’s OCS ROM first performs an HMAC-SHA-256 conditional cryptographic algorithm self-test (CAST) and after successfully passing, the module performs an integrity test of the module’s firmware component (Converged Security Management Engine (CSME) Driver) by computing an HMAC-SHA-256 value of the binary and comparing it with the value stored in the module that was computed at build time. If the HMAC values do not match, the test fails, and the module enters the Error state. While the module is performing pre-operational firmware integrity test, the module’s data output is inhibited. 10.2. Conditional Cryptographic Algorithm Self-Tests The module performs a conditional cryptographic algorithm self-test (CAST) on all FIPS-Approved cryptographic algorithms supported in the approved mode of operation and per IG 10.3.A. The conditional cryptographic algorithm self-tests are performed before the first use of the related algorithm: First the AES ECB, HMAC-SHA-1, HMAC-SHA-256, HMAC-SHA-512,and KAS-SSC are selftested in hardware, prior to the integrity test of the firmware component, and then the rest of the CASTs are automatically performed after the integrity test completes successfully (and before the module enters the operational state 9). If any of the cryptographic algorithm self-test fails, the module will enter the Error State, wherein all data output is inhibited. The pre-operational and conditional algorithm tests performed are shown in the following table:

9 Operational State is the state where the operator can request services of the module.

37 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 38
AlgorithmConditional CAST Performed
SHS• SHA-1 KAT • SHA-256 KAT • SHA-512 KAT
ECDSA• ECDSA Signature Generation KAT using P-256 curve and SHA-256 message d • Signature Verification KAT using P-256 curve and SHA-256 message digest
DRBG• CTR_DRBG KAT
RSA• RSA PKCS#1 v1.5 Signature Generation KAT with 2048 modulus and SHA-256 message digest • RSA PKCS#1 v1.5 Signature Verification KAT with 2048 modulus and SHA-256 message digest • KTS-OAEP Encryption KAT with 2048 modulus • KTS-OAEP Decryption KAT with 2048 modulus
SP800-108rev1 KDF• KBKDF KAT using HMAC-SHA-384
KAS-SSC• KAS-ECC Shared Secret Computation KAT using P-256 curve • One-Step KDF KAT using HMAC-SHA-384
OHT• Health Test for ENT (P)

Table 13 - Conditional Cryptographic Algorithm Self-Tests 10.2.1. Entropy Related Health Tests Intel has designed a proprietary Online Health Test (OHT) for the ENT (P) that can detect when:

  1. Some value is consecutively repeated more times than expected, given the assessed entropy per sample of the source.
  2. Some value becomes much more common in the sequence of noise source outputs than expected, given the assessed entropy per sample of the source. After each reset, the OHT is automatically started and runs continuously until power-off or the next reset. A constant stream of 256-bit samples is outputted from the noise source into the OHT where it tracks the entropy health. The OHT is designed to have the same functionality and health coverage as the following health tests required by NIST SP 800-90B: • Start-Up Tests • Repetitive Counter Test (RCT) • Adaptive Proportion Test (APT) The OHT was designed to detect repeating patterns from the ENT (P). The OHT accomplishes this by continuously monitoring the statistical arrival rate of short bit patterns. As the bit patterns arrive, they are counted and then tested to see if the total pattern number lay within the expected binomial distribution. 10.2.2. Conditional Pair-wise Consistency Tests The module performs a Conditional Pair-wise Consistency Tests upon generating RSA and ECDSA/ECDH asymmetric key pairs. The test is implemented by calculating a signature on a

38 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 39

predetermined data and subsequently performing a verification of the signature. If the signature cannot be verified, the generated key-pair is discarded, and the module enters the Error State. 10.3. On-Demand and Periodic Self-Tests The on-demand and periodic self-tests can be invoked by the user performing reboot, the device which will cause pre-operational and conditional self-tests to run. 10.4. Error State The module implements one error state. If any of the self-tests described in sections above fails, the module indicates the error indicator associated with the specific error by invoking the crypto_fips_error_handler() function and causes the module to enter the error state. In the error state, no cryptographic services are provided, and data output is prohibited. When the module is in the error state, the only method to recover is to reset the computing platform which results in the module reperforming the pre-operational firmware integrity test and the conditional cryptographic algorithm self-tests. The module will only enter the operational state after successfully passing both.

39 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 40
  1. Life-cycle Assurance 11.1. Operator’s Guidance The following security guidance for Crypto Officer role is described below: • To enable the module for use in a FIPS validated configuration, the Crypto Officer must first perform initialization of the module. If FIPS operations are not enabled within the BIOS settings, then the module is not a 140-3 validated module and cannot enter the approved mode which means no FIPS services will be available. The Crypto Officer shall perform the following steps to initialize the module. o Power on the Host Platform and enter the BIOS menu setting. o Enter “FIPS mode” submenu. o Set “FIPS Mode Select” to <Enabled>. o Save and exit the BIOS menu. The Host Platform will the power-cycle (i.e., reset) and proceed to boot. Once “FIPS Mode Select” is Enabled, the CSME OS will set the crypto_fips_en file which serves the control input the module and initializing it as a FIPS 140-3 validated module following power-on. The following security guidance for User role is described below: • The User of the module can call the API function crypto_drv_fips_mode_status() to check if the module is an FIPS 140-3 validated module. If the call returns 1, the module is an FIPS 140-3 validated module; it returns 0 if the module is not an FIPS 140-3 validated module. Note, this is not the service indicator; the service indicator is provided as described in Section 4.2. Services. 11.2. Delivery Procedure The firmware component of the module is distributed as part of the CSME Device Driver firmware. Firmware is released on VIP site https://platformsw.intel.com. Only Original Equipment Manufacturers (OEM) with signed Intel agreements can download this firmware. The module is contained within one of the platforms listed in Table
  2. These Intel platforms are a tightly coupled component of 12th Generation Intel® Core™ chipsets. These platforms can be bundled with CPU as a kit, or outside the CPU packages as a discreet component mounted on the Printed Circuit Board (PCB). Intel requires their Original Equipment Manufacturer (OEM) partners that create, market, and sell these systems to meet the brand validation requirements and testing to ensure they have been designed and constructed with the proper components including CPU and Intel chipsets. Intel’s brand validation tool would detect any mismatch of CPU and chipset for any system being designed. Intel manages and implements security best practices throughout every step of their supply chain and works closely with their partners (i.e., Original Design Manufacturer and Original Equipment Manufacturer) to ensure that they meet Intel’s requirements for secure supply chain processes as specified in partner contract agreements. Therefore, end customers can be assured that any system had been designed and tested to conform to Intel’s requirements will always have an Intel PCH that contains the module. 11.3. AES GCM IV The User shall consider the following requirements and restrictions when using the module. AESGCM IV is constructed in accordance with SP800-38D in compliance with IG C.H scenario
  3. GCM IV generation uses an approved CTR_DRBG that is internal to the module’s boundary and the IV length is at least 96 bits (per SP 800-38D).

40 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 41

11.4. End of Life The module automatically performs secure sanitization at the conclusion of any service performed by the module. Since the module does not retain any persistent SSPs, the procedures for secure sanitization of the cryptographic module are inherently met.

41 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 42

12. Mitigation of Other Attacks The module provides mechanism to protect against RSA timing attacks. The OCS's (i.e., module’s hardware component) big-number arithmetic can perform the modular exponentiation operations in constant time. This means, the time taken is only dependent on the size of operands and not dependent on the value of the operands. During modular exponentiation, an extra mathematical step is needed when the processed bit of the key is 1 compared to a zero bit. The OCS’s big-number arithmetic implements a “dummy” step when processing a zero bit from the key such that this processing time is identical to the processing time of a set bit. Using this approach, an observer is unable to determine the number of set and unset bits from observing the timing behavior of the modular exponentiation operation. The CSME Crypto Driver takes advantage of this feature by enabling the functionality in the OCS for private key operations. This implies that the computation time using the private key is constant, hence mitigating timing attacks. The OCS’s AES block cipher in OCS supports an implementation that is resistant to DPA (Differential Power Analysis) attacks. The mechanism implemented is based on masking AES inputs at every stage with a pseudo-random mask. The seed for the pseudorandom mask generator is programmable. The OCS’s ECC has protection against known DPA Attacks. This is achieved by randomizing the inputs so there is no correlation to the power consumed and ECC operations. This is done by transforming inputs from one coordinate system (Affine) to another coordinate system (Randomized Jacobian).

42 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 43
Table, extracted as text (did not parse into structured rows)
Appendix A. Glossary and Abbreviations AES                Advanced Encryption Standard ADL-P              Alder Lake P ADL-S              Alder Lake S API                Application Program Interface CBC                Cipher Block Chaining CMVP               Cryptographic Module Validation Program CSME               Converged Security and Manageability Engine CSP                Critical Security Parameter CTR                Counter Mode CVL                Component Validation List DRBG               Deterministic Random Bit Generator ECB                Electronic Code Book ECC                Elliptic Curve Cryptography ECDAA              Elliptic Curve Direct Anonymous Attestation ECSCHNORR          Schnorr-type Digital Signature Scheme over Elliptic Curve FIPS               Federal Information Processing Standards Publication HMAC               Hash Message Authentication Code HCU                Hash Computation Unit KAS                Key Agreement Scheme KAT                Known Answer Test MAC                Message Authentication Code NIST               National Institute of Science and Technology OAEP               Optimal Asymmetric Encryption Padding PCH                Platform Controller Hub PCT                Pair-wise Consistency Test PSS                Probabilistic Signature Scheme RPL-M              Raptor Lake M RPL-P              Raptor Lake P RPL-S              Raptor Lake S RSA                Rivest, Shamir, Addleman SHA                Secure Hash Algorithm

43 of 45

© 2024 Intel® Corporation / atsec information security corporation.

Page 44
FIPS140-3FIPS 140-3 - Derived Test Requirements (DTR) March 2020 https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-140.pdf
FIPS140-3_IGImplementation Guidance for FIPS PUB 140-3 and the Cryptographic Module Validation Program October 7, 2022 https://csrc.nist.gov/CSRC/media/Projects/cryptographic-module-validation- program/documents/fips%20140-3/FIPS%20140-3%20IG.pdf
FIPS180-4Secure Hash Standard (SHS) March 2012 http://csrc.nist.gov/publications/fips/fips180-4/fips 180-4.pdf
FIPS186-4Digital Signature Standard (DSS) July 2013 http://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-4.pdf
FIPS197Advanced Encryption Standard November 2001 http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf
FIPS198-1The Keyed Hash Message Authentication Code (HMAC) July 2008 http://csrc.nist.gov/publications/fips/fips198 1/FIPS-198 1_final.pdf
PKCS#1Public Key Cryptography Standards (PKCS) #1: RSA Cryptography Specifications Version 2.1 February 2003 http://www.ietf.org/rfc/rfc3447.txt
SP800-38ANIST 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-38BNIST Special Publication 800-38A - Recommendation for Block Cipher Modes of Operation Methods and Techniques May 2005 https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-38b.pdf
SP800-56Arev3NIST Special Publication 800-56A Revision 3 - Recommendation for Pair Wise Key Establishment Schemes Using Discrete Logarithm Cryptography April 2018 https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-56Ar3.pdf
SP800-56Brev2NIST Special Publication 800-56B Revision 2 - Recommendation for Pair Wise Key Establishment Using Integer Factorization Cryptography March 2019 https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-56Br2.pdf 44 of 45 © 2024 Intel® Corporation / atsec information security corporation.
Page 45
SP800-90Arev1NIST Special Publication 800-90A Revision 1 - Recommendation for Random Number Generation Using Deterministic Random Bit Generators June 2015 http://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-90Ar1.pdf
SP800-90BNIST Draft Special Publication 800-90B - Recommendation for the Entropy Sources Used for Random Bit Generation January 2018 https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-90B.pdf
SP800-NIST Special Publication 800-131A - Transitions: Recommendation
131Arev2for Transitioning the Use of Cryptographic Algorithms and Key Lengths March 2019 https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-131Ar2.pdf
SP800-133rev2NIST Special Publication 800-133 Revision 2 - Recommendation for Cryptographic Key Generation June 2020 https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-133r2.pdf 45 of 45 © 2024 Intel® Corporation / atsec information security corporation.