EMV - 无法从CDOL1生成AC命令

时间:2015-05-28 07:21:21

标签: smartcard apdu emv

我已成功检索到

的CDOL1
9F02 06 - Authorised amount of the transaction (excluding adjustments)
9F03 06 - Secondary amount associated with the transaction representing a cashback amount
9F1A 02 - the country of the terminal
95   05 - Status of the different functions as seen from the terminal
5F2A 02 - the currency code of the transaction
9A   03 - Local date that the transaction was authorised
9C   01 - the type of financial transaction 
9F37 04 - Value to provide variability and uniqueness to the generation of a cryptogram

如何根据此CDOL1创建Generate AC命令?

1 个答案:

答案 0 :(得分:4)

基于CDOL1,您接下来将组装CDOL1相关数据(即CDOL1中标签引用的数据对象值列表):

[9F02 06   (Amount, authorized, numeric)]:   000000001000 (that's 1.00)
[9F03 06   (Amount, other, numeric)]:        000000000000 (that's 0.00)
[9F1A 02   (Terminal country code)]:         0040 (Austria)
[95 05     (Terminal verification results)]: 0000000000 (or whatever TVR you need)
[5F2A 02   (Transaction currency code)]:     0978 (Euro)
[9A 03     (Transaction date)]:              150528 (2015-05-28)
[9C 01     (Transaction type)]:              00 (whatever transaction type need)
[9F37 04   (Unpredictable number)]:          12345678

然后,您将该数据包装到GENERATE AC命令APDU的DATA字段中:

80 AE 5000 1D 000000001000 000000000000 0040 0000000000 0978 150528 00 12345678 00

作为对此的回应,您将获得一个包含在标记77(格式2)中的响应消息数据字段,该字段由多个数据对象组成。例如。如果没有执行CDA,则可能如下所示:

77 xx
  [Cryptogram Information Data]     9F27 01 80
  [Application Transaction Counter] 9F36 02 001B
  [Application Cryptogram]          9F26 08 B31B2D16 69860BD5
  [Issuer Application Data]         9F10 yy ...
9000 [SW: success]

或者,您也可以获取包含在标记80(格式1)中的响应消息数据字段。在这种情况下,该值是隐式数据对象的连接列表(标记+长度字段不存在):

80 xx
  [9F27 01 (Cryptogram Information Data)]:     80
  [9F36 02 (Application Transaction Counter)]: 001B
  [9F26 08 (Application Cryptogram)]:          9F26 08 B31B2D16 69860BD5
  [9F10 yy (Issuer Application Data)]:         ...
9000 [SW: success]