Произошла ошибка входа в систему с использованием "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")

Другие вопросы по тегам