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

Sm@rtCafé Expert 8.1

Certificate#5074StandardFIPS 140-3Level3TypeHardwareEmbodimentSingle ChipStatusActiveVendorGiesecke+Devrient ePayments GmbH
Medium review priority  ·  exposes HSM/SE firmware trust anchor  ·  last validated 9 months ago. How this is derived →

Certificate

StandardFIPS 140-3
Overall level3
Module typeHardware
EmbodimentSingle Chip
StatusActive
Sunset date10/2/2030
CaveatNone
VendorGiesecke+Devrient ePayments GmbH

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

flowchart LR
  %% Deterministic review-risk graph for Sm@rtCafé Expert 8.1
  %% Review prompts and evidence gaps, NOT vulnerability findings.
  subgraph CMVP["CMVP-disclosed clues"]
    C2["[low] Firmware update / recovery<br/>/ rollback (referenced in<br/>text)<br/><i>UPDATE<br/>Recovery</i>"]
    C3["[low] Self-test / status surface<br/>(referenced in text)<br/><i>Self-Test<br/>UnAuth<br/>Status Output</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."]
    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?"]
    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"]
    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
  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,C6 clue;
  class I2,I3,I6 infer;
  class R2,R3,R6 risk;
  class E2,E3,E6 evidence;
Underlying clues
flowchart LR
  %% Deterministic clue tier for Sm@rtCafé Expert 8.1
  %% confidence: high = structured record field; medium = structured but soft; low (dashed) = bare keyword hit, context unverified
  subgraph CMVP["CMVP-disclosed clues (deterministic)"]
    C2["[low] Firmware update / recovery / rollback (referenced in text)<br/><i>UPDATE<br/>Recovery</i><br/>src: text:keyword"]
    C3["[low] Self-test / status surface (referenced in text)<br/><i>Self-Test<br/>UnAuth<br/>Status Output</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,C6 clueLow;

Security Policy, page by page

Page 1

Giesecke+Devrient ePayments GmbH Sm@rtCafe Expert 8.1 Document Version: 1.3 Date: 09/16/2025 Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 2
Table of Contents
#SectionPage
Page 3

Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 4
List of Tables
ItemPage
Table 1: Security Levels5
Table 2: Tested Module Identification – Hardware8
Table 3: Modes List and Description8
Table 4 – ATR Structure9
Table 5: Approved Algorithms10
Table 6: Vendor-Affirmed Algorithms10
Table 7: Non-Approved, Allowed Algorithms10
Table 8: Security Function Implementations14
Table 9: Entropy Certificates16
Table 10: Entropy Sources16
Table 11: Ports and Interfaces17
Table 12: Authentication Methods19
Table 13: Roles21
Table 14: Approved Services27
Table 15: Mechanisms and Actions Required31
Table 16: EFP/EFT Information31
Table 17: Hardness Testing Temperatures32
Table 18: Storage Areas33
Table 19: SSP Input-Output Methods33
Table 20: SSP Zeroization Methods34
Table 21: SSP Table 136
Table 22: SSP Table 239
Table 23: Pre-Operational Self-Tests41
Table 24: Conditional Self-Tests45
Table 25: Pre-Operational Periodic Information46
Table 26: Conditional Periodic Information52
Table 27: Error States53
Table 28 – Attack List56
Table 29 – References58
Table 30 – Acronyms and Definitions60
Figure 1 – G+D’s PD6 (PHS2.2) module: black encapsulation (left); lead frame (right)6
Figure 2 - Module Block Diagram7
Page 5
SectionTitleSecurity Level
1General3
2Cryptographic module specification3
3Cryptographic module interfaces3
4Roles, services, and authentication3
5Software/Firmware security3
6Operational environmentN/A
7Physical security3
8Non-invasive securityN/A
9Sensitive security parameter management3
10Self-tests3
11Life-cycle assurance3
12Mitigation of other attacks3
Overall Level3

the requirements as specified in FIPS PUB 140-3 (Federal Information Processing Standards Publication 140-3) for an overall Security Level 3 module.

1.2 Security Levels

The FIPS 140-3 security levels for the Module are as follows from Table 1: Table 1: Security Levels Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 6

2 – Cryptographic Module Specification

2.1 Description

Purpose and Use: The Module is intended for use by US Federal agencies or other markets that require FIPS 140-3 validated applications for authorized condition access, like secure ID applications (PIV Card), the Module is intended to be used in a wide range of different end-user environments. Module Type: Hardware Module Embodiment: SingleChip Module Characteristics: Cryptographic Boundary: The physical form of the Module is depicted in Figure 1. The cryptographic boundary is designed to be embedded into plastic card bodies, with a contact plate and contactless antenna connections. The cryptographic boundary is the surface and edges of the packages as shown in the Figures. The contactless ports of the module require connection to an antenna. The module relies on [ISO7816] and [ISO14443] card readers as input/output devices. Figure 1

Page 7
Table, extracted as text (did not parse into structured rows)
System Applications Layer           Java Applications Layer Card Manager                       Demonstration Applet Firmware Platform G+D API      GlobalPlatform API          JavaCard API JCP OS Hardware Power       RAM                      AES/DES       CRC Vcc, Mgmt                                  Engine GND Clock       MPU                     RSA/ECC       Timers CLK Mgmt                                 Engine CPU Sensors      NVM                      HW RNG      ISO 7816 (Entropy)    (UART)        I/O (Contact) ROM Reset                                            ISO 14443 RST                                                                     LA/LB (RF) Mgmt                                                (RF) Figure 2 - Module Block Diagram The JavaCard, GlobalPlatform and G+D APIs are internal interfaces available only to applets and security domains (i.e., Card Manager). Only applet services are available at the card edge (the interfaces that cross the cryptographic boundary).
2.2 Tested and Vendor Affirmed Module Version and Identification

The HW version and the OS version can be retrieved by a GET DATA command: GET DATA: 00 CA 52 C0 will return the response data field containing the HW-Version: 02 00 42.1 GET DATA: 00 CA DF E3 will return the response data field containing the OS-Version in tag 85: B3 E8 CE 6A.2 The Version of the loaded applet can be retrieved by a GET STATUS command with the AID of the applet: GET STATUS: 80 F2 20 00 0D 4F 0L <AID> 00 will return response data containing the AID followed by 2 version bytes. The demonstration applet AID is 31 42 33 34 35 AA FF CA FE FF AA, and the version is 0x0100. This response value of Get Data is mapped to the Hardware Version in Table

  1. This response value of Get Data is mapped to the Firmware Version in Table
  2. Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0
Page 8
Model and/or Part NumberHardware VersionFirmware VersionProcessorsFeatures
ST31N600ST31N60054BBF5Sm@rtCafe Expert 8.1, Demonstration Applet 1.0STMicroelectronics ST31Dual Interface smart card
Mode NameDescriptionTypeStatus Indicator
Approved ModeThe module is set to approved mode at manufacturing and is always in the Approved modeApprovedThe explicit indicator of Approved mode is given in the ATR: the value 0x46 ('F') in Historical Byte 10 indicates the Approved mode (See table below)
*interface byteshistorical bytes
3B DF 97 80 31 FE 4500 5⏟3 4 3 4 5 2 0 3 8 2 E 3 1 2D 4⏟6 3⏟1 4 D 3 1 0⏟3 𝑋⏟𝑋 𝑋 𝑋 𝑋⏟𝑋 "𝑆𝐶𝐸 8.1−" "F" "1𝑀1" 𝐿𝑖𝑓𝑒 9000 𝑜𝑟 𝐶𝑅𝐶 𝐹𝐼𝑃𝑆 𝑉𝑎𝑟𝑖𝑎𝑛𝑡 𝑐𝑦𝑐𝑙𝑒𝑒 𝑒𝑟𝑟𝑜𝑟 𝑐𝑜𝑑𝑒 𝑎𝑝𝑝𝑟𝑜𝑣𝑒𝑑 𝑠𝑡𝑎𝑡𝑒 𝑖𝑓 𝑠𝑒𝑙𝑓 𝑡𝑒𝑠𝑡 𝑚𝑜𝑑𝑒 𝑒𝑟𝑟𝑜𝑟 𝑜𝑐𝑐𝑢𝑟𝑠

Tested Module Identification – Hardware: Giesecke+Devrient Sm@rtCafé Expert 8.1 cryptographic module is tested on the following operational environment.

2.3 Excluded Components

There are no components that are excluded from the cryptographic boundary.

2.4 Modes of Operation

Modes List and Description: The ATR has the following structure:

53 43 45 20 38 2E 31 2D 46

Table, extracted as text (did not parse into structured rows)
⏟       31 4D 31 ⏟             03 ⏟      𝑋𝑋 𝑋𝑋 ⏟          𝑋𝑋 ⏟ 𝐹𝐼𝑃𝑆      𝑉𝑎𝑟𝑖𝑎𝑛𝑡    𝑐𝑦𝑐𝑙𝑒𝑒 𝑒𝑟𝑟𝑜𝑟 𝑐𝑜𝑑𝑒 𝑎𝑝𝑝𝑟𝑜𝑣𝑒𝑑                𝑠𝑡𝑎𝑡𝑒  𝑖𝑓 𝑠𝑒𝑙𝑓 𝑡𝑒𝑠𝑡 𝑚𝑜𝑑𝑒                        𝑒𝑟𝑟𝑜𝑟 𝑜𝑐𝑐𝑢𝑟𝑠 Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision).                                   Template v1.0
Page 9
AlgorithmCAVP CertPropertiesReference
AES-CBCA5371-SP 800-38A
AES-CFB128A5371-SP 800-38A
AES-CMACA5372-SP 800-38B
AES-CTRA5371-SP 800-38A
AES-ECBA5371-SP 800-38A
AES-KWA5384-SP 800-38F
AES-KWPA5384-SP 800-38F
Counter DRBGA5383-SP 800-90A Rev. 1
ECDSA KeyGen (FIPS186-5)A5375-FIPS 186-5
ECDSA KeyVer (FIPS186-5)A5375-FIPS 186-5
ECDSA SigGen (FIPS186-5)A5375-FIPS 186-5
ECDSA SigVer (FIPS186-4)A5375-FIPS 186-4
ECDSA SigVer (FIPS186-5)A5375-FIPS 186-5
HMAC-SHA2-224A5376-FIPS 198-1
HMAC-SHA2-256A5376-FIPS 198-1
HMAC-SHA2-384A5376-FIPS 198-1
HMAC-SHA2-512A5376-FIPS 198-1
KAS-ECC Sp800-56Ar3A5378-SP 800-56A Rev. 3
KAS-ECC-SSC Sp800-56Ar3A5379-SP 800-56A Rev. 3
KDF SP800-108A5377-SP 800-108 Rev. 1
RSA Decryption Primitive Sp800-56Br2 (CVL)A5374-SP 800-56B Rev. 2
RSA KeyGen (FIPS186-5)A5373-FIPS 186-5
RSA SigGen (FIPS186-5)A5374-FIPS 186-5
RSA Signature Primitive (CVL)A5374-FIPS 186-4
RSA SigVer (FIPS186-4)A5374-FIPS 186-4
RSA SigVer (FIPS186-5)A5374-FIPS 186-5
SHA-1A5380-FIPS 180-4
SHA2-224A5380-FIPS 180-4
SHA2-224A5381-FIPS 180-4
SHA2-256A5380-FIPS 180-4
SHA2-256A5381-FIPS 180-4
SHA2-384A5380-FIPS 180-4
SHA2-384A5381-FIPS 180-4
SHA2-512A5380-FIPS 180-4
SHA2-512A5381-FIPS 180-4
2.5 Algorithms

Approved Algorithms: The Module implements the FIPS Approved cryptographic algorithms listed in the table below. Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 10
AlgorithmCAVP CertPropertiesReference
SHA3-224A5382-FIPS 202
SHA3-256A5382-FIPS 202
SHA3-384A5382-FIPS 202
SHA3-512A5382-FIPS 202
NamePropertiesImplementationReference
CKGKey Type:AsymmetricN/ASP800-133rev2 Sections 4 example 1 and IG D.H
NamePropertiesImplementationReference
KAS-ECC-SSCbrainpoolP224r1: brainpoolP256r1: brainpoolP384r1: brainpoolP512r1: brainpoolP256t1: brainpoolP384t1: brainpoolP512t1:kassscIG C.A, D.F Scenario #3

Table 5: Approved Algorithms Vendor-Affirmed Algorithms: The Module implements the FIPS Vendor Affirmed cryptographic algorithms listed. Table 6: Vendor-Affirmed Algorithms Non-Approved, Allowed Algorithms: The Module implements the FIPS Non-Approved, but Allowed cryptographic algorithms listed. Table 7: Non-Approved, Allowed Algorithms Non-Approved, Allowed Algorithms with No Security Claimed: The Module does not implement the FIPS Non-Approved, Allowed cryptographic Algorithms with No Security Claimed. N/A for this module. Non-Approved, Not Allowed Algorithms: The Module does not implement the FIPS Non-Approved, Not Allowed cryptographic algorithms listed. N/A for this module. Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 11
NameTypeDescriptionPropertiesAlgorithms
ecckeygenAsymKeyPair-KeyGenAsymmetric Key-Pair GenerationECDSA KeyGen (FIPS186-5): (A5375) Counter DRBG: (A5383) CKG: () Key Type: Asymmetric
rsakeygenAsymKeyPair-KeyGenAsymmetric Key-Pair GenerationRSA KeyGen (FIPS186- 5): (A5373) Counter DRBG: (A5383) CKG: () Key Type: Asymmetric
eckeyvalAsymKeyPair-KeyVerPublic key validationECDSA KeyGen (FIPS186-5): (A5375) ECDSA KeyVer (FIPS186-5): (A5375)
aesencBC-UnAuthBlock CipherAES-CBC: (A5371) AES-ECB: (A5371) AES-CTR: (A5371) AES-CFB128: (A5371)
aesdecBC-UnAuthBlock CipherAES-CBC: (A5371) AES-ECB: (A5371) AES-CTR: (A5371) AES-CFB128: (A5371)
ecsiggenDigSig-SigGenDigital Signature GenerationECDSA SigGen (FIPS186-5): (A5375) Counter DRBG: (A5383) SHA2-224: (A5380) SHA2-256: (A5380)
2.6 Security Function Implementations

The following table shows the Security Function Implementations that the module implements: Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 12
NameTypeDescriptionPropertiesAlgorithms
SHA2-384: (A5380) SHA2-512: (A5380)
ecsiggencompDigSig-SigGenDigital Signature Generation ComponentECDSA SigGen (FIPS186-5): (A5375) Counter DRBG: (A5383) SHA2-224: (A5380) SHA2-256: (A5380) SHA2-384: (A5380) SHA2-512: (A5380)
rsasiggenDigSig-SigGenDigital Signature GenerationRSA SigGen (FIPS186- 5): (A5374) Counter DRBG: (A5383) SHA2-224: (A5380) SHA2-256: (A5380) SHA2-384: (A5380) SHA2-512: (A5380) SHA3-224: (A5382) SHA3-256: (A5382) SHA3-384: (A5382) SHA3-512: (A5382)
rsasp1DigSig-SigGenDigital Signature Generation ComponentRSA Signature Primitive: (A5374) Counter DRBG: (A5383)
ecsigverDigSig-SigVerDigital Signature VerificationECDSA SigVer (FIPS186-4): (A5375) Counter DRBG: (A5383) SHA-1: (A5380) SHA2-224: (A5380) SHA2-256: (A5380) SHA2-384: (A5380) SHA2-512: (A5380)

Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 13
NameTypeDescriptionPropertiesAlgorithms
ECDSA SigVer (FIPS186-5): (A5375)
rsasigverDigSig-SigVerDigital Signature VerificationRSA SigVer (FIPS186- 4): (A5374) Counter DRBG: (A5383) SHA2-224: (A5380) SHA2-256: (A5380) SHA2-384: (A5380) SHA2-512: (A5380) RSA SigVer (FIPS186- 5): (A5374)
rsadpUNKRSA Decryption ComponentRSA Decryption Primitive Sp800-56Br2: (A5374)
drbgDRBGRandom Number GenerationCounter DRBG: (A5383) AES-ECB: (A5371)
trngENT-ESVEntropy Source
kaseccKAS-FullKey AgreementCaveat:Key establishment method provides between 128 and 192 bits of encryption strengthKAS-ECC Sp800- 56Ar3: (A5378) SHA2-256: (A5381) SHA2-384: (A5381) AES-CMAC: (A5372)
kassscKAS-SSCKey Agreement Shared SecretKAS-ECC-SSC Sp800- 56Ar3: (A5379)
kbkdfKBKDFKey-Based Key DerivationKDF SP800-108: (A5377) AES-CMAC: (A5372)
aeskwBC-AuthKey Unwrapping for internal use importing keys at manufacturingAES-KW: (A5384) AES-KWP: (A5384)
aescmacMACMessage Authentication GenerationAES-CMAC: (A5372)

Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 14
NameTypeDescriptionPropertiesAlgorithms
hmacMACMessage Authentication GenerationHMAC-SHA2-224: (A5376) HMAC-SHA2-256: (A5376) HMAC-SHA2-384: (A5376) HMAC-SHA2-512: (A5376)
shs#1SHASecure Hash StandardSHA2-224: (A5380) SHA2-256: (A5380) SHA2-384: (A5380) SHA2-512: (A5380)
shs#2SHASecure Hash StandardSHA2-224: (A5381) SHA2-256: (A5381) SHA2-384: (A5381) SHA2-512: (A5381)
sha-3SHASecure Hash StandardSHA3-224: (A5382) SHA3-256: (A5382) SHA3-384: (A5382) SHA3-512: (A5382)
scp03KTS-WrapKey Transport - WrappingCaveat:Key establishment methodology provides between 128 and 256 bits of encryption strengthAES-CMAC: (A5372) AES-CBC: (A5371)

Table 8: Security Function Implementations Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 15

Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 16
Cert NumberVendor Name
E112STMicroelectronics
NameTypeOperational EnvironmentSample SizeEntropy per SampleConditioning Component
ESV Entropy SourcePhysicalST31N600 revB and revC1 bit0.75N/A
2.7 Algorithm Specific Information

KAS [56Ar3] - Per [IG] D.F Scenario 2 path (2), compliant key agreement scheme where testing is performed end-to-end for the shared secret computation and a KDF compliant with SP 800-56C2 with key confirmation. KAS-SSC [56Ar3] - Per [IG] D.F Scenario 2 path (2), compliant with the derivation of a shared secret Z in one or more of the key agreement schemes in Section 6 of SP 800-56Arev3. Table 9: Entropy Certificates The Module uses the following entropy sources: Table 10: Entropy Sources The entropy source provides a min-entropy of H >= 0.75. The output of the entropy source is used for the instantiation of the NIST SP800-90A compliant DRBG (#A5383). 568 bits of entropy is collected which provides 384 bits of entropy for the DRBG and 184 bits of entropy for the nonce. The 384 bits of entropy accounts for 288 bits of entropy which exceeds the 256-bits required. 184 bits of entropy for the nonce accounts for 138 bits of entropy. Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 17
Physical PortLogical Interface(s)Data That Passes
VCC, GNDPowerISO 7816: Supply voltage - Contact configurations only
RSTControl InputISO 7816: Reset - Contact configurations only
CLKControl InputControl in - Contact configurations only
I/OData Input Data Output Control Input Status OutputISO 7816: Clock - Contact configurations only
LA, LBData Input Data Output Control Input Status Output PowerISO 7816: Input/Output - Contact configurations only
2.9 Key Generation

For Key Generation methods, see Section 2.5 Algorithms and Section 2.6 Security Function Implementations above.

2.10 Key Establishment

For Key Establishment methods, see Section 2.5 Algorithms and Section 2.6 Security Function Implementations above.

3 Cryptographic Module Interfaces
3.1 Ports and Interfaces

The Module’s ports and associated FIPS defined logical interface categories are listed below. Table 11: Ports and Interfaces Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 18
Method NameDescriptionSecurity MechanismStrength Each AttemptStrength per Minute
AM1Identity Based Authentication: The CO role manages module content and configuration,Secure Channel Protocol Authentication Method See Section 4.1.1The probability that a random attempt will succeed using this authentication method is:The module enforces a maximum of fifteen (15) consecutive failed SCP authentication attempts. The probability that a random attempt

Note: The module does not support Control Output. Control/data input and status/data output are separated by the command-response nature of the Module. The Module is either transmitting or receiving, but never both at once. ISO/IEC 7816-4 APDUs are used for communication over the contact-based (ISO7816) and contactless (ISO14443) interfaces. The APDU interface is used by an external Card Acceptance Device (CAD), i.e. an off card application and card reader/writer, to send commands to the Module. The APDU interface is mapped to the physical I/O port and LA/LB port. It comprises the logical interface for Data in, Control in, Data out and Status out. Data in corresponds to the data field of APDU commands received by the Module. Control in corresponds to APDU command header. Data and status output are mapped to APDU responses sent by the Module. Data out is mapped to the data field of APDU responses. The Status out is mapped to the status code, SW1 SW2 (ISO/IEC 7816 status word). The Hardware interface for contact-based, contactless, and dual-interface operations is composed of the parameters to supply the Module for start-up and for operation. The Control input for contact-based (ISO 7816-3) operation is mapped to RST (reset signal) and CLK (clock signal). The Control input (clock and reset) and the power supply for contactless (ISO 14443) operation is mapped to the coil connections LA and LB. Dual-interface controllers may be powered either by contact-based or by contactless power supply.

4 Roles, Services, and Authentication
4.1 Authentication Methods

Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 19
Method NameDescription including issuance and management of module data via the ISD..Security Mechanism Secure Channel Protocol Authentication MethodStrength Each Attempt 1/2^128 = 2.9E-39 (for any of AES-128/192/256 SD- KENC/SD-SENC, assuming a 128-bit block)Strength per Minute will succeed over a one-minute interval is: 15/2^128 = 4.4E-38 (for any of AES-128/192/256 SD- KENC/SD-SENC, assuming a 128- bit block
AM2Identity Based Authentication: The User role is for use in Demonstration applet.Demonstration Applet Authentication Method See section 4.1.2 Demonstration Applet Authentication Method:The probability that a random attempt will succeed using this authentication method is: 1/256^8 = 5.4E-20The module enforces a maximum of three (4) consecutive failed authentication attempts. The probability that a random attempt will succeed over a one minute interval is: 4/256^8.

Table 12: Authentication Methods After activation or reset of the Module no operator is authenticated. Actions on behalf of an operator require the operator’s prior successful authentication. The Module’s authentication methods prevent unauthorized disclosure and modification of SSPs. The Module supports identity-based operator authentication by means of SCP03, defined in [GP Amd D]. After completion of the authentication protocol, the Module accepts commands with correct message authentication code only. These commands must have been sent via the Secure Channel using the key previously agreed with the terminal during the authentication. Protection of user data transmitted from the Module to the terminal is achieved by means of secure messaging with encryption and message authentication codes. After authentication, user data in transit is protected from unauthorized disclosure, modification, deletion, insertion and replay attacks. In the usage phase, authentication data entry, modification and substitution is performed within a Secure Channel only. The Module does not output the Secure Channel static keys or the Secure Channel session keys. The PIN used by the Demonstration Applet’s PIN authentication service can only be transmitted to the Module after successful initiation of a Secure Channel. The PIN is never output by the Module. Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 20

Feedback provided during an authentication attempt is indicated in the status words (SW1 SW2) returned in the response message to the INITIALIZE UPDATE and EXTERNAL AUTHENTICATE commands. Successful execution of the command is indicated by the status bytes ’90’ ‘00’. In case of an error, the status code either corresponds to one of the General Error conditions or to a specific error condition defined in [GPCS]. Status information does not contain CSPs or sensitive data that if misused could lead to a compromise of the module. The status returned does not weaken the strength of the mechanism. Secure Channel Protocol Authentication Method The Secure Channel Protocol authentication method (I2 in the SSP Input-Output Methods table) is provided by the Secure Channel service. The SD-KENC and SD-KMAC keys are used to derive the SD-SENC and SD-SMAC keys, respectively. The key derivation uses KDF in counter mode as specified in NIST SP 800-108 [108]. The PRF used in the KDF is CMAC as specified in NIST 800-38B [38B], used with full 16 byte output length. The initial step of the Secure Channel Service initiates the session key derivation on the card and conveys also the host challenge. The card returns the card challenge and the card cryptogram, calculated as a CMAC with the session keys. This is checked by the host. To perform finally the mutual authentication the final step of the Secure Channel Service conveys the host cryptogram to the card, which is a CMAC based on the card challenge and calculated with the session keys on host side. After the successfully check of the exchanged cryptograms by card and host, the two participants are mutually authenticated (the external entity is authenticated to the module in the CO role). Demonstration Applet Authentication Method The Demonstration Applet Authentication method is provided by the Secure Channel Protocol Authentication Method (I1 in the SSP InputOutput Methods table) combined with the PIN Authenticate service. The Module accepts an 8 byte PIN value and compares all 8 bytes to a stored reference, with no restriction on character space (each character can be any value from 0-255). The Module does not visibly display the PIN.

4.2 Roles

The Module supports two distinct operator roles, User and Cryptographic Officer (CO). The Module enforces the separation of roles using authentication. Re-authentication is enforced when changing roles. Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 21
NameTypeOperator TypeAuthentication Methods
Cryptographic OfficerIdentityCOAM1
UserIdentityUserAM2

The table below lists all operator roles supported by the Module. In addition, the Module supports services which does not require to be authenticated, see also services table below. The Module does not support a maintenance role and bypass capability. The Module supports concurrent operators in a limited fashion. The module allows for multiple logical channels. Only one operator at a time is permitted on a logical channel, which explains the limitation posed upon concurrent operators. The separation of roles operating on different logical channel is ensured by having different secure channels with different session keys. Table 13: Roles Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 22
NameDescriptionIndicato rInputsOutputsSecurity FunctionsSSP Access
LifecycleModifies the card or applet life cycle status.Approve d mode is given in the ATR: the value 0x46 ('F')GET STATUS/ SET STATUSLifecycle state, status wordscp03Cryptographic Officer - SD-SENC: E,Z - SD-SMAC: E,Z - SD-SRMAC: E,Z - DRBG-EI: Z - DRBG-SM: Z - DRBG-Nonce: Z - OS-DRBG-STATE: Z - SD-KENC: Z - SD-KMAC: Z - SD-KDEK: Z - SD-DAP-AES: Z - SD-DAP-ECC: Z - SD-DAP-RSA: Z - SD-CIPH-LD-AES: Z - SD-DM-TOKEN-AES: Z - SD-DM-TOKEN-ECC: Z - SD-DM-TOKEN-RSA: Z - SD-DM-RCPT-AES: Z - SD-DM-RCPT-ECC: Z
4.3 Approved Services

All approved services implemented by the Module are listed in the table below: The SSPs modes of access shown in the table below are defined as:

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 (SSP is input).
E = Execute: The Module uses the SSP in performing a cryptographic operation.
Z = Zeroize: The Module zeroizes the SSP

Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 23
NameDescriptionIndicato rInputsOutputsSecurity FunctionsSSP Access - SD-DM-RCPT-RSA: Z - PIN_KEY: Z - DEM-PIN: Z - DEM CMAC: Z - DEM HMAC: Z - DEM-DH-PRIV: Z - DEM-DH-PUB: Z - DEM-KAS-PRIV: Z - DEM-KAS-PUB: Z - DEM-SGV-RSA-PRIV: Z - DEM-SGV-RSA-PUB: Z - DEM-SGV-ECC-PRIV: Z - DEM-SGV-ECC-PUB: Z - DEM_SHARED_SEC_SS C: Z - DEM SHARED_SEC_ECC: Z
Manage ContentLoads and installs application packages and associated keys and data.Approve d mode is given in the ATR: the value 0x46 ('F')Content management commands LOAD, INSTALL, DELETE, STORE DATA, PUT KEYStatus wordaesenc aesdec ecsiggen ecsigver aeskw scp03Cryptographic Officer - SD-SENC: E - SD-SMAC: E - SD-SRMAC: E - SD-KDEK: E - SD-DAP-RSA: E - SD-DAP-AES: E - SD-CIPH-LD-AES: E - SD-DM-TOKEN-AES: E - SD-DM-TOKEN-ECC: E - SD-DM-TOKEN-RSA: E - SD-DM-RCPT-AES: E - SD-DM-RCPT-ECC: E - SD-DM-RCPT-RSA: E - SD-DAP-ECC: E

C: Z Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 24
NameDescriptionIndicato rInputsOutputsSecurity FunctionsSSP Access
Module Info (Authenticated)Reads module configuration or status information (privileged data objects).Approve d mode is given in the ATR: the value 0x46 ('F')GET DATA, GET STATUS commandConfiguration data, status wordscp03Cryptographic Officer - SD-SENC: E - SD-SMAC: E - SD-SRMAC: E User - SD-SENC: E - SD-SMAC: E - SD-SRMAC: E
Module Info (Unauthenticate d)Reads module configuration or status information.Approve d mode is given in the ATR: the value 0x46 ('F')GET DATAConfiguration data, Status wordNoneUnauthenticated
Secure ChannelEstablishes and uses a secure communication s channel.Approve d mode is given in the ATR: the value 0x46 ('F')INTIALIZE UPDATE/EXTERNA L AUTH commandcard challenge, card cryptogram, status wordkbkdfCryptographic Officer - SD-KENC: E - SD-KMAC: E - SD-SENC: G - SD-SMAC: G - SD-SRMAC: G User - SD-SENC: G - SD-KENC: E - SD-KMAC: E - SD-SMAC: G - SD-SRMAC: G
PIN AuthenticationDemonstrates PIN authentication with OwnerPIN.Approve d mode is given in the ATR: the valueCommand to Demo Applet to call API OwnerPIN.checkwit h PINStatus wordaesenc aesdecUser - PIN_KEY: E - DEM-PIN: R

('F') Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 25
NameDescriptionIndicato rInputsOutputsSecurity FunctionsSSP Access
0x46 ('F')
Key GenerationGenerates keys and initializes symmetric and asymmetric key objects for the cryptographic services.Approve d mode is given in the ATR: the value 0x46 ('F'Command to Demo Applet to call API for key generation. API input: Domain parametersstatus wordecckeygen rsakeygen eckeyvalUser - DEM-DH-PRIV: G - DEM-DH-PUB: G - DEM-KAS-PRIV: G - DEM-KAS-PUB: G - DEM-SGV-RSA-PRIV: G - DEM-SGV-RSA-PUB: G - DEM-SGV-ECC-PRIV: G - DEM-SGV-ECC-PUB: G
Digital SignatureDemonstrates RSA and ECDSA digital signature generation and verification, ECDSA digital signature component and the RSA Signature Primitive.Approve d mode is given in the ATR: the value 0x46 ('F'Command to Demo Applet to call API: API input: Signature Generation: ECDSA, RSA private key and message Signature Verification: ECDSA public key and signatureSignature, status word.ecsiggen ecsiggencom p rsasiggen rsasp1 ecsigver rsasigver rsadpUser - DEM-SGV-RSA-PRIV: E - DEM-SGV-RSA-PUB: E - DEM-SGV-ECC-PRIV: E - DEM-SGV-ECC-PUB: E
Key Agreement PrimitiveGenerates a common secret from a DH key exchangeApprove d mode is given in the ATR: the value 0x46 ('F'Command to Demo Applet to call API: API input: Card Privat key, Host Public keycommon secretkassscUser - DEM-DH-PRIV: E - DEM-DH-PUB: E - DEM_SHARED_SEC_SS C: G,E
RSA Decryption PrimitiveDemonstrates the RSA Decryption PrimitiveApprove d mode is given in theCommand to Demo Applet to call API: API input: RSACryptogram, status wordrsadpUser - DEM-SGV-ECC-PRIV: E - DEM-SGV-RSA-PUB: E

('F') Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 26
NameDescriptionIndicato rInputsOutputsSecurity FunctionsSSP Access
ATR: the value 0x46 ('F'private key, plain input data
OpacityKAS-Full with parameters according to SP.800-73-4Approve d mode is given in the ATR: the value 0x46 ('F'Command to Demo Applet to call API: API input: Card Privat key, Host Public keyAuthCrytogra mkaseccUser - DEM-KAS-PRIV: E - DEM-KAS-PUB: E - DEM SHARED_SEC_ECC: G,E
Message AuthenticationAuthenticate messagesApprove d mode is given in the ATR: the value 0x46 ('F'Command to Demo Applet to call API: API input: MessageMACaescmac hmacUser - DEM CMAC: E - DEM HMAC: E
Message DigestGenerates hashesApprove d mode is given in the ATR: the value 0x46 ('F'Command to Demo Applet to call API: API input: MessageHash valueshs#1 shs#2 sha-3User
Error LogLogging of error statesApprove d mode is given in the ATR: the value 0x46 ('F'Error state triggeredError status in ATRNoneCryptographic Officer User Unauthenticated
Module ResetResets the module. IncludesApprove d mode is givenRST or Power OFF+ Power ONATRdrbg trngCryptographic Officer - DRBG-EI: E,Z - OS-DRBG-STATE: G

Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 27
NameDescriptionIndicato rInputsOutputsSecurity FunctionsSSP Access
Power-On Self- Test.in the ATR: the value 0x46 ('F'- SD-SENC: Z - SD-SMAC: Z - SD-SRMAC: Z - DEM_SHARED_SEC_SS C: Z - DEM SHARED_SEC_ECC: Z - DEM-KAS-PUB: Z - DEM-DH-PUB: Z - DEM-DH-PRIV: Z User - DRBG-EI: E - OS-DRBG-STATE: G - SD-SENC: Z - SD-SMAC: Z - SD-SRMAC: Z - DEM_SHARED_SEC_SS C: Z - DEM SHARED_SEC_ECC: Z Unauthenticated
4.4 Non-Approved Services

NOTE: There are no non-approved services available. N/A for this module. Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 28
4.5 External Software/Firmware Loaded

NOTE: There is no External Software/Firmware Loaded. Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 29
5 Software/Firmware Security
5.1 Integrity Techniques

The Module’s firmware is composed of the embedded operating system and Java card packages including the demonstration applet. An error detection code is applied to all software and firmware components within the hardware module’s defined cryptographic boundary.

5.2 Initiate on Demand

The operator can initiate the integrity test on demand by Module reset. Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 30
6 Operational Environment
6.1 Operational Environment Type and Requirements

Type of Operational Environment: Non-Modifiable The Module has a non-modifiable operational environment under the FIPS 140-3 definitions. Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 31
MechanismInspection FrequencyInspection Guidance
Tamper-Evident MaterialBefore first use by end user.Operator should look for damage
Temp/Voltage TypeTemperature or VoltageEFP or EFTResult
LowTemperature-60°CEFPShutdown
HighTemperature128°CEFPShutdown
LowVoltage2.2VEFPShutdown
HighVoltage6.2VEFPShutdown
7 Physical Security

The Module is a single-chip implementation that meets commercial-grade specifications for power, temperature, reliability, and shock/vibrations. The Module uses standard passivation techniques.

7.1 Mechanisms and Actions Required

The Module’s chip packaging uses tamper evident material that is opaque within the visible spectrum. The material is designed so that attempts at removal or penetration will have a high probability of causing serious damage. Table 15: Mechanisms and Actions Required Table 16: EFP/EFT Information

7.6 Hardness Testing Temperature Ranges

Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 32
Temperature TypeTemperature
LowTemperature-25°C
HighTemperature85°C

Table 17: Hardness Testing Temperatures

8 Non-Invasive Security

Non-invasive mechanisms employed by the Module are under Section 12 Mitigation of other attacks. Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 33
Storage Area NameDescriptionPersistence Type
S1Only stored in volatile memory RAMDynamic
S2Stored in NVM in plaintext, associated by memory location pointerStatic
S3Stored in NVM, obfuscated by dynamically generated maskStatic
NameFromToFormat TypeDistribution TypeEntry TypeSFI or Algorithm
Input encapsulated in Secure Channel (I1)Application Software (outside)S3EncryptedManualElectronicscp03
Input encapsulated in Secure Channel (I2)Application Software (outside)S3EncryptedAutomatedElectronicscp03
Zeroization MethodDescriptionRationaleOperator Initiation
Z1Replace with zerosAll data in storage area S1 are zeroized if module is reset. Not time critical, related SSPs are not accessible by unauthorized operators.Any role: reset Module
Z2Replace with zerosUsed to zeroize all sensitive data at end of life of module. See also chapter End of Life.CO role: set life cycle state to TERMINATED
9 Sensitive Security Parameters Management
9.1 Storage Areas
9.2 SSP Input-Output Methods

Table 19: SSP Input-Output Methods

9.3 SSP Zeroization Methods

Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 34
NameDescriptionSize - StrengthType - CategoryGenerated ByEstablished ByUsed By
DRBG-EIEntropy input384 - N/AEntropy - CSPtrngdrbg
DRBG-SMSeed material568 - N/AEntropy - CSPtrngdrbg
DRBG-NonceNonce184 - N/AEntropy - CSPtrngdrbg
OS-DRBG-STATEInternal state: V (128 bits) and Key (AES 256)384 - N/AEntropy - CSPtrngdrbg
SD-KENCMaster key decryption Key128,192,1256 - 128,192,256Symmetric authentication key - CSPInput at manufacturingkbkdf
SD-KMACMaster MAC Key128,192,256 - 128,192,256Secret - CSPInput at manufacturingkbkdf
SD-KDEKMaster key decryption Key128,192,256 - 128,192,256Secret - CSPInput at manufacturingaesenc aesdec
SD-SENCSession Key128,192,256 - 128,192,256Secret - CSPkbkdfaesenc aesdec

Table 20: SSP Zeroization Methods The zeroization of SSPs is implemented as an internal process without connection to data output. Zeroization is implicit Z1: Concerning the “Temporary Storage Duration”, an SSP which is stored in category S1 is stored until the next reset of the module. There is no specific time duration for this. Z2: Issuing the APDU SET STATUS (TERMINATE) command will destroy all sensitive data on the module and leave the module inoperable.

9.4 SSPs

All usage of these SSPs by the Module are described in the services detailed in Section 4.3 Approved Services. Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 35
NameDescriptionSize - StrengthType - CategoryGenerated ByEstablished ByUsed By
SD-SMACSession Key128,192,256 - 128,192,256Secret - CSPkbkdfaescmac
SD-SRMACSession Key128,192,256 - 128,192,256Secret - CSPkbkdfaescmac
SD-DAP-AESAES DAP verification key128,192, 256 - 128,192, 256Secret - CSPInput at manufacturingaescmac
SD-DAP-ECCECC DAP verification keyP Curves (192, 224, 256,384 521) - 96-256Public - PSPInput at manufacturingecsigver
SD-DAP-RSARSA DAP verification key1024- 4096 - 80- 200Public - PSPInput at manufacturingrsasigver
SD-CIPH-LD-AESLoadfile decryption key128, 192, 256 - 128, 192, 256Secret - CSPInput at manufacturingAES-CBC (A5371)
SD-DM-TOKEN-AESAES token verification key128, 192, 256 - 128, 192, 256Public - PSPInput at manufacturingaescmac
SD-DM-TOKEN-ECCECC token verification keyP Curves (192, 224, 256,384 521) - 96-256Public - PSPInput at manufacturingecsigver
SD-DM-TOKEN-RSARSA token verification key1024- 4096 - 80- 200Public - PSPInput at manufacturingrsasigver
SD-DM-RCPT-AESAES receipt generation key128, 192, 256 - 128, 192, 256Secret - CSPOtheraescmac
SD-DM-RCPT-ECCECC receipt generation keyP Curves (224, 256,384 521) - 112-256Private - CSPInput at manufacturingecckeygen
SD-DM-RCPT-RSARSA receipt generation key2048-4096 - 112- 200Private - CSPOtherrsakeygen
PIN_KEYKey for PIN obfuscation256 - 256Secret - CSPInput at manufacturingaesenc aesdec
DEM-PINDemo Applet User PIN256 - 256PIN - CSPOtheraesdec
DEM CMACKey for CMAC calculation128, 192, 256 - 128, 192, 256Secret - CSPN/Aaescmac

Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 36
NameDescriptionSize - StrengthType - CategoryGenerated ByEstablished ByUsed By
DEM HMACKey for HMAC calculationMin: 8 Max: 2040 - -Secret - CSPN/Ahmac
DEM-DH-PRIVDemo Applet ECC CDH private keyP Curves (224, 256,384 521 - 112-256Private - CSPecckeygenecckeygen
DEM-DH-PUBDemo Applet ECC CDH public keyP Curves (224, 256,384 521) - 112-256Public - PSPN/Aecckeygen
DEM-KAS-PRIVDemo Applet KAS ECC (Opacity) private keyP Curves (256,384) - 128, 192Private - CSPecckeygenkasssc
DEM-KAS-PUBDemo Applet KAS ECC public keyP Curves (256,384) - 128, 192Public - PSPN/Akasssc
DEM-SGV-RSA-PRIVDemo Applet RSA signature private key2048-4096 - 112- 200Private - CSPrsakeygenrsasiggen
DEM-SGV-RSA-PUBDemo Applet RSA signature public key1024-4096 - 80- 200Public - PSPrsakeygenrsasigver
DEM-SGV-ECC-PRIVDemo Applet ECC signature private keyP Curves (224, 256,384 521) - 112-256Private - CSPecckeygenecsiggen
DEM-SGV-ECC-PUBDemo Applet ECC signature public keyP Curves (192, 224, 256,384 521) - 96-256Public - PSPecckeygenecsigver
DEM_SHARED_SEC_SSCShared secret224, 256, 384, 521 - 112-256Private - CSPN/Akasssckasssc
DEM SHARED_SEC_ECCShared secret128, 256 - 128, 256Private - CSPN/Akasecckasecc

Table 21: SSP Table 1 Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 37
NameInput - OutputStorageStorage DurationZeroizationRelated SSPs
DRBG-EIS1:Plaintextuntil the next reset of the moduleZ1DRBG-SM:Derived From
DRBG-SMS1:Plaintextuntil the next reset of the moduleZ1DRBG-EI:Used by
DRBG-NonceS1:PlaintextN/A until the next reset of the moduleZ1DRBG-SM:Used by
OS-DRBG-STATES1:Plaintextuntil the next reset of the moduleZ1DRBG-EI:Derived From
SD-KENCS3:ObfuscatedN/AZ2SD-SENC:Derived From
SD-KMACS3:ObfuscatedN/AZ2SD-SMAC:Derived From SD-SRMAC:Derived From
SD-KDEKS3:ObfuscatedN/AZ2DEM-PIN:Decrypts DEM CMAC:Decrypts DEM HMAC:Decrypts DEM-DH-PUB:Decrypts DEM-KAS-PUB:Decrypts
SD-SENCS1:Plaintextuntil the next reset of the moduleZ1SD-KENC:Derived From
SD-SMACS1:Plaintextuntil the next reset of the moduleZ1SD-KMAC:Derived From

Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 38
NameInput - OutputStorageStorage DurationZeroizationRelated SSPs
SD-SRMACS1:Plaintextuntil the next reset of the moduleZ1SD-KMAC:Derived From
SD-DAP-AESS3:ObfuscatedN/AZ2
SD-DAP-ECCS3:ObfuscatedN/AZ2
SD-DAP-RSAS3:ObfuscatedN/AZ2
SD-CIPH-LD-AESS3:ObfuscatedN/AZ2
SD-DM-TOKEN-AESS3:ObfuscatedN/AZ2
SD-DM-TOKEN-ECCS3:ObfuscatedN/AZ2
SD-DM-TOKEN-RSAS3:ObfuscatedN/AZ2
SD-DM-RCPT-AESS3:ObfuscatedN/AZ2
SD-DM-RCPT-ECCS3:ObfuscatedN/AZ2
SD-DM-RCPT-RSAS3:ObfuscatedN/AZ2
PIN_KEYS3:ObfuscatedN/AZ2DEM-PIN:Derived From
DEM-PINInput encapsulated in Secure Channel (I1)S3:ObfuscatedN/AZ2PIN_KEY:Derived From
DEM CMACInput encapsulated in Secure Channel (I2)S3:ObfuscatedZ2
DEM HMACInput encapsulated in Secure Channel (I2)S3:ObfuscatedZ2
DEM-DH-PRIVS3:Obfuscated S1:PlaintextZ1 Z2DEM_SHARED_SEC_SSC:Calculates secret with DEM-DH-PUB DEM SHARED_SEC_ECC:Calculates secret with DEM-DH-PUB
DEM-DH-PUBInput encapsulatedS1:Plaintextuntil the next resetZ1DEM_SHARED_SEC_SSC:Calculates secret with DEM-DH-PRIV

Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 39
NameInput - OutputStorageStorage DurationZeroizationRelated SSPs
in Secure Channel (I2)of the moduleDEM SHARED_SEC_ECC:Calculates secret with DEM-DH-PRIV
DEM-KAS-PRIVS3:ObfuscatedN/AZ2DEM-KAS-PUB:Calculates secret with
DEM-KAS-PUBInput encapsulated in Secure Channel (I2)S1:Plaintextuntil the next reset of the moduleZ1DEM-KAS-PRIV:Calculates secret with
DEM-SGV-RSA-PRIVS3:ObfuscatedZ2DEM-SGV-RSA-PUB:Paired With
DEM-SGV-RSA-PUBS2:PlaintextZ2DEM-SGV-RSA-PRIV:Paired With
DEM-SGV-ECC-PRIVS3:ObfuscatedZ2DEM-SGV-ECC-PUB:Paired With
DEM-SGV-ECC-PUBS2:PlaintextZ2DEM-SGV-ECC-PUB:Paired With
DEM_SHARED_SEC_SSCS1:Plaintextuntil the next reset of the moduleZ1DEM-DH-PRIV:Derived From DEM-DH-PUB:Derived From
DEM SHARED_SEC_ECCS1:Plaintextuntil the next reset of the moduleZ1DEM-KAS-PRIV:Derived From DEM-KAS-PUB:Derived From
9.5 Transitions

The following list specifies applicable transition periods or timeframes where an algorithm or key length transitions from Approved to non-Approved:

Page 40
10 Self-Tests

The Module performs self-tests to ensure the proper operation of the Module. Per FIPS 140-3 these are categorized as either pre-operational self-tests or conditional self-tests. The Module will not accept any commands when a self-test is running, because another command can only be processed if the actual command which triggers the self-test is finished. The command which has triggered the self-test may still be in the I/O buffer and will be processed if the self-tests are finished. Therefore, no operator action is involved in executing the self-tests. If a self-test succeeds, the last two bytes of the historical bytes of the ATR is set to ‘9000’. If a self-test fails, the Module logs the latest self-test error in the last two bytes of the historical bytes of the ATR, see ATR structure in section 2.4 Modes of Operation. The CO/User can consult the error log by observing these bytes which are unique for every self-tests.

10.1 Pre-Operational Self-Tests

Periodic Method: All pre-operational self-tests are performed by the Module at the first command after every reset. As the Module is frequently reset the tests are performed periodically (IG 10.3.E, Resolution 3.a.). The Module performs the following pre-operational self-tests. Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 41
Algorithm or TestTest PropertiesTest MethodTest TypeIndicatorDetails
Firmware integrityReed Solomon-32KATSW/FW IntegrityPass - Approved mode Fail - Error CodeA 16 bit Reed-Solomon EDC performed over all code in the cryptographic boundary is compared to a pre-stored value.
TRNGRCT and APTSP 800-90B health-testCritical FunctionPass - Approved mode Fail - Error CodeAn RCT and APT as specified in [90B] section 4.4 are executed before generation of the DRBG entropy input

Table 23: Pre-Operational Self-Tests Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 42
10.2 Conditional Self-Tests

As the column space is limited here some explanations for some columns: Periodic Method: The conditional self-tests are performed before the first use of an algorithm after every reset. This results in a periodic execution as the module is reset frequently. (IG 10.3.E, Resolution 3.a.). Period: Until next reset. Indicator: The self-test pass indicator is a ‘9000’ in the ATR, the fail indicator is an error code in the ATR. Condition: There are two conditions when a conditional self-test is executed: COND1: Before the first use of an algorithm after reset. COND2: After each key generation. The below tests with test method KAT consist of a set of known input vectors (input data, keys) which are operated on by the cryptographic algorithm to generate a result. The result is compared to the known expected output result. If the calculated output does not equal the known answer, the self-test error state is set. The Module performs the following conditional self-tests: Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 43
Algorithm or TestTest PropertiesTest MethodTest TypeIndicatorDetailsConditions
AES-ECB (A5371)AES-128KATCASTPass - Approved mode Fail - Error CodeAES-128 ECB decryption of 16 byte dataCOND1
AES CMAC GenerationAES-128KATCASTPass - Approved mode Fail - Error CodeAES CMAC 128. KAT for CMAC generation. As CMAC uses AES encryption this self-tests includes an AES ENC self-testCOND1
AES-CMAC VerificationAES-128KATCASTPass - Approved mode Fail - Error CodeAES CMAC 128. KAT for CMAC verification.COND1
Counter DRBG (A5383)AES-256 CTR_DRBG.KATCASTPass - Approved mode Fail - Error CodeOne KAT for instantiation and generation performed before the first random data generation.COND1
KAS-ECC Sp800-56Ar3 (A5378)P-256KATCASTPass - Approved mode Fail - Error CodeECCDH Shared Secret computation.COND1
One-Step KDF (A5378)SHA-256KATCASTPass - Approved mode Fail - Error Code"One-Step KDF" part of KAS ECC. The other parts ECC CDH and the final AES CMAC (key confirmation) are tested already by the self-tests KAS-SCC and AES-CMAC above.COND1
KDF SP800-108 (A5377)AES-128 CMACKATCASTPass - Approved mode Fail - Error CodeSP 800-108 KDF. This self-test is inclusive of AES CMAC and AES encrypt self-test.COND1
ECDSA KeyGen (FIPS186-5) (A5375)P-224, P-256, P-384, P-521PCTPCTPass - Approved mode Fail - Error CodeWith the generated key pair an ECDSA signature is generated and the result is given as input to the verify method, and it is checked that the call is successful.COND2

Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 44
Algorithm or TestTest PropertiesTest MethodTest TypeIndicatorDetailsConditions
ECDSA SigGen (FIPS186-5) (A5375)P-256KATCASTPass - Approved mode Fail - Error CodeTest mode activated, so that a fix random is used to get a constant oupout from ECDSA signCOND1
ECDSA SigVer (FIPS186-5) (A5375)P-256KATCASTPass - Approved mode Fail - Error CodeKAT for signature verificationCOND1
HMAC-SHA2-256 (A5376)HMAC-256 with SHA-256KATCASTPass - Approved mode Fail - Error CodeHMAC with key length 256 and SHA-256 hashCOND1
RSA Decryption Primitive Sp800- 56Br2 (A5374)2048KATCASTPass - Approved mode Fail - Error CodeRSA CRT sign and verify with known key and known 256 bytes input dataCOND1
RSA KeyGen (FIPS186-5) (A5373)2048, 3072PCTPCTPass - Approved mode Fail - Error CodeWith the generated RSA Standard key pair known input data are decrypted and encrypted and the result is compared to the input data.COND2
RSA SigGen (FIPS186-5) (A5374)2048KATCASTPass - Approved mode Fail - Error CodeRSA-2048 KAT for signature generation.COND1
RSA SigVer (FIPS186-5) (A5374)2048KATCASTPass - Approved mode Fail - Error Code-RSA-2048 KAT for signature verification.COND1
RSA KeyGen CRT2048, 3072, 4096-PCTPass - Approved mode Fail - Error CodeWith the generated RSA CRT key pair known input data are decrypted and encrypted and the result is compared to the input data.COND2
SHA-1 (A5380)SHA-1KATCASTPass - ApprovedHashing of 67 bytes input dataCOND1

Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 45
Algorithm or TestTest PropertiesTest MethodTest TypeIndicator mode Fail - Error CodeDetailsConditions
SHA2-256 (A5381)SHA2-256KATCASTPass - Approved mode Fail - Error CodeHashing of 67 bytes input dataCOND1
SHA3-256 (A5382)SHA3-256KATCASTPass - Approved mode Fail - Error CodeHashing of 67 bytes input dataCOND1
SHA2-512 (A5381)SHA2-512KATCASTPass - Approved mode Fail - Error CodeHashing of 67 bytes input dataCOND1
SHA2-256 (A5380)SHA2-256KATCASTPass - Approved mode Fail - Error CodeHashing of 67 bytes input dataCOND1
SHA2-512 (A5380)SHA2-512KATCASTPass - Approved mode Fail - Error CodeHashing of 67 bytes input dataCOND1

Table 24: Conditional Self-Tests Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 46
Algorithm or TestTest MethodTest TypePeriodPeriodic Method
Firmware integrityKATSW/FW IntegrityEvery ResetAll Pre- operational self- tests are performed by the Module at the first command after every reset. As the module is frequently reset the tests are periodically performed (IG 10.3.E, Resolution 3.a.).
TRNGSP 800-90B health-testCritical FunctionEvery Reset cycleAll Pre- operational self- tests are performed by the Module at the first command after every reset. As the module is frequently reset the tests are periodically performed (IG 10.3.E, Resolution 3.a.)
Algorithm or TestTest MethodTest TypePeriodPeriodic Method
AES-ECB (A5371)KATCASTno specific durationThe conditional self-tests are performed before the first use of an algorithm after every reset. This results in a periodically execution as the

Table 25: Pre-Operational Periodic Information Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 47
Algorithm or TestTest MethodTest TypePeriodPeriodic Method
module is frequently reset. (IG 10.3.E, Resolution 3.a.).
AES CMAC GenerationKATCASTno specific durationThe conditional self-tests are performed before the first use of an algorithm after every reset. This results in a periodically execution as the module is frequently reset. (IG 10.3.E, Resolution 3.a.).
AES-CMAC VerificationKATCASTno specific durationThe conditional self-tests are performed before the first use of an algorithm after every reset. This results in a periodically execution as the module is frequently reset. (IG 10.3.E, Resolution 3.a.).
Counter DRBG (A5383)KATCASTno specific durationThe conditional self-tests are performed before the first use of an algorithm after every reset. This results in a periodically execution as the module is frequently reset. (IG 10.3.E, Resolution 3.a.).

Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 48
Algorithm or TestTest MethodTest TypePeriodPeriodic Method
KAS-ECC Sp800-56Ar3 (A5378)KATCASTno specific durationThe conditional self-tests are performed before the first use of an algorithm after every reset. This results in a periodically execution as the module is frequently reset. (IG 10.3.E, Resolution 3.a.).
One-Step KDF (A5378)KATCASTno specific durationThe conditional self-tests are performed before the first use of an algorithm after every reset. This results in a periodically execution as the module is frequently reset. (IG 10.3.E, Resolution 3.a.).
KDF SP800-108 (A5377)KATCASTno specific durationThe conditional self-tests are performed before the first use of an algorithm after every reset. This results in a periodically execution as the module is frequently reset. (IG 10.3.E, Resolution 3.a.).
ECDSA KeyGen (FIPS186-5) (A5375)PCTPCTno specific durationBefore key generation request
ECDSA SigGen (FIPS186-5) (A5375)KATCASTno specific durationThe conditional self-tests are performed

Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 49
Algorithm or TestTest MethodTest TypePeriodPeriodic Method
before the first use of an algorithm after every reset. This results in a periodically execution as the module is frequently reset. (IG 10.3.E, Resolution 3.a.).
ECDSA SigVer (FIPS186-5) (A5375)KATCASTno specific durationThe conditional self-tests are performed before the first use of an algorithm after every reset. This results in a periodically execution as the module is frequently reset. (IG 10.3.E, Resolution 3.a.).
HMAC-SHA2- 256 (A5376)KATCASTno specific durationThe conditional self-tests are performed before the first use of an algorithm after every reset. This results in a periodically execution as the module is frequently reset. (IG 10.3.E, Resolution 3.a.).
RSA Decryption Primitive Sp800- 56Br2 (A5374)KATCASTno specific durationThe conditional self-tests are performed before the first use of an algorithm after every reset. This results in a periodically execution as the

Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 50
Algorithm or TestTest MethodTest TypePeriodPeriodic Method
module is frequently reset. (IG 10.3.E, Resolution 3.a.).
RSA KeyGen (FIPS186-5) (A5373)PCTPCTno specific durationBefore key generation request
RSA SigGen (FIPS186-5) (A5374)KATCASTno specific durationThe conditional self-tests are performed before the first use of an algorithm after every reset. This results in a periodically execution as the module is frequently reset. (IG 10.3.E, Resolution 3.a.).
RSA SigVer (FIPS186-5) (A5374)KATCASTno specific durationThe conditional self-tests are performed before the first use of an algorithm after every reset. This results in a periodically execution as the module is frequently reset. (IG 10.3.E, Resolution 3.a.).
RSA KeyGen CRT-PCTno specific durationBefore key generation request
SHA-1 (A5380)KATCASTno specific durationThe conditional self-tests are performed before the first use of an algorithm after every reset. This results in a periodically execution as the

Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 51
Algorithm or TestTest MethodTest TypePeriodPeriodic Method
module is frequently reset. (IG 10.3.E, Resolution 3.a.).
SHA2-256 (A5381)KATCASTno specific durationThe conditional self-tests are performed before the first use of an algorithm after every reset. This results in a periodically execution as the module is frequently reset. (IG 10.3.E, Resolution 3.a.).
SHA3-256 (A5382)KATCASTno specific durationThe conditional self-tests are performed before the first use of an algorithm after every reset. This results in a periodically execution as the module is frequently reset. (IG 10.3.E, Resolution 3.a.).
SHA2-512 (A5381)KATCASTno specific durationThe conditional self-tests are performed before the first use of an algorithm after every reset. This results in a periodically execution as the module is frequently reset. (IG 10.3.E, Resolution 3.a.).
SHA2-256 (A5380)KATCASTno specific durationThe conditional self-tests are

Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 52
Algorithm or TestTest MethodTest TypePeriodPeriodic Method performed before the first use of an algorithm after every reset. This results in a periodically execution as the module is frequently reset. (IG 10.3.E, Resolution 3.a.).
SHA2-512 (A5380)KATCASTno specific durationThe conditional self-tests are performed before the first use of an algorithm after every reset. This results in a periodically execution as the module is frequently reset. (IG 10.3.E, Resolution 3.a.).
NameDescriptionConditionsRecovery MethodIndicator
ES1Persistent error state (SELF-TEST ERROR)Entered when the module fails a Firmware integrity test Self-test (KAT/PCT) 2 times SP800-90B Health Test in a row Any fault detection occursNone, the module is not operative anymore.Error code in the ATR. Any further command sent to the module is blocked and will return the status word 0x6666.

Table 26: Conditional Periodic Information If any self-test fails or a fault attack is detected, the first indication is that the card mutes, i.e. all data output via the data output interface are inhibited and no further communication is possible. The module be reset and the ATR shows the error status (see Section 2.4). After that the module enters one of the following error states listed in below table. Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 53
NameDescriptionConditionsRecovery MethodIndicator
ES2Intermediate error state (INTERMEDIATE TEST ERROR)Entered when the module fails a SP800-90B Health TestAfter reset the module is ready for use again. If the health test succeeds the next time, the error code in the ATR is cleared. If the heath test fails 2 times in a row the persistent error state ES1 is entered,Error code in the ATR.
10.5 Operator Initiation of Self-Tests

The Module allows the operator to initiate power-up self-tests by power cycling or resetting the

11 Life-Cycle Assurance
11.1 Installation, Initialization, and Startup Procedures

No specific procedures have to be applied for secure installation, initialization, startup, and operation of Installation and Initialization: There are no specific rules to be performed in order to securely install, initialize, and start up the cryptographic module in the FIPS 140-3 Approved mode of operation. Delivery: The Module is delivered in approved mode and it starts-up in approved mode. Authorized operators of the Module are the Crypto Officer and the User. Authentication mechanisms for those operators are described in section 4.1 Authentication Methods Authentication Methods. All security mechanisms of the Module are active after production such that the Module protects itself against attacks and unauthorized access to security functions. Therefore, no additional security measures have to be applied for the delivery to the Crypto Officer or User. The module must be delivered securely, with tracking and protection against theft, by contracted logistic partners to the authorized operator. The recipient must check and confirm correct reception.

11.2 Administrator Guidance

The Crypto Officer (Administrator) guidance is covered by the submission document Sm@rtCafé Expert

8.1 Reference Manual [REF_MAN] that will be sent to the Administrator.

Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 54
11.3 Non-Administrator Guidance

The User (non-administrator) guidance is covered by the submission document Sm@rtCafé Expert 8.1 Reference Manual [REF_MAN] that will be sent to the User.

11.4 Design and Rules

There are no specific overall security design and the rules of operation for the Module. Rules of Operation

  1. The Module provides two distinct operator roles: User and Cryptographic Officer.
  2. The Module provides identity-based authentication.
  3. The Module clears previous authentications on power cycle.
  4. An operator does not have access to any cryptographic services prior to assuming an authorized role.
  5. The Module allows the operator to initiate power-up self-tests by power cycling or resetting the Module.
  6. All self-tests do not require any operator action.
  7. Data output is inhibited during key generation, self-tests, zeroization, and error states.
  8. Status information does not contain CSPs or sensitive data that if misused could lead to a compromise of the Module.
  9. There are no restrictions on which keys or SSPs are zeroized by the zeroization service.
  10. The Module does not support concurrent operators.
  11. The Module does not support a maintenance interface or role.
  12. The Module does not support manual SSP establishment method.
  13. The Module does not have any proprietary external input/output devices used for entry/output of data.
  14. The Module does not enter or output plaintext CSPs.
  15. The Module stores CSPs in plaintext.
  16. The Module does not output intermediate key values.
  17. The Module does not provide bypass services for ports/interfaces.
11.6 End of Life

The term end-of-life of the module describes the secure cleanup of the module in a way that it cannot be used any longer. There are 2 separate ways a module can enter the end-of-life state. 1. The Crypto officer decides that the module needs to be destroyed. In order to do that, the CO has to authenticate to the module (AM1) and issue a SET STATUS (TERMINATE). This will use Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 55

the zeroization method Z2, which destroys all sensitive data on the module (see section SSP Zeroization). 2. The module detects multiple attacks. After a predefined number of attacks the card will terminate the card by using the zeroization method Z2 (see section SSP Zeroization). The module shall be returned to the CO for secure physical destruction e.g. by shredding or cutting the chip in small pieces. Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 56
Attack*MethodMethod Effectiveness description
Power Analysis Electromagnetic analysis Timing analysisCounter-measures are implemented in software and hardware. The module uses the counter-measures of the crypto coprocessor which uses e.g. randomized and hiding methods of the key material and calculated (intermediate) results applied in the crypto operation, uses a noise generator for CPU and crypto unit, defines constant timing function for coprocessors and applies data and register masking. Additionally software counter- measures against timing attacks and SPA/DPA attacks are e.g. transient data arrays in RAM (clear on reset, clear on applet selection), mechanisms for sensitive data areas (creation, access and clearing), data manipulation hiding, constant time code execution, randomized algorithm execution, randomized data initialization, erasure and comparison.The countermeasure implemented in hardware were already tested in an independent Common Criteria evaluation of the chip platform (ANSSI-CC-2022/21) with the highest vulnerability assessment possible (AVA_VAN.5). The counter-measures implemented in the OS software were tested in the G+D SPA/DPA/DFA/LFI test laboratories with state-of-the-art equipment and methods that revealed no vulnerabilities for the cryptographic algorithms of the module. All requirements of the hardware security guidance [AN_SECU] were implemented.
12 Mitigation of Other Attacks

The Module implements the following mitigation methods against other attacks.

12.1 Attack List

The Module implement the following mitigation methods against other attacks. Table 28

Page 57

The card is muted upon detection of a potential security violation such that the Module preserves a secure state. Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 58
Abbreviation*Full Specification Name
[FIPS140-3]Security Requirements for Cryptographic Modules, March 22, 2019
[ISO19790]International Standard, ISO/IEC 19790, Information technology — Security techniques — Test requirements for cryptographic modules, Second edition, 2012-08-15, corrected version: 2015-12-15
[ISO24759]International Standard, ISO/IEC 24759, Information technology — Security techniques — Test requirements for cryptographic modules, Third edition, 2017-03
[IG]Implementation Guidance for FIPS PUB 140-3 and the Cryptographic Module Validation Program, March 26, 2024
[108]NIST Special Publication 800-108, NIST SP 800-108r1, Recommendation for Key Derivation Using Pseudorandom Functions, August 2022
[131A]NIST Special Publication 800-131A, for Transitioning the Use of Cryptographic Algorithms and Key Lengths, Revision 2, March 2019
[132]NIST Special Publication 800-132, Recommendation for Password-Based Key Derivation, Part 1: Storage Applications, December 2010
[133]NIST Special Publication 800-133, Recommendation for Cryptographic Key Generation, Revision 2, June 2020
[135]NIST Special Publication 800-135, Recommendation for Existing Application-Specific Key Derivation Functions, Revision 1, December 2011.
[186-4]FIPS PUB 186-4, FEDERAL INFORMATION PROCESSING STANDARDS PUBLICATION, Digital Signature Standard (DSS), July, 2013.
[186-5]FIPS PUB 186-5, FEDERAL INFORMATION PROCESSING STANDARDS PUBLICATION, Digital Signature Standard (DSS), February 3, 2023.
[197]FIPS PUB 197, FEDERAL INFORMATION PROCESSING STANDARDS PUBLICATION, Advanced Encryption Standard (AES), November 26, 2001, Updated May 9, 2023
[198]FIPS PUB 198, FEDERAL INFORMATION PROCESSING STANDARDS PUBLICATION, The Keyed- Hash Message Authentication Code (HMAC), July, 2008
[180]FIPS PUB 180-4, FEDERAL INFORMATION PROCESSING STANDARDS PUBLICATION, Secure Hash Standard, August, 2015
[202]FIPS PUB 202, FEDERAL INFORMATION PROCESSING STANDARDS PUBLICATION, SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions, August 2015
[38A]NIST Special Publication 800-38A, National Institute of Standards and Technology, Recommendation for Block Cipher Modes of Operation, Methods and Techniques, December 2001

References and Definitions The following standards are referred to in this Security Policy. Table 29

Page 59
Abbreviation*Full Specification Name
[38B]NIST Special Publication 800-38B, National Institute of Standards and Technology, Recommendation for Block Cipher Modes of Operation: The CMAC Mode for Authentication, May 2005
[38C]NIST Special Publication 800-38C, National Institute of Standards and Technology, Recommendation for Block Cipher Modes of Operation: The CCM Mode for Authentication and Confidentiality, May 2004 (errata update 07-20-2007)
[38D]NIST Special Publication 800-38D, National Institute of Standards and Technology, Recommendation for Block Cipher Modes of Operation: Galois/Counter Mode (GCM) and GMAC, November 2007
[38E]NIST Special Publication 800-38E, National Institute of Standards and Technology, Recommendation for Block Cipher Modes of Operation: The XTS-AES Mode for Confidentiality on Storage Devices, January 2010
[38F]NIST Special Publication 800-38F, National Institute of Standards and Technology, Recommendation for Block Cipher Modes of Operation: Methods for Key Wrapping, December 2012
[56Ar3]NIST Special Publication 800-56A Revision 3, National Institute of Standards and Technology, Recommendation for Pair-Wise Key Establishment Schemes Using Discrete Logarithm Cryptography, April 2018
[56Br2]NIST Special Publication 800-56B Revision 2, National Institute of Standards and Technology, Recommendation for Pair-Wise Key Establishment Schemes Using Finite Field Cryptography, March 2019
[56Cr2]NIST Special Publication 800-56C Revision 2, National Institute of Standards and Technology, Recommendation for Pair-Wise Key Establishment Schemes Using Discrete Logarithm Cryptography, August 2020
[67]NIST Special Publication 800-67 Revision 2, National Institute of Standards and Technology, Recommendation for the Triple Data Encryption Algorithm (TDEA) Block Cipher, May 2004
[90A]NIST Special Publication 800-90A Revision 1, National Institute of Standards and Technology, Recommendation for Random Number Generation Using Deterministic Random Bit Generators, June 2015.
[90B]NIST Special Publication 800-90B, National Institute of Standards and Technology, Recommendation for the Entropy Sources Used for Random Bit Generation, January 2018.
[GPCS]GlobalPlatform Technology Card Specification, Version 2.3.1, Public Release, March 2018
[GP Amd D]GlobalPlatform Card Technology, Secure Channel Protocol ‘03’, Card Specification v2.2 – Amendment D, Version 1.1.1, July 2014, GPC_SPE_014
[GP Amd E]GlobalPlatform Card Technology, Security Upgrade for Card Content Management Card Specification v2.3 – Amendment E, Version 1.1, October 2016
[JCRE]Java Card Platform Runtime Environment Specification, Classic Edition v3.1, January 2019, Oracle

Giesecke+Devrient ePayments GmbH Public Material – May be reproduced only in its original entirety (without revision). Template v1.0

Page 60
Abbreviation*Full Specification Name
[JCVM]Java Card Platform Virtual Machine Specification, Classic Edition, v3.1, January 2019, Oracle
[JCAPI]Java Card Platform Application Programming Interface, Classic Edition, v3.1.0, Oracle
[PKCS#1]PKCS#1 v2.1: RSA Cryptography Standard, RSA Laboratories, June 14, 2002
[AN_SECU]AN_SECU_ST31N Security Guidance of the ST31N secure MCU platform, Rev 1 – September 2021
[DS_ST31N]ST31N platform ST31N600 Datasheet, DS_ST31N – Rev 2 – July 2022
[REF_MAN]Sm@rtCafé Expert 8.1 Reference Manual, Giesecke+Devrient ePayments GmbH
Acronym*Definition
APTAdaptative Proportion Test
COSCard Operating System
KATKnown Answer Test
RCTRepetition Count Test
SSPSensitive Security Parameter
PCTPairwise consistency test
ATRAnswer to reset

Table 30