Sunteți pe pagina 1din 14

Smart Card Application Standard Draft

Contents 1 SCOPE ..................................................................................................................... 6 1.1 DEFINITIONS / DOCUMENT CONVENTIONS ............................................................ 6 2 KEY DATA ELEMENTS AND CONCEPTS ...................................................... 7 2.1 STATIC CARD INFORMATION ................................................................................. 7 2.1.1 2.1.2 2.2.1 2.2.2 2.2.3 3 4 Card ID (CdID) ........................................................................................... 7 Application Version ..................................................................................... 8 Challenge ..................................................................................................... 9 Response .................................................................................................... 10 Verification ................................................................................................ 10

2.2 CHALLENGE/RESPONSE VERIFICATION ................................................................. 8

CARD READING PROCESS.............................................................................. 11 APDU/RPDU SPECIFICATIONS ...................................................................... 12 4.1 ERROR HANDLING .............................................................................................. 12 4.2 SELECT EVAPP COMMAND/RESPONSE .............................................................. 12 4.2.1 4.2.2 4.3.1 4.3.2 4.4.1 4.4.2 APDU ........................................................................................................ 12 RPDU ........................................................................................................ 12 APDU ........................................................................................................ 13 RPDU ........................................................................................................ 14 APDU ........................................................................................................ 14 RPDU ........................................................................................................ 15

4.3 STATIC READ APPLICATION COMMAND/RESPONSE ............................................ 13

4.4 SECURITY OPERATION COMMAND/RESPONSE .................................................... 14

VERIFICATION REQUEST .............................................................................. 17

Scope
This document standardizes a contactless smartcard EV application (EVAPP) to ensure that an EV charging card can be read and verified. The document introduces key concepts and then specifies the actual messages between the smart card and the CS.

Definitions / Document Conventions


Term Charge Spot (CS) Definition A power outlet to which a vehicle connects and which includes an ISO/IEC 14443 type A and B contactless smartcard card reader and a communication network connecting to the card issuer. An ISO/IEC 14443 type A or B contactless smartcard. The organization operating the CS. A CS would normally connect to a control center operated by the CS operator and only through it to the card issuer systems. The organization that issued the card to the customer and can verify its authenticity. This organization would normally have some contact in place with both the customer and the CS operator to facilitate the use of electricity by the customer at the CS. The process of ensuring that a card is genuine and information was not retransmitted. The card application standardized in this document. This application would be issued a unique card application ID according to ISO/IEC 7816-5. APDU stands for Application Protocol Data Unit. A communication unit between a smartcard reader and a smartcard. The structure of an APDU is defined by the ISO/IEC 7816 standards. Short for response APDU.

Card Charge Spot Operator (CS Operator) Card Issuer

Verification EVAPP

APDU

RPDU

Key Data Elements and Concepts


Static card information
The following information should be available on the card, transmitted to the CS and forwarded to the acquirer during a card read. Card ID (CdID) The card ID is send by the card both in clear text and signed as part of the cryptogram for verification purposes. The card ID is used by the CS or CS operator to route the verification request to the card acquirer. Content Field Country Length/Range 2 characters Description Management Country code According to ISO 3166 2 Operator 1-100 Numerical code of the card issuer Allocated by national standardization bodies. Card Number 1-999,999,999 Serial number assigned to the card Assigned and manage by a card issuer.

Display Format Field Country Separator Operator . Decimal Number Separator Serial Number . Decimal Number

Format/Value String Example Transport Format Field Format Padding ASCII 00 IL.1.14534

Country 2 character ASCII string

Operator Decimal number left padded with zero to fill 3 characters ASCII string

Serial Number Decimal number left padded with zero to fill 9 characters ASCII string

Example

00IL001000014534

http://www.iso.org/iso/english_country_names_and_code_elements

Application Version CdVer and CdEnc are 4 bytes unsigned integers written to the card at issuing or pre-personalization and should not be writable from the outside afterwards. CdVer and CdEnc are sent by the card with each use and relayed to the card acquirer. Their use is determined by the card issued and acquirer and is opaque to CS and CS operator. These fields enable flexibility in issuing cards which enable updates while keeping compatibility with older cards. Two use cases already identified are: o Changing a master key: a different CdVer value could be used to indicated a different master key in case of a compromise or key distribution. o Changing encryption algorithms: if the card is capable of more advanced algorithms, or if a flaw is found in the response generation function, CdEnc can indicate a different encryption suite.

Challenge/Response Verification
Card verification is performed between the CS, card and the card issuer using a challenge/response mechanism and the following flow. Note that the actual implementation of the response generation is internal to the card and issuer system and not part of this standard.

Challenge The following fields should be sent by the CS to the card as a challenge: TransTime Unsigned Integer 8 bytes Current time in Unix time format 3. RdRand CsIDHash Unsigned Integer Unsigned Integer 4 bytes 4 bytes See section 0 for more information
3

A random number

For details on Unix time refer to http://en.wikipedia.org/wiki/Unix_time

CSID. Response The following fields should be sent by the card to the CS as a response: Cryptogram Unsigned Integer 24 bytes The card response to the challenge. CdCount Unsigned Integer 2 bytes The card may keep a 16 bit internal card register that is incremented each time the card provided a challenge response to a reader. The counter enables a verification server to ensure that a response is not recorded and retransmitted intentionally. Note that while the card has this feature the verification server does not have to use and can rely on the alternate time based method

Verification As noted the details of the verification process are internal to the card issuer implementation. However, the system allows for the following mechanisms to ensure that information cannot be copied of replayed: The card ID may be signed by the card. The transaction time may be signed by the card. CdCount may be implemented and signed by the card to ensure it is an ever increasing number. The device ID of the charge spot is signed by the card. The issuer may alternate means of validating the ID, such as ensuring the charge requests for a device are received only from the partner to which this device belongs.

Card Reading Process


The card read phase will have the following phases: Phase 1 2 3 4 5 Request Response Description

ISO/IEC 14443 Polling ISO/IEC 14443 Anti-Collision ISO/IEC 14443 Activation Select EVAPP by AID Read Static Record Perform Security Operation EVAPP FCI Card Static information Cryptogram See 0 See 0 According to the ISO/IEC 14443 principles.

6 7

See 0 Close the connection as defined by ISO 14443.

ISO/IEC 14443 Teardown

APDU/RPDU specifications
Error Handling
Any other coding of the any of the APDU below will be answered by the card using an ISO/IEC 7816-4 SW1SW2 that define a relevant error code. A multi-application reader might send to the card other commands during the application selection phase not listed below, the card will response to any other commands not listed below using an ISO/IEC 7816-4 SW1SW2 error code.

Select EVAPP Command/Response


APDU The Select Application command is detailed in the standard ISO/IEC 7816-4. The coding of the select EVAPP APDU will be according to the following: Issue: Length Issue: Issue: Issue: Issue: Issue: Issue: Issue: Packet Example: 0000 0008 RPDU The above Select application APDU will be responded by the card with the following RPDU: 02 00 A4 04 00 07 XX XX XX XX XX XX XX 00 1 1 1 1 1 7 1 Issue: AP DU
Field

Issue: Value Issue: Issue: Issue: Issue: Issue: Issue: Issue: 0x00 0xA4 0x04 0x00 0x07 EVAPP 0x00

Issue: Issue: Issue: Issue: Issue: Issue: Issue:

CLA

INS P1 P2 Lc Data Le

Issue: Length Issue: Issue: Issue: 2 8 3

Issue: Template Issue: Issue: Issue: 0x6F

Issue: Tag Issue: Issue: Issue: 0x84 0xA5

Issue: Issue:

8 8

Issue: Issue:

Issue: Issue:

Packet Example: 0000 0008 0010 0018 02 6F 1B 84 07 XX XX XX 10 04 XX XX XX XX DF 81 11 04 XX XX XX XX 90 00 XX XX XX XX A5 10 DF 81

Static Read Application Command/Response


APDU The Read Redcord command is detailed in the standard ISO/IEC 7816-4. The coding of the APDU of read record command in the EVAPP will be according to the following: Issue: Length Issue: Issue: Issue: Issue: 1 1 1 1 Issue: AP DU
Field

Issue: Value Issue: Issue: Issue: Issue: 0x00 0xB2 0x01 0x0C

Issue: Issue: Issue: Issue:

CLA

INS P1 P2

Issue: Packet Example: 0000 RPDU

Issue:

Lc

Issue:

0x00

03 00 B2 01 0C

The above Select application APDU will be responded by the card with the following RPDU: Issue: Length Issue: Issue: 2 13 Issue: Template Issue: Issue: 0x70 Issue: Tag Issue: Issue: 0xDF 0x81 0x12

Packet Example: 0000 0008 0010 03 70 14 DF 81 12 10 XX XX XX XX XX XX XX XX XX XX 90 00

Security Operation Command/Response


APDU The Perform Security Operation command is detailed in the standards ISO/IEC 7816-4 and ISO/IEC 7816-8. The APDU of the perform security operation in the EVAPP APDU will be according to the following: Issue: Length Issue: Issue: Issue: 1 1 1 Issue: APDU Field Issue: Issue: Issue:
CLA

Issue: Template/Tag Issue: Issue: Issue:

INS P1

Issue: Issue: Issue: Issue: Issue: Issue: Issue: Packet Example: 0000 0008 0010 0018 0020 RPDU

1 1 7

Issue: Issue: Issue: Issue: Issue: Issue:

P2 Lc Data

Issue: Issue: Issue: Issue: Issue: Issue: 0xF0 0xDF 0x81 0x13 0xDF 0x81 0x14 0xDF 0x81 0x15

Issue:

Le

Issue:

02 80 2A 82 80 1E F0 1C DF 81 13 08 XX XX XX XX XX XX XX XX DF 81 14 04 YY YY YY YY DF 81 15 04 TT TT TT TT 00

The above security operation APDU will be responded by the card with the following RPDU: Issue: Length Issue: Issue: Issue: 2 6 28 Issue: Template Issue: Issue: Issue: 0x77 Issue: Tag Issue: Issue: 0xDF 0x81 0x17 Issue: 0xDF 0x81 0x16

Packet Example: 0000 0008 02 77 22 DF 81 17 02 XX XX DF 81 16 18 YY YY YY

0010 0018 0020

YY YY YY YY YY YY YY YY YY YY YY YY YY YY YY YY YY YY YY YY YY

Verification Request
Based on information the charge spot gathers during card read, it creates a verification block. The verification block is the data unit sent across the network from the charge spot to the card issuer and used to verify the authenticity of the card. The structure of the verification block is: Field Format Length CdVer Unsigned integer 4 bytes CdEnc CdID Unsigned integer Fixed length string 4 bytes 16 bytes 24 bytes Description Application version used by the card as sent by the card. Encryption algorithm used by the card as sent by the card. The Card ID in transport format (see 0). The response provided by the card for the challenge as sent by the card. The card use counter as received in the response. Challenge time in Unix time 4 format Challenge random number The charging device ID from which the CDevHash was derived.

CdCryptogram Unsigned Integer

CdCount TransTime RdRand CsID

Unsigned Integer Unsigned Integer Unsigned Integer Null terminated string

2 bytes 8 bytes 4 bytes 64 bytes

For details on Unix time refer to http://en.wikipedia.org/wiki/Unix_time

S-ar putea să vă placă și