Разблокировать PIN-код SmartCard через Java (SunPKCS11)

Я пытаюсь разблокировать или изменить пин-код на токенах смарт-карт через Java. Написание и чтение сертификатов смарт-карт через SunPKCS11-Wrapper не представляет особой проблемы, но я не вижу никаких методов C_setPIN или C_initPIN в классе PKCS11-wrapper.

Так есть ли способ разблокировать контакт смарт-карты с помощью SunPKCS11-Wrapper?

1 ответ

Поставщик Sun PKCS#11 не очень подходит для этого. Но он был реализован поверх оболочки с открытым исходным кодом от IAIK, которая может содержать то, что вы ищете, см. Ссылку на Session.setPIN (). Обратите внимание, что ссылка непосредственно на sun.* пакет сильно не одобряется, хотя Session класс, скорее всего, где-то спрятан.

Разблокировка PIN-кода с помощью оболочки IAIK PKCS11:

  1. Войдите в "сеанс безопасности" с помощью PUK-кода.
    Session session = token.openSession(Token.SessionType.SERIAL_SESSION, Token.SessionReadWriteBehavior.RW_SESSION, null, null);
    session.login(Session.UserType.SO, puk.toCharArray());
  1. Инициализация нового ПИН-кода
    session.initPIN(newPin.toCharArray());
Другие вопросы по тегам