GB n°58: EMV Contactless Specification, Book E

v1.0 General Bulletin
Contactless Acceptance Device

EMV® General Bulletin No. 58 First Edition, April 2023 Publication of Draft EMV Contactless Specification, Book E This Bulletin announces the publication of the Draft EMV Contactless Specification, Book E v1.0.

Related Documents

  • EMV® Contactless Specifications for Payment Systems, Book C-8, Kernel 8 Specification, version 1.0

Description

EMVCo has decided to publish EMV® Contactless Specification for Payment Systems, Book E, Security and Key Management. Book E describes the security mechanisms of EMV contactless transactions used by Kernel 8 with the intention of simplifying the management of the specifications. With the publication of Book E, future versions of the Kernel 8 Specification will no longer contain security mechanisms but will cross-reference Book E. Draft Book E is now available at the EMVCo website for Associate review. The annotated copy of the Kernel 8 Specification v1.0 is also attached for reference, to help the review of Book E. Its contents are not subject of the review. © 2023

countries.

Legal Notice

This document is subject to change by EMVCo at any time. This document does not create any binding obligations upon EMVCo or any third party regarding the subject matter of this document, which obligations will exist, if at all, only to the extent set forth in separate written agreements executed by EMVCo or such third parties. In the absence of such a written agreement, no product provider, test laboratory or any other third party should rely on this document, and EMVCo shall not be liable for any such reliance. No product provider, test laboratory or other third party may refer to a product, service or facility as EMVCo approved, in form or in substance, nor otherwise state or imply that EMVCo (or any agent of EMVCo) has in whole or part approved a product provider, test laboratory or other third party or its products, services, or facilities, except to the extent and subject to the terms, conditions and restrictions expressly set forth in a written agreement with EMVCo, or in an approval letter, compliance certificate or similar document issued by EMVCo. All other references to EMVCo approval are strictly prohibited by EMVCo. Under no circumstances should EMVCo approvals, when granted, be construed to imply any endorsement or warranty regarding the security, functionality, quality, or performance of any particular product or service, and no party shall state or imply anything to the contrary. EMVCo specifically disclaims any and all representations and warranties with respect to products that have received evaluations or approvals, and to the evaluation process generally, including, without limitation, any implied warranties of merchantability, fitness for purpose or non-infringement. All warranties, rights and remedies relating to products and services that have undergone evaluation by EMVCo are provided solely by the parties selling or otherwise providing such products or services, and not by EMVCo, and EMVCo will have no liability whatsoever in connection with such products and services. This document is provided "AS IS" without warranties of any kind, and EMVCo neither assumes nor accepts any liability for any errors or omissions contained in this document. 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 THIS DOCUMENT. EMVCo makes no representations or warranties with respect to intellectual property rights of any third parties in or in relation to this document. EMVCo undertakes no responsibility to determine whether any implementation of this document 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 this document should consult an intellectual property attorney before any such implementation. Without limiting the foregoing, this document 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 this document 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 this document. © 2023

countries.

© 2023

countries. Page 3EMV® Contactless Specifications for Payment Systems Book C-8 Kernel 8 Specification Version 1.0 October 2022 Please note: This is not a draft. It is an annotated copy of Book C-8 v1.0 indicating future changes due to the creation of Book E. This document is provided simply for convenience while reviewing the latest draft of Book E. © 2022

countries.

EMV Contactless Book C-8 Kernel 8 Spec 1.0 Legal Notice The EMV® 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 ft.. AND WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION y IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR a p PURPOSE, TITLE AND NON-INFRINGEMENT, AS TO THESE SPECIFICATIONS. dr co EMVCo makes no representations or warranties with respect to intellectual property a d rights of any third parties in or in relation to the Specifications. EMVCo undertakes ot te no responsibility to determine whether any implementation of the EMV® Specifications may violate, infringe, or otherwise exercise the patent, copyright, n ta trademark, trade secret, know-how, or other intellectual property rights of third is o d parties, and thus any person who implements any part of the EMV® Specifications n n should consult an intellectual property attorney before any such implementation. his an ge. Without limiting the foregoing, the Specifications may provide for the use of public T n le e key encryption and other technology, which may be the subject matter of patents in g several countries. Any party seeking to implement these Specifications is solely a e a responsible for determining whether its activities require a licence to any such is e p technology, including for patents on public key encryption technology. EMVCo shall It s r not be liable under any theory for any party’s infringement of any intellectual property Pleasoen cove rights in connection with the EMV® Specifications.

October 2022 © 2022

countries.

EMV Contactless Book C-8 Kernel 8 Spec 1. 1. ft.. 1. a py 1. dr o 1. c 1. t a d 1.5. o te 1.5. n ta 1.5. is no nd 1. his an ge. T n le e 2. a e ag 2. is e p 2.2. It s r 2.2. e e 2.2. as ov 2.2. le c 2.2. P n 2.2. o 2. 3. 3. 3. 3. 3.4. 3.4. 3.4. 3.4. 3. October 2022

© 2022

countries.

Contents EMV Contactless Book C-8 Kernel 8 Spec 1.0 3. 3. 3. 3. ft. y. 4. a p 4.1. dr o 4.1. c 4.1. t a d 4.1. o te 4. is n ota d 4. n n 4. his an ge. 4. T n le e 4. a e ag 4. is e p 4.7. It s r 4.7. se ve 4. lea co 5 P n 5.1 o 5. 5.2. 5.2. 5.2. 5.2. 5. 5.3. 5.3. 5.3. 5.3. 5. 5.4.

October 2022 © 2022

countries.

EMV Contactless Book C-8 Kernel 8 Spec 1.0 Contents 5.4.2 5.4.3 5.4. 5. 5.5.1 5.5.2 ft. y. 5.5.3 a p 5.5. dr co 5. 5.6. ot a ted 5.6. 5.6. is n ota d 5.6. n n 5. is n e 5.7. h a g. 5.7. T n le ge 5.7. a e a 5.7. e e 6. as ov 6. le c 6. P n 6.3. o 6.3. 6.3. 6.3.

6.3.5 State 21 – Waiting for Exchange Relay Resistance Data Response... 99 6.3. 6.3. 6.3. 6.3. 6.3. 6.3. 6.3. 6.3. October 2022

© 2022

countries.

Contents EMV Contactless Book C-8 Kernel 8 Spec 1.0 6.3. 6.3. 6.3. 6.3. 6.3. 6.3. ft. y. 6. a p 6.4. dr o 6.4. ot te 7. n ta 7. is o d 7.2. is nn en 7.2. h a g. 7.2. T n le e 7.2. a e g 7.2. is e pa 7.2. It s r 7.2. e e 7.2. s v 7.2. lea co 7.2. P n 7.2. 8. 8. 8. 8. 8. 8. A. A.1.

October 2022 © 2022

countries.

EMV Contactless Book C-8 Kernel 8 Spec 1.0 Contents A.1. A.1. A.1. A.1. A.1.6 A.1.7 ft. y. A.1.8 a p A.1.9 r

  • A.1.10 d c A.1.11 a d A.1.12 ot te A.1.13 n ta A.1.14 is o d A.1.15 is nn en A.1.16 h a g. A.1.17 T n le e A.1.18 a e g A.1.19 is e pa A.1.20 It s r A.1.21 e e A.1.22 as ov A.1.23 le c A.1.24 P n A.1.25
  • A.1. A.1. A.1. A.1. A.1. A.1. A.1. A.1. A.1. A.1. A.1. A.1. October 2022 © 2022 countries. Contents EMV Contactless Book C-8 Kernel 8 Spec 1.0 A.1. A.1. A.1. A.1. A.1.42 A.1.43 A.1.44 A.1.45 A.1.46 A.1.47 A.1.48 A.1.49 A.1.50 A.1.51 A.1.52 A.1.53 A.1.54 A.1.55 A.1.56 A.1.57 A.1.58 A.1.59 A.1.60 A.1.61 A.1. ft. y. h a g. A.1. A.1. A.1. A.1. A.1. A.1. A.1. A.1. A.1. A.1. October 2022 © 2022 countries. EMV Contactless Book C-8 Kernel 8 Spec 1.0 Contents A.1. A.1. A.1. A.1. A.1.77 A.1.78 ft. y. A.1.79 a p A.1.80 r
  • A.1.81 d c A.1.82 a d A.1.83 ot te A.1.84 n ta A.1.85 is o d A.1.86 is nn en A.1.87 h a g. A.1.88 T n le e A.1.89 a e g A.1.90 is e pa A.1.91 It s r A.1.92 e e A.1.93 as ov A.1.94 le c A.1.95 P n A.1.96
  • A.1. A.1. A.1. A.1. A.1. A.1. A.1. A.1. A.1. A.1. A.1. A.1. October 2022 © 2022 countries. Contents EMV Contactless Book C-8 Kernel 8 Spec 1.0 A.1. A.1. A.1. A.1. A.1. A.1. ft. y. A.1. a p A.1. r
  • A.1. d c A.1. a d A.1. ot te A.1. n ta A.1. is o d A.1. h a g. A.1. g A.1. is a ee a A.1. s p A.1. It e er A.1. s v A.1. lea co A.1. A.1. P on A.1. A.1. A.1. A.1. A.1. A.1. A.1. A.1. A.1. A.1. A.1. A. October 2022 © 2022 countries. EMV Contactless Book C-8 Kernel 8 Spec 1.0 Contents A. B. B. ft.. TIthisisaisn naontnPaoltedaartesoden cscoeoeveler gpeangde. October 2022 © 2022 countries. Contents EMV Contactless Book C-8 Kernel 8 Spec 1.0 raft. opy. ot a dted c is is nannota n Th a end e legage. It is e se er p as cov Ple on October 2022 © 2022 countries. EMV Contactless Book C-8 Kernel 8 Spec 1.0 1 Using This Manual 1.1 Purpose ft. y. This document, EMV Contactless Specifications for Payment Systems, Book C-8 – a p Kernel 8 Specification, should be read in conjunction with: dr o
  • EMV Contactless Specifications for Payment Systems, Book A – Architecture c and General Requirements, hereafter referred to as [EMV Book A], and t a d
  • EMV Contactless Specifications for Payment Systems, Book B – Entry Point o te Specification, hereafter referred to as [EMV Book B]. n ta This document defines the behaviour of the Kernel used in combination with cards is no nd having a Kernel Identifier indicating Kernel 8, as defined in [EMV Book B]. is n e Note: While this kernel is compatible with any Entry Point version, payment systems h a g. may specify a minimum Entry Point version that they require. For example, if the T n le e Kernel Identifier–Terminal (tag '96') data object is to be used, then the minimum g version of Entry Point is Version 2.10 with Specification Bulletin 268. It is a see r pa 1.2 Audience se ve This specification is intended for use by manufacturers of contactless readers and a o terminals. It may also be of interest to manufacturers of contactless cards and to le c financial institution staff responsible for implementing financial applications in P on contactless cards.

1.3 Related Information The following references are used in this document

It is noted that the latest version applies unless a publication date is explicitly stated. Reference [EMV Book 1] Document Title Integrated Circuit Card Specifications for Payment Systems – Book 1, Application Independent ICC to Terminal Interface Requirements, Version 4.3, November 2011

October 2022 © 2022

countries.

1 Using This Manual 1.3 Related Information EMV Contactless Book C-8 Kernel 8 Spec 1.0 Reference [EMV Book 2] Document Title Integrated Circuit Card Specifications for Payment Systems – Book 2, Security and Key Management, Version 4.3, November 2011 [EMV Book 3] raft. py. [EMV Book 4] ot a dted co [EMV Book A] is is nnnota end [EMV Book B] Th n a leg e. [EMV Book E] is a see pag [EMV CL L1] It ase over [ISO 639-1] Ple on c [ISO 3166-1] Integrated Circuit Card Specifications for Payment Systems – Book 3, Application Specification, Version 4.3, November 2011 Integrated Circuit Card Specifications for Payment Systems – Book 4, Cardholder, Attendant, and Acquirer Interface Requirements, Version 4.3, November 2011 EMV Contactless Specifications for Payment Systems, Book A – Architecture and General Requirements, Version 2.10 EMV Contactless Specifications for Payment Systems, Book B – Entry Point Specification, Version 2.10 EMV Contactless Specifications for Payment Systems, Book E – Security and Key Management, Version 2.11 EMV Level 1 Specifications for Payment Systems, EMV Contactless Interface Specification, Version 3.1 Codes for the representation of names of languages – Part 1: Alpha-2 Code Codes for the representation of names of countries and their subdivisions – Part 1: Country codes [ISO 4217] Codes for the representation of currencies and funds [ISO/IEC 7813] Information technology — Identification cards — Financial transaction cards [ISO/IEC 7816-4] Identification cards — Integrated circuit(s) cards with contacts — Part 4: Organization, security and commands for interchange [ISO/IEC 7816-5] Registration of application providers [ISO 8583:1987] Financial transaction card originated messages – Interchange message specifications

October 2022 © 2022

countries.

EMV Contactless Book C-8 Kernel 8 Spec 1.0 1 Using This Manual 1.3 Related Information Reference [ISO 8583:1993] Document Title Financial transaction card originated messages – Interchange message specifications [ISO/IEC 8825-1] Specification of Basic Encoding Rules (BER), Canonical [ISO/IEC 8859] [ISO/IEC 9797-1] [ISO/IEC 10116] is is [ISO/IEC 14888-3] Th an [ISO/IEC 18031:2005] It is [NIST SP800-22A] Encoding Rules (CER) and Distinguished Encoding Rules (DER) ft. y. Information technology – 8-bit single-byte coded graphic ra p character sets d co Information technology – Security techniques – Message a d Authentication Codes (MACs) — Part 1: Mechanisms using ot te a block cipher n ta Information technology — Security techniques — Modes of no nd operation for an n-bit block cipher n e Information technology — Security techniques — Digital a leg. signatures with appendix — Part 3: Discrete logarithm e based mechanisms ee ag Information technology – Security techniques – Random bit s p generation e er A statistical test suite for random and pseudorandom Pleason cov number generators for cryptographic algorithms October 2022

© 2022

countries.

1 Using This Manual 1.4 Terminology EMV Contactless Book C-8 Kernel 8 Spec 1.0 1.4 Terminology The following terms are used in this document, carrying specialised meanings as indicated. raft. opy. Card Term Table 1.1—Terminology Description Card, as used in these specifications, is a consumer device supporting contactless transactions. t a d d c Combination Combination is the combination of an AID and a Kernel ID. This isn naonnotate legende. Configuration Option A Configuration Option allows activation or deactivation of the Kernel software behind this option. The Configuration Option may change the execution path of the software but it does not change the software itself. A Configuration Option is set in the Kernel database per AID and Transaction Type. a e ag Implementation It is se r p Option An Implementation Option allows the vendor to select whether the functionality behind the option will be implemented in a particular installation. Pleasoen cove Kernel The Kernel contains the interface routines, security and control functions, and logic to manage a set of commands and responses to retrieve all the necessary data from the Card to complete a transaction. The Kernel processing covers the interaction with the Card between the selection of the card application (excluded) and the processing of the transaction's outcome (excluded). POS System The POS System is the collective term given to the payment infrastructure present at the merchant. It is made up of the Terminal and Reader. Process A Process is a logical component within a Reader that has one or more Queues to receive Signals. The processing of Signals, in combination with the carried data, may then generate other Signals to be sent. Processing can continue until all the Queues of a Process are empty, or until the Process terminates.

October 2022 © 2022

countries.

EMV Contactless Book C-8 Kernel 8 Spec 1.0 1 Using This Manual 1.5 Notations Term Queue Description A Queue is a buffer that stores events to be processed. The events are stored in the order received. Reader The Reader is the device that supports the Kernel(s) and draft.copy. Signal This isn naontnaotated legengde. Terminal provides the contactless interface used by the Card. In this specification, the Reader is considered as a separate logical entity, although it can be an integral part of the POS System. A Signal is an asynchronous event that is placed in a Queue. A Signal can convey data as parameters, and the data provided in this way is used in the processing of the Signal. The Terminal is the device that connects to the authorisation and/or clearing network and that together with the Reader makes up the POS System. The Terminal and the Reader may exist in a single integrated device. However, in this specification, they are considered separate logical entities. It is a see r pa 1.5 Notations ase ove 1.5.1 State Machine le c This document specifies the Kernel processing as a state machine that is triggered P n by Signals that cause state transitions. The application states of the Kernel are o written in a specific format to distinguish them from the rest of the text: State Example: S22 – Waiting for Read Record Response The state machine of the Kernel is represented using a state diagram. Example: October 2022

© 2022

countries.

1 Using This Manual 1.5 Notations EMV Contactless Book C-8 Kernel 8 Spec 1.0 Figure 1.1 depicts the transitions for state S26 – Waiting for Generate AC Response. Upon receiving the Signal RECORD DECRYPTED, the state machine remains in state S26 – Waiting for Generate AC Response. The state machine leaves state S26 – Waiting for Generate AC Response upon receiving an RA Signal. In this case, the state machine goes to S28 – Waiting for IAD MAC Results if Crypto Read Record Counter = 0 and to S27 – Waiting for Decrypted Records if Crypto Read Record Counter ≠ 0. aft. py. Figure 1.1—Example of State Diagram Notation dr co RECORD DECRYPTED ot a ted S26 - Waiting for n ta Generate AC Response is no nd RA/CRYPTO READ is n e RECORD COUNTER != 0 RA/CRYPTO READ RECORD COUNTER = 0 Th n a leg ge. S27 - Waiting for a e a Decrypted Records S28 - Waiting for IAD MAC Results It is se r p This document uses a combination of flow diagrams and textual description to se ve describe the state transitions in the state machine of the Kernel. Figure 1.2 depicts Pleaon co the symbols used in the flow diagrams.

October 2022 © 2022

countries.

EMV Contactless Book C-8 Kernel 8 Spec 1.0 1 Using This Manual 1.5 Notations Figure 1.2—Symbols Used in Flow Diagrams X - State Procedure CALL aft. py. State Procedure Start Call Procedure () ot a drted co Label High-Level Action n ta Description Label Detailed Action Description his is anno gend. Action With Detailed Description T n le e as Described in Text Action With Detailed Description Included in the Flow Diagram It is a e seeer pag Test ? Label as ov TRUE FALSE Ple on c Decision SIGNAL Signal Received Action Connectors SIGNAL Signal Sent Action NO YES Implementation Option Test October 2022

© 2022

countries.

1 Using This Manual 1.5 Notations EMV Contactless Book C-8 Kernel 8 Spec 1.0 On the Kernel behaviour, the combination of the flow diagrams and the corresponding textual descriptions constitutes the requirements:

  • Each diagram in this specification has a unique label.
  • Each symbol in a diagram has a unique identifier that is the concatenation of the diagram label with the symbol number.
  • The textual description corresponding to a symbol may be included in the ft. y. diagram or it may be a detailed textual description included in the text below a p the diagram. r
  • The flow diagrams are read from top to bottom and define the order of execution of d c the processing steps. The textual description specifies the behaviour of the individual a d steps but bears no information on the order of execution. ot te An example of a flow diagram is given in Figure 1.3 in combination with the detailed n ta textual description below. is no nd Figure 1.3—Example of Flow Diagram This n an lege ge. IsNotEmpty(TagOf(DF Name)) AND a e a IsNotEmpty(TagOf(Card Qualifier)) AND is e p 'Version' in Card Qualifier ≠ '00' ? 1.8 FALSE It s r TRUE se ve 1.10 a
  • Set Language Ple on c Preference 1.9 'L2' in Error Indication:= CARD DATA MISSING 'Msg On Error' in Error Indication:= N/A October 2022 © 2022 countries. EMV Contactless Book C-8 Kernel 8 Spec 1.0 1 Using This Manual 1.5 Notations 1.10 If the Language Preference is returned from the Card, then copy it to 'Language Preference' in User Interface Request Data 1 and User Interface Request Data 2: IF [IsNotEmpty(TagOf(Language Preference))] THEN 'Language Preference' in User Interface Request Data 1:= Language Preference ft. y. 'Language Preference' in User Interface Request Data 2:= Language a p Preference r
  • If the length of Language Preference is less than 8 bytes, then pad 'Language d c Preference' in User Interface Request Data 1 and User Interface Request a Data 2 with trailing hexadecimal zeroes to 8 bytes. ot ted ENDIF Only symbol 1.10 has a detailed textual description. The textual descriptions of n ta symbols 1.9 and 1.8 are included in the flow diagram. is no nd The requirements are related to the behaviour of the Kernel, while leaving flexibility in is n e the actual implementation. The implementation must behave in a way that is h a g. indistinguishable from the behaviour specified in this document, in terms of that it T n le e creates the output as predicted by this specification for a given input. There is no g requirement that the implementation realises the behaviour through a state machine a e a as described in this document. It is se r p 1.5.2 Data Object Notation se ve Data objects used for this specification are capitalised: lea co Data Object Name P n Example:
  • Application File Locator To refer to a sub-element of a data object (i.e. a specific bit, set of bits, or byte of a multi-byte data object), the following notational convention is used:
  • If the sub-element is defined in the data dictionary (Annex A), with each possible value of the sub-element having a name, then the following conventions apply:
  • The reference to the sub-element is 'Name of Sub-element' in Data Object Name.
  • The reference to the value is VALUE OF SUB-ELEMENT. Examples:
  • 'CVM Limit exceeded' in Terminal Risk Management Data refers to bit 8 of byte 2 in Terminal Risk Management Data. October 2022 © 2022 countries. 1 Using This Manual 1.5 Notations EMV Contactless Book C-8 Kernel 8 Spec 1.0
  • 'CVM' in Outcome Parameter Set:= ONLINE PIN means the same as bits 8 to 5 of byte 4 of Outcome Parameter Set are set to 0010b.
  • Alternatively, an index may be used to identify a sub-element of a data object. In this case the following notational conventions apply:
  • To refer to a specific byte of a multi-byte data object, a byte index is used within brackets (i.e. [ ]). The first byte (leftmost or most significant) of a data ft.. object has index 1. a py For example, Terminal Verification Results[2] represents byte 2 of Terminal r
  • Verification Results. d c
  • To refer to a specific bit of a single byte multi-bit data object, a bit index is a d used within brackets [ ]. The first bit (rightmost or least significant) of a data ot te object has index 1. n ta For example, Cryptogram Information Data[7] represents bit 7 of the is o d Cryptogram Information Data. n n
  • To refer to a specific bit of a multi-byte data object, a byte index and a bit is n e index are used within brackets (i.e. [ ][ ]). Th n a leg e. For example, Terminal Verification Results[2][4] represents bit 4 of byte 2 of g the Terminal Verification Results. is a ee a
  • Ranges of bytes are expressed using the x:y notational convention: It s r p For example, Terminal Verification Results[1:4] represents bytes 1, 2, 3, and e e 4 of the Terminal Verification Results. s v
  • Ranges of bits are expressed using the y:x notational convention: lea co For example, Cryptogram Information Data[5:1] represents bits 5, 4, 3, 2, and P on 1 of the Cryptogram Information Data. October 2022 © 2022 countries. EMV Contactless Book C-8 Kernel 8 Spec 1.0 1 Using This Manual 1.5 Notations 1.5.3 Other Notational Conventions Notations for processing data and managing memory are described in Table 1.2. Table 1.2—Other Notational Conventions Notation ft.. '0' to '9' and dra copy 'A' to 'F' Meaning Hexadecimal notation. Values expressed in hexadecimal form are enclosed in straight single quotes. Example 27509 decimal is expressed in hexadecimal as '6B75'. not atated 1001b Binary notation. Values expressed in binary form are followed by the letter b. '08' hexadecimal is expressed in binary as 00001000b. is no nd 340 Decimal notation. Values '0C' hexadecimal is expressed in is n e expressed in decimal form decimal as 12. h a g. are not enclosed in single T n le e quotes. It is a see r pag C-APDU C-APDUs are written in all caps to distinguish them from the text GET PROCESSING OPTIONS se ve SET A specific bit in a data object SET 'Kernel 8 processing and TVR a o is set to the value 1b format' in Terminal Verification le cResults P on CLEAR A specific bit in a data object is set to the value 0b CLEAR 'Cardholder verification was not successful' in Terminal Verification Results:= A specific value is assigned 'Status' in Outcome Parameter Set to a data object or to a:= END APPLICATION sub-element of a data object OR This notation is used for both Bitwise AND and OR: the logical and bitwise OR operation. Its meaning is therefore context-specific. TVR:= (TVR AND Kernel Reserved TVR Mask) OR (Card TVR AND NOT(Kernel Reserved TVR Mask)) October 2022 © 2022 countries. 1 Using This Manual 1.5 Notations EMV Contactless Book C-8 Kernel 8 Spec 1.0 Notation Meaning Example AND NOT || IF THEN ELSE ENDIF This notation is used for both Logical AND: the logical and bitwise AND operation. Its meaning is therefore context-specific. IF [IsNotEmptyList(Data To Send) AND IsEmptyList(Tags To Read Yet)] ft.. This notation is used for both y the logical and bitwise a p negation operation. r
  • Therefore, its meaning is d c context-specific. Logical NOT: IF [NOT ParseAndStoreCardResponse(TLV)] ot a ted Two values are is n nota nd concatenated. A:= 'AB34' B:= A || 'FFFF' means that B is assigned the value 'AB34FFFF' his an ge. This textual description is T n le e used to specify decision logic, g using the following syntax: is a ee a IF T It s r p THEN e e Logic 1 s v ELSE a
  • Logic 2 le c ENDIF P n where T is a statement o resulting in true or false. IF [IsNotEmptyList(Data Envelopes To Write Yet)] THEN P2:= '80' ELSE P2:= '00' ENDIF FOR EXIT loop This textual description is used to specify repetition control logic, using the following syntax: FOR every x in list { IF T THEN Action EXIT loop ENDIF } FOR every T in Extended SDA Tag List { IF [IsNotPresent(T) OR IsEmpty(T)] THEN Data objects referenced in Extended SDA Tag List present:= FALSE EXIT loop ENDIF } October 2022 © 2022 countries. EMV Contactless Book C-8 Kernel 8 Spec 1.0 1 Using This Manual 1.5 Notations Notation Meaning Example CALL Functionality of a certain CALL Process Restrictions () complexity and appearing more than once is implemented by means of a draft.copy. A mod n is is nontnaotated end Adiv n TIthis an a see ler gpage. X⊕Y ase ove A:= Ple on c ALG(K)[X] procedure. In the textual description, a procedure is referenced by means of the key word CALL. The reduction of the integer A modulo the integer n, that is, the unique integer r, 0 ≤ r &lt; n, for which there exists an integer d such that A = dn + r 54 mod 16 = 6 The integer division of A by n, that is, the unique integer d for which there exists an integer r, 0 ≤ r < n, such that A = dn + r 54 div 16 = 3 The bit-wise exclusive-OR of the data blocks X and Y. 11001100b ⊕ 10101010b = 01100110b Encryption of a data block X with a block cipher (ALG) using a secret key K. Typical values for ALG are T:= AES(K)[M] AES, DES, TDES, AES-1, DES-1, and TDES-1. x
  • Y Scalar multiplication by x of the point of the elliptic curve Y Q:= d
  • G October 2022 © 2022 countries. 1 Using This Manual 1.6 Version EMV Contactless Book C-8 Kernel 8 Spec 1.0 1.6 Version Kernel and Card both maintain a version number, coded as 'Version' in Kernel Qualifier and in Card Qualifier respectively. The lowest version number of the two determines the functionality that can be used for the transaction. Two versions are defined, VERSION 1 and VERSION 2, with details on the ft.. corresponding functionality provided in Table 1.3. y A Kernel implementing this version of the specification must set ‘Version’ to ra p VERSION 2 in the Kernel Qualifier and must support Cards that provide ‘Version’ d o with value VERSION 1 or VERSION 2 in the Card Qualifier. a d c Table 1.3— Versions and Corresponding Functionality not tate Version is o d VERSION 1 TIthisisan annPleasoen sceoeveler gpeange. VERSION2 Functionality The generation of the Issuer Application Data MAC does not use the Issuer Application Data as input. The Issuer Application Data MAC is inserted in the Issuer Application Data before using the Issuer Application Data as input for the generation of the Enhanced Data Authentication MAC. The generation of the Issuer Application Data MAC uses the Issuer Application Data as input. The Issuer Application Data MAC is used as input for the generation of the Enhanced Data Authentication MAC. The Issuer Application Data MAC is (optionally) included in the Issuer Application Data by the Kernel before including the Issuer Application Data in the Data Record. October 2022 © 2022 countries. EMV Contactless Book C-8 Kernel 8 Spec 1.0 2 General Architecture 2.1 Introduction ft.. As described in [EMV Book A], the general architecture of a POS System consists of y a Terminal and a Reader, where the terms Terminal and Reader refer to a separation ra p in responsibility and functionality between two logical entities. d co Figure 2.1 shows how the Reader functionality is allocated to different processes: a d Process M(ain), Process D(isplay), Process S(elect), Process P(CD), ot te Process K(ernel) and Process C(rypto). n ta Communication between different processes happens through Signals stored on is o d Queues. A Signal is an asynchronous event that is placed on a Queue waiting to be n n processed. A Signal can convey data as parameters, and the data provided in this is n e way is used in the processing of the Signal. h a g. Zooming in further on Process K, Figure 2.1 illustrates the two components of the T n le e Kernel: the Kernel software, modeled as a state machine, and the Kernel database, g consisting of a number of separate datasets. is a see pa Figure 2.1—General Architecture It Pleasoen cover POSSystem Process M Process D Message Display Process S Reader Application and Management Kernel Selection Terminal Reader Reader Database Process P Card Interaction Process K Kernel Process C Crypto State 1 Kernel database State 2 State 3 State 4 October 2022 © 2022 countries. 2 General Architecture 2.1

Introduction

EMV Contactless Book C-8 Kernel 8 Spec 1.0 There is no requirement to create devices that use the architecture and the partitioning as laid out in this document, as equally there is no requirement in [EMV Book A] on the partitioning. The only requirements in this document apply to Process K and Process C, and these requirements define the externally-observable behaviour, independent of the internal organisation of the Reader. raft. opy. ot a dted c is is nannota n Th a end e legage. It is e se er p as cov Ple on

October 2022 © 2022

countries.

EMV Contactless Book C-8 Kernel 8 Spec 1.0 2 General Architecture 2.2 Reader Processes 2.2 Reader Processes In Figure 2.2, the Reader is modeled as a set of Processes and each Process runs independently of the other Processes. The role of the Reader database is explained in section 2.3. Figure 2.2—Reader Logical Architecture draft.copy. Reader Process D Message Display ot a ted Process M Reader n ta Management Process S Application and Kernel Selection is no nd Process P Card is n e Card Interaction h a g. Reader T n le e database Process K Kernel is a ee pag ProcessC It s r Crypto ase ove The different processes are listed in Table 2.1. Ple on c Process Table 2.1—Reader Processes Responsibility Process P(CD) Management of the contactless interface Process D(isplay) Management of the user interface Process S(election) Selection of the Card application and Kernel Process K(ernel) Interaction with the Card once the application has been selected, covering the transaction flow specific to Kernel 8 Process M(ain) Overall control and sequencing of the different processes. The configuration and activation of the Kernel and the processing of its outcome are also part of this role. Process C(rypto) Processing of cryptographic material October 2022

© 2022

countries.

2 General Architecture 2.2 Reader Processes EMV Contactless Book C-8 Kernel 8 Spec 1.0 2.2.1 Process P Process P implements the functionality described in [EMV CL L1] and [ISO/IEC 7816-4] and manages the access to the Card. Process K communicates with Process P through the CMD, RA and L1RSP Signals as shown in Table 2.2. raft. opy. Signal In a d d c CMD Table 2.2—Process P Signals Signal Out RA(R-APDU) Comment If there is no L1 error, the RA Signal contains the R-APDU sent back in response to a C-APDU. his is naontnotate gend. L1RSP(code) If there is an L1 error, L1RSP is returned with code as one of the following:

  • Error – Timeout: An L1 timeout has occurred
  • Error – Protocol: An L1 protocol error has occurred
  • Error – Transmission: Any other error T an e le age Process P sends the C-APDU included in the CMD Signal to the Card and responds is e p with either: It s r
  • An RA Signal containing the R-APDU and status bytes returned by the Card, or se ve
  • An L1RSP Signal including an L1 event such as a timeout, transmission error, a o or protocol error. Ple n c 2.2.2 Process D
  • Process D manages the User Interface Requests as defined in [EMV Book A] and displays a message and/or a status. A MSG Signal is used as a carrier of User Interface Request Data (UIRD). Process D may receive MSG Signals from any other Process. The MSG Signal is not acknowledged. For more information on UIRD, refer to section 7.1 of [EMV Book A] and to A.1.139 and A.1.140 for the definition of the UIRDs used in this specification. For displaying messages and/or indicating status, Process D needs the following configuration data:
  • Default language
  • The currency symbol to display for each currency code and the number of minor units for that currency code October 2022 © 2022 countries. EMV Contactless Book C-8 Kernel 8 Spec 1.0 2 General Architecture 2.2 Reader Processes
  • A number of message strings in the default language and potentially other languages The status identifiers and message identifiers are defined in section 9.2 and section 9.4 respectively of [EMV Book A].

2.2.3 Process S ft

y. Process S manages the application and Kernel selection. It runs constantly, and it is a p waiting for an ACT Signal from Process M. After processing the ACT Signal, it r o returns the selected Combination of application and Kernel (AID and Kernel ID) and d c the File Control Information Template and status bytes returned by the Card in a d response to the final SELECT command in an OUT Signal. ot te Refer to [EMV Book B] for the specification of an implementation of Process S that n ta supports a multi-kernel architecture. is no nd 2.2.4 Process K his an ge. The Reader may support multiple Kernels but only one Kernel will execute at a time. T n le e The Kernel that is activated depends on the information returned by Process S, g which may in turn depend on data retrieved from the Card. is a ee a For each transaction, Process K is configured with a Kernel-specific dataset. The s p values in the dataset depend on the AID and the Transaction Type. More information It r on the initialisation of the Kernel-specific dataset is provided in section 2.3. se ve Once the Kernel is selected and configured, it executes as Process K. Process K a o manages the interaction with the Card application beyond application selection, using le c the services of Process P as an intermediary. Upon completion, Process K sends its P n results to Process M in an OUT Signal and then terminates. For the remainder of the o document, it is assumed that Kernel 8 is selected. From the viewpoint of the Reader and depending on the Configuration Options, Kernel 8 can provide two services:

  • Through its interaction with the Card

Shown in part. Read the original for the full text.