我正在玩雅典娜 IDProtect v2 令牌来自 NXP(与 IDProtect Laser 产品线兼容)在 Windows 10 Pro(x64 德语)上的产品。
安装 Athena 客户端中间件 7.10.00 (x64) 后 - 设置和不设置Athena CSP 提供商作为 Windows 的默认设置 - 格式化令牌后,我可以从Pkcs11管理员工具以及 OpenSCpkcs11 工具。
使用的库C:\Windows\System32\asepkcs.dll
来自ASE Cryptoki 3.1。
C_Login
PKCS#11 函数似乎会弹出“选择智能卡对话框” ,无论我是否有一个或多个读取器,都会发生这种情况。这种情况发生在多个 PKCS11 客户端(包括 Java keytool)中:
抱歉,德语中的信息是“无法执行请求的操作或需要另一张智能卡”。
PKCS11Admin 工具中的 PKCS11 Spy Log 最能说明问题。它C_Login
一直挂起,直到我在对话框中按下“取消”,然后返回CKR_OK:
0x00000274 : 0x00001494 : Calling C_OpenSession
0x00000274 : 0x00001494 : Input
0x00000274 : 0x00001494 : slotID: 0
0x00000274 : 0x00001494 : flags: 6
0x00000274 : 0x00001494 : CKF_RW_SESSION: TRUE
0x00000274 : 0x00001494 : CKF_SERIAL_SESSION: TRUE
0x00000274 : 0x00001494 : pApplication: 0000000000000000
0x00000274 : 0x00001494 : Notify: 0000000000000000
0x00000274 : 0x00001494 : phSession: 0000004AD91FD370
0x00000274 : 0x00001494 : *phSession: 3642741616
0x00000274 : 0x00001494 : Output
0x00000274 : 0x00001494 : phSession: 0000004AD91FD370
0x00000274 : 0x00001494 : *phSession: 1
0x00000274 : 0x00001494 : Returning 0 (CKR_OK)
0x00000274 : 0x00001494 : *********************** 2017-06-03 21:24:14 ***
0x00000274 : 0x00001494 : Calling C_Login
0x00000274 : 0x00001494 : Input
0x00000274 : 0x00001494 : hSession: 1
0x00000274 : 0x00001494 : userType: 1 (CKU_USER)
0x00000274 : 0x00001494 : pPin: 00000236C5779128
0x00000274 : 0x00001494 : *pPin: *** Intentionally hidden ***
0x00000274 : 0x00001494 : ulPinLen: 8
... <here it hangs till I cancel the dialog> ...
0x00000274 : 0x00001494 : Returning 0 (CKR_OK)
0x00000274 : 0x00000d38 : ********************** 2017-06-03 21:26:24 ***
0x00000274 : 0x00000d38 : Calling C_GetSlotInfo
0x00000274 : 0x00000d38 : Input
0x00000274 : 0x00000d38 : slotID: 0
0x00000274 : 0x00000d38 : pInfo: 0000004AEBE7E630
0x00000274 : 0x00000d38 : Output
0x00000274 : 0x00000d38 : pInfo: 0000004AEBE7E630
0x00000274 : 0x00000d38 : slotDescription: Athena IDProtect Key v2 0
0x00000274 : 0x00000d38 : manufacturerID: Athena
0x00000274 : 0x00000d38 : flags: 7
0x00000274 : 0x00000d38 : CKF_TOKEN_PRESENT: TRUE
0x00000274 : 0x00000d38 : CKF_REMOVABLE_DEVICE: TRUE
0x00000274 : 0x00000d38 : CKF_HW_SLOT: TRUE
0x00000274 : 0x00000d38 : hardwareVersion:
0x00000274 : 0x00000d38 : major: 1
0x00000274 : 0x00000d38 : minor: 0
0x00000274 : 0x00000d38 : firmwareVersion:
0x00000274 : 0x00000d38 : major: 1
0x00000274 : 0x00000d38 : minor: 0
0x00000274 : 0x00000d38 : Returning 0 (CKR_OK)
我注意到当我使用certutil.exe -SCInfo
它时有同样的问题,但可以通过以下方式抑制-silent
(但我认为 certutil 没有使用 PKCS#11,而是直接使用 CNG 驱动程序。在 Certutil 中,它同时发生在Microsoft 基卡驱动程序以及雅典娜卡驱动程序)。
顺便说一句:只有 certutil 和 Windows 弹出窗口将此卡命名为“CJCOP3”,配置文件中提供了其他名称。
知道那是什么吗?
答案1
我从我选择的加密货币经销商那里得到了答案(感谢 cryptoshop.com)。这是最新的 Athena Middleware 客户端的已知限制,通过删除以下注册表项,有助于从框架中删除这些智能卡:
HKLM\SOFTWARE\Microsoft\Cryptography\Calais\SmartCards\CJCOP3
HKLM\SOFTWARE\Wow6432Node\Microsoft\Cryptography\Calais\SmartCards\CJCOP3