14 апреля, среда 22:02
Bankir.Ru

Объявление

Свернуть
Пока нет объявлений.

Visa, GPO command

Свернуть
X
  • Фильтр
  • Время
  • Показать
Очистить всё
новые сообщения

  • Visa, GPO command

    Добрый день.
    У меня задача прочитать PAN код из карты VISA paywave. Ридер работает в офлайне.
    Застрял на правильном формировании команды GPO(GET PROCESSING OPTIONS).
    Может кто подскажет, как правильно сформировать команду GPO ?

    [Step 1] Select 2PAY.SYS.DDF01 to get the PSE directory
    Send buffer:
    0000: 00 A4 04 00 0E 32 50 41 59 2E 53 59 53 2E 44 …..2PAY.SYS.D
    0010: 44 46 30 31 00 DF01.
    Received buffer:
    0000: 6F 2D 84 0E 32 50 41 59 2E 53 59 53 2E 44 44 46 o-..2PAY.SYS.DDF
    0010: 30 31 A5 1B BF 0C 18 61 16 4F 07 A0 00 00 00 03 01…..a.O……
    0020: 10 10 50 0B 56 49 53 41 20 43 52 45 44 49 54 90 ..P.VISA CREDIT.
    0030: 00 .
    ———————————————————————–
    [Step 2] Now that we know the AID, select the application
    Send buffer:
    0000: 00 A4 04 00 07 A0 00 00 00 03 10 10 00 ………….
    Received buffer:
    0000: 6F 27 84 07 A0 00 00 00 03 10 10 A5 1C 50 0B 56 o’………..P.V
    0010: 49 53 41 20 43 52 45 44 49 54 9F 38 0C 9F 66 04 ISA CREDIT.8..f.
    0020: 9F 02 06 5F 2A 02 9F 37 04 90 00 …_*..7…
    ————————————————————————–
    [Step 3] Send GET PROCESSING OPTIONS command
    Send buffer:
    80 A8 00 00 12 83 10 [4байта ответ на 9F66] [6 байт ответ на 9F02] [2байта ответ на 5F2A] [4байта ответ на 9F37]
    Последний раз редактировалось vitaly121; 21.03.2013, 19:39.

  • #2
    Мне кажется лучше сюда запостить: http://bankir.ru/dom/forums/72-Банко...d-soft-support
    Ну или попросить перенести...

    Комментарий


    • #3
      Перенесите, пожалуйста.

      Комментарий


      • #4
        А в чем затык то?
        Подставьте данные PDOL в команду и вперед.

        Комментарий


        • #5
          Сообщение от mandobass Посмотреть сообщение
          А в чем затык то?
          Подставьте данные PDOL в команду и вперед.
          Проблема у меня заключается в правильном формировании PDOL.
          Насколько я понял, PDOL в моём случае состоит из такого списка байт
          [4байта ответ на 9F66] [6 байт ответ на 9F02] [2байта ответ на 5F2A] [4байта ответ на 9F37]

          9F66 :
          Indicates to the PayPass reader the positions in the discretionary
          data field of the Track 2 Data where the nUN UN digits and tTRACK2 ATC
          digits have to be copied.
          9А02
          Authorized amount of the transaction (excluding adjustments).
          5F2A
          Indicates the currency code of the transaction according to ISO 4217.
          The implied exponent is indicated by the minor unit of currency associated
          with the Transaction Currency Code in ISO 4217.
          9F37
          Value to provide variability and uniqueness to the generation of the
          application cryptogram.

          В ответ на тэг 9F66 надо послать 4 байта. Вопрос как узнать эти 4 байта ?
          В ответ на тэг 9F02 надо послать 6 байта. Вопрос как узнать эти 6 байт ?
          В ответ на тэг 5F2A надо послать 2 байта. Вопрос как узнать эти 2 байта ?
          В ответ на тэг 9F37 надо послать 4 байта. Вопрос как узнать эти 4 байта ?

          Хотелось бы увидеть пример этой команды с подобными полями.
          В интернете пример с такими полями пока не попался.

          Комментарий


          • #6
            тэг 9F66 - квалификаторы транзакции для терминала. В простейшем случае может иметь вид: 86 40 00 00
            тэг 9F02 - сумма транзакции. Если не знаете - подставьте фиктивное значение, например 1000 руб. будет в виде: 00 00 00 10 00 00
            тэг 5F2A - код валюты транзакции. Для рублей будет в виде: 06 43
            тэг 9F37 - случайное число. Подставьте произвольные 4 байта, например: 11 22 33 44

            Комментарий


            • #7
              Сообщение от mandobass Посмотреть сообщение
              тэг 9F66 - квалификаторы транзакции для терминала. В простейшем случае может иметь вид: 86 40 00 00
              тэг 9F02 - сумма транзакции. Если не знаете - подставьте фиктивное значение, например 1000 руб. будет в виде: 00 00 00 10 00 00
              тэг 5F2A - код валюты транзакции. Для рублей будет в виде: 06 43
              тэг 9F37 - случайное число. Подставьте произвольные 4 байта, например: 11 22 33 44
              Спасибо большое ! Проблема решена. А есть ещё какая-нибудь специфичная литература кроме четырёх книг по EMV и Visa Integrated Circuit Card Specification (VIS) ?

              Комментарий


              • #8
                Ещё вопрос. Вот я послал GPO команду. И получил ответ.
                Send GPO
                80 A8 00 00 12 83 10 86 40 00 00 00 00 00 10 00 00 06 43 11 22 33 44 00
                Receive GPO
                80 06 00 80 08 01 01 00 90 00

                Теперь читаю рекорд на который указывает ответ на GPO запрос
                Request
                00 B2 01 0C 00
                Response
                70 31 57 13 43 41 79 50 00 00 01 20 D2 01 22 01 p1W.CAyP... ..".
                13 45 04 64 00 09 1F 5F 20 19 56 49 53 41 20 43 .E.d..._ .VISA C
                4C 20 54 45 53 54 20 43 41 52 44 20 31 20 20 20 L TEST CARD 1
                20 20 20 90 00

                Мне надо достать Public Key Index для SDA. Но в этом рекорде этой информации нет.
                Он находится в другом рекорде. Как узнать в каком рекорде находится Public Key Index для SDA ?

                Комментарий


                • #9
                  Сообщение от vitaly121 Посмотреть сообщение
                  Как узнать в каком рекорде находится Public Key Index для SDA ?
                  Никак. В данном случае карта эмулирует Visa PayWave с профайлом MSD (Magnetic Stripe Data). Здесь нет никакого Public Key Index.
                  Просто одна запись, содержащая эквивалентные данные магнитной полосы.

                  P.S.
                  Можно еще поиграться с тегом 9F66 и посмотреть на реакцию карты. Например, задать такие значения для этого тега:
                  E6 40 00 00
                  C6 40 00 00
                  A6 40 00 00
                  66 40 00 00
                  46 40 00 00
                  26 40 00 00
                  Последний раз редактировалось mandobass; 22.10.2013, 21:42.

                  Комментарий


                  • #10
                    Сообщение от mandobass Посмотреть сообщение
                    P.S.
                    Можно еще поиграться с тегом 9F66 и посмотреть на реакцию карты. Например, задать такие значения для этого тега:
                    E6 40 00 00
                    C6 40 00 00
                    A6 40 00 00
                    66 40 00 00
                    46 40 00 00
                    26 40 00 00
                    Спасибо за помошь, mandobass !
                    Действительно, если подставить ваши примеры значения тэгов 9F66, то GPO ответ поменялся.
                    Как понять какое значение надо подставить для поля 9F66 ?
                    В GPO - ответе начинающегося с тэга 77 не найду поле AFL , или его там действительно нет ?

                    Вот пару примеров

                    Посылка 1
                    Send buffer:
                    80 A8 00 00 12 83 10 C6 40 00 00 00 00 00 10 ........@......
                    00 00 06 43 11 22 33 44 00 ...C."3D.
                    Received buffer:
                    80 06 00 80 08 01 01 00 90 00 ..........


                    Посылка 2
                    Send buffer:
                    80 A8 00 00 12 83 10 26 40 00 00 00 00 00 10 .......&@......
                    00 00 06 43 11 22 33 44 00 ...C."3D.
                    Received buffer:
                    77 3E 9F 10 07 06 01 11 03 A0 00 00 5F 20 02 20 w>.........._ .
                    2F 57 10 43 41 79 50 00 00 01 20 D2 01 22 01 13 /W.CAyP... .."..
                    45 06 83 5F 34 01 05 82 02 20 00 9F 36 02 00 14 E.._4.... ..6...
                    9F 26 08 A3 32 C5 EC 9B E2 8E 18 9F 6C 02 90 00 .&..2.......l...
                    90 00


                    77 Response Message Template Format 2
                    9F10 Issuer Application Data
                    06011103A00000
                    5F20 Cardholder Name
                    /
                    57 Track 2 Equivalent Data
                    4341795000000120
                    D201220113450683
                    5F34 Application Primary Account Number (PAN) Sequence Number
                    05
                    82 Application Interchange Profile
                    2000
                    9F36 Application Transaction Counter (ATC)
                    0015
                    9F26 Application Cryptogram
                    EA67193C57A9FD0A
                    9F6C Unknown tag
                    9000

                    Комментарий


                    • #11
                      Сообщение от vitaly121 Посмотреть сообщение
                      Как понять какое значение надо подставить для поля 9F66 ?
                      Тег 9F66 определяет возможности терминала для работы с различными профайлами карт Visa PayWave. Подставлять надо то значение, которое соответствует возможностям терминального софта.
                      Кстати, какой ответ возвращает GPO, если для тега 9F66 задать значения?:
                      46 40 00 00
                      16 40 00 00

                      Сообщение от vitaly121 Посмотреть сообщение
                      В GPO - ответе начинающегося с тэга 77 не найду поле AFL , или его там действительно нет ?
                      Его там нет, так как значение 26 40 00 00 для тега 9F66 соответствует профайлу qVSDC. Фактически, этот профайл возвращает в ответе на команду GPO все данные, необходимые для транзакции.

                      Сообщение от vitaly121 Посмотреть сообщение
                      9F6C Unknown tag
                      9F6C - это Card Transaction Qualifiers.

                      Комментарий


                      • #12
                        Можно добавить, что AFL отсутствует, поскольку карта приняла решение идти в Online (тип криптограммы ARQC), а для этого все EMV данные уже есть в ответе на GPO.
                        Если бы карта предложила одобрить операцию в offline, то AFL бы появился, чтобы ридер имел возможность сосчитать сертификаты ключей и пр. Попробуйте уменьшить сумму транзакции.

                        Комментарий


                        • #13
                          Вот результаты для
                          46 40 00 00
                          16 40 00 00
                          66 40 00 00

                          Send buffer:
                          0000: 80 A8 00 00 12 83 10 46 40 00 00 00 00 00 10 .......F@......
                          0010: 00 00 06 43 11 22 33 44 00 ...C."3D.
                          Received buffer:
                          0000: 69 84

                          Send buffer:
                          0000: 80 A8 00 00 12 83 10 16 40 00 00 00 00 00 10 .........@......
                          0010: 00 00 06 43 11 22 33 44 00 ...C."3D.
                          Received buffer:
                          0000: 69 84 i.

                          Send buffer:
                          0000: 80 A8 00 00 12 83 10 66 40 00 00 00 00 00 10 .......f@......
                          0010: 00 00 06 43 11 22 33 44 00 ...C."3D.
                          Received buffer:
                          0000: 77 3E 9F 10 07 06 01 11 03 A0 00 00 5F 20 02 20 w>.........._ .
                          0010: 2F 57 10 43 41 79 50 00 00 01 20 D2 01 22 01 13 /W.CAyP... .."..
                          0020: 45 06 83 5F 34 01 05 82 02 20 00 9F 36 02 00 16 E.._4.... ..6...
                          0030: 9F 26 08 F9 7A DC 02 40 28 43 99 9F 6C 02 90 00 .&..z..@(C..l...
                          0040: 90 00


                          77 Response Message Template Format 2
                          9F10 Issuer Application Data
                          06011103A00000
                          5F20 Cardholder Name
                          /
                          57 Track 2 Equivalent Data
                          4341795000000120D201220113450683
                          5F34 Application Primary Account Number (PAN) Sequence Number
                          05
                          82 Application Interchange Profile
                          2000
                          9F36 Application Transaction Counter (ATC)
                          0016
                          9F26 Application Cryptogram
                          F97ADC0240284399
                          9F6C Card Transaction Qualifiers.
                          9000

                          Тоесть пока я получаю 3 типа ответа на GPO
                          1) 80 06 00 80 08 01 01 00 90 00
                          2) 77 3E 9F 10 07 06 01 11 03 A0 00 00 5F 20 02 20
                          2F 57 10 43 41 79 50 00 00 01 20 D2 01 22 01 13
                          45 06 83 5F 34 01 05 82 02 20 00 9F 36 02 00 19
                          9F 26 08 6C 6F 8C 6D C9 88 DF B7 9F 6C 02 90 00
                          90 00
                          отличаются подобные ответы тэгами
                          9F36 Application Transaction Counter (ATC)
                          9F26 Application Cryptogram
                          3) 69 84

                          А где можно посмотреть какие данные могут записываться по тэгу 9F66 ?
                          Мне поставили задачу реализовать SDA и DDA.
                          Я вычитал все тэги карты и нашёл в каком рекорде находится public key index,
                          но не могу понять какой GPO запрос надо сформировать, чтобы карта перешла в режим работы offline.

                          Комментарий


                          • #14
                            Пробовал с картой работать другим ридером (контактным).
                            Так для того же аид ответы на селект отличаются в контактном и бесконтактном ридере.
                            И для контактного ридера вот такой дамп обмена
                            00 A4 04 00 07 A0 00 00 00 03 10 10
                            61 20
                            00 C0 00 00 20
                            6F 1E 84 07 A0 00 00 00 03 10 10 A5 13 50 0B 56 49 53 41 20 43 52 45 44 49 54 9F 38 03 9F 1A 02 90 00
                            80 A8 00 00 04 83 02 08 04
                            61 10
                            00 C0 00 00 10
                            80 0E 3C 00 08 02 02 00 10 01 02 00 18 01 02 01 90 00
                            видно что GPO для контатного ридера вернула три AFL

                            Тоесть я сейчас застрял на том, что карта не хочет работать в offline режиме с бесконтактным ридером.
                            Сумму денег менял до 1.
                            Последний раз редактировалось vitaly121; 24.10.2013, 17:13.

                            Комментарий


                            • #15
                              Сообщение от vitaly121 Посмотреть сообщение
                              А где можно посмотреть какие данные могут записываться по тэгу 9F66 ?
                              Visa Contactless Payment Specification

                              Сообщение от vitaly121 Посмотреть сообщение
                              но не могу понять какой GPO запрос надо сформировать, чтобы карта перешла в режим работы offline.
                              Ваша карта поддерживает два профайла - MSD и qVSDC. Используйте тег 9F66 со значением: 26 40 00 00 или A6 40 00 00
                              Попробуйте задать для тега 5F2A (код валюты транзакции) значение 09 78 (евро) или 08 40 (доллар).
                              Для тега 9F02 (сумма транзакции) задайте один доллар/евро: 00 00 00 00 01 00

                              Ради интереса попробуйте установить тег 9F66 со значением: 28 40 00 00 (offline-терминал).
                              Так же можно попробовать тег 9F66 со значением: 26 00 00 00 или 28 00 00 00 (no CVM required).

                              P.S.
                              Кстати, поодержка SDA для профайла qVSDC убрана из спецификации. Если вы посмотрите AIP:
                              82 Application Interchange Profile
                              2000
                              то увидите, что профайл qVSDC вашей карты поддерживает только DDA.
                              Последний раз редактировалось mandobass; 24.10.2013, 21:37.

                              Комментарий


                              • #16
                                Данные тэга 9F66 можно посмотреть и на сайте EMVCO. Книга Book C-3 Kernel 3 Specification.

                                А стоит ли мучиться именно с этой картой?
                                Если Вы решаете задачу реализации DDA (а точнее для бесконтактной VISA говорить о fDDA), то возьмите карту, которая охотно соглашается на offline. Хотя бы из тестового набора qVSDC. Карта вернет и 9F4B и AFL с сертификатами и Вы сможете реализовать её проверку на подлинность.

                                Комментарий


                                • #17
                                  Сообщение от BAT Посмотреть сообщение
                                  Данные тэга 9F66 можно посмотреть и на сайте EMVCO. Книга Book C-3 Kernel 3 Specification.

                                  А стоит ли мучиться именно с этой картой?
                                  Если Вы решаете задачу реализации DDA (а точнее для бесконтактной VISA говорить о fDDA), то возьмите карту, которая охотно соглашается на offline. Хотя бы из тестового набора qVSDC. Карта вернет и 9F4B и AFL с сертификатами и Вы сможете реализовать её проверку на подлинность.
                                  Карты другой нет. Ребята из Visa нам дала специльную тестовую карту.
                                  А где находится этот тестовый набор qVSDC ?

                                  Комментарий


                                  • #18
                                    Сообщение от mandobass Посмотреть сообщение
                                    Visa Contactless Payment Specification


                                    Ваша карта поддерживает два профайла - MSD и qVSDC. Используйте тег 9F66 со значением: 26 40 00 00 или A6 40 00 00
                                    Попробуйте задать для тега 5F2A (код валюты транзакции) значение 09 78 (евро) или 08 40 (доллар).
                                    Для тега 9F02 (сумма транзакции) задайте один доллар/евро: 00 00 00 00 01 00

                                    Ради интереса попробуйте установить тег 9F66 со значением: 28 40 00 00 (offline-терминал).
                                    Так же можно попробовать тег 9F66 со значением: 26 00 00 00 или 28 00 00 00 (no CVM required).

                                    Если вы посмотрите AIP:
                                    то увидите, что профайл qVSDC вашей карты поддерживает только DDA.
                                    Пробовал менять валюту и её значение, всё тоже самое (онлайн).
                                    Вот один из примеров
                                    Send buffer:
                                    0000: 02 80 A8 00 00 12 83 10 A6 40 00 00 00 00 00 10 .........@......
                                    0010: 00 00 08 40 11 22 33 44 00 ...@."3D.
                                    Received buffer:
                                    0000: 77 3E 9F 10 07 06 01 11 03 A0 00 00 5F 20 02 20 w>.........._ .
                                    0010: 2F 57 10 43 41 79 50 00 00 01 20 D2 01 22 01 13 /W.CAyP... .."..
                                    0020: 45 06 83 5F 34 01 05 82 02 20 00 9F 36 02 00 20 E.._4.... ..6..
                                    0030: 9F 26 08 61 20 0E 89 D8 57 CE 11 9F 6C 02 90 00 .&.a ...W...l...
                                    0040: 90 00

                                    Буду изучать как сделать DDA.

                                    Комментарий


                                    • #19
                                      А вообще какие существуют библиотеки(открытые и комерческие) для работы с EMV протоколом ? Мне приглянулась вот эта библиотечка http://www.openscdp.org/, но исходный код закрыт.

                                      Комментарий


                                      • #20
                                        Сообщение от vitaly121 Посмотреть сообщение
                                        Пробовал менять валюту и её значение, всё тоже самое (онлайн).
                                        Вот один из примеров
                                        Send buffer:
                                        0000: 02 80 A8 00 00 12 83 10 A6 40 00 00 00 00 00 10 .........@......
                                        0010: 00 00 08 40 11 22 33 44 00 ...@."3D.
                                        В вашем примере вы задали сумму транзакции $1000. О каком офлайне можно говорить?
                                        Подставьте сумму транзакции не более $20.

                                        Сообщение от vitaly121 Посмотреть сообщение
                                        А вообще какие существуют библиотеки(открытые и комерческие) для работы с EMV протоколом ?
                                        А для какой программно-аппаратной платформы?

                                        Комментарий


                                        • #21
                                          Сообщение от mandobass Посмотреть сообщение
                                          В вашем примере вы задали сумму транзакции $1000. О каком офлайне можно говорить?
                                          Подставьте сумму транзакции не более $20.
                                          А для какой программно-аппаратной платформы?
                                          Вот для $20 долларов

                                          Send buffer:
                                          0000: 02 80 A8 00 00 12 83 10 A6 40 00 00 00 00 00 00 .........@......
                                          0010: 20 00 08 40 11 22 33 44 00 ..@."3D.
                                          Received buffer:
                                          0000: 77 3E 9F 10 07 06 01 11 03 A0 00 00 5F 20 02 20 w>.........._ .
                                          0010: 2F 57 10 43 41 79 50 00 00 01 20 D2 01 22 01 13 /W.CAyP... .."..
                                          0020: 45 06 83 5F 34 01 05 82 02 20 00 9F 36 02 00 22 E.._4.... ..6.."
                                          0030: 9F 26 08 30 09 F2 F4 6B 79 7D 18 9F 6C 02 90 00 .&.0...ky}..l...
                                          0040: 90 00 ..


                                          77 Response Message Template Format 2
                                          9F10 Issuer Application Data
                                          06011103A00000
                                          5F20 Cardholder Name
                                          /
                                          57 Track 2 Equivalent Data
                                          4341795000000120D201220113450683
                                          5F34 Application Primary Account Number (PAN) Sequence Number
                                          05
                                          82 Application Interchange Profile
                                          2000
                                          9F36 Application Transaction Counter (ATC)
                                          0022
                                          9F26 Application Cryptogram
                                          3009F2F46B797D18
                                          9F6C Unknown tag
                                          9000

                                          А вообще мне надо в перспективе написать программу для осуществления платежей вот для этой железки
                                          http://www.casauto.com.tw/en/in-prod...actless+Reader

                                          Он построен на ARM контроллере. В нём прошита библиотека которая позволяет работать с VISA картами на уровне APDU команд.
                                          Но мне нужны исходники с любым языком и под любую платформу, главное это алгоритм работы с картой. Хорошо когда есть возможность подсмотреть как делается emv card processing

                                          Комментарий


                                          • #22
                                            Сообщение от vitaly121 Посмотреть сообщение
                                            Вот для $20 долларов
                                            Уменьшите сумму транзакции до 10 (чтобы наверняка быть внутри разрешенного диапазона для офлайна).
                                            Используйте для тега 9F66 значение A6 00 00 00 (online, no CVM) или A8 00 00 00 (offline, no CVM), или AA 40 00 00 (offline, sign, CVM).
                                            Попробуйте вместо доллара использовать евро (тег 5F2A = 0978).
                                            Если и после этого ваша карта "не захочет" идти в офлайн, значит ее офлайновые счетчики сброшены в ноль и карта может работать только в онлайне.

                                            Сообщение от vitaly121 Посмотреть сообщение
                                            Но мне нужны исходники с любым языком и под любую платформу, главное это алгоритм работы с картой. Хорошо когда есть возможность подсмотреть как делается emv card processing
                                            Общий алгоритм работы с картой вы можете посмотреть в открытой документации на сайте EMVCo. Если вам надо работать с конкретными бесконтактными приложениями Visa PayWave или MC PayPass, то надо читать спецификации на данные приложения.
                                            Последний раз редактировалось mandobass; 28.10.2013, 18:40.

                                            Комментарий


                                            • #23
                                              Сообщение от mandobass Посмотреть сообщение
                                              Уменьшите сумму транзакции до 10 (чтобы наверняка быть внутри разрешенного диапазона для офлайна).
                                              Используйте для тега 9F66 значение A6 00 00 00 (online, no CVM) или A8 00 00 00 (offline, no CVM), или AA 40 00 00 (offline, sign, CVM).
                                              Попробуйте вместо доллара использовать евро (тег 5F2A = 0978).
                                              Если и после этого ваша карта "не захочет" идти в офлайн, значит ее офлайновые счетчики сброшены в ноль и карта может работать только в онлайне.
                                              Не захотела в офлайн идти.
                                              А можете ткнуть носом (указать номер страницы,) где написано как формировать данные для тэга 9F66. Я так понял это написано в книге №3 ? Хотелось бы понять откуда берутся значения
                                              A6 00 00 00 A8 00 00 00 AA 40 00 00 ?

                                              Комментарий


                                              • #24
                                                Вы можете скачать Book C-3 Kernel 3 Specification по ссылке:
                                                http://www.emvco.com/specifications.aspx?id=21

                                                На странице 124 приведено описание тега 9F66.
                                                Только учитывайте, что описания тега 9F66 в спецификациях EMV и Visa имеют некоторые различия.

                                                Комментарий


                                                • #25
                                                  PCD Get Processing Options
                                                  PCD CLA: 80
                                                  PCD INS: A8
                                                  PCD P1: 00
                                                  PCD P2: 00
                                                  PCD Lc: 12
                                                  PCD Data: 83 10 36 00 00 00 00 00 00 00 01 23 06 43 97 22
                                                  9D 4D
                                                  PCD Le: 00
                                                  PICC Successful
                                                  PICC Data (150 bytes)
                                                  PICC Tag 77:Response Message Template Format 2
                                                  PICC Length:93
                                                  PICC Value :9F 4B 50 6E 9D 34 05 DC 59 B0 3A 3B 49 95 46 12
                                                  5B E6 BC 4F 67 72 73 70 F2 EE 30 03 1E DA 6D 66
                                                  94 E8 8B 7D B9 B0 D8 74 A9 8B B7 1D 09 B2 2D 68
                                                  C4 6F 52 68 B3 F8 46 C5 1D C8 BB 40 56 EA AC AF
                                                  20 22 AB 68 0E A7 11 69 69 B3 CD B0 38 1A 6D D4
                                                  D8 EE 16 94 08 18 01 01 01 10 01 02 00 9F 10 07
                                                  06 01 11 03 90 00 00 57 11 47 61 73 90 01 01 00
                                                  10 D1 01 22 01 11 43 87 80 89 82 02 20 00 9F 36
                                                  02 02 1F 9F 26 08 5C 82 46 20 EF B4 BC BD 9F 6C
                                                  02 10 00
                                                  PICC Tag 9F4B:Signed Dynamic Application Data
                                                  PICC Length:50
                                                  PICC Value :6E 9D 34 05 DC 59 B0 3A 3B 49 95 46 12 5B E6 BC
                                                  4F 67 72 73 70 F2 EE 30 03 1E DA 6D 66 94 E8 8B
                                                  7D B9 B0 D8 74 A9 8B B7 1D 09 B2 2D 68 C4 6F 52
                                                  68 B3 F8 46 C5 1D C8 BB 40 56 EA AC AF 20 22 AB
                                                  68 0E A7 11 69 69 B3 CD B0 38 1A 6D D4 D8 EE 16
                                                  PICC Tag 94:Application File Locator (AFL)
                                                  PICC Length:08
                                                  PICC Value :18 01 01 01 10 01 02 00
                                                  PICC Tag 9F10:Issuer Application Data
                                                  PICC Length:07
                                                  PICC Value :06 01 11 03 90 00 00
                                                  PICC Tag 57:Track 2 Equivalent Data
                                                  PICC Length:11
                                                  PICC Value :47 61 73 90 01 01 00 10 D1 01 22 01 11 43 87 80
                                                  89
                                                  PICC Tag 82:Application Interchange Profile
                                                  PICC Length:02
                                                  PICC Value :20 00
                                                  PICC Tag 9F36:Application Transaction Counter (ATC)
                                                  PICC Length:02
                                                  PICC Value :02 1F
                                                  PICC Tag 9F26:Application Cryptogram (AC)
                                                  PICC Length:08
                                                  PICC Value :5C 82 46 20 EF B4 BC BD
                                                  PICC Tag 9F6C:Application Version Number (Card)
                                                  PICC Length:02
                                                  PICC Value :10 00
                                                  PICC SW1 SW2: 90 00
                                                  PCD Read Record
                                                  PCD CLA: 00
                                                  PCD INS: B2
                                                  PCD P1: 01
                                                  PCD P2: 1C
                                                  PCD Le: 00
                                                  PICC Successful
                                                  PICC Data (18 bytes)
                                                  PICC Tag 70:Application Elementary File (AEF) Data Template
                                                  PICC Length:10
                                                  PICC Value :5A 08 47 61 73 90 01 01 00 10 5F 24 03 10 12 31
                                                  PICC Tag 5A:Application Primary Account Number (PAN)
                                                  PICC Length:08
                                                  PICC Value :47 61 73 90 01 01 00 10
                                                  PICC Tag 5F24:Application Expiration Date
                                                  PICC Length:03
                                                  PICC Value :10 12 31
                                                  PICC SW1 SW2: 90 00
                                                  PCD Read Record
                                                  PCD CLA: 00
                                                  PCD INS: B2
                                                  PCD P1: 01
                                                  PCD P2: 14
                                                  PCD Le: 00
                                                  PICC Successful
                                                  PICC Data (150 bytes)
                                                  PICC Tag 70:Application Elementary File (AEF) Data Template
                                                  PICC Length:93
                                                  PICC Value :90 81 90 61 B5 F7 4B EB 13 5D 31 B7 3A 0B 17 BF
                                                  D8 C5 A3 28 45 CC 08 0F 34 88 DA B1 95 0C 6C 55
                                                  89 C3 13 37 B5 30 08 88 B1 67 C9 F2 83 B7 1C D2
                                                  58 02 4E 32 FC 3E 39 AC F5 60 1C 9E 99 25 FC 61
                                                  58 9D C3 38 FF B4 5C D7 07 43 7D 5F 77 87 2F 46
                                                  EB AB DB 4C 23 01 02 69 DF DE 0B E8 A9 E6 16 53
                                                  8C 8D E5 57 DC 02 AA B3 5B 28 CA DD 38 20 7F A1
                                                  16 68 14 FD 19 E8 03 77 5D 0B A3 EA 3B C2 E4 75
                                                  AD 40 DF AD 2E CA 82 17 E0 CD EF 86 6B 28 44 A4
                                                  6E 6C 6B
                                                  PICC Tag 90:Issuer Public Key Certificate
                                                  PICC Length:90
                                                  PICC Value :61 B5 F7 4B EB 13 5D 31 B7 3A 0B 17 BF D8 C5 A3
                                                  28 45 CC 08 0F 34 88 DA B1 95 0C 6C 55 89 C3 13
                                                  37 B5 30 08 88 B1 67 C9 F2 83 B7 1C D2 58 02 4E
                                                  32 FC 3E 39 AC F5 60 1C 9E 99 25 FC 61 58 9D C3
                                                  38 FF B4 5C D7 07 43 7D 5F 77 87 2F 46 EB AB DB
                                                  4C 23 01 02 69 DF DE 0B E8 A9 E6 16 53 8C 8D E5
                                                  57 DC 02 AA B3 5B 28 CA DD 38 20 7F A1 16 68 14
                                                  FD 19 E8 03 77 5D 0B A3 EA 3B C2 E4 75 AD 40 DF
                                                  AD 2E CA 82 17 E0 CD EF 86 6B 28 44 A4 6E 6C 6B
                                                  PICC SW1 SW2: 90 00
                                                  PCD Read Record
                                                  PCD CLA: 00
                                                  PCD INS: B2
                                                  PCD P1: 02
                                                  PCD P2: 14
                                                  PCD Le: 00
                                                  PICC Successful
                                                  PICC Data (180 bytes)
                                                  PICC Tag 70:Application Elementary File (AEF) Data Template
                                                  PICC Length:B1
                                                  PICC Value :8F 01 95 92 14 A2 EF A5 CB F0 2C C4 7D 47 83 3B
                                                  B7 B2 7E CC 69 62 38 5A 4B 5F 34 01 01 9F 32 01
                                                  03 9F 46 81 80 19 C7 61 83 41 0F A8 6A 1B 93 7F
                                                  DD 37 EF 24 4F 42 55 FC 02 B4 91 34 19 9B C2 0B
                                                  39 FF B2 D7 07 0D E3 77 51 6D 17 F3 31 AF D3 8A
                                                  0F 77 5B 6B 5E 6F 2B 66 24 16 89 2C 81 6E 92 63
                                                  8E 17 35 5D D2 A1 61 CC EB 7A 66 A5 6F 22 D4 07
                                                  F8 D0 44 BE 66 A9 C3 C9 41 2C BB 5D 76 5A 1A 0C
                                                  13 CC 9A 72 F6 6A 57 FE 14 E2 20 A1 6D 5B A8 57
                                                  5A 29 35 1D 11 12 32 A4 0D B7 75 89 B0 40 5D 92
                                                  9E 15 9E 3F BE 9F 47 01 03 9F 69 05 01 13 BD 60
                                                  39
                                                  PICC Tag 8F:Certification Authority Public Key Index
                                                  PICC Length:01
                                                  PICC Value :95
                                                  PICC Tag 92:Issuer Public Key Remainderer
                                                  PICC Length:14
                                                  PICC Value :A2 EF A5 CB F0 2C C4 7D 47 83 3B B7 B2 7E CC 69
                                                  62 38 5A 4B
                                                  PICC Tag 5F34:Application PAN Sequence Number
                                                  PICC Length:01
                                                  PICC Value :01
                                                  PICC Tag 9F32:Issuer Public Key Exponent
                                                  PICC Length:01
                                                  PICC Value :03
                                                  PICC Tag 9F46:ICC Public Key Certificate
                                                  PICC Length:80
                                                  PICC Value :19 C7 61 83 41 0F A8 6A 1B 93 7F DD 37 EF 24 4F
                                                  42 55 FC 02 B4 91 34 19 9B C2 0B 39 FF B2 D7 07
                                                  0D E3 77 51 6D 17 F3 31 AF D3 8A 0F 77 5B 6B 5E
                                                  6F 2B 66 24 16 89 2C 81 6E 92 63 8E 17 35 5D D2
                                                  A1 61 CC EB 7A 66 A5 6F 22 D4 07 F8 D0 44 BE 66
                                                  A9 C3 C9 41 2C BB 5D 76 5A 1A 0C 13 CC 9A 72 F6
                                                  6A 57 FE 14 E2 20 A1 6D 5B A8 57 5A 29 35 1D 11
                                                  12 32 A4 0D B7 75 89 B0 40 5D 92 9E 15 9E 3F BE
                                                  PICC Tag 9F47:ICC Public Key Exponent
                                                  PICC Length:01
                                                  PICC Value :03
                                                  PICC Tag 9F69:Unknown
                                                  PICC Length:05
                                                  PICC Value :01 13 BD 60 39
                                                  PICC SW1 SW2: 90 00

                                                  Комментарий


                                                  • #26
                                                    Для проверки алгоритма DDA, если нет карты, можно использовать уже готовый лог.
                                                    В этом логе (предыдущее сообщение), хоть начало и не влезло, проверка fDDA выполняется успешно, в чем нетрудно убедиться вручную.

                                                    Комментарий


                                                    • #27
                                                      Спасибо, буду изучать.

                                                      Комментарий


                                                      • #28
                                                        Заодно, для контроля, размещу декриптованные значения сертификатов и подписанного DDA:

                                                        Decrypted Tag 90:Issuer Public Key Certificate:
                                                        6A 02 47 61 73 FF 12 13 00 19 7B 01 01 80 01 BE
                                                        ED 0D 6A 8D AC 95 07 15 40 85 6B 8F 13 03 85 BF
                                                        FF A8 45 1F 15 E1 67 6E DE DD F1 AB BF FD E4 B9
                                                        6E 6E BD 51 45 F3 14 DB 60 6F 44 BD 84 8C B3 8D
                                                        C5 00 43 1C 6A 82 B0 A7 0D CC D5 BC B6 E6 A9 14
                                                        9C FB 8E B5 3F 52 AA D4 7D 12 A8 00 C5 5D 79 FC
                                                        EF F7 48 56 99 AB 61 2F F3 34 15 8B 64 3D 1E AF
                                                        2E A7 84 AC 20 53 03 C9 0E 74 5E 41 81 11 E4 F1
                                                        87 FE 62 24 9E FE 9E D3 B1 83 50 25 2C 1F 00 BC

                                                        Decrypted Tag 9F46:ICC Public Key Certificate:
                                                        6A 04 47 61 73 90 01 01 00 10 FF FF 12 10 11 22
                                                        33 01 01 50 01 BA EA BC BC 2F BF 5B 2A D6 65 F3
                                                        01 13 23 4D 51 49 4D 6A F9 8B 68 D7 17 23 B7 CC
                                                        31 41 46 44 3D 92 F6 9C CF F6 88 1F A3 6D 9D C0
                                                        6B 14 2C D4 F9 11 3B FC 01 B6 48 13 C9 DE E7 BF
                                                        ED 0A 51 1F 80 BE DE 13 E7 11 65 41 EB 08 6D A0
                                                        2E 7D 6C 07 9D BB BB BB BB BB BB 98 2D 54 8A 3B
                                                        FC 71 6E 9F 12 FF 1E 74 B7 20 3B E9 A9 6D 81 BC

                                                        Decrypted Tag 9F4B:Signed Dynamic Application Data:
                                                        6A 05 01 03 02 02 1F BB BB BB BB BB BB BB BB BB
                                                        BB BB BB BB BB BB BB BB BB BB BB BB BB BB BB BB
                                                        BB BB BB BB BB BB BB BB BB BB BB BB BB BB BB BB
                                                        BB BB BB BB BB BB BB BB BB BB BB E8 E9 DA 84 E2
                                                        3C AD EB 7D BC D3 16 A1 0A 1E 75 64 F3 06 F1 BC

                                                        Комментарий


                                                        • #29
                                                          Кстати, данная карта приему не подлежит. И не только по причине Expiration Date.

                                                          Комментарий


                                                          • #30
                                                            Лог дан только как пример для проверки алгоритма fDDA.
                                                            И, наконец, выполнение fDDA должно завершиться сравнением рассчитанного и декриптованного HASH.

                                                            Для расчета HASH имеем данные

                                                            05010302021FBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB97229D4D00000000012306430113BD6039

                                                            e8e9da84e23cadeb7dbcd316a10a1e7564f306f1 - рассчитанный по алгоритму SHA1
                                                            e8e9da84e23cadeb7dbcd316a10a1e7564f306f1 - Decrypted Tag 9F4B

                                                            Совпали - fDDA Correct!!!

                                                            Комментарий

                                                            Обработка...
                                                            X