You are on page 1of 17

Top read

Read smart card chip data with APDU commands ISO 7816
Run the neaPay ISO8583
Posted on 28th Nov 2019
simulator
This explanation builds on top of existing information at wiki about
Deploy the neaPay
https://en.wikipedia.org/wiki/Smart_card_application_protocol_data_unit ISO8583 simulator

A selected list of used commands is available at the end of this page. ISO8583 payments
message format,
Any smart card reader will come with a set of drivers an libraries to interface with it. We will assume that you do not need to build
programmers guide
communication with the reader, just to use it.

The reader comes with an interface to send apdu commands. Create a new test case in
the neaPay ISO8583
Depending on your Card Brand, different commands need to be used. simulator

First thing you do is to select the application. ISO8583 message: The


list of ISO 4217 currency
Command looks like this for Visa an then Mastercard:
codes for data elements
49 and 52
00A4040007A000000003101000

00A4040007A0000000043060 Card readers supported


by neaPay payments
Then get the processing option: simulator, CHIP and NFC

80A800000483025541
Performance testing at
500, 1000 and 1500 TPS
And then just get all the information from your chip card

80AE8000210000000000000000000000000586000000000005861802020000E44E4B11040001 Connect the neaPay


ISO8583 Acquirer
simulator to your own host
or Issuer

ISO8583 Message
Converter JSON and XML
interface specification
mapping

Regression Testing in 1
click with instant Analytics
and CSV report

Smartcard Selected Information Changing fields definitions


in the ISO8583 simulator
APDU list and message converter

Load Test enabling and


performance testing at
1TPS and 100TPS

Sample Recommended
design for an Acquirer test
cases suite, Scenarios
and Regression

Adding a card to the


Payments simulator

Run the neaPay ISO8583


converter to JSON, XML,
SQL, in a test
environment

Deploy, run and generate


with neaPay Card Data
Generator

Asking for defects support


for the neaPay ISO8583
simulator
/
#------------+------------------------+------------------------+----------------------+--------------------
------------+ How the fingerprint reader
|ClaIns P1 P2|Lc Send Data |Le Recv Data | Specification | Description works in the ISO8583
|
payments simulator
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| 04 | ISO 7816-96.3 | DEACTIVATE FILE Deploy the neaPay
| ISO8583 Payments
| A0 04 00 00 00 | 3GPP TS 11.11 | INVALIDATE converter in a test
| environment
| A0 04 00 00 00 | SAGEM SCT U34 6.15 | INVALIDATE
|
+------------+------------------------+------------------------+----------------------+-------------------- Read smart card chip data
------------+ with APDU commands
| 80 0D xx xx 08 xxxx xxxx xxxx xxxx | SAGEM SCT U34 | VERIFY TRANSPORT ISO 7816
CODE |
+------------+------------------------+------------------------+----------------------+-------------------- How we work and why it
------------+
works @neaPay
| 0C | ISO 7816-47.3.6 | ERASE RECORD (S)
|
| 80 0C 00 xx xx | SAGEM SCT U34 8.1.2 | CHECK (flash) Run One, Run Scenario,
| Run All, Run Load in the
| 80 0C 01 xx xx | SAGEM SCT U34 8.1.2 | CHECK (EEPROM) neaPay ISO8583
| Simulator - Use guide
| 80 0C 02 xx xx | SAGEM SCT U34 8.1.2 | CHECK (checksum of
file) |
+------------+------------------------+------------------------+----------------------+-------------------- Enabling traces in the
------------+ payments simulator
| 0E | ISO 7816-48.2.4 | ERASE BINARY
| Altering test cases in
+------------+------------------------+------------------------+----------------------+-------------------- Excel for the ISO8583
------------+
simulator
| 10 | ISO 7816-4 | PERFORM SCQL
OPERATION |
| 00 10 00 80 xx table name, ... | ISO 7816-47.1 | CREATE TABLE Cards and Banks Training
|
| 00 10 00 81 xx view name, table name | ISO 7816-47.2 | CREATE VIEW BASE24 classic interview
| questions
| 00 10 00 82 xx dictionary name | ISO 7816-47.3 | CREATE DICTIONARY
|
| 00 10 00 83 xx table name | ISO 7816-47.4 | DROP TABLE BASE24 classic screens
| examples explained
| 00 10 00 84 xx view or dictionary | ISO 7816-47.5 | DROP VIEW
| BASE24 classic cards
| 00 10 00 85 xx privileges | ISO 7816-47.6 | GRANT configuration tutorial with
|
Examples
| 00 10 00 86 xx privileges | ISO 7816-47.7 | REVOKE
|
| 00 10 00 87 xx data | ISO 7816-47.8 | DECLARE CURSOR BASE24 documentation to
| read
| 00 10 00 88 | ISO 7816-47.9 | OPEN
| BASE24 classic ATM
| 00 10 00 89 | ISO 7816-47.10 | NEXT
configuration Tutorial in
|
| 00 10 00 8A xx D, fixing N (columns)| ISO 7816-47.11 | FETCH ATD and XPNET with
| examples
| 00 10 00 8B xx D, fixing N (columns)| ISO 7816-47.12 | FETCH NEXT
| BASE24 classic vs
| 00 10 00 8C xx data | ISO 7816-47.13 | INSERT BASE24-eps
|
| 00 10 00 8D xx data | ISO 7816-47.14 | UPDATE
| Log Files in BASE24
| 00 10 00 8E | ISO 7816-47.15 | DELETE classic
|
+------------+------------------------+------------------------+----------------------+-------------------- BASE24-EPS ACI
------------+ DESKTOP tutorial -
| 12 | ISO 7816-4 | PERFORM TRANSACTION
Getting started
OPERATION |
| 00 12 00 80 | ISO 7816-48.2.1 | BEGIN
| BASE24 classic prefix
| 00 12 00 81 | ISO 7816-48.2.2 | COMMIT configuration tutorial CPF
| with examples
| 00 12 00 82 | ISO 7816-48.2.3 | ROLLBACK
|
Getting started with
+------------+------------------------+------------------------+----------------------+--------------------
------------+ BASE24. Compiling your
| 14 | ISO 7816-4 | PERFORM USER first TAL program
OPERATION |
| 00 14 00 80 xx User ID, ... | ISO 7816-49.2.1 | PRESENT USER EMV explained for
| programmers
| 00 14 00 81 xx User ID, profile, ... | ISO 7816-49.2.2 | CREATE USER
|
| 00 14 00 82 xx User ID | ISO 7816-49.2.3 | DELETE USER ISO8583 Payments
| Simulator Help Guide
| 80 14 xx xx 00 | GEMPLUS MPCOS-EMV | Switch Protocol
/
| Managing BASE24-eps
+------------+------------------------+------------------------+----------------------+-------------------- implementation projects
------------+
| 84 16 00 00 xx MAC | VSDC | CARD BLOCK
| BASE24 classic routing in
| 80 16 0X 00 05 xxxx xxxx xx | GEMPLUS MPCOS-EMV | Freeze Access IDF
Conditions |
| 84 16 0X 00 08 xxxx xxxx xxxx xxxx | GEMPLUS MPCOS-EMV | Freeze Access BASE24-eps interview
Conditions | questions
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| 84 18 00 00 xx MAC | VSDC | APPLICATION UNBLOCK BASE24 classic tracing of
| transactions. Audits,
+------------+------------------------+------------------------+----------------------+-------------------- configuration, enabling
------------+ and opening
| 84 1E 00 00 xx MAC | VSDC | APPLICATION BLOCK
|
ACI BASE24 classic
+------------+------------------------+------------------------+----------------------+--------------------
------------+ automatic extract
| 20 | ISO 7816-48.5.5 | VERIFY configuration
|
| 00 20 00 80 08 xxxx xxxx xxxx xxxx | VSDC | VERIFY (Transaction BASE24 classic Institution
PIN data) | configuration Tutorial with
| A0 20 00 xx 08 CHV Value | 3GPP TS 11.11 | VERIFY
example
|
| A0 20 00 xx 08 CHV Value | SAGEM SCT U34 6.10 | VERIFY
| Getting started with
| 80 20 00 xx 08 ADM Value | SAGEM SCT U34 8.1.4 | VERIFY ADM Base24 development. TAL
| tutorial
+------------+------------------------+------------------------+----------------------+--------------------
------------+
Working with Base24-eps
| 80 21 00 xx 08 ADM Value | SAGEM SCT U34 8.1.4 | VERIFY ADM
| vs BASE24 Classic
+------------+------------------------+------------------------+----------------------+--------------------
------------+ Deploy the neaPay HSM
| 22 | ISO 7816-48.5.10 | MANAGE SECURITY simulator in a test
ENVIRONMENT | environment
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| 24 | ISO 7816-48.5.6 | CHANGE CHV First steps with BASE24
| Classic
| 84 24 00 00 xx PIN data + MAC | VSDC | PIN CHANGE/UNBLOCK
| Base24-eps how to create
| A0 24 00 xx 10 Old CHV, New CHV | 3GPP TS 11.11 | CHANGE CHV journals with esbldjnl
|
| A0 24 00 xx 10 Old CHV, New CHV | SAGEM SCT U34 6.11 | CHANGE CHV
| BASE24 classic balance
+------------+------------------------+------------------------+----------------------+-------------------- file configuration PBF with
------------+ example
| 26 | ISO 7816-48.5.8 | DISABLE CHV1
| BASE24 classic External
| A0 26 00 01 08 CHV1 value | 3GPP TS 11.11 | DISABLE CHV1
Message File
|
| A0 26 00 01 08 CHV1 value | SAGEM SCT U32 6.12 | DISABLE CHV1 configuration EMF with
| examples
+------------+------------------------+------------------------+----------------------+--------------------
------------+ Deploy the Payments
| 28 | ISO 7816-48.5.7 | ENABLE CHV1 Switch Router in a test
|
environment
| A0 28 00 01 08 CHV1 value | 3GPP TS 11.11 | ENABLE CHV1
|
| A0 28 00 01 08 CHV1 value | SAGEM SCT U34 6.13 | ENABLE CHV1 What to expect when
| installing Base24-eps
+------------+------------------------+------------------------+----------------------+--------------------
------------+ BASE24 classic
| 2A | ISO 7816-85.2 | PERFORM SECURITY
interchange configuration
OPERATION |
+------------+------------------------+------------------------+----------------------+-------------------- with examples
------------+
| 2C | ISO 7816-48.5.9 | UNBLOCK CHV Getting started with using
| Prognosis for BASE24
| A0 2C 00 xx 10 Unblock CHV(PUK), New CHV | 3GPP TS 11.11 | UNBLOCK CHV and BASE24-eps
|
| A0 2C 00 xx 10 Unblock CHV(PUK), New CHV | SAGEM SCT U34 6.14 | UNBLOCK CHV
| BASE24 classic host
+------------+------------------------+------------------------+----------------------+-------------------- configuration tutorial HCF
------------+ with examples
| A0 2E 00 0# 01 Data | 3GPP TS 11.11 | WRITE CODE STATUS
| Download Page
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| A0 32 00 00 03 Value to be added. | 3GPP TS 11.11 | INCREASE ISO8583 Payments
| Simulator DEMO License
| A0 32 00 00 03 Value to be added. | SAGEM SCT U34 6.9 | INCREASE
| ISO8583 Payments
+------------+------------------------+------------------------+----------------------+-------------------- /
------------+ Simulator Commercial
| 39 | | java Authentificate License
User Comman|
+------------+------------------------+------------------------+----------------------+--------------------
Testing Services
------------+
| 44 | ISO 7816-96.4 | ACTIVATE FILE
| neapay all products
| A0 44 00 00 00 | 3GPP TS 11.11 | REHABILIDATE License Agreement
|
| A0 44 00 00 00 | SAGEM SCT U34 6.16 | REHABILIDATE
Products Help
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+ Cookies Policy
| 46 | ISO 7816-85.1 | GENERATE ASYMMETRIC
KEY PAIR | neaPay Company policies
+------------+------------------------+------------------------+----------------------+-------------------- and procedures
------------+
| 80 50 xx xx 08 Host challenge 00 | GlobalPlatform | INITIALIZE UPDATE
ISO8583 Payments
then [C0] |
+------------+------------------------+------------------------+----------------------+-------------------- Switch DEMO License
------------+
| 70 | ISO 7816-48.1.2 | MANAGE CHANNEL ISO8583 Payments
| Switch Router Help topics
| 00 70 xx xx xx | GlobalPlatform | MANAGE CHANNEL
|
ISO8583 Payments
+------------+------------------------+------------------------+----------------------+--------------------
------------+ Converter DEMO License
| 80 78 00 03 xx | GlobalPlatform | END R-MAC SESSION
| ISO8583 Cards Issuing
+------------+------------------------+------------------------+----------------------+-------------------- Host Help guide
------------+
| 80 7A xx 01 xx Data and C-MAC, if needed | GlobalPlatform | BEGIN R-MAC SESSION
ISO8583 Payments
|
+------------+------------------------+------------------------+----------------------+-------------------- Converter Commercial
------------+ License
| 82 | ISO 7816-48.5.3 | EXTERNAL
AUTHENTICATE | ISO8583 Payments
| 84 82 00 00 10 Host cryptogram and MAC | GlobalPlatform | EXTERNAL
Converter Help topics
AUTHENTICATE |
| 84 82 00 00 0A Authentication-related data | VSDC | EXTERNAL
AUTHENTICATE | Training Services
| 00 82 00 xx 06 Manual | GEMPLUS MPCOS-EMV | EXTERNAL
AUTHENTICATE |
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| 84 | ISO 7816-48.5.2 | GET CHALLENGE
|
| 00 84 00 00 08 Rnd Num | VSDC | GET CHALLENGE
|
| 00 84 xx xx 08 Rnd Num | GEMPLUS MPCOS-EMV | GET CHALLENGE
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| 86 | ISO 7816-48.5.4 | GENERAL AUTHENTICATE
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| 88 | ISO 7816-48.5.1 | INTERNAL
AUTHENTICATE |
| 00 88 XX xx 0A Manual | GEMPLUS MPCOS-EMV | INTERNAL
AUTHENTICATE |
| A0 88 00 00 10 RAND : Rnd num xx SRES( 4B) , Kc (8B) | 3GPP TS 11.11 | RUN GSM ALGORITHM
|
| A0 88 00 00 10 RAND : Rnd num xx SRES( 4B) , Kc (8B) | SAGEM SCT U34 6.17 | RUN GSM ALGORITHM
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| A0 | ISO 7816-48.2.5 | SEARCH BINARY
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| A2 | ISO 7816-48.3.5 | SEEK
|
| A0 A2 00 xx xx Pattern xx | 3GPP TS 11.11 | SEEK
|
| A0 A2 00 xx xx Pattern xx | SAGEM SCT U34 6.8 | SEEK
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| A4 | ISO 7816-48.1.1 | SELECT
|
| 00 A4 04 00 xx AID 00 | GlobalPlatform | SELECT
|
| 00 A4 00 xx xx File ID || Name 00 Manual | VSDC | SELECT
|
| A0 A4 00 00 02 File ID | 3GPP TS 11.11 | SELECT /
|
| A0 A4 00 00 02 File ID | SAGEM SCT U34 6.1 | SELECT
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| 80 A8 00 00 00 00 | VSDC | GET PROCESSING
OPTIONS |
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| 80 AE 00 xx Transaction-related data | VSDC |
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| B0 | ISO 7816-48.2.1 | READ BINARY
|
| 00 B0 xx xx xx | GEMPLUS MPCOS-EMV | READ BINARY
|
| A0 B0 xx xx xx | 3GPP TS 11.11 | READ BINARY
|
| A0 B0 xx xx xx | SAGEM SCT U34 6.4 | READ BINARY
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| B2 | ISO 7816-48.3.1 | READ RECORD
|
| 00 B2 xx 00 | VSDC | READ RECORD
|
| A0 B2 xx xx xx | 3GPP TS 11.11 | READ RECORD
|
| A0 B2 xx xx xx | SAGEM SCT U34 6.6 | READ RECORD
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| B4 | | java Component Data
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| B8 | | java Create Applet
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| BA | | java CAP end
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| BC | | java Component end
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| BE 04 Data | GEMPLUS GemClub-MEMO | READ
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| C0 | ISO 7816-48.6.1 | GET RESPONSE
|
| 00 C0 1C Key Info | GlobalPlatform | GET RESPONSE
|
| 00 C0 00 00 00 | VSDC | GET RESPONSE
|
| 80 C0 00 00 xx | GEMPLUS MPCOS-EMV | Get Info on Get
Response |
| 80 C0 02 A0 08 Chip SN | GEMPLUS MPCOS-EMV | Get Info
|
| 80 C0 02 A1 08 Card SN | GEMPLUS MPCOS-EMV | Get Info
|
| 80 C0 02 A2 08 Issuer SN | GEMPLUS MPCOS-EMV | Get Info
|
| 80 C0 02 A3 04 Iss.Ref.N | GEMPLUS MPCOS-EMV | Get Info
|
| 80 C0 02 A4 0D Chip Inf | GEMPLUS MPCOS-EMV | Get Info
|
| 80 C0 02 A5 xx Keys | GEMPLUS MPCOS-EMV | Get Info
|
| 80 C0 02 A6 02 Last DF/EF | GEMPLUS MPCOS-EMV | Get Info
|
| A0 C0 00 00 xx | 3GPP TS 11.11 | GET RESPONSE
|
| A0 C0 00 00 xx | SAGEM SCT U34 6.3 | GET RESPONSE
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| C2 | ISO 7816-48.6.2 | ENVELOPE
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| C4 | | java Delete Applets /
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| CA | ISO 7816-48.4.1 | GET DATA
|
| 00 CA 00 xx xx MAC, if present | GlobalPlatform | GET DATA
|
| 80 CA xx xx xx | VSDC | GET DATA
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| D0 | ISO 7816-48.2.2 | WRITE BINARY
|
| 80 D0 xx xx xx Data to be written in EEPROM | VSDC | LOAD STRUCTURE
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| D2 | ISO 7816-48.3.2 | WRITE RECORD
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| D6 | ISO 7816-48.2.3 | UPDATE BINARY
|
| A0 D6 xx xx xx Data to be written in EEPROM | 3GPP TS 11.11 | UPDATE BINARY
|
| A0 D6 xx xx xx Data to be written in EEPROM | SAGEM SCT U34 6.5 | UPDATE BINARY
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| 80 D8 xx xx xx KEY Date (and MAC) 00 | GlobalPlatform | PUT KEY
|
| D8 | EMV | Set Card
Status(personalization|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| DA | ISO 7816-48.4.2 | PUT DATA
|
| 00 DA xx xx xx Data | VSDC | PUT DATA
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| DC | ISO 7816-4 | UPDATE RECORD
|
| 00 DC xx xx xx Data (and MAC) | VSDC | UPDATE RECORD
|
| A0 DC xx xx xx Data to be written in EEPROM | 3GPP TS 11.11 | UPDATE RECORD
|
| A0 DC xx xx xx Data to be written in EEPROM | SAGEM SCT U34 6.7 | UPDATE RECORD
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| DE 04 Data | GEMPLUS GemClub-MEMO | UPDATE
|
| A0 DE 00 00 03 Data | 3GPP TS 11.11 | LOAD AoC(SICAP)
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| E0 | ISO 7816-96.1 | CREATE FILE
|
| 80 E0 02 00 0C Manual | GEMPLUS MPCOS-EMV | CREATE FILE
|
| 80 E0 xx xx xx FCI length | 3GPP TS 11.11 | CREATE FILE
|
| 80 E0 xx xx xx FCI length | SAGEM SCT U34 | CREATE FILE
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| E2 | ISO 7816-48.3.4 | APPEND RECORD
|
| 80 E2 00 00 xx Record (and MAC) | GlobalPlatform | APPEND RECORD
|
| 00 E2 00 00 xx Record | VSDC | APPEND RECORD
|
| 00 E2 00 00 xx Record | GEMPLUS MPCOS-EMV | APPEND RECORD
|
| 00 E2 00 00 xx Record | 3GPP TS 11.11 | APPEND RECORD
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| E4 | ISO 7816-96.2 | DELETE FILE
|
| 80 E4 00 00 xx TLV coded name | GlobalPlatform | DELETE FILE
|
| A0 E4 00 00 02 xx xx | 3GPP TS 11.11 | DELETE FILE
|
+------------+------------------------+------------------------+----------------------+-------------------- /
------------+
| E6 | ISO 7816-96.5 | TERMINATE DF
|
| 80 E6 xx 00 xx Manual | GlobalPlatform | INSTALL
|
| A0 E6 xx xx 00 | 3GPP TS 11.11 | LOCK RECORD
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| E8 | ISO 7816-96.6 | TERMINATE EF
|
| 80 E8 00 00 xx Record | GlobalPlatform | LOAD
|
| A0 E8 00 xx 10 Data | 3GPP TS 11.11 | READ DIRECTORY
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| 80 EA 00 00 xx Data | 3GPP TS 11.11 | CREATE BINARY
|
| 80 EA 00 00 xx Data | SAGEM SCT U34 | CREATE BINARY
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| 80 EE 00 xx 00 | VSDC | WRITE LOCK
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| 80 F0 xx xx xx AID of Application (and MAC) | GlobalPlatform | SET STATUS
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| A0 F2 00 00 xx | 3GPP TS 11.11 | GET STATUS
|
| A0 F2 00 00 xx | SAGEM SCT U34 6.2 | GET STATUS
|
| 80 F2 xx xx | GlobalPlatform | GET STATUS
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| 80 F8 xx xx xx | SAGEM SCT U34 8.1.1 | DIR
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| A0 FA 00 00 00 | 3GPP TS 11.11 | SLEEP
|
| A0 FA 00 00 00 | SAGEM SCT U34 6.18 | SLEEP
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| 80 FB xx xx xx | SAGEM SCT U34 8.1.1 | DIR
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| 80 FC xx xx 10 | SAGEM SCT U34 8.1.3 | READ INFO
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+
| FE | ISO 7816-96.7 | TERMINATE CARD USAGE
|
| 80 FE xx xx 00 | SAGEM SCT U34 | BLOW FUSE
|
+------------+------------------------+------------------------+----------------------+--------------------
------------+

his is an example output from the built in EMV card emulator:


```
[Step 1] SELECT FILE Master File (if available)
00 A4 00 00 00 response hex :

response SW1SW2 : 6d 00 response ascii : response parsed :

[Step 2] SELECT FILE 1PAY.SYS.DDF01 to get the PSE directory

/
00 A4 04 00 0E 31 50 41 59 2E 53 59 53 2E 44 44 46 30 31 response hex : 6f 20 84 0e 31 50 41 59 2e 53 59 53 2e 44 44 46 30
31 a5 0e 88 01 02 5f 2d 04 6e 6f 65 6e 9f 11 01 01 response SW1SW2 : 90 00 response ascii : o
..1PAY.SYS.DDF01....._-.noen.... response parsed :

6f 20 -- File Control Information (FCI) Template 84 0e -- Dedicated File (DF) Name 31 50 41 59 2e 53 59 53 2e 44 44 46 30 31


(BINARY) a5 0e -- File Control Information (FCI) Proprietary Template 88 01 -- Short File Identifier (SFI) 02 (BINARY) 5f 2d 04 --
Language Preference 6e 6f 65 6e (=noen) 9f 11 01 -- Issuer Code Table Index 01 (NUMERIC)

[Step 3] Send READ RECORD to read all records in SFI 2


00 B2 01 14 00 response hex : 70 23 61 21 4f 07 a1 23 45 67 89 10 10 50 04 56 49 53 41 9f 12 0c 56 49 53 41 20 43 6c 61 73
73 69 63 87 01 02 response SW1SW2 : 90 00 response ascii : p#a!O..#Eg...P.VISA...VISA Classic... response parsed :

70 23 -- Record Template (EMV Proprietary) 61 21 -- Application Template 4f 07 -- Application Identifier (AID) - card a1 23 45 67
89 10 10 (BINARY) 50 04 -- Application Label 56 49 53 41 (=VISA) 9f 12 0c -- Application Preferred Name 56 49 53 41 20 43 6c
61 73 73 69 63 (=VISA Classic) 87 01 -- Application Priority Indicator 02 (BINARY)

[Step 4] Send READ RECORD to read all records in SFI 2


00 B2 02 14 00 response hex : 70 25 61 23 4f 07 d5 78 00 00 02 10 10 50 09 62 61 6e 6b 61 78 65 70 74 9f 12 09 62 61 6e 6b
61 78 65 70 74 87 01 01 response SW1SW2 : 90 00 response ascii : p%a#O..x.....P.bankaxept...bankaxept... response parsed :

70 25 -- Record Template (EMV Proprietary) 61 23 -- Application Template 4f 07 -- Application Identifier (AID) - card d5 78 00 00
02 10 10 (BINARY) 50 09 -- Application Label 62 61 6e 6b 61 78 65 70 74 (=bankaxept) 9f 12 09 -- Application Preferred Name
62 61 6e 6b 61 78 65 70 74 (=bankaxept) 87 01 -- Application Priority Indicator 01 (BINARY)

[Step 5] Send READ RECORD to read all records in SFI 2


00 B2 03 14 00 response hex :

response SW1SW2 : 6a 83 response ascii : response parsed :

[Step 6] Select application by AID


00 A4 04 00 07 a1 23 45 67 89 10 10 response hex : 6f 37 84 07 a1 23 45 67 89 10 10 a5 2c 50 04 56 49 53 41 87 01 02 9f 38
06 9f 1a 02 5f 2a 02 5f 2d 04 6e 6f 65 6e 9f 11 01 01 9f 12 0c 56 49 53 41 20 43 6c 61 73 73 69 63 response SW1SW2 : 90 00
response ascii : o7...#Eg....,P.VISA....8....*.-.noen.......VISA Classic response parsed :

6f 37 -- File Control Information (FCI) Template 84 07 -- Dedicated File (DF) Name a1 23 45 67 89 10 10 (BINARY) a5 2c -- File
Control Information (FCI) Proprietary Template 50 04 -- Application Label 56 49 53 41 (=VISA) 87 01 -- Application Priority
Indicator 02 (BINARY) 9f 38 06 -- Processing Options Data Object List (PDOL) 9f 1a 02 -- Terminal Country Code 5f 2a 02 --
Transaction Currency Code 5f 2d 04 -- Language Preference 6e 6f 65 6e (=noen) 9f 11 01 -- Issuer Code Table Index 01
(NUMERIC) 9f 12 0c -- Application Preferred Name 56 49 53 41 20 43 6c 61 73 73 69 63 (=VISA Classic)

[Step 7] Send GET PROCESSING OPTIONS command


80 A8 00 00 06 83 04 08 26 08 26 response hex : 80 0a 5c 00 08 01 01 00 08 02 05 01 response SW1SW2 : 90 00 response
ascii : ........... response parsed :

80 0a -- Response Message Template Format 1 5c 00 08 01 01 00 08 02 05 01 (BINARY)

[Step 8] Send READ RECORD to read SFI 1 record 1


00 B2 01 0c 00 response hex : 70 4d 9f 1f 18 32 34 39 35 30 30 30 30 30 30 30 30 30 30 30 31 30 31 30 30 30 30 30 30 57 13
54 11 11 88 88 88 88 82 d1 20 32 01 12 34 56 78 90 00 0f 5f 20 1a 53 4d 49 54 48 2f 4a 4f 48 4e 20 20 20 20 20 20 20 20 20 20
20 20 20 20 20 20 response SW1SW2 : 90 00 response ascii : pM...249500000000000101000000W.T........ 2..4Vx..._
.SMITH/JOHN
response parsed :

70 4d -- Record Template (EMV Proprietary) 9f 1f 18 -- [Magnetic Stripe] Track 1 Discretionary Data 32 34 39 35 30 30 30 30 30


30 30 30 30 30 30 31 30 31 30 30 30 30 30 30 (=249500000000000101000000) 57 13 -- Track 2 Equivalent Data 54 11 11 88 88
88 88 82 d1 20 32 01 12 34 56 78 90 00 0f (BINARY) 5f 20 1a -- Cardholder Name 53 4d 49 54 48 2f 4a 4f 48 4e 20 20 20 20 20
20 20 20 20 20 20 20 20 20 20 20 (=SMITH/JOHN )

[Step 9] Send READ RECORD to read SFI 1 record 2


00 B2 02 0c 00 response hex : 70 50 5f 24 03 12 03 31 5f 25 03 09 02 05 5a 08 54 11 11 88 88 88 88 82 5f 34 01 01 9f 07 02 ff
00 8e 12 00 00 00 00 00 00 00 00 42 01 41 03 5e 03 42 03 1f 00 9f 0d 05 f0 20 24 28 00 9f 0e 05 00 50 80 00 00 9f 0f 05 f0 28
3c f8 00 5f 28 02 05 78 response SW1SW2 : 90 00 response ascii : pP_$...1_%....Z.T.......4.................B.A.^.B....... $(.....P.......(<..
(..x response parsed :

70 50 -- Record Template (EMV Proprietary) 5f 24 03 -- Application Expiration Date 12 03 31 (NUMERIC) 5f 25 03 -- Application


Effective Date 09 02 05 (NUMERIC) 5a 08 -- Application Primary Account Number (PAN) 54 11 11 88 88 88 88 82 (NUMERIC)
5f 34 01 -- Application Primary Account Number (PAN) Sequence Number 01 (NUMERIC) 9f 07 02 -- Application Usage Control
/
ff 00 (BINARY) 8e 12 -- Cardholder Verification Method (CVM) List 00 00 00 00 00 00 00 00 42 01 41 03 5e 03 42 03 1f 00
(BINARY) 9f 0d 05 -- Issuer Action Code - Default f0 20 24 28 00 (BINARY) 9f 0e 05 -- Issuer Action Code - Denial 00 50 80 00
00 (BINARY) 9f 0f 05 -- Issuer Action Code - Online f0 28 3c f8 00 (BINARY) 5f 28 02 -- Issuer Country Code 05 78 (NUMERIC)

[Step 10] Send READ RECORD to read SFI 1 record 3


00 B2 03 0c 00 response hex : 70 47 9f 42 02 05 78 9f 44 01 02 9f 08 02 00 8c 8c 15 9f 02 06 9f 03 06 9f 1a 02 95 05 5f 2a 02
9a 03 9c 01 9f 37 04 8d 17 8a 02 9f 02 06 9f 03 06 9f 1a 02 95 05 5f 2a 02 9a 03 9c 01 9f 37 04 5f 30 02 02 01 9f 4a 01 82
response SW1SW2 : 90 00 response ascii : pG.B..x.D....................*......7................*......7._0....J.. response parsed :

70 47 -- Record Template (EMV Proprietary) 9f 42 02 -- Application Currency Code 05 78 (NUMERIC) 9f 44 01 -- Application


Currency Exponent 02 (NUMERIC) 9f 08 02 -- Application Version Number - card 00 8c (BINARY) 8c 15 -- Card Risk
Management Data Object List 1 (CDOL1) 9f 02 06 -- Amount, Authorised (Numeric) 9f 03 06 -- Amount, Other (Numeric) 9f 1a
02 -- Terminal Country Code 95 05 -- Terminal Verification Results (TVR) 5f 2a 02 -- Transaction Currency Code 9a 03 --
Transaction Date 9c 01 -- Transaction Type 9f 37 04 -- Unpredictable Number 8d 17 -- Card Risk Management Data Object List
2 (CDOL2) 8a 02 -- Authorisation Response Code 9f 02 06 -- Amount, Authorised (Numeric) 9f 03 06 -- Amount, Other
(Numeric) 9f 1a 02 -- Terminal Country Code 95 05 -- Terminal Verification Results (TVR) 5f 2a 02 -- Transaction Currency Code
9a 03 -- Transaction Date 9c 01 -- Transaction Type 9f 37 04 -- Unpredictable Number 5f 30 02 -- Service Code 02 01
(NUMERIC) 9f 4a 01 -- Static Data Authentication Tag List 82 (BINARY)

[Step 11] Send READ RECORD to read SFI 1 record 4


00 B2 04 0c 00 response hex : 70 81 c0 8f 01 07 90 81 90 04 71 93 ac fb 32 3a bb 95 ac e6 c5 b4 69 27 6d b5 93 16 73 cb a2
e0 ee 23 37 9d 02 79 50 b6 c1 c8 4d 59 e9 aa 7a 54 1b 51 06 0b 0b df 51 4f 44 40 10 2b ee e8 4c 38 3a ce 13 b0 72 84 4e 97
a6 5e 0e 69 b1 c8 c5 dc f3 08 b4 26 b8 b3 3d 72 07 ff 29 a7 7d d5 64 46 ae 8d ba b8 d1 b9 ea 6a 32 ab 11 64 e7 35 2c 14 6d
0a 61 e6 de b1 ec 2f 91 25 27 b9 ce df 72 a9 b0 86 3a 9c 45 b4 9a 81 8a f4 69 8c 71 c9 72 d2 eb 25 41 84 5e 4d f8 a3 49 9f 32
01 03 92 24 5b c8 f7 38 4c 06 dc dc 35 97 51 d1 d4 31 52 0d f5 ff 2d 43 47 4a 88 60 3c 9e fc a0 66 6a 1a 42 bd f0 a4 f5
response SW1SW2 : 90 00 response ascii :
p.........q...2:......i'm...s....#7..yP...MY..zT.Q....QOD@.+..L8:...r.N..^.i.......&..=r..).}.dF.......j2..d.5,.m.a..../.%'...r...:.E.....i.q.r..%A.^M..I.2...$[..8L...5.Q..1R...-
CGJ.] response parsed :

70 81 c0 -- Record Template (EMV Proprietary) 8f 01 -- Certification Authority Public Key Index - card 07 (BINARY) 90 81 90 --
Issuer Public Key Certificate 04 71 93 ac fb 32 3a bb 95 ac e6 c5 b4 69 27 6d b5 93 16 73 cb a2 e0 ee 23 37 9d 02 79 50 b6 c1
c8 4d 59 e9 aa 7a 54 1b 51 06 0b 0b df 51 4f 44 40 10 2b ee e8 4c 38 3a ce 13 b0 72 84 4e 97 a6 5e 0e 69 b1 c8 c5 dc f3 08
b4 26 b8 b3 3d 72 07 ff 29 a7 7d d5 64 46 ae 8d ba b8 d1 b9 ea 6a 32 ab 11 64 e7 35 2c 14 6d 0a 61 e6 de b1 ec 2f 91 25 27
b9 ce df 72 a9 b0 86 3a 9c 45 b4 9a 81 8a f4 69 8c 71 c9 72 d2 eb 25 41 84 5e 4d f8 a3 49 (BINARY) 9f 32 01 -- Issuer Public
Key Exponent 03 (BINARY) 92 24 -- Issuer Public Key Remainder 5b c8 f7 38 4c 06 dc dc 35 97 51 d1 d4 31 52 0d f5 ff 2d 43
47 4a 88 60 3c 9e fc a0 66 6a 1a 42 bd f0 a4 f5 (BINARY)

[Step 12] Send READ RECORD to read SFI 1 record 5


00 B2 05 0c 00 response hex : 70 81 93 93 81 90 41 7c 43 3e 07 08 e7 14 4e ce c1 d3 6b bf 44 09 2e fe 27 3d aa 24 cb 34 c3
77 9e 4f 29 e7 7f 59 10 a9 c5 7e 0c bb e3 73 81 93 b3 51 f5 e4 66 18 75 1f 0a 5f fb 59 c7 76 1f f1 28 8d dd ac a8 86 9b 61 14
b0 5c 6b 79 e4 d3 2b 97 95 c7 b4 ea e4 62 17 1b 05 90 7d 67 09 03 4e 58 26 aa 97 a8 d8 ab 71 c5 70 a5 8d 4a 4a f0 a5 a7 06
5e 7a 22 ec 9b d3 a0 06 f2 4d 29 40 9c 22 88 87 c8 14 2a f1 37 da d9 f8 3c 64 96 32 ce ab 8b 3c 1c d1 eb 58 response
SW1SW2 : 90 00 response ascii : p.....A|C>....N...k.D...'=.$.4.w.O)..Y...~...s...Q..f.u.._.Y.v..
(......a..ky..+......b....}g..NX&.....q.p..JJ....^z"......M)@."....*.7...

70 81 93 -- Record Template (EMV Proprietary) 93 81 90 -- Signed Static Application Data 41 7c 43 3e 07 08 e7 14 4e ce c1 d3


6b bf 44 09 2e fe 27 3d aa 24 cb 34 c3 77 9e 4f 29 e7 7f 59 10 a9 c5 7e 0c bb e3 73 81 93 b3 51 f5 e4 66 18 75 1f 0a 5f fb 59
c7 76 1f f1 28 8d dd ac a8 86 9b 61 14 b0 5c 6b 79 e4 d3 2b 97 95 c7 b4 ea e4 62 17 1b 05 90 7d 67 09 03 4e 58 26 aa 97 a8
d8 ab 71 c5 70 a5 8d 4a 4a f0 a5 a7 06 5e 7a 22 ec 9b d3 a0 06 f2 4d 29 40 9c 22 88 87 c8 14 2a f1 37 da d9 f8 3c 64 96 32 ce
ab 8b 3c 1c d1 eb 58 (BINARY)

[Step 13] Send GET DATA command to find the Application Transaction Counter
(ATC)
80 CA 9F 36 00 response hex : 9f 36 02 00 79 response SW1SW2 : 90 00 response ascii : .6..y response parsed :

9f 36 02 -- Application Transaction Counter (ATC) 00 79 (BINARY)

[Step 14] Send GET DATA command to find the Last Online ATC Register
80 CA 9F 13 00 response hex : 9f 13 02 00 67 response SW1SW2 : 90 00 response ascii : ....g response parsed :

9f 13 02 -- Last Online Application Transaction Counter (ATC) Register 00 67 (BINARY)

[Step 15] Send GET DATA command to find the PIN Try Counter
80 CA 9F 17 00 response hex : 9f 17 01 03 response SW1SW2 : 90 00 response ascii : .... response parsed :

9f 17 01 -- Personal Identification Number (PIN) Try Counter 03 (BINARY)

/
[Step 16] Send GET DATA command to find the Log Format
80 CA 9F 4F 00 response hex :

response SW1SW2 : 6a 81 response ascii : response parsed :

[Step 17] VERIFY (PIN)


00 20 00 80 08 24 12 34 ff ff ff ff ff response hex :

response SW1SW2 : 90 00 response ascii : response parsed :

[Step 18] Select application by AID


00 A4 04 00 07 d5 78 00 00 02 10 10 response hex : 6f 2e 84 07 d5 78 00 00 02 10 10 a5 23 50 09 62 61 6e 6b 61 78 65 70 74
87 01 01 5f 2d 02 6e 6f 9f 11 01 01 9f 12 09 62 61 6e 6b 61 78 65 70 74 response SW1SW2 : 90 00 response ascii :
o....x......#P.bankaxept..._-.no.......bankaxept response parsed :

6f 2e -- File Control Information (FCI) Template 84 07 -- Dedicated File (DF) Name d5 78 00 00 02 10 10 (BINARY) a5 23 -- File
Control Information (FCI) Proprietary Template 50 09 -- Application Label 62 61 6e 6b 61 78 65 70 74 (=bankaxept) 87 01 --
Application Priority Indicator 01 (BINARY) 5f 2d 02 -- Language Preference 6e 6f (=no) 9f 11 01 -- Issuer Code Table Index 01
(NUMERIC) 9f 12 09 -- Application Preferred Name 62 61 6e 6b 61 78 65 70 74 (=bankaxept)

[Step 19] Send GET PROCESSING OPTIONS command


80 A8 00 00 02 83 00 response hex : 80 06 18 00 08 01 01 00 response SW1SW2 : 90 00 response ascii : ........ response
parsed :

80 06 -- Response Message Template Format 1 18 00 08 01 01 00 (BINARY)

[Step 20] Send READ RECORD to read SFI 1 record 1


00 B2 01 0c 00 response hex : 70 6e 5a 09 95 78 52 64 12 34 56 78 90 5f 34 01 02 5f 24 03 12 03 29 57 13 95 78 52 64 12 34
56 78 90 d1 20 36 01 12 34 56 78 90 0f 8c 15 9f 02 06 9f 03 06 9f 1a 02 95 05 5f 2a 02 9a 03 9c 01 9f 37 04 8d 17 8a 02 9f 02
06 9f 03 06 9f 1a 02 95 05 5f 2a 02 9a 03 9c 01 9f 37 04 8e 0a 00 00 00 00 00 00 00 00 02 00 9f 0d 05 b0 40 04 88 00 response
SW1SW2 : 90 00 response ascii : pnZ..xRd.4Vx.4..$...)W..xRd.4Vx.. 6..4Vx...............*......7................*......7.................@...
response parsed :

70 6e -- Record Template (EMV Proprietary) 5a 09 -- Application Primary Account Number (PAN) 95 78 52 64 12 34 56 78 90


(NUMERIC) 5f 34 01 -- Application Primary Account Number (PAN) Sequence Number 02 (NUMERIC) 5f 24 03 -- Application
Expiration Date 12 03 29 (NUMERIC) 57 13 -- Track 2 Equivalent Data 95 78 52 64 12 34 56 78 90 d1 20 36 01 12 34 56 78 90
0f (BINARY) 8c 15 -- Card Risk Management Data Object List 1 (CDOL1) 9f 02 06 -- Amount, Authorised (Numeric) 9f 03 06 --
Amount, Other (Numeric) 9f 1a 02 -- Terminal Country Code 95 05 -- Terminal Verification Results (TVR) 5f 2a 02 -- Transaction
Currency Code 9a 03 -- Transaction Date 9c 01 -- Transaction Type 9f 37 04 -- Unpredictable Number 8d 17 -- Card Risk
Management Data Object List 2 (CDOL2) 8a 02 -- Authorisation Response Code 9f 02 06 -- Amount, Authorised (Numeric) 9f 03
06 -- Amount, Other (Numeric) 9f 1a 02 -- Terminal Country Code 95 05 -- Terminal Verification Results (TVR) 5f 2a 02 --
Transaction Currency Code 9a 03 -- Transaction Date 9c 01 -- Transaction Type 9f 37 04 -- Unpredictable Number 8e 0a --
Cardholder Verification Method (CVM) List 00 00 00 00 00 00 00 00 02 00 (BINARY) 9f 0d 05 -- Issuer Action Code - Default b0
40 04 88 00 (BINARY)

[Step 21] Send GET DATA command to find the Application Transaction Counter
(ATC)
80 CA 9F 36 00 response hex : 9f 36 02 01 73 response SW1SW2 : 90 00 response ascii : .6..s response parsed :

9f 36 02 -- Application Transaction Counter (ATC) 01 73 (BINARY)

[Step 22] Send GET DATA command to find the Last Online ATC Register
80 CA 9F 13 00 response hex : 9f 13 02 01 72 response SW1SW2 : 90 00 response ascii : ....r response parsed :

9f 13 02 -- Last Online Application Transaction Counter (ATC) Register 01 72 (BINARY)

[Step 23] Send GET DATA command to find the PIN Try Counter
80 CA 9F 17 00 response hex : 9f 17 01 03 response SW1SW2 : 90 00 response ascii : .... response parsed :

9f 17 01 -- Personal Identification Number (PIN) Try Counter 03 (BINARY)

[Step 24] Send GET DATA command to find the Log Format
80 CA 9F 4F 00 response hex :

response SW1SW2 : 6a 81 response ascii : response parsed :

/
======================================

[EMVCard]
Answer To Reset (ATR) 3b 67 00 00 a6 40 40 00 09 90 00 Description From Public Database - [Visa card issued by Norway
bank DNBNor, VISA Classic - Landkreditt Bank (Norway), VISA Classic - Nordea Bank (Norway)] ISO Compliant Answer To
Reset (ATR) Convention - DIRECT Protocol - T=0 Historical bytes - a6 40 40 00 09 90 00

Directory Definition File Name: 315041592e5359532e4444463031 (=1PAY.SYS.DDF01) Issuer Code Table Index: 1 (ISO-8859-
1) Short File Identifier: 2 (Governed by the EMV specification) Language Preference (in order of preference): Language: no
(Norwegian) Language: en (English)

/
Applications (2 found):

Application
AID: a1 23 45 67 89 10 10
Label: VISA
Preferred Name: VISA Classic
Application Effective Date: Thu Feb 05 00:00:00 CET 2009
Application Expiration Date: Sat Mar 31 00:00:00 CEST 2012
Application Version Number: 140
Application Currency Code (ISO 4217): 578 (NOK Norwegian Krone)
Application Currency Exponent: 2 (Position of the decimal point from the right)
Issuer Country Code (ISO 3166-1): 578 (Norway)
Application Transaction Counter (ATC): 121
Last Online ATC Register: 103
PIN Try Counter: 3 (Number of PIN tries remaining)
Cardholder Name: SMITH/JOHN
Primary Account Number (PAN) - 5411118888888882
Major Industry Identifier = 5 (Banking and financial)
Issuer Identifier Number: 541111
Account Number: 888888888
Check Digit: 2 (Valid)
PAN Sequence Number: 1
Application Priority Indicator
May be selected without cardholder confirmation
Selection Priority: 2
Application Interchange Profile
Static Data Authentication (SDA) supported
Dynamic Data Authentication (DDA) not supported
Cardholder verification is supported
Terminal risk management is to be performed
Issuer authentication is supported
CDA not supported
Application File Locator
Application Elementary File
Short File Identifier:
1 (Governed by the EMV specification)
Start Record: 1
End Record: 1
Number of Records Involved In Offline Data Authentication: 0
Record: 1
Length: 79
Involved In Offline Data Authentication: false
Application Elementary File
Short File Identifier:
1 (Governed by the EMV specification)
Start Record: 2
End Record: 5
Number of Records Involved In Offline Data Authentication: 1
Record: 2
Length: 82
Involved In Offline Data Authentication: true
Record: 3
Length: 73
Involved In Offline Data Authentication: false
Record: 4
Length: 195
Involved In Offline Data Authentication: false
Record: 5
Length: 150
Involved In Offline Data Authentication: false
Application Usage Control
Valid for domestic cash transactions
Valid for international cash transactions
Valid for domestic goods
Valid for international goods
Valid for domestic services
Valid for international services
Valid at ATMs
Valid at terminals other than ATMs
Domestic cashback not allowed
International cashback not allowed
Processing Options Data Object List
Terminal Country Code (2 bytes)
Transaction Currency Code (2 bytes)
Issuer Public Key Certificate
Issuer Identifier: 492564
CA Public Key Index: 7
Certificate Format: 2
Certificate Expiration Date (MMYY): 1214
Certificate Serial Number: 00e16d (57709)
Hash Algorithm Indicator: 1 (=SHA-1)
Issuer Public Key Algorithm Indicator: 1 (=RSA)
Hash: b6819d8d5af4034214973edbad1bd2866a550dbb
Issuer Public Key
Length: 1152bit
/
Exponent:
03
Modulus:
ba 53 3e b8 ec c9 f9 b8 b2 a3 5e ed 3b e0 3f 7d
3a cf e2 46 a3 4c 8e 75 f5 c7 4a 64 e6 5c 97 cb
4f 2f ab 97 09 cf 7e 12 89 0e af f1 8a 4f cf b4
fa 98 18 db c3 be 5f dc 65 91 54 46 cb 86 24 ac
2d 1e 07 72 f2 52 49 02 f9 8b a5 5b 4b 4b 11 00
1e 4e cf b7 0f 12 19 a3 97 12 98 e7 ed c5 b9 2b
8d 44 c9 80 e2 f6 8f 90 8f 9d ad 78 5b c8 f7 38
4c 06 dc dc 35 97 51 d1 d4 31 52 0d f5 ff 2d 43
47 4a 88 60 3c 9e fc a0 66 6a 1a 42 bd f0 a4 f5
Card Risk Management Data Object List 1
Amount, Authorised (Numeric) (6 bytes)
Amount, Other (Numeric) (6 bytes)
Terminal Country Code (2 bytes)
Terminal Verification Results (TVR) (5 bytes)
Transaction Currency Code (2 bytes)
Transaction Date (3 bytes)
Transaction Type (1 byte)
Unpredictable Number (4 bytes)
Card Risk Management Data Object List 2
Authorisation Response Code (2 bytes)
Amount, Authorised (Numeric) (6 bytes)
Amount, Other (Numeric) (6 bytes)
Terminal Country Code (2 bytes)
Terminal Verification Results (TVR) (5 bytes)
Transaction Currency Code (2 bytes)
Transaction Date (3 bytes)
Transaction Type (1 byte)
Unpredictable Number (4 bytes)
Signed Static Application Data
Hash Algorithm Indicator: 1 (=SHA-1)
Data Authentication Code: 0123
Hash: 74159900848ab829b9f0318950cdad9351e0bfdf
Cardholder Verification Method (CVM) List:
Cardholder Verification Rule
Rule: Enciphered PIN verified online
Condition Code: If unattended cash
Apply succeeding CV Rule if this CVM is unsuccessful
Cardholder Verification Rule
Rule: Plaintext PIN verification performed by ICC
Condition Code: If terminal supports the CVM
Apply succeeding CV Rule if this CVM is unsuccessful
Cardholder Verification Rule
Rule: If transaction is in the application currency and is under 0.00 value
Condition Code: If terminal supports the CVM
Apply succeeding CV Rule if this CVM is unsuccessful
Cardholder Verification Rule
Rule: Enciphered PIN verified online
Condition Code: If terminal supports the CVM
Apply succeeding CV Rule if this CVM is unsuccessful
Cardholder Verification Rule
Rule: If transaction is in the application currency and is over 0.00 value
Condition Code: Always
Fail cardholder verification if this CVM is unsuccessful
Static Data Authentication Tag List
Application Interchange Profile
Track 1 Discretionary Data:
323439353030303030303030303030313031303030303030 (ASCII: 249500000000000101000000)
Track 2 Equivalent Data:
Primary Account Number (PAN) - 5411118888888882
Major Industry Identifier = 5 (Banking and financial)
Issuer Identifier Number: 541111
Account Number: 888888888
Check Digit: 2 (Valid)
Expiration Date: Wed Feb 29 00:00:00 CET 2012
Service Code: 201
Discretionary Data: 1234567890000
Service Code: 201
Language Preference (in order of preference):
Language: no (Norwegian)
Language: en (English)
Issuer Code Table Index: 1 (ISO-8859-1)
Issuer Action Code - Default:
11110000
00100000
00100100
00101000
00000000
Issuer Action Code - Denial:
00000000
01010000
10000000
00000000
00000000 /
Issuer Action Code - Online:
11110000
00101000
00111100
11111000
00000000

Application
AID: d5 78 00 00 02 10 10
Label: bankaxept
Preferred Name: bankaxept
Application Expiration Date: Thu Mar 29 00:00:00 CEST 2012
Application Transaction Counter (ATC): 115
Last Online ATC Register: 114
PIN Try Counter: 3 (Number of PIN tries remaining)
Primary Account Number (PAN) - 957852641234567890
Major Industry Identifier = 9 (For assignment by national standards bodies)
Country Code (ISO 3166-1): 578 (=Norway)
Issuer Identifier Number: 957852
Account Number: 64123456789
Check Digit: 0 (Valid)
PAN Sequence Number: 2
Application Priority Indicator
May be selected without cardholder confirmation
Selection Priority: 1
Application Interchange Profile
Static Data Authentication (SDA) not supported
Dynamic Data Authentication (DDA) not supported
Cardholder verification is supported
Terminal risk management is to be performed
Issuer authentication is not supported
CDA not supported
Application File Locator
Application Elementary File
Short File Identifier:
1 (Governed by the EMV specification)
Start Record: 1
End Record: 1
Number of Records Involved In Offline Data Authentication: 0
Record: 1
Length: 112
Involved In Offline Data Authentication: false
Card Risk Management Data Object List 1
Amount, Authorised (Numeric) (6 bytes)
Amount, Other (Numeric) (6 bytes)
Terminal Country Code (2 bytes)
Terminal Verification Results (TVR) (5 bytes)
Transaction Currency Code (2 bytes)
Transaction Date (3 bytes)
Transaction Type (1 byte)
Unpredictable Number (4 bytes)
Card Risk Management Data Object List 2
Authorisation Response Code (2 bytes)
Amount, Authorised (Numeric) (6 bytes)
Amount, Other (Numeric) (6 bytes)
Terminal Country Code (2 bytes)
Terminal Verification Results (TVR) (5 bytes)
Transaction Currency Code (2 bytes)
Transaction Date (3 bytes)
Transaction Type (1 byte)
Unpredictable Number (4 bytes)
Cardholder Verification Method (CVM) List:
Cardholder Verification Rule
Rule: Enciphered PIN verified online
Condition Code: Always
Fail cardholder verification if this CVM is unsuccessful
Track 2 Equivalent Data:
Primary Account Number (PAN) - 957852641234567890
Major Industry Identifier = 9 (For assignment by national standards bodies)
Country Code (ISO 3166-1): 578 (=Norway)
Issuer Identifier Number: 957852
Account Number: 64123456789
Check Digit: 0 (Valid)
Expiration Date: Wed Feb 29 00:00:00 CET 2012
Service Code: 601
Discretionary Data: 12345678900
Language Preference (in order of preference):
Language: no (Norwegian)
Issuer Code Table Index: 1 (ISO-8859-1)
Issuer Action Code - Default:
10110000
01000000
00000100
10001000
00000000
/
FINISHED

Terminal - Banking Chip Card. How they are talk to each other?

Today was a hard day for me, even if it was Sunday...but anyway I want to start a new very interesting topic about one standard,
which is actually playing very important role in a world of Payment application, its name is EMV.

Everyone today has his own banking card, and this is easy way to get the access to your bank account and as a consequence to
your money. Whatever you do, going to buy something, to get some cash or to pay for your mobile phone, each time you take
your card from your wallet and starting from this moment you oblige to follow some rules in order make a correct payment. To be
precisely, it is not you personally, this is your banking card which should be complained to EMVco standard. Let's imagine you
insert your card to the reader of ATM or POS terminal and from this moment magic is takes a control on your bank account.
Interesting, is not it? Let's see what is going on between your card and ATM or terminal.

First of all, I will give you some useful links about related topics, which I hope will help you to understand the process of data
exchange between smart card and terminal and also helps to read this topic.

ISO 7816 general description.

Global Platform general description and full set of documents which can be downloaded from official web site.

EMV on wiki and EMVco website where you can find all specifications.

Nice page with EMV tags search engine

ASCII to HEX/HEX to ASCII convertor

Let’s start to see what is going on between card and terminal. I need to say here, first we will speak about contact
interface.About contactless interface I will describe later on.

Part I. EMV transaction via Contact Interface.

When the card inserted in to terminal, it is going to be powered and reset. Card must provide Acknowledge-To-Reset (ATR) and
then will wait for incoming commands.

This is a common part which is not directly related to EMV transaction. More information about ATR you will find in ISO7816 part
3. So, now let’s have a look from EMV standard point of view.

The next step is to choose and select target application. Depending on what type of card you have (Visa, MasterCard, etc...),
different payment schemes will apply during EMV transaction.

There are two approaches can be used to determine which application is going to be used:

1. Terminal use PSE (Payment System Environment), if the one is exists on card.
2. Terminal build a list of candidates based on list of application stored in terminal.

Approach 1: Using PSE

/
PSE is Payment System Environment which contains, roughly speaking language preference, list of applications and their
priority in which they must be executed. It is not mandatory for all cards to support PSE.

Terminal select PSE using SELECT command with filename 1PAY.SYS.DDF01. If there is no PSE, card should return “6A82”,
which means “file not found”. If card returns “9000”, terminal proceeds to the next step by processing response from card. The
response on the SELECT command for PSE contains FCI data object, which should looks according EMV Book 1 like:

Tag Value Presence

6F FCI Template M

84 DF Name M

A5 FCI Proprietary Template M

88 SFI of the Directory Elementary File M

5F2D Language Preference O

9F11 Issuer Code Table Index O

BF0C FCI Issuer Discretionary Data O

1 or more additional proprietary data elements


XXXX -Tag
from an application provider, issuer, or IC card
according EMV O
supplier, or EMV-defined tags that are
Book3, Annex B
specifically allocated to 'BF0C'

Response on SELECT command for PSE

So now terminal knows the SFI of payment system directory to read. By sendin

Like 0 Share
Tweet Follow @neaPaycom
LinkedIn

neaPay Contact us Payments Products Online Tools Payments Services

Payments Solutions. Made ISO8583 Simulator ISO8583 Message Parser Payments Message Conversion
Simple
Message Converter Card Data Generator Consulting Services

ISO8583 Payments Switch EMV TLV Decoder Testing Services


Cloud based payments
products and services with
Cards Issuing Host ISO8583 Bitmap fields decoder Training Classes
microservices
PIN block calculator Training Base24

Cryptogram ARQC calculator Training Base24-eps


Simple conversion to any
POS Device Simulator
payments format: HTTP JSON, DES/3DES Encrypt/Decrypt
SQL, TLV, SWIFT or any HSM Simulator
custom format HEX to Decimal converter

ISO20022 Payments Simulator YouTube LinkedIn Facebook


HEX to ASCII converter
Integration solutions with Clearing & Settlement Simulator Amsterdam Office
EMV Tags List Reference
Base24, Alaric, Postilion, Way4
Timisoara Office
and other big platform systems. EMV Simulator
EMV CHIP Terms Definitions
Singapore Asia Partner
ISO8583 Real-Time Feed & Amsterdam Training Center
MAC Calculator
Switch Routing simplified with Analytics
microservices BASE24-EPS tools /
1LINK Automatic Validation BASE24 classic tools Hoogoorddreef 9, 1101 BA Amsterdam
Scale with any cluster service Simulator
for independent services, on Hoogoorddreef 9
any cloud FREE Payments Agrandir le plan

Simulator
License Cookies Policies
Help

Données cartographiques ©2020

Copyright © 2012 neaPay. neaPay Brand, web site data and content, products, training and material are all reserved, under ownership. All Rights Reserved. Content cannot be reproduced without written accord from neaPay.

You might also like