How do I interpret the response from GETTING HANDLING OPTIONS?

I am communicating with a Visa Electron debit card through an ACR reader and I am getting the following response from the team GET PROCESSING OPTIONS

:

80 0A 1C 00 08 01 03 00 10 01 01 00 90 00

      

How to interpret this answer when there is no AFL (Application File Locator) or AIP (Application Interchange Profile)? Here's the complete message log:

SELECT PSEv2: 00 A4 04 00 0E 32 50 41 59 2E 53 59 53 2E 44 44 46 30 31 00
SELECT PSEv2 returned: 6A82 - Wrong parameter(s) P1 P2; file not found

SELECT PSEv1: 00 A4 04 00 0E 31 50 41 59 2E 53 59 53 2E 44 44 46 30 31 00
SELECT PSEv1 returned: 6A82 - Wrong parameter(s) P1 P2; file not found

SELECT ADF: 00 A4 04 00 07 A0 00 00 01 52 30 10 00
SELECT ADF returned: 6A82 - Wrong parameter(s) P1 P2; file not found

SELECT ADF: 00 A4 04 00 07 A0 00 00 00 03 10 10 00
SELECT ADF returned: 6A82 - Wrong parameter(s) P1 P2; file not found

SELECT ADF: 00 A4 04 00 07 A0 00 00 00 03 20 10 00
SELECT ADF returned: 6F 2C 84 07 A0 00 00 00 03 20 10 A5 21 50 0D 56 49 53 41 20 45 4C 45 43 54 52 4F 4E 87 01 01 5F 2D 04 62 67 65 6E BF 0C 05 9F 4D 02 0B 0A 90 00

SELECT ADF: 00 A4 04 00 05 A0 00 00 00 25 00
SELECT ADF returned: 6A82 - Wrong parameter(s) P1 P2; file not found

SELECT ADF: 00 A4 04 00 07 A0 00 00 00 04 10 10 00
SELECT ADF returned: 6A82 - Wrong parameter(s) P1 P2; file not found

SELECT ADF: 00 A4 04 00 07 A0 00 00 00 03 20 10 00
SELECT ADF returned: 6F 2C 84 07 A0 00 00 00 03 20 10 A5 21 50 0D 56 49 53 41 20 45 4C 45 43 54 52 4F 4E 87 01 01 5F 2D 04 62 67 65 6E BF 0C 05 9F 4D 02 0B 0A 90 00

GET PROCESSING OPTIONS: 80 A8 00 00 02 83 00 00
GET PROCESSING OPTIONS returned: 80 0A 1C 00 08 01 03 00 10 01 01 00 90 00

      

Thank you so much!

+3


source to share


1 answer


The EMV specification can help you in detail. The response contains only tags 0x82 and 0x94 values without the tag and length parts.

In the response, Get the processing parameter (GPO) BER-TLV . In your example: in tag 0x80 "Template, response response format 1" packed tag 0x82 "EMV, application exchange profile (AIP)" 2 bytes and the remainder Tag 0x94 "EMV, Application Locator (AFL)".



Here are the results with EMV APDU command / response parser

> 80 A8 00 00 02 83 00 00
< 80 0A 1C 00 08 01 03 00 10 01 01 00 90 00

A8: # EMV, Get Processing Options
- rq:#"80A8000002830000" # ISO 7816-3, Case 4
  - CLA: "80" # Class byte
  - INS: "A8" # Instruction
  - P1P2: "0000" # Parameters 1 and 2
  - LcData:#"028300"
    - len: "02" # .
    - val:#"8300" # .
      - RFU: "8300" # Authorisation Cryptogram RFU
  - Le: "00" # .
- rs:#"800A1C0008010300100101009000" # Response
  - SW1SW2:#"9000" # Status byte 1 and 2
    - SW1: "90" # Status byte 1 // Normal processing
    - SW2: "00" # Status byte 2
  - DATA:#"800A1C000801030010010100" # .
    - x80:#"800A1C000801030010010100"
      - tag: "80"
      - len: "0A" #  // 10
      - val:#"1C000801030010010100" # Template, Response Message Format 1.
        - x82:#"1C00" # EMV, Application Interchange Profile (AIP)
          - val:#"1C00" # Application Interchange Profile (AIP).
            - B01: "1C"
              # ___1____ - bit 5, Cardholder verification is supported
              # ____1___ - bit 4, Terminal Risk Management is to be performed
              # _____1__ - bit 3, Issuer Authentication is supported
            - B02: "00" # RFU
        - x94:#"0801030010010100" # EMV, Application File Locator (AFL)
          - val:#"0801030010010100" # Application File Locator (AFL).
            - S1:#"08010300" # AFL Record
              - B01: "08" # SFI [xxxxx___] // 1
              - B02: "01" # From record // 1
              - B03: "03" # To record // 3
              - B04: "00" # First hashed
            - S2:#"10010100" # AFL Record
              - B01: "10" # SFI [xxxxx___] // 2
              - B02: "01" # From record // 1
              - B03: "01" # To record // 1
              - B04: "00" # First hashed

      

+2


source







All Articles