基于 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]