Режимы работы

Набор доступных функций и возможность доступа к закрытым объектам в памяти поддерживаемого библиотекой устройства зависят от текущего режима работы.

Библиотека jcPKCS11-2 может работать в трёх режимах:

Основным режимом работы устройства является режим пользователя.

По умолчанию работа идет в гостевом режиме, не требующем введения PIN-кода. Объекты, доступные в этом режиме, называются открытыми. Открытые объекты доступны и в остальных режимах. Закрытые объекты доступны только в режиме пользователя.

Для включения режима пользователя необходимо предъявить PIN-код пользователя, а для включения режима администратора – PIN-код администратора (см. C_Login()).

Для защиты от несанкционированного доступа в JaCarta предусмотрены счётчики, регистрирующие количество последовательно введённых неверных значений PIN-кода. При достижении максимально допустимого числа неудачных попыток ввода (до 15-ти), PIN-код блокируется и соответствующий ему режим становится недоступным. PIN-код пользователя может быть разблокирован (см. Разблокирование PIN-кода пользователя).

Режим гостя

В гостевом режиме доступны функции, не связанные с обращением к закрытым объектам и выполнением криптографических преобразований.

Режим гостя обычно используется для получения общей информации об электронном ключе (см. C_GetTokenInfo()) и для чтения открытых объектов, например, сертификатов (см. C_GetAttributeValue()).

Режим пользователя

В режиме пользователя доступны основные функции библиотеки, а также операции с открытыми и закрытыми объектами и с PIN-кодом пользователя.

Для работы в режиме пользователя необходимо предъявить PIN-код пользователя (см. C_Login()). При этом PIN-код пользователя должен быть инициализирован администратором.

Режим администратора

Режим администратора используется для выполнения следующих административных функций:

Инициализация апплета

Апплет Криптотокен 2 ЭП

Инициализация апплета предполагает:
  • удаление хранящихся в памяти объектов (повторное создание файловой системы);
  • удаление значения PIN-кода пользователя.

Согласно правилам пользования сертифицированного устройства JaCarta-2 ГОСТ данная операция должна выполняться с использованием ПО «АРМ администратора безопасности JaCarta-2 ГОСТ».

Для облегчения процесса интеграции JaCarta-2 ГОСТ в прикладное ПО в ходе работ по разработке и тестированию допускается использовать облегчённую версию этого АРМа – «АРМ разработчика JaCarta-2 ГОСТ», входящего в состав комплекта разработчика JaCarta-2 SDK.

Все апплеты, кроме Криптотокен 2 ЭП

Инициализация апплета предполагает:
  • удаление хранящихся в памяти объектов (повторное создание файловой системы);
  • удаление значения PIN-кода пользователя;
  • сохранение значения PIN-кода администратора.

В момент инициализации устройству присваивается метка – строковое значение, используемое для идентификации устройства. Подробнее об инициализации см. C_InitToken().

Примечание

Инициализация апплета недоступна при заблокированном PIN-коде администратора. Исключение составляют модели токенов JaCarta с апплетом Laser. Для этих моделей доступна инициализация апплета Laser без знания PIN-кода администратора и/или когда он заблокирован.

Для работы с устройством после инициализации необходимо выполнить инициализацию PIN-кода пользователя.

Инициализация PIN-кода пользователя

Криптотокен 2 ЭП

Согласно правилам пользования сертифицированного устройства JaCarta-2 ГОСТ данная операция должна выполняться с использованием ПО «АРМ администратора безопасности JaCarta-2 ГОСТ».

Для облегчения процесса интеграции JaCarta-2 ГОСТ в прикладное ПО в ходе работ по разработке и тестированию допускается использовать облегчённую версию этого АРМа – «АРМ разработчика JaCarta-2 ГОСТ», входящего в состав комплекта разработчика JaCarta-2 SDK.

Все апплеты, кроме Криптотокен 2 ЭП

Инициализация PIN-кода пользователя – это назначение администратором PIN-кода пользователя после инициализации апплета. Операция осуществляется только в режиме администратора (см. C_InitPIN()).

Разблокирование PIN-кода пользователя

PIN-код пользователя блокируется, когда превышается число допустимых попыток его ввода (до 10 или 15, в зависимости от апплета).

Апплет Криптотокен 2 ЭП

Для апплета Криптотокен 2 ЭП предусмотрено несколько вариантов разблокировки PIN-кода пользователя:

  • С помощью PUK-кода. Необходимо предъявить PUK-код с типом пользователя CKU_PUK (см. C_Login()). При этом будет сброшен счетчик неудачных попыток ввода PIN-кода пользователя, а его значение останется прежним. Задание и разблокировка PUK-кода осуществляется при помощи ПО «АРМ администратора безопасности JaCarta-2 ГОСТ» или «АРМ разработчика JaCarta-2 ГОСТ»;

  • С помощью механизма Challenge – Response. Последовательность разблокировки:

    1. Создать запрос (challenge) на стороне Пользователя с помощью функции JC_KT2_CreateUnlockChallenge().

    2. Сформировать ответ (response) на стороне Администратора.

      Примечание

      Согласно правилам пользования сертифицированного устройства JaCarta-2 ГОСТ данная операция должна выполняться с использованием ПО «АРМ администратора безопасности JaCarta-2 ГОСТ».
      Для облегчения процесса интеграции JaCarta-2 ГОСТ в прикладное ПО в ходе работ по разработке и тестированию допускается использовать облегчённую версию этого АРМа – «АРМ разработчика JaCarta-2 ГОСТ», входящего в состав комплекта разработчика JaCarta-2 SDK.
    3. Разблокировать Криптотокен 2 ЭП с помощью сформированного ответа вызвав функцию JC_KT2_UnlockWithResponse().

  • С помощью ПО «АРМ администратора безопасности JaCarta-2 ГОСТ» или «АРМ разработчика JaCarta-2 ГОСТ».

Апплет Laser

Для разблокировки апплета Laser необходимо из под администратора вызвать функцию JC_PKI_UnlockUserPIN().

Апплеты Криптотокен и Datastore

Для апплетов Криптотокен и Datastore необходимо предъявить PIN-код администратора (см. C_Login()). При этом будет сброшен счетчик неудачных попыток ввода PIN-кода пользователя, а его значение останется прежним.

Разблокирование PIN-кода администратора

Разблокирование PIN-кода администратора не доступно (см. Инициализация апплета).