EMV® Contactless Mobile Payment Type Approval CMP SE Test Applet Requirements

v1.3.0 Test Cases & Test Environments
ContactlessMobile NFC Consumer Device

EMV<sup>®</sup> Contactless Approval Mobile Payment Type CMP SE Test Applet Requirements Version 1.3.0 May 2018

Page i / iii

Legal Notice

The EMV<sup>®</sup> Specifications are provided "AS IS" without warranties of any kind, and EMVCo neither assumes nor accepts any liability for any errors or omissions contained in these Specifications. EMVCO DISCLAIMS ALL REPRESENTATIONS AND WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NONINFRINGEMENT, AS TO THESE SPECIFICATIONS. EMVCo makes no representations or warranties with respect to intellectual property rights of any third parties in or in relation to the Specifications. EMVCo undertakes no responsibility to determine whether any implementation of the EMV<sup>®</sup> Specifications may violate, infringe, or otherwise exercise the patent, copyright, trademark, trade secret, know-how, or other intellectual property rights of third parties, and thus any person who implements any part of the EMV<sup>®</sup> Specifications should consult an intellectual property attorney before any such implementation. Without limiting the foregoing, the Specifications may provide for the use of public key encryption and other technology, which may be the subject matter of patents in several countries. Any party seeking to implement these Specifications is solely responsible for determining whether its activities require a license to any such technology, including for patents on public key encryption technology. EMVCo shall not be liable under any theory for any party’s infringement of any intellectual property rights in connection with the EMV<sup>®</sup> Specifications.

/ iii Revision Log – Version 1.3.0 The following changes have been made to the document since the publication of Version 1.2.0. Some of the numbering and cross references in this version have been updated to reflect changes introduced by the published bulletins. The numbering of existing requirements did not change, unless explicitly stated otherwise. Incorporated changes described in the following Specification Updates:  Deleted Images

  • Images A5, A6, A7.1, A7.2, A8, A11, A27 deleted due to the fact that the implementation of the Switched Off features is only recommended
  • Image A28 deleted due to the deprecation of the Override Priority
  • Image A9 deleted due to the fact that the policy restrictions is not required  New Images
  • Addition of Image A1.1 to support pre activated application
  • Addition of images A5, A5.1, A27, A28.1, A28.2, A29.1, A29.2, A30, A31.1, A31.2, A32, A33, A34, A35 for support Internal Mode with Mutual Exclusivity Rule
  • Addition of images A6, A7, A8 for support of several Modes  Reference to Secure Element compliant with Global Platform removed since only GP is supported in the new PAMSE specification  STORE DATA updated to support the removal of an application from a Group, from a Group Authorization List or the removal of the PPSE from the CREL List (DGI 5000, 5001 and 5002).  SET STATUS updated to support the Non Activatable state Other editorial changes:  SECM replaced by CRS Application  References to AAUI removed and replaced by PAMSE Table of Contents 1. 1. 1. 2. 2.

2.3 Configuration A3.1/ A3. 2. 2.

2.6 Configuration A13.1/A13. 2. 2. 2. 2. 2. 2. 2. 2. 3. 3. 3. 3. 4. 4.

/ 26 1 About this document 1.1

Introduction

To support the EMVCo Contactless Mobile Payment Type Approval Process, EMVCo makes available to laboratories and product providers a GP compliant CMP SE Test Applet. The CMP SE test applet emulates a contactless payment application and makes it possible to run the tests for Type Approval. The purpose of this document is to publish the CMP SE test applet requirements allowing third party implementations supporting other mobile product architectures, such as mobile products with a non GP compliant embedded Secure Element. It includes the test profiles definition, the personalization features that have to be supported by the application in order to configure the product under test with the various profiles as well as the commands that will be used during the tests. This document also describes the EMVCo implementation of the CMP test applet. The CAP file is made available for testing of GP compliant embedded Secure Element upon signature of a license agreement with EMVCo. Note: EMVCo makes no guarantee that all EMVCo CMP qualified tools are compatible with such third party implementations. Note: EMVCo does not qualify third party implementations and cannot provide support when test cases or qualified test tools are found to be incompatible with such implementations.

1.2 Reference Documents

/ 26 Ref. [EMVCo CMP ADMIN] [ICS1] [ICS2] [CPS] [GPCS] [GPCS-C] [PAMSE] Table 1-1: Reference Documents Document Title EMVCo Contactless Mobile Payment Type Approval – Administrative Process EMVCo Contactless Mobile Payment – Application Activation User Interface Implementation Conformance Statement EMVCo Contactless Mobile Payment – PPSE Applet Implementation Conformance Statement Common Personalization Specifications GlobalPlatform, Card Specification GlobalPlatform Card, Contactless Services Card Specification v2.2 – Amendment C EMV PPSE and Application Management for Secure Element Version Latest available version Latest available version Latest available version V1.1 September 2007 Version 2.2.1 January 2011 Version 1.1 April 2013 Version 1.0

/ 26 1.3 Glossary of Terms The following abbreviations and notations are used in this document Table 1-2: Abbreviations AFI APDU AID CLA CMP CRS DF DGI ETSI FCI FWI GP HCI ICS INS PICC PPSE PUPI SE SW Application Family Identifier Application Protocol Data Unit Application IDentifier CLAss Contactless Mobile Payment Contactless Registry Service Dedicated File Data Group Identifier European Telecommunications Standards File Control Information Frame Waiting time Integer Global Platform Host Controller Interface Implementation Conformance Statement INStruction proximity integrated circuit card Proximity Payment System Environment Pseudo-Unique PICC Identifier, Type B Secure Element Status Word Institute CMP SE Test Applet – SE applet specified in this document to test the External and Internal Mode. Contactless Interface: the communication interface between a contactless terminal and the PPSE Device Interface: the communication interface between the Mobile (Payment Card Manager) and the PPSE External Mode: The mode in which the Payment Card Manager provides the PPSE with the details of the active applications that will be presented to a contactless payment terminal. Group: A set of contactless applications consisting of a group head/owner application and one or more member applications. Internal Mode: The mode in which the PPSE itself collects details of the active applications and builds the data to be presented to the contactless payment terminal. Payment Card Manager: A consumer visible application resident within the Mobile Device’s application environment and used by the consumer to manage which – of the possible multiple – Payment Card(s) will be used for conducting contactless payments. Proximity Payment System Environment: mechanism for presenting the contactless applications available for conducting a transaction to a Contactless Payment Terminal. The PPSE is the first application selected by a Contactless Payment Terminal, and based on the information provided by the PPSE, the terminal uses the highest priority application it supports to process a contactless payment.

/ 26 Secure Element: A tamper resistant module in a handset capable of hosting applications in a secure manner. A Secure Element may be an integral part of the handset, or may be a removable element which is inserted into the handset for use. Switched On: A state in which the Handset is powered up and the user interface is available for use.

/ 26 2 CMP SE Test Application Configurations EMVCo has defined several CMP SE Test Applet Configurations that shall be used by the test cases:  A1: Three CMP SE Test Applets configured for Mobile Switched On and not activated. PPSE configured for Internal Mode.  A1.1: Same as A1 with AID1 activated on contactless interface.  A2: Maximum Number of standalone CMP SE Test Applets configured for Mobile Switched On (applications not activated). Minimum value for the maximum number of standalone CMP SE Test Applets is 8. PPSE configured for Internal Mode.  A3.1: Two CMP SE Test Applet Group Head with three Contactless Test Payment Applications Members configured for Mobile Switched On (applications not activated). All applications (heads and members are configured to declare the PPSE as its CREL. PPSE configured for Internal Mode.  A3.2: same as 3.1 but only head applications are configured to declare the PPSE as its CREL.  A4: Five standalone CMP SE Test Applets with Base AID set, configured for Mobile Switched On (applications not activated). PPSE configured for Internal Mode.  A5: Same as A1 but for Internal Mode with Mutual Exclusivity Rule.  A5.1: Same as A5 with AID1 activated on contactless interface.  A6: Same as A1 but for Internal Mode and External Mode (set to external Mode by default).  A7: Same as A1 but for External Mode and Internal Mode with Mutual Exclusivity Rule (set to external Mode by default).  A8: Same as A1 but for Internal Mode and Internal Mode with Mutual Exclusivity Rule (set to internal Mode by default).  A10: Same as A1 but for External Mode.  A10.1: Same as A10 with AID1 activated on contactless interface.  A10.2: Same as A10 with all AIDs activated on contactless interface.  A12: Maximum CMP SE Test Applet Group Head with two Contactless Test Payment Applications Members configured for Mobile Switched On (applications not activated). PPSE configured for Internal Mode.  A13.1: Single Test Payment Application Group Head with Maximum Number of Contactless Test Payment Applications Members configured for Mobile Switched On (applications not activated). All applications (heads and members are configured to declare the PPSE as its CREL. PPSE configured for Internal Mode.  A13.2: same as A13.1 but only head application is configured to declare the PPSE as its CREL.

/ 26  A15: Four standalone CMP SE Test Applets with Base AID set configured for Mobile Switched On, sharing a part of discretionary data (applications not activated). PPSE configured for Internal Mode.  A16: Three CMP SE Test Applets configured for Mobile Switched On and not activated, having 2 directory entries in Discretionary data. PPSE configured for Internal Mode.  A17: Three CMP SE Test Applets configured for Mobile Switched On and not activated, having a directory entry with an AID length shorter than the instantiated AID in Discretionary data. PPSE configured for Internal Mode.  A18: Two CMP SE Test Applets configured for Mobile Switched On and not activated, having a directory entry with an AID length (longer/different) than the instantiated AID in Discretionary data. PPSE configured for Internal Mode.  A19: up to 4 CMP SE Test Applet Group Head with one Contactless Test Payment Applications Member configured for Mobile Switched On (applications not activated). PPSE configured for Internal Mode.  A20: Same as A1 but all applications have Application Family Identifier (AFI) with value '20'  A21: Same as A2 but all applications AIDx with x having odd value have Application Family Identifier (AFI) with value '20'  A22.1: Same as A3.1 but all applications have Application Family Identifier (AFI) with value '20'  A22.2: Same as A3.2 but all applications have Application Family Identifier (AFI) with value '20'  A23: Same as A4 but all applications AIDx with x having odd value have Application Family Identifier (AFI) with value '20'  A24: Same as A15 but all applications have Application Family Identifier (AFI) with value '20'  A25: Eight CMP SE Test Applets not activated. Long labels to generate PPSE truncation. PPSE configured for Internal Mode.  A26: Three CMP SE Test Applet Group Head with three Contactless Test Payment Applications Members configured for Mobile Switched On (applications not activated). All applications (heads and members are configured to declare the PPSE as its CREL. PPSE configured for Internal Mode.  A27: Same as A5 but all applications have Application Family Identifier (AFI) with value '20'  A28.1: same as A3.1 but for Internal Mode with Mutual Exclusivity Rule  A28.2: same as A3.2 but for Internal Mode with Mutual Exclusivity Rule  A29.1: same as A22.1 but for Internal Mode with Mutual Exclusivity Rule  A29.2: same as A22.2 but for Internal Mode with Mutual Exclusivity Rule  A30: same as A19 but for Internal Mode with Mutual Exclusivity Rule

/ 26  A31.1: same as A13.1 but for Internal Mode with Mutual Exclusivity Rule  A31.2: same as A13.2 but for Internal Mode with Mutual Exclusivity Rule  A32: Same as A16 but for Internal Mode with Mutual Exclusivity Rule  A33: Same as A17 but for Internal Mode with Mutual Exclusivity Rule  A34: Same as A18 but for Internal Mode with Mutual Exclusivity Rule  A35: One CMP SE Test Applet Group Head with four Contactless Test Payment Applications Members having 2 directory entries in Discretionary data, configured for Mobile Switched On (applications not activated). All applications (heads and members are configured to declare the PPSE as its CREL. PPSE configured for Internal Mode with Mutual Exclusivity Rule.

2.1 Configuration A1 Details 3 AIDs AID1= ‘A1111111111010’,

  • Application Label= ‘Label1’,
  • Kernel ID= ‘01’, AID2= ‘A2222222221010’,
  • Application Label= ‘Label2’,
  • Kernel ID= ‘02’, AID3= ‘A3333333331010’,
  • Application Label= ‘Label3’,
  • Kernel ID= ‘03’,
  • Extended Selection= ‘03’,
  • Directory Discretionary Template= ‘1122334455667788’. / 26 2.2 Configuration A2 Details N AIDs: N is the Maximum number of AID of Standalone application supported (declared in the ICS). N &gt;=8. AID1= ‘A0010101011010’,
  • Application Label= ‘Label1’,
  • Kernel ID= ‘01’, AID2= ‘A0020202021010’,
  • Application Label= ‘Label2’,
  • Kernel ID= ‘02’, …. AIDN= ‘A0NNNN1010’,
  • Application Label= ‘LabelN’,
  • Kernel ID= ‘N’, / 26 2.3 Configuration A3.1/ A3.2 Details 2 AIDs that represent Application group heads and 3 AIDs members per group: AID group head1= ‘A0010101011010’,
  • Application Label= ‘LabelH1’,
  • Kernel ID= ‘01’, AID group Member 1 Head1= ‘A0010101011111’,
  • Application Label= ‘LabelH1M1’,
  • Kernel ID= ‘01’, AID group Member 2 Head1= ‘A0010101011212’,
  • Application Label= ‘LabelH1M2’,
  • Kernel ID= ‘01’, AID group Member 3 Head1= ‘A0010101011313’,
  • Application Label= ‘LabelH1M3’,
  • Kernel ID= ‘01’, AID Group Head2= ‘A0020202021010’,
  • Application Label= ‘LabelH2’,
  • Kernel ID= ‘02’, AID group Member 1 Head2= ‘A0020202021111’,
  • Application Label= ‘LabelH2M1’,
  • Kernel ID= ‘02’, AID group Member 2 Head2= ‘A0020202021212’,
  • Application Label= ‘LabelH2M2’,
  • Kernel ID= ‘02’, AID group Member 3 Head2= ‘A0020202021313’,
  • Application Label= ‘LabelH2M3’,
  • Kernel ID= ‘02’, / 26 For A.3.1, each application (head, member) has a single directory entry in Application Discretionary Data with:  AID  Application Label  Kernel ID For A.3.2, only head applications have several directory entries in Application Discretionary Data with:  AID, Application Label, Kernel ID for the Head  AID, Application Label, Kernel ID for the Member 1  AID, Application Label, Kernel ID for the Member 2  AID, Application Label, Kernel ID for the Member 3 2.4 Configuration A4 Details Five standalone CMP SE Test Applets with Base AID set:
  • DF name 1= ‘A0010101011010’, Application Label 1= ‘Label1’, Kernel ID1= ‘01’, Base AID 1= ’05’
  • DF name 2= ‘A0010101012020’, Application Label 2= ‘Label2’, Kernel ID2= ‘02’, Base AID 2= ’05’
  • DF name 3= ‘A0010101011020’, Application Label 3= ‘Label3’, Kernel ID3= ‘03’, Base AID 3= ’06’
  • DF name 4= ‘A0010101014010’, Application Label 4= ‘Label4’, Kernel ID4= ‘04’, Base AID 4= ’06’
  • DF name 5= ‘A0010101015010’, Application Label 5= ‘Label5’, Kernel ID5= ‘05’ / 26 2.5 Configuration A12 Details N AIDs that represent Application group heads and 2 AIDs members per group (with N is the Maximum number of groups defined in ICS): AID group head1= ‘A0010101011010’,
  • Application Label= ‘LabelH1’,
  • Kernel ID= ‘01’, AID group Member 1 Head1= ‘A0010101011111’,
  • Application Label= ‘LabelH1M1’,
  • Kernel ID= ‘01’, AID group Member 2 Head1= ‘A0010101011212’,
  • Application Label= ‘LabelH1M2’,
  • Kernel ID= ‘01’, ….. AID Group Head N= ‘A0’ NNNN ’1010’,
  • Application Label= ‘LabelH’ N,
  • Kernel ID= N, AID group Member 1 Head N= ‘A0’ NNNN ‘1111’,
  • Application Label= ‘LabelH’ N ‘M1’,
  • Kernel ID= N, AID group Member 2 Head N= ‘A0’ NNNN ‘1212’,
  • Application Label= ‘LabelH’ N ‘M2’,
  • Kernel ID= N, With N is the Maximum number of groups defined in ICS / 26 2.6 Configuration A13.1/A13.2 Details One AID that represent the single Application group head and N AIDs members in the group (with N is the Maximum number of members in a group defined in ICS): AID group head1= ‘A0010101010000’,
  • Application Label= ‘LabelH1’,
  • Kernel ID= ‘01’, AID group Member 1 Head1= ‘A0010101010101’,
  • Application Label= ‘LabelH1M1’,
  • Kernel ID= ‘01’, AID group Member 2 Head1= ‘A0010101010202’,
  • Application Label= ‘LabelH1M2’,
  • Kernel ID= ‘01’, …. AID group Member N Head1= ‘A001010101’NN,
  • Application Label= ‘LabelH1M’N,
  • Kernel ID= ‘01’, For A.13.1, each application (head, member) has a single directory entry in Application Discretionary Data with:  AID  Application Label  Kernel ID For A.13.2, only head application has several directory entries in Application Discretionary Data with:  AID, Application Label, Kernel ID for the Head  AID, Application Label, Kernel ID for the Member 1  AID, Application Label, Kernel ID for the Member 2  AID, Application Label, Kernel ID for the Member 3 ..  AID, Application Label, Kernel ID for the Member n / 26 2.7 Configuration A15 Details Four standalone CMP SE Test Applets with Base AID set and a part of discretionary data shared:
  • DF name 1= ‘A00101010110100001’, Application Label 1= ‘Label1’, Kernel ID1= ‘01’, Base AID 1= ’08’ in the second directory entry of the Application Discretionary Data, (DF name = ‘A0010101011010’, Application Label = ‘Label’, Kernel ID= ‘02’, Base AID 1= ’07’, in the first directory entry of the Application Discretionary Data)
  • DF name 2= ‘A00101010110100002’, Application Label 2= ‘Label2’, Kernel ID2= ‘01’, Base AID 2= ’08’, in the second directory entry of the Application Discretionary Data (DF name = ‘A0010101011010’, Application Label = ‘Label’, Kernel ID= ‘02’, Base AID 1= ’07’, in the first directory entry of the Application Discretionary Data)
  • DF name 3= ‘A00101010110100101’, Application Label 3= ‘Label3’, Kernel ID3= ‘03’, Base AID 2= ’08’, in the second directory entry of the Application Discretionary Data (DF name = ‘A0010101011010’, Application Label = ‘Label’, Kernel ID= ‘02’, Base AID 1= ’07’, in the first directory entry of the Application Discretionary Data)
  • DF name 4= ‘A001010101101002’, Application Label 4= ‘Label4’, Kernel ID4= ‘04’.

2.8 Configuration A16 Details Three standalone CMP SE Test Applets with two entries in discretionary data:

  • DF name 1= ‘A1111111111010010203040506070809’, Application Label = ‘Lab1’, Kernel ID= ‘04’, in the second directory entry of the Application Discretionary Data, (DF name = ‘A1111111111010’, Application Label = ‘Label1’, Kernel ID= ‘01’, in the first directory entry of the Application Discretionary Data)
  • DF name 2= ‘A222222222101000’, Application Label = ‘Lab2’, Kernel ID= ‘05’, in the second directory entry of the Application Discretionary Data (DF name = ‘A2222222221010’, Application Label = ‘Label2’, Kernel ID= ‘02’, in the first directory entry of the Application Discretionary Data)
  • DF name 3= ‘A3333333331010’, Application Label= ‘Label3’, Kernel ID3= ‘03’, in the first directory entry of the Application Discretionary Data (DF name = ‘A333333333’, Application Label = ‘Lab3’, Kernel ID= ‘06’, in the second directory entry of the Application Discretionary Data) / 26 2.9 Configuration A17 Details Three standalone CMP SE Test Applets with the AID length set in the an entry in discretionary data shorter that the instantiated AID:
  • DF name 1 (instantiated)= ‘A1111111111010010203040506070809’, (DF name = ‘A1111111111010’, Application Label = ‘Label1’, Kernel ID= ‘01’, in the directory entry of the Application Discretionary Data)
  • DF name 2 (instantiated)= = ‘A222222222101000’ (DF name = ‘A2222222221010’, Application Label = ‘Label2’, Kernel ID= ‘02’, in the directory entry of the Application Discretionary Data)
  • DF name 3 (instantiated)= = ‘A3333333331010’, (DF name = ‘A333333333’, Application Label = ‘Label3’, Kernel ID= ‘03’, in the directory entry of the Application Discretionary Data) 2.10 Configuration A18 Details Two standalone CMP SE Test Applets with the AID longer/different than the instantiated set in the entries in discretionary data:
  • DF name 1 (instantiated)= ‘A1111111111010’, (DF name = ‘A9999999999090’, Application Label = ‘Label1’, Kernel ID= ‘01’, in the directory entry of the Application Discretionary Data)
  • DF name 2 (instantiated)= = ‘A2222222221010’ (DF name = ‘A22222222210100102030405’, Application Label = ‘Label2’, Kernel ID= ‘02’, in the directory entry of the Application Discretionary Data) 2.11 Configuration A19 Details N AIDs that represent Application group heads and 1 AIDs members per group (with N is the Maximum number of groups defined in ICS with a maximum value of 4): AID group head1= ‘A0010101011010’,
  • Application Label= ‘LabelH1’,
  • Kernel ID= ‘01’, AID group Member 1 Head1= ‘A0010101011111’,
  • Application Label= ‘LabelH1M1’,
  • Kernel ID= ‘01’, ….. AID Group Head N= ‘A0’ NNNN ’1010’,
  • Application Label= ‘LabelH’ N,
  • Kernel ID= N, / 26 AID group Member 1 Head N= ‘A0’ NNNN ‘1111’,
  • Application Label= ‘LabelH’ N ‘M1’,
  • Kernel ID= N, With N is the Maximum number of groups defined in ICS (value of N=4 should be used if the maximum number of groups in ICS is more than 4) 2.12 Configuration A25 Details 8 AIDs AID1= ‘A1111111111010’,
  • Application Label= ‘ApplicationLabe1’,
  • Kernel ID= ‘01’, AID2= ‘A2222222221010’,
  • Application Label= ‘ApplicationLabe2’,
  • Kernel ID= ‘02’, AID3= ‘A3333333331010’,
  • Application Label= ‘ApplicationLabe3’,
  • Kernel ID= ‘03’, AID4= ‘A4444444441010’,
  • Application Label= ‘ApplicationLabe4’,
  • Kernel ID= ‘04’, AID1= ‘A5555555551010’,
  • Application Label= ‘ApplicationLabe5’,
  • Kernel ID= ‘05’, AID6= ‘A6666666661010’,
  • Application Label= ‘ApplicationLabe6’,
  • Kernel ID= ‘06’, / 26 AID7= ‘A7777777771010’,
  • Application Label= ‘ApplicationLabe7’,
  • Kernel ID= ‘07’, AID8= ‘A8888888881010’,
  • Application Label= ‘ApplicationLabe8’,
  • Kernel ID= ‘08’, 2.13 Configuration A26 Details 3 AIDs that represent Application group heads and 3 AIDs members per group: AID group head1= ‘A0010101011010’,
  • Application Label= ‘Application H1’,
  • Kernel ID= ‘01’, AID group Member 1 Head1= ‘A0010101011111’,  Application Label= ‘Application H1M1’,  Kernel ID= ‘01’, AID group Member 2 Head1= ‘A0010101011212’,  Application Label= ‘Application H1M2’,  Kernel ID= ‘01’, AID group Member 3 Head1= ‘A0010101011313’,  Application Label= ‘Application H1M3’,  Kernel ID= ‘01’, AID Group Head2= ‘A0020202021010’,
  • Application Label= ‘Application H2’,
  • Kernel ID= ‘02’, AID group Member 1 Head2= ‘A0020202021111’,  Application Label= ‘Application H2M1’,  Kernel ID= ‘02’, AID group Member 2 Head2= ‘A0020202021212’,  Application Label= ‘Application H2M2’,  Kernel ID= ‘02’, AID group Member 3 Head2= ‘A0020202021313’,  Application Label= ‘Application H2M3’,  Kernel ID= ‘02’, AID Group Head3= ‘A0030303031010’,
  • Application Label= ‘Application H3’,
  • Kernel ID= ‘03’, / 26 AID group Member 1 Head3= ‘A0030303031111’,  Application Label= ‘Application H3M1’,  Kernel ID= ‘03’, AID group Member 2 Head3= ‘A0030303031212’,  Application Label= ‘Application H3M2’,  Kernel ID= ‘03’, AID group Member 3 Head3= ‘A0030303031313’,  Application Label= ‘Application H3M3’,  Kernel ID= ‘03’, each application (head, member) has a single directory entry in Application Discretionary Data with:  DF Name (AID)  Application Label  Kernel ID 2.14 Configuration A35 Details 1 AID that represents Application group head and 3 AIDs members in the group with 2 entries in the discretionary data for each of them: AID group head1= ‘A0010101011010’,
  • Application Label= ‘Application H1’,
  • Kernel ID= ‘01’, AID group Member 1  First Entry
  • DFName = ‘A0010101011111’
  • Application Label= ‘Application H1M1’,
  • Kernel ID= ‘02’  Second Entry
  • DFName = ‘A001010101111101020304050607’
  • Application Label= ‘Application H1M1-b’,
  • Kernel ID= ‘05’ AID group Member 2  First Entry
  • DFName = ‘A0010101012222’
  • Application Label= ‘Application H1M2’,
  • Kernel ID= ‘03’  Second Entry
  • DFName = ‘A001010101222201020304050607’
  • Application Label= ‘Application H1M2-b’,
  • Kernel ID= ‘06’ AID group Member 3  First Entry
  • DFName = ‘A0010101013333’
  • Application Label= ‘Application H1M3’,
  • Kernel ID= ‘04’  Second Entry
  • DFName = ‘A001010101333301020304050607’
  • Application Label= ‘Application H1M3-b’,
  • Kernel ID= ‘07’ / 26 / 26 3 Description of the SE CMP Test Applet 3.1 Overview There are two functional objectives for this test application:  In External Mode, the CMP SE Test Application shall be able to activate itself (by a command or at personalization) or via the CRS Application, independently of the PPSE update. When activated, the CMP SE Test Applet shall be able to respond to the Select AID command.  In Internal Mode, the CMP SE Test Application shall be able to activate itself or via the CRS Application, with an automatic update of the PPSE. When activated, the CMP SE Test Applet shall be able to respond to the Select AID command. Several instances of the CMP SE Test Applets can be created, each instance has its own personalization data and its own State.

3.2 Communication Requirements Supplementary logical channels and the logical channels numbers 1 to 19 shall be supported by the CMP SE Test Applet are parameters declared in [ICS1] or [ICS2].

3.3 Personalization Requirements 3.3.1 Personalization Commands The personalization commands interface defined in [CPS] shall be supported:  SELECT AID  INITIALIZE FOR UPDATE  EXTERNAL AUTHENTICATE  STORE DATA Establishment of a secure channel is required before starting the personalization of the CMP SE Test Applet. The level of security of the secure channel can be no secure messaging (Authentication only), Mac, or Mac and encryption The CMP SE Test Applet shall implement [PAMSE] Annex A which specifies the structure of the Payment Application – CRS Contactless data, and also specifies the GlobalPlatform API to be used during personalization of the SE Test Application

/ 26 3.3.2 Store Data The command Store Data has been defined to specify the data object needed to populate the CRS during the application personalization. The DGIs defined below shall be supported: Table 3-1: DGIs supported in Store Data command Data object FCI Application Discretionary Data Application Group Head Application Group Display Required Indicator Application Family Identifier Application Image Template URI Display Message Policy Restricted Applications Activation CREL Application AID CRS Tag value ‘A6’ ‘A2’ ‘A3’ ‘88’ ‘87’ ‘6D’ ‘5F50’ ‘5F45’ ‘A5’ ‘A4’ DGI ‘9102’ ‘4000’ ‘4001’ ‘4002’ ‘4003’ ‘4004’ ‘4005’ ‘4006’ ‘4007’ ‘4008’ ‘4009’ ‘400A’ Presence for Internal Mode Mandatory Mandatory Conditional Conditional Optional Optional Optional Optional Optional Optional Mandatory Conditional Presence for External Mode Mandatory Optional Conditional Conditional Optional Optional Optional Optional Optional Optional Mandatory Not present  The DGI ‘9102’ contains the template ‘A5’ (tag, length and value), of the FCI according to [CPS]; the CMP SE test applet shall build the FCI (template’ 6F’) with a concatenation of its AID (tag ‘84’) and template ‘A5’.  The DGIs ‘4000’ – ‘400A’ contains the value field of the respective CRS tag value indicated in Table 3-1. The CMP SE Test Applet must populate the CRS using its GPCLRegistryEntry as described in [PAMSE] Annex A.2. Refer to [GPCS-C] for the formatting of the CRS tag values.  If a CMP SE test applet instance is intended to be a member of a group, the CRS tag ‘A2’ value (DGI ‘4001’) shall be present, If this CMP SE test applet instance is a group head, the CRS tag ‘A3’ value (DGI ‘4002’) is optional.  If the DGI ‘4003 (Display Required Indicator) is set to ‘00’ or is not present, it indicates that the CMP SE test applet requires Mobile switched on in Internal Mode. The DGI is not significant in External Mode.  The DGI ‘400A’ ( CREL Application AID List) contains the tag ‘A4’ value. When Internal Mode is selected, the CREL Application AID List shall be personalized with the AID of the PPSE ('325041592E5359532E4444463031'). When External Mode is selected, the CREL Application AID List shall not be personalized.  The DGI ‘4009’ Activation indicates the Status ‘Deactivated’ with a value ‘00’ and the Status ‘Activated’ with a value ‘01’.

/ 26  For External Mode, the DGIs ‘4000’ – ‘4009’ may be not personalized if the CMP SE test applet instance has not the self-activation privilege (in this case, the CMP SE test applet instance can only be activated by the CRS Application). The Store Data Command of the CMP SE Test Applet shall be coded as follows Table 3-2: Store Data Command Format for the Test Application Code CLA INS P1 P2 Lc Data Value ‘8x’ ‘E2’ ‘00’ or ‘80’ (for the Last Store Data command) ‘00’ Var.  The Data field shall contain a single DGI defined in Table 1.  The maximum DGI length to be supported is 240 bytes.  The command shall be rejected with SW=’6A80’ when not correctly formatted (DGI not known, DGI length not consistent).  When P1=’80’ (last Store Data), the command shall be rejected with SW=’6885’ if the Application FCI (DGI ‘9102’) and Activation (DGI ‘4009’) are not personalized.  The application switches to post personalization mode when the last Store Data has been received and processed successfully 3.4 Post Personalization Requirements Three commands shall be supported after personalization is completed:  SELECT AID to select the CMP SE Test Applet.  SET STATUS to set the CMP SE Test Applet State (Activated/Deactivated) or to Assign or Reset Override Priority.  STORE DATA to modify the Application Discretionary Data (Tag ‘A6’) of an application, and also to remove an application from the Group Authorization or to remove the PPSE from the CREL List.

3.4.1 Select AID The command shall be supported for an AID length in the range [5,16]. EMV book 1 command structure shall be supported. There is no requirement about the Select response except a Status Word 9000 when selection is done on Device Interface. The FCI compliant EMV Book 1 shall be returned in Select response when Selection is performed on Antenna Interface

/ 26 3.4.2 Set Status The command Set Status has been defined to specify the State (in External or Internal Mode) or to override the Priority of the CMP SE Test Applet (in Internal Mode only). Two States have been defined:  Activated  Deactivated. The command Set Status is supported only when the CMP SE Test Applet is personalized. The Set Status Command of the CMP SE Test Applet shall be coded as follows Table 3-3: Set Status Command Format for the Test Application Code CLA INS P1 P2 Le Value ‘8x’ ‘F0’ See below See below ‘00’ The P1 parameter shall be coded as follows Table 3-4: Set Status – Parameter P1 Value ‘01’ ‘02’ Meaning Availability State Assign or Reset Override Priority The P2 parameter shall be coded as follows when P1=’01’ (Availability State) Table 3-5: Set Status – Parameter P2 – Availability State Value ‘01’ ‘00’ ‘80’ Meaning CMP SE Test Applet to be set to ‘Activated’ CMP SE Test Applet to be set to ‘Deactivated’ CMP SE Test Applet to be set to ‘Non Activatable’ The P2 parameter shall be coded as follows when P1=’02’ (Assign or Reset Override Priority) Table 3-6: Set Status – Parameter P2 – Override Priority Value Meaning ‘02’ Assign Override Priority ‘82’ Reset Override Priority

/ 26  When P1=’01’ (CMP SE Test Applet to be set to ‘Activated’/‘Deactivated’), the CMP SE Test Applet shall inform the CRS about the application status using the setCLState() method.  When P1=’02’ (Assign/Reset Override Priority Test Application), the CMP SE Test Applet shall inform the CRS about the application priority using the setVolatilePriority() method. The command Set Status shall be rejected with SW=’6985’ when the CMP SE Test Applet is not personalized. The command Set Status shall be rejected with SW=’6984’ when the CMP SE Test Applet has not been activated due to a conflict or any other issue. Command Data The command data is empty. Response Data No response data is returned by the Set Status command.

3.4.3 Store Data The command Store Data supports the update of the DGI 4000 (value of the Application Discretionary Data - Tag ‘A6’- of an instance of the CMP SE Test Applet), when the CMP SE Test Applet is personalized (Refer to section 3.3.2Store DataTable 3-2 for the format of the DGI 4000). Upon reception of the command, the application shall transmit the Application Discretionary Data to the CRS. The command Store Data also supports 3 additional DGIs in post personalization phase Table 3-7: Additional DGIs supported by Store Data command during Post Personalization Data object Remove from Group Remove from Group Authorization List Remove from CREL DGI ‘5000’ ‘5001’ ‘5002’  The DGI ‘5000’ shall be empty (Length = 00). Upon reception of the Store Data DGI ‘5000’ command, the CMP SE Test Applet must update the CRS using its GPCLRegistryEntry as described in [GPCS-C] section 3.7.4 and the application that has received the Store Data shall be removed from the group it belongs to. This DGI applies to a group member application.  The DGI ‘5001’ shall contain the AID of the application to remove from the Group Authorization List. Upon reception of the Store Data DGI ‘5001’ command, the CMP SE Test Applet must update the CRS using its GPCLRegistryEntry as described in [GPCS-C] section 3.7.6 and the application identified in the DGI shall be removed from the Group Authorization List. This DGI applies to a head application.

/ 26  The DGI ‘5002’ shall contain the AID of the CREL Application (the PPSE AID for the test context: AID = '325041592E5359532E4444463031'). Upon reception of the Store Data DGI ‘5002’ command, the CMP SE Test Applet must update the CRS using its GPCLRegistryEntry as described in [GPCS-C] section 3.8.4 and the AID identified in the DGI shall be removed from the CREL list of the application that has received the Store Data. Note: post personalization is not supported within a secure channel. Consequently the command shall be sent with CLA = 80 and Initialize Update/External Authenticate sequence is not required. Only the above DGIs are supported post personalization

/ 26 4 CMP SE Test Applet – EMVCo Implementation This section applies to the EMVCo implementation of the CMP SE Test application. Secure Elements shall be compliant with [GPCS-C]:

4.1 Resources The CMP SE test applet required resources are defined below: Table 4-1: EMVCo CMP SE Test Applet Size CMP SE test applet EEPROM Size RAM Size Code size in the card Installation application 2.3 k 0.2k 20 bytes 4.2 Installation Parameters No specific install parameter for the functional part is required for this applet. It is required to set the contactless communication parameters at CMP SE test applet installation if no default parameters are set in the platform. All these setting shall done according to [GPCS-C]. In order for the CMP SE Test Applet to set its own state, it must be installed with the Contactless Self-Activation privilege as defined in [GPCS-C]. Note: During the installation of the CMP SE test applet, it is possible to set the CRS Tag values described in the Table 3-1 (except DGI 9102 content), using the applet Global Platform installation parameters. Refer to [GPCS-C] user Interaction Parameters section and Contactless Protocol parameters Structure section to personalize the CMP SE test applet during its installation (instead of running the personalization sequence described in section 3.3). Personalization of CRS Tag values during the installation phase may require the usage of Install for Registry Update APDU command due to the length of the data to send. The values of the GlobalPlatform tags used to configure the user Interaction parameters during the applet installation are not the same as the one described in the Table 3-1 (GlobalPlatform tags for contactless registry data)

/ 26 *** END OF DOCUMENT *** © 2018 EMVCo, LLC. All rights reserved. Reproduction, distribution and other use of this document is permitted only pursuant to the applicable agreement between the user and EMVCo found at www.emvco.com. EMV<sup>®</sup> is a registered trademark or trademark of EMVCo, LLC in the United States and other countries.