简体   繁体   English

EMV - 无法从 CDOL1 生成 AC 命令

[英]EMV - Unable to Generate AC command from CDOL1

I have successfully retrieved CDOL1 which is我已经成功检索到 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

How do I create the Generate AC command based on this CDOL1?如何基于此 CDOL1 创建 Generate AC 命令?

Based on CDOL1 you would next assemble the CDOL1 related data (ie a list of the data object values referenced by the tags in CDOL1):基于 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

You would then wrap that data into the DATA field of the GENERATE AC command APDU:然后将该数据包装到 GENERATE AC 命令 APDU 的 DATA 字段中:

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

In response to this, you would either get a response message data field wrapped in tag 77 (format 2) that consists of several data objects.作为响应,您将获得一个包含在标签 77(格式 2)中的响应消息数据字段,该字段由多个数据对象组成。 Eg if no CDA is performed, this could look like:例如,如果没有执行 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]

Alternatively you could also get response message data field wrapped in tag 80 (format 1).或者,您还可以获得包装在标签 80(格式 1)中的响应消息数据字段。 In that case, the value is a concatenated list of implicit data objects (tag + length fields are not present):在这种情况下,该值是隐式数据对象的串联列表(不存在标签 + 长度字段):

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]

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM