SB n° 261: Implementation Options for EMV Book C-2
EMV<sup>®</sup> Specification Bulletin No. 261 October 2021 Implementation Options for EMV Book C-2 This Specification Bulletin contains modifications for the implementation choices of Book C-2 V2.10.
Applicability
This Draft Specification Bulletin applies to:
- EMV Contactless Specifications for Payment Systems, Book C-2, Kernel 2 Specification, Version 2.10, March 2021
Effective Date
- January 1st 2022
Description
This Specification Bulletin introduces the following changes:
- The following functionality is no longer supported:
- Torn Transaction Recovery
- Offline Balance Reading
- STOP Signal
- Data exchange, IDS and SDS are introduced as new implementation option. The IDS and Torn Transaction Recovery implementation option is no longer supported. countries. Specification Changes Torn Transaction Recovery Section 4.4 – Torn Transaction Log The Torn Transaction Log is no longer implemented. Table 4.9 – Discretionary Data for an EMV Mode Transaction Remove Torn Record Section 5.9 – Recover AC The command is no longer used so the section is deleted. Section 6.3 – State 1 Idle Symbols S1.4, S1.5 and S1.6 are no longer implemented. Section 6.11 – States 4, 5 and 6 Common Processing Symbols S456.43, S456.44, S456.47, S456.48 and S456.49 are no longer implemented. Section 6.15 – State 9 Waiting for Generate AC Response – 1 Symbols S9.5, S9.11, S9.13, S9.14 and S9.15 are no longer implemented. Section 6.16 – State 10 Waiting for Recover AC Response State 10 is no longer implemented. Section 6.16 – State 11 Waiting for Generate AC Response – 2 State 11 is no longer implemented. Section 6.19 – State 12 Waiting for Put Data Response Before Generate AC Symbols S12.13, S12.14, S12.17, S12.18 and S12.19 are no longer implemented. Annex A – Data Dictionary The following data objects no longer exist:
- DRDOL
- DRDOL Related Data
- Max Lifetime of Torn Transaction Log Record
- Max Number of Torn Transaction Log Records
- Torn Entry
- Torn Record
- Torn Temp Record countries. Offline Balance Reading Table 4.9 – Discretionary Data for an EMV Mode Transaction Remove Balance Read After Gen AC and Balance Read Before Gen AC Section 6.11.3 – States 4, 5 and 6 Common Processing Remove S456.34 Section 6.15.3 – State 9 Waiting for Generate AC Response -1 – Processing Remove S9.25 Section 6.17 – States 9 and 10 Common Processing In S910.75, remove Balance Read After Gen AC processing as follows: S910.75 'Status' in User Interface Request Data:= NOT READY IF [(Cryptogram Information Data AND 'C0') = '40'] THEN 'Hold Time' in User Interface Request Data:= Message Hold Time IF [IsNotEmpty(TagOf(Balance Read After Gen AC))] THEN 'Value Qualifier' in User Interface Request Data:= BALANCE 'Value' in User Interface Request Data:= Balance Read After Gen AC IF [IsNotEmpty(TagOf(Application Currency Code))] THEN 'Currency Code' in User Interface Request Data:= Application Code ENDIF ENDIF IF ['CVM' in Outcome Parameter Set = OBTAIN SIGNATURE] THEN […] Currency Section 7 – Procedures The following procedures and states are no longer implemented: - 7.1 Procedure – Pre-gen AC Balance Reading - 7.2 State 16 – Waiting for Pre-gen AC Balance - 7.3 Procedure – Post-gen AC Balance Reading - 7.4 State 17 – Waiting for Post-gen AC Balance Annex A – Data Dictionary The following data objects no longer exist:
- Balance Read After Gen AC
- Balance Read Before Gen AC countries. STOP Signal Section 6.3 – State 1 Idle Symbols S1.2 and S1.3 are no longer implemented. Section 6.4 – State 2 Waiting for PDOL Data Symbols S2.2 and S2.4 are no longer implemented. Section 6.5 – State 3 – Waiting for GPO Response Symbols S3.6 and S3.7 are no longer implemented. Section 6.6 – State R1 – Waiting for Exchange Relay Resistance Data Symbols SR1.6, SR1.7 and SR1.8 are no longer implemented. Section 6.8 – State 4 Waiting for EMV Read Record Response Symbols S4.7 and S4.8 are no longer implemented. Section 6.9 – State 5 Waiting for Get Data Response Symbols S5.7 and S5.8 are no longer implemented. Section 6.10 – State 6 Waiting for EMV Mode First Write Flag Symbols S6.2 and S6.4 are no longer implemented. Section 6.12 – State 7 Waiting for Mag-stripe Read Record Response Symbols S7.7 and S7.8 are no longer implemented. Section 6.13 – State 8 Waiting for Mag-stripe First Write Flag Symbols S8.3 and S8.4 are no longer implemented. Section 6.15 – State 9 Waiting for Generate AC Response 1 Symbol S9.3 is no longer implemented. Section 6.19 – State 12 Waiting for Put Data Response Before Generate AC Symbols S12.3 and S12.7 are no longer implemented. Section 6.20 – State 13 Waiting for Put Data Response Before Generate AC Symbol S13.7 is no longer implemented. Section 6.21 – State 14 Waiting for CCC Response - 2 Symbol S14.7 is no longer implemented. Section 6.22 – State 15 Waiting for Put Data Response After Generate AC Symbol S15.3 is no longer implemented. countries. DE/DS Implementation Option Section 3.2 The IDS & Torn transaction recovery implementation option is no longer supported and replaced by the Data Exchange and Data Storage implementation option: Data Exchange and Data Storage This Implementation Option gives the implementer the choice to build Kernel 2 with or without support for Data Exchange, IDS and SDS. This Implementation Option is referenced as DE/DS. Section 4.1.3 – TLV Database – Services The service UpdateWithDetData(Terminal Sent Data) is only implemented for the DE/DS Implementation Option. Table 4.9 – Discretionary Data for an EMV Mode Transaction DS Summary 3, DS
Summary
Status, Post-Gen AC Put Data Status, and Pre-Gen AC Put Data Status are only included for the DE/DS Implementation Option. Section 5.1 – C-APDU Commands The APDUs GET DATA and PUT DATA are only implemented for the DE/DS Implementation Option. Section 6.3.1 – State 1 Idle – Local Variables Missing PDOL Data Flag is only implemented for the DE/DS Implementation Option. Section 6.3.3 – State 1 Idle – Processing Symbols S1.10, S1.11, S1.12, S1.15, S1.16, S1.16.1, S1.17, S1.18, S1.19, S1.20, S1.21, S1.22 and S1.23 are only implemented for the DE/DS Implementation Option. Section 6.4 – State 2 Waiting for PDOL Data State 2 is a state specific to data exchange processing and is only implemented for the DE/DS Implementation Option. Section 6.5.1 – State 3 – Waiting for GPO Response – Local Variables Sync Data is only implemented for the DE/DS Implementation Option. Section 6.5.3 – State 3 – Waiting for GPO Response – Processing Symbols S3.2, S3.3, S3.76, S3.77 and S3.78 are only implemented for the DE/DS Implementation Option.
countries.
Section 6.7.3 – States 3, R1 – Common Processing Symbols S3R1.1, S3R1.2, S3R1.3, S3R1.4, S3R1.10, S3R1.11, S3R1.12, S3R1.13, S3R1.14, S3R1.15, S3R1.16, S3R1.18 and S3R1.21 are only implemented for the DE/DS Implementation Option. In S3R1.17, the ELSE branch goes to S3R1.20 if DE/DS is not implemented. Section 6.8.1 – State 4 – Waiting for EMV Read Record Response – Local Variables Sync Data is only implemented for the DE/DS Implementation Option. Section 6.8.3 – State 4 Waiting for EMV Read Record Response – Processing Symbols S4.1, S4.2, S4.15, S4.16, S4.17, S4.18, S4.28, S4.29, S4.30, S4.31, S4.32 and S4.33 are only implemented for the DE/DS Implementation Option. In S4.25, the THEN branch goes to S4.34 if DE/DS is not implemented. In S4.36, the THEN branch goes to S4.19 if DE/DS is not implemented. In S4.37, the ELSE branch goes to S4.19 if DE/DS is not implemented. Section 6.9 – State 5 Waiting for Get Data Response State 5 is a state specific to SDS processing and is only implemented for the DE/DS Implementation Option. Section 6.10 – State 6 Waiting for EMV Mode First Write Flag State 6 is a state specific to SDS processing and is only implemented for the DE/DS Implementation Option. Section 6.11.3 – States 4, 5 and 6 Common Processing Symbols S456.2, S456.3, S456.4, S456.5, S456.6, S456.7, S456.8, S456.9, S456.10, S456.11, S456.18, S456.19, S456.20.1, S456.20.2, S456.21, S456.22, S456.23, S456.42, S456.50 and S456.51 are only implemented for the DE/DS Implementation Option. If DE/DS is not implemented, then S456.1 changes as follows: IF ['Next Cmd' in Next Cmd = READ RECORD] THEN GOTO s4 – waiting for read record response ELSE GOTO S456.12 ENDIF In S456.16, the THEN branch goes to S456.24 if DE/DS is not implemented. Section 6.12.1 – State 7 – Waiting for Mag-stripe Read Record Response – Local Variables Sync Data is only implemented for the DE/DS Implementation Option.
countries.
Section 6.12.3 – State 7 Waiting for Mag-stripe Read Record Response – Processing Symbols S7.1, S7.2, S7.14 and S7.15 are only implemented for the DE/DS Implementation Option. In S7.12, the THEN branch goes to S7.16 if DE/DS is not implemented. Section 6.13 – State 8 Waiting for Mag-stripe First Write Flag State 8 is a state specific to data exchange processing and is only implemented for the DE/DS Implementation Option. Section 6.14.3 – States 7 and 8 Common Processing Symbols S78.1, S78.2, S78.3, S78.4, S78.5, S78.6, S78.7, S78.12, S78.13 and S78.14 are only implemented for the DE/DS Implementation Option. In S78.10, the ELSE branch goes to S78.15 if DE/DS is not implemented. Section 6.15.3 – State 9 Waiting for Generate AC Response 1 – Processing Symbols S9.6, S9.7, S9.8, S9.26 are only implemented for the DE/DS Implementation Option. In S9.23, the THEN branch goes to S9.27 if DE/DS is not implemented. Section 6.17.3 – States 9 and 10 – Common Processing Symbols S910.2, S910.2.2, S910.3, S910.3.1, S910.5, S910.8, S910.9, S910.10, S910.11, S910.12, S910.13, S910.14, S910.15, S910.16, S910.17, S910.18, S910.19, S910.33, S910.51, S910.52, S910.61, S910.62, S910.76, S910.77 and S910.78 are only implemented for the DE/DS Implementation Option. In S910.1, the THEN branch goes to S910.2.1 if DE/DS is not implemented. In S910.32, the THEN branch goes to S910.35 if DE/DS is not implemented. Section 6.19 – State 12 Waiting for Put Data Response Before Generate AC State 12 is a state specific to SDS processing and is only implemented for the DE/DS Implementation Option. Section 6.22 – State 15 Waiting for Put Data Response After Generate AC State 15 is a state specific to SDS processing and is only implemented for the DE/DS Implementation Option. Section 7.6 – Procedure – Prepare Generate AC Command Symbols GAC.1, GAC.2, GAC.3, GAC.4, GAC.5, GAC.6, GAC.7, GAC.8, GAC.9, GAC.10, GAC.11, GAC.12, GAC.13, GAC.40, GAC.41, GAC.42, GAC.43, GAC.44, GAC.45, GAC.47 and GAC.48 are only implemented for the DE/DS Implementation Option. Annex A – Data Dictionary The following data objects do not exist if DE/DS is not implemented:
countries.
- Active Tag
- Data Needed
- Data To Send
- DS AC Type
- DS Digest H
- DSDOL
- DS ID
- DS Input (Card)
- DS Input (Term)
- DS ODS Card
- DS ODS Info
- DS ODS Info For Reader
- DS ODS Term
- DS Requested Operator ID
- DS Slot Availability
- DS Slot Management Control
- DS Summary 1
- DS Summary 2
- DS Summary 3
- DS Summary Status
- DS Unpredictable Number
- DSVN Term
- IDS Status
- Post-Gen AC Put Data Status
- Pre-Gen AC Put Data Status
- Proceed To First Write Flag
- Protected Data Envelope 1 – 5
- Tags To Read
- Tags To Read Yet
- Tags To Write After Gen AC
- Tags To Write Before Gen AC
- Tags To Write Yet After Gen AC
- Tags To Write Yet Before Gen AC
- Time Out Value
- Unprotected Data Envelope 1 – 5 countries.
Legal Notice
Unless the user has an applicable separate agreement with EMVCo or with the applicable payment system, any and all uses of these Specifications is subject to the terms and conditions of the EMVCo Terms of Use agreement available at www.emvco.com and the following supplemental terms and conditions. Except as otherwise may be expressly provided in a separate agreement with EMVCo, the license granted in the EMVCo Terms of Use specifically excludes (a) the right to disclose, distribute or publicly display these Specifications or otherwise make these Specifications available to any third party, and (b) the right to make, use, sell, offer for sale, or import any software or hardware that practices, in whole or in part, these Specifications. Further, EMVCo does not grant any right to use the Kernel Specifications to develop contactless payment applications designed for use on a Card (or components of such applications). As used in these supplemental terms and conditions, the term "Card" means a proximity integrated circuit card or other device containing an integrated circuit chip designed to facilitate contactless payment transactions. Additionally, a Card may include a contact interface and/or magnetic stripe used to facilitate payment transactions. To use the Specifications to develop contactless payment applications designed for use on a Card (or components of such applications), please contact the applicable payment system. To use the Specifications to develop or manufacture products, or in any other manner not provided in the EMVCo Terms of Use, please contact EMVCo. 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 NON-INFRINGEMENT, 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.
countries.