首页 > 解决方案 > PKCS#11 智能卡令牌的最大尝试次数

问题描述

我的任务是查找输入 PKCS#11 智能卡令牌 PIN 码的最大尝试次数。我已经知道这里提到的 CK_TOKEN_INFO/TokenInfo 中的标志,即 CKF_USER_PIN_COUNT_LOW、CKF_USER_PIN_FINAL_TRY、CKF_USER_PIN_LOCKED。但不知何故,我的主管坚持认为智能卡内部的某个地方包含有关输入 PIN 的最大尝试次数的信息。

真的是里面的某个地方吗?

标签: smartcardpkcs#11

解决方案


当然:卡中的每个 PIN 对象都有各自的错误计数器。否则,一旦涉及多个客户端,就无法确保在给定次数的错误尝试后 PIN 确实会阻塞。

(PKCS 只是将通用命令转换为相应卡类型的特殊命令的附加层。)

问题是,以标准化方式提取错误计数器的方法几乎没有。这取决于卡类型及其配置之一。最好的机会是发送VERIFY带有错误 PIN 数据的命令并查找“63 Cn”状态代码,其中 n 表示剩余的尝试次数。然而,在最坏的情况下,如果还有一次或多次尝试,则卡会响应“63 00”,如果 PIN 被阻止,则卡会响应“69 83”。有关详细信息,您必须参阅智能卡操作系统手册。


推荐阅读