我正在尝试使用智能卡读卡器与卡通信,我正在使用Jaccal从我的Java SE应用程序执行此操作。我遇到的问题是,即使我非常确定我的VERIFY命令是正确的(脱机PIN)我仍然得到状态字= 69 85(使用条件不满意)。所以我的命令看起来像这样。
验证命令:
00 20 00 80 08 24 94 94 FF FF FF FF FF
PIN码是9494,因为这是一张我不介意透露密码的测试卡。
此致 维克
答案 0 :(得分:2)
状态字= 69 85在EMV 4.3 book 3, section '6.3.5 Coding of the Status Bytes'
中被定义为“不允许命令”(如您所述,“使用条件不满足”)在您的应用程序和卡之间提供整个EMV对话框有助于排除故障,但以下是一些可能发生此问题的常见情况:
“在读取应用程序数据之后和完成终端操作分析之前,可以随时执行此功能。”
要验证您是否遵守VERIFY命令执行顺序,以下是典型执行顺序的示例:
要检查您的卡是否支持脱机PIN码验证:
答案 1 :(得分:0)
使用verify命令的正确顺序如下
选择付款申请
00A4040007A000000003101000
(or 00A4040007A000000004101000, or whatever application you want to use)
获取处理选项
80A8000002830000
(possibly with adapted data objects according to PDOL)
(可选)检查当前的PIN尝试计数器
80CA9F1700
验证PIN码(如果卡支持使用纯文本PIN验证)
002000800824xxxxFFFFFFFFFF
(where xxxx is a 4 digit PIN)
如发现,只接受一个PIN VERIFY命令。