Произошла ошибка входа в систему с использованием "cryptoki.dll" с использованием библиотеки Pkcs11.
static Module pkcs11Module = Module.getInstance(@"C:\Program Files (x86)\SafeNet\Protect Toolkit 5\Protect Toolkit C SDK\bin\sw\cryptoki.dll");
public HsmManager()
{
try
{
pkcs11Module.initialize(null);
Slot[] terminals = pkcs11Module.getSlotList(true);
Slot s;
Token token = terminals[0].Token;
Session session = token.openSession(false, false, null, null);
char[] pass = new char[] { '1', '2', '3', '4' };
session.login(true, pass);}}
Я делаю процесс запечатывания с помощью устройства hsm в C# с библиотекой pkcs11 (без использования какой-либо другой библиотеки). Сообщение об ошибке: Сообщение ="CKR_USER_PIN_NOT_INITIALIZED " Что не так? Спасибо
1 ответ
Я ничего не знаю о криптоки, но постараюсь ответить:
Взгляните на стандарт PKCS#11.
CKR_USER_PIN_NOT_INITIALIZED: Это значение может быть возвращено только C_Login. Это указывает на то, что PIN-код обычного пользователя еще не был инициализирован с помощью C_InitPIN.
Другими словами, ваш токен не имеет PIN-кода.
Попробуйте инициализировать ПИН-код или попробуйте отправить нулевой ПИН-код при входе в систему (возможно, "есть какой-то способ аутентификации пользователя на токене без того, чтобы приложение отправляло ПИН через библиотеку Cryptoki")