简单的问题,但我不知道如何解锁 USB 令牌(epass2003),我尝试阅读 PKCS 11 但不知道如何实现 C_Login 函数以在 c 中执行,当我使用命令行工具(Linux)时那个令牌是否工作得很好但是c它不工作我使用用户类型作为CKU_USER,任何人都可以知道这件事,请帮助
问问题
3735 次
2 回答
0
您必须检查 PKCS 函数的返回值以查看是否有任何错误。试试这个方法,看看会发生什么。如果 C_login() 的返回码是 CKR_PIN_LOCKED,那么很明显你应该解锁你的卡。
CK_RV ret;
ret = C_OpenSession(slot, CKF_SERIAL_SESSION, NULL_PTR, NULL_PTR, &session);
if (ret != CKR_OK){
error_message(ret);
return;
}
readPIN("Intro PIN: ", pin, 4);
ret = (f_C_Login)(hSession,CKU_USER, (unsigned char *) pin,strlen(pin));
if (ret != CKR_OK){
closeSessions(slot);
error_message(ret);
return;
}
于 2013-01-29T10:04:51.720 回答
0
A token can get locked due to a certain number of failed login (for TrustKey it is 10). There are provider specific utilities to unlock tokens. You could check Feitian site. There is some pointer to this kind of problem in Gooze forum (though not exactly). Your problem looks quite like a token lock problem.
于 2014-07-28T08:52:45.523 回答