Jakarta при чтении списка объектов произошла ошибка. Работа над ошибками, или какие у Джакарта отзывы

Описание проблемы. Для работы с ЕГАИС используется носитель JaCarta PKI/ГОСТ/SE. Часто один из разделов блокируется (раздел PKI). В этом случае дальнейшая работа с ЕГАИС невозможна.

Причина блокировки – частое обращение универсального транспортного модуля к носителю JaCarta. При десяти неудачных попытках авторизации, носитель блокирует раздел и исключает дальнейшую работу.

Решить проблему можно двумя способами:

  1. Обратиться в удостоверяющий центр, который выдал носитель.
  2. Самостоятельно разблокировать носитель JaCarta по инструкции.
Инструкция на примере Microsoft Windows 10.

Пошаговая инструкция как разблокировать PKI раздел

Шаг 1. Переключение в режим администрирования

В меню «Пуск» найдите приложение «Единый клиент JaCarta» и откройте его.

Рис. 1. Единый клиент JaCarta

Откроется рабочая область программы.

Рис. 2. Переключение в режим администрирования

Откроется рабочая область программы. Если раздел PKI заблокирован, вкладка PKI будет красной.

Рис. 3. Информация о токене

Шаг 2. Проверка блокировки PKI раздела

Чтобы понять, что раздел PKI действительно заблокирован, нажмите во вкладке «Информация о токене» на ссылку «Полная информация…».

Откроется «Подробная информация о токене». В новом окне найдите раздел «Информация о приложении PKI». Если статус в строке «PIN-код» - «Заблокирован», то закройте окно и перейдите к следующему пункту инструкции.

Рис. 4. Подробная информация о токене

Шаг 3. Разблокировка PKI раздела

Перейдите на вкладку «PKI». В панели «Операции с приложением» выберите пункт «Разблокировать PIN-код пользователя…».

Откроется окно «Разблокировка PIN-кода пользователя», в котором укажите:

  1. Текущий PIN-код администратора – по умолчанию 00000000;
  2. Новый PIN-код пользователя – по умолчанию 11111111;
  3. Подтверждение кода (имеется ввиду PIN-кода пользователя).

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

После указания PIN-кодов, нажмите «Выполнить».

Если все введено корректно, появится уведомление. Нажмите «ОК» для завершения.

Рис. 7. Уведомление об успешной разблокировке

Перейдите на вкладку «Информация о токене» и нажмите на ссылку «Полная информация» для проверки текущего статуса приложения PKI. Статус должен быть «Установлен».

Рис. 8. Проверка статуса

Если статус изменился, разблокировка завершена.

Приветствую, читатель!

По общению с некоторыми активно интересующимися читателями, я решил повторить свой «поисковой» эксперимент, который я делал, когда писал первые обзорные материалы на темы токенов. На этот раз я решил собрать в кучу неудачные опыты использования токенов, собрать ошибки Jacarta. Пишу сразу с конкретикой, так как думаю сделать разные подборки для каждой из марки. Начнем с лидера рынка, компания Аладдин Р.Д. и их продукт Jacarta, токен, который используется именно для ЕГАИС.

Чего не будет в этом посте:

1. я не буду давать решения для ошибок Jacarta, потому что каждая ситуация индивидуальна.

2.Может быть и так, что Джакарта-токен не причина ошибки. Это может быть УТМ и т.д. Поэтому каждый случай надо разбирать в отдельность

3.Умножение ошибок, дабы очернить продукт. Моя задача дать предельно стороннюю сводку того, с чем чаще всего стакиваются пользователи Jacarta токена в ЕГАИСе.

Подборка и систематизация отзывов о Джакарте

В прошлый раз мое исследование было ограниченно официальным форумом ЕГАИС (http://egais2016.ru/), сейчас я расширил спектр изучения форумов, чтобы сделать материал более обширным.

Итак, Джакарта-токен для ЕГАИС будет анализироваться по отзывам со следующих источников:





Естественно, боле всего результатов обнаружилось на форуме ЕГАС

Итого, по запросу вышло у нас 630 сообщений

Нашлось 3 толстых ветки

Например, вот случай, когда полетело подряд 8 JaCarta-токенов из-за, цитирую:

«Ошибка 0х00000006 в разделе PKI при попытке форматирования. Либо джакарта просто не определяется как устройство. Обновляли клиент до версии 2,9. Пробовали через jacarta format. Ни один способ ни разу не помог»

Проблема, когда не система просто не видит Jacarta, действительно серьезная и самая, пожалуй, распространенная. Другой вопрос в том, что причин появления этой ошибки могут быть различные нарушения.


Еще одна обнаруженная ошибка, когда опять-таки Джакарта не определяется, устройства не видят Jacarta. Забавно отметить, что Аладдин дает ответные письма по негодованиям пользователей, но по другой проблеме =)))) Но дают же! Это важно.

Частенько ошибки при обнаружении и инсталляции, но там могут быть и проблемы дистрибутивов УТМ, что тоже очень часто происходит. Я внимательно читаю все ветки и поэтому будьте уверены, не буду указывать тут не существующих ошибок для Jacarta. Хотя тут вопрос весьма сложный, так как когда система не видит Jacarta, это может быть обоюдная пролема.

В одной из уже указанных веток есть вот такой интересный коммент

А что теперь делать пользователям Jacarta токена, когда связи между Жемальто и Аладдином расторгнуты?

На форуме egaisa.net

Нашлось 5 веток обсуждений

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

Если почитать форумы более внимательно, то выйдет, что на начальном этапе всем впаривали Jacarta токен для ЕГАИСА, не вникая в подробности и вообще не просвещая клиентов, что не только Джакарта может быть… Но об этом мы уже не раз говорили, а вы можете убедиться.

Давайте вернемся к ЕГАИС форуму.

Всего у нас ответов по поисковику 630 за все время работы. Естественно проблемы более чем годичной давности рассматривать нет смысла.

Например, из самых частых ошибок


  1. Ошибки при попытке формирования сертификата RSA

  2. Ошибки синхронизации с УТМ

  3. Ошибка при обновлении

  4. Ошибка 610

  5. Ошибка обнаружения Jacarta

Почему у Джакарта плохие отзывы?

Подытожим, что Джакарта токен много кем используется, однако стабильность работы хромает. Я также нашел такое мнение, что это м.б. зависеть от «партии поставки», наверное это очень странно, так как ПО-шки для всех одни и те же должны быть. Возможно это результат того, что в итоге Джакарта собирается из множества разноразрозненных деталей, что приводит к нестабильной работе и умиранию всего организма в целом.

В следующей серии поговорим о Рутокене, смарт-картах и других продуктах СКЗИ.

Спасибо, что остаетесь на связи.

Все функции из реализации стандарта PKCS#11 возвращают различные коды ошибок. Все возвращаемые коды ошибок делятся на две большие группы:

Все функции из реализации стандарта PKCS#11 возвращают специальные коды ошибок (определяются производителем).

Все функции из реализации расширения стандарта PKCS#11 возвращают специальные коды ошибок (определяются производителем).

Стандартные коды ошибок

В силу особенностей реализации библиотек rtPKCS11 и rtPKCS11ECP некоторые стандартные функции могут вернуть стандартный код ошибки PKCS#11, не входящий в список допустимых для данной функции. Подобная ситуация является исключением. Стандартные коды ошибок, возвращаемые каждой функцией в исключительных ситуациях, перечислены в описании для каждой функции отдельно.

В таблице 2.29 приведен список кодов ошибок стандарта PKCS#11 и их описаний, поддерживаемых устройствами Рутокен. Подробную информацию по каждому коду ошибки можно найти в стандарте (английский язык) или приложении (русский язык).

Таблица 2.29 . Коды ошибок стандарта

Код ошибки

Описание

CKR_ARGUMENTS_BAD

Недопустимый аргумент

CKR_ATTRIBUTE_READ_ONLY

Невозможно установить или изменить значение атрибута приложением

CKR_ATTRIBUTE_SENSITIVE

Атрибут недоступен для чтения

CKR_ATTRIBUTE_TYPE_INVALID

Некорректный тип атрибута

CKR_ATTRIBUTE_VALUE_INVALID

Некорректное значение атрибута

CKR_BUFFER_TOO_SMALL

Размер заданного буфера является недостаточным для вывода результатов выполнения функции

Библиотека не поддерживает блокировку для защиты потоков; возвращается только при вызове функции C_Initialize

CKR_CRYPTOKI_ALREADY_INITIALIZED

Библиотека уже инициализирована (предыдущий вызов функции C_Initialize не был сопровожден соответствующим вызовом функции С_Finalize ); возвращается только при вызове функции C_Initialize

CKR_CRYPTOKI_NOT_INITIALIZED

Выполнение функции невозможно, так как библиотека не инициализирована; возвращается только при вызове любой функции, за исключением C_Initialize иС_Finalize

CKR_DATA_INVALID

Некорректные входные данные для выполнения криптографической операции

CKR_DATA_LEN_RANGE

Входные данные имеют некорректный размер для выполнения криптографической операции

CKR_DEVICE_ERROR

Ошибка при обращении к токену или слоту

CKR_DEVICE_MEMORY

Недостаточно памяти токена для выполнения запрошенной функции

CKR_DEVICE_REMOVED

Токен был удален из слота во время выполнения функции

CKR_DOMAIN_PARAMS_INVALID

Функции переданы некорректные или не поддерживаемые параметры домена

CKR_ENCRYPTED_DATA_INVALID

Для операции расшифрования переданы некорректно зашифрованные данные

CKR_ENCRYPTED_DATA_LEN_RANGE

Для операции расшифрования переданы зашифрованные данные некорректного размера

CKR_FUNCTION_CANCELED

Выполнение функции было прервано

CKR_FUNCTION_FAILED

При выполнении функции возник сбой

CKR_FUNCTION_NOT_SUPPORTED

Запрашиваемая функция не поддерживается библиотекой

CKR_FUNCTION_REJECTED

Запрос на подпись был отклонен пользователем

CKR_GENERAL_ERROR

Критическая ошибка, связанная с аппаратным обеспечением

Недостаточно памяти для выполнения функции на рабочей станции, где установлена библиотека

CKR_KEY_FUNCTION_NOT_PERMITTED

Атрибуты ключа не позволяют выполнить операцию

CKR_KEY_HANDLE_INVALID

Функции передан некорректный идентификатор (хэндл) ключа

CKR_KEY_NOT_WRAPPABLE

Невозможно зашифровать ключ

CKR_KEY_SIZE_RANGE

Недопустимый размер ключа

CKR_KEY_TYPE_INCONSISTENT

Тип ключа не соответствует данному механизму

CKR_KEY_UNEXTRACTABLE

Невозможно зашифровать ключ, так как атрибут CKA_UNEXTRACTABLE установлен в значение CK_TRUE

CKR_MECHANISM_INVALID

Указан неправильный механизм для выполнения криптографической операции

CKR_MECHANISM_PARAM_INVALID

Указаны неправильные параметры механизма для выполнения криптографической операции

CKR_NEED_TO_CREATE_THREADS

Программа не поддерживает внутренних методов операционной системы для создания новых потоков

CKR_OBJECT_HANDLE_INVALID

Функции передан некорректный идентификатор (хэндл) объекта

CKR_OPERATION_ACTIVE

Выполнение операции невозможно, поскольку такая операция уже выполняется

CKR_OPERATION_NOT_INITIALIZED

Невозможно выполнить операцию в этой сессии

Срок действия PIN-кода истек

CKR_PIN_INCORRECT

Функции передан PIN-код, который не соответствует тому, который сохранен на токене

Значение PIN-кода содержит недопустимые символы

CKR_PIN_LEN_RANGE

Недопустимая длина PIN-кода

CKR_RANDOM_NO_RNG

Данный токен не поддерживает генерацию случайных чисел

CKR_SESSION_CLOSED

Сессия была закрыта во время выполнения функции

CKR_SESSION_COUNT

Достигнуто предельное количество открытых сессий для данного токена

CKR_SESSION_EXISTS

Сессия с токеном уже открыта и поэтому токен не может быть инициализирован

CKR_SESSION_HANDLE_INVALID

Функции передан некорректный идентификатор (хэндл) сеанса

CKR_SESSION_PARALLEL_NOT_SUPPORTED

Данный токен не поддерживает параллельные сессии

CKR_SESSION_READ_ONLY

Невозможно выполнить действие, поскольку это сессия R/O

CKR_SESSION_READ_WRITE_SO_EXISTS

Уже открыта сессия R/W, поэтому открыть сессию R/O невозможно

CKR_SIGNATURE_INVALID

Неверное значение ЭЦП

CKR_SIGNATURE_LEN_RANGE

Значение ЭЦП неверно по длине

CKR_SLOT_ID_INVALID

Слота с данным ID не существует

CKR_TEMPLATE_INCOMPLETE

Для создания объекта недостаточно атрибутов

CKR_TEMPLATE_INCONSISTENT

Заданные атрибуты противоречат друг другу

CKR_TOKEN_NOT_PRESENT

Токен отсутствует в слоте во время вызова функции

CKR_UNWRAPPING_KEY_HANDLE_INVALID

Функции передан некорректный идентификатор (хэндл) ключа дешифрования

CKR_UNWRAPPING_KEY_SIZE_RANGE

Недопустимый размер ключа дешифрования

CKR_UNWRAPPING_KEY_TYPE_INCONSISTENT

Тип ключа дешифрования не соответствует данному механизму

CKR_USER_ALREADY_LOGGED_IN

CKR_USER_ANOTHER_ALREADY_LOGGED_IN

CKR_USER_NOT_LOGGED_IN

CKR_USER_PIN_NOT_INITIALIZED

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

CKR_USER_TOO_MANY_TYPES

CKR_USER_TYPE_INVALID

Задан некорректный тип пользователя

CKR_WRAPPED_KEY_INVALID

Задан некорректный зашифрованный ключ

CKR_WRAPPED_KEY_LEN_RANGE

Задана некорректная длина зашифрованного ключа

CKR_WRAPPING_KEY_HANDLE_INVALID

Функции передан некорректный идентификатор (хэндл) ключа шифрования

CKR_WRAPPING_KEY_SIZE_RANGE

Недопустимый размер ключа шифрования

CKR_WRAPPING_KEY_TYPE_INCONSISTENT

Тип ключа шифрования не соответствует данному механизму

Специальные коды ошибок

В таблице 2.30 приведен список всех расширенных кодов ошибок стандарта PKCS #11 вместе с их описанием. Расширенные коды ошибок могут возвращать как стандартные функции, так и функции расширения.

Таблица 2.30 . Коды ошибок стандарта PKCS #11, поддерживаемые устройствами Рутокен

Код ошибки

Описание

CKR_CORRUPTED_MAPFILE

Данная ошибка возвращается при повреждении MAP-файла (при считывании MAP-файла было обнаружено, что тег заголовка MAP-файла (2 байта) является недопустимым)

CKR_RTPKCS11_DATA_CORRUPTED

Данная ошибка возвращается, если было обнаружено нарушение целостности данных на токене (при считывании файла, содержащего объект PKCS#11, было обнаружено, что тег заголовка объекта (2 байта) является недопустимым)

CKR_WRONG_VERSION_FIELD

Данная ошибка возвращается, если файл, содержащий объект PKCS#11, имеет некорректную версию (при считывании любого файла (MAP-файла или файла, содержащего объект PKCS#11) было обнаружено, что версия заголовка (4 байта) является недопустимой)

CKR_WRONG_ PKCS1_ ENCODING

Данная ошибка возвращается, если расшифрованное сообщение имеет некорректную форму

CKR_RTPKCS11_RSF_DATA_CORRUPTED

Данная ошибка возвращается, если попытка использовать RSF-файл завершилась неудачей

Носитель Jacarta PKI/ГОСТ блокируется при многочисленных попытках ввести неверный пин-код. При этом теряется связь с сервером ФСРАР, и данные о фактурах не поступают в вашу учетную систему. Как быстро разблокировать ключ и восстановить работу с ЕГАИС?

По умолчанию на всех новых носителях установлены следующие пароли:

PKI 11 11 11 11
Администратор PKI 00 00 00 00
ГОСТ 0987654321
Администратор ГОСТ 1234567890

Для снятия блокировки на компьютере должна быть установлена программа Единый клиент Jacarta. Если настройка и установка ЕГАИС производилась нашими специалистами, то эта программа у вас уже есть.

Запустите программу и дождитесь, когда в окне Единого клиента появится информация о носителе Jacarta PKI/ГОСТ.

Снятие блокировки ГОСТ

В разделе ГОСТ записан сертификат КЭП, выданный в удостоверяющем центре. Будьте внимательны - нельзя удалять из этого раздела какие-либо компоненты. После удаления придется повторно обращаться в удостоверяющий центр для выпуска ключа.

Чтобы разблокировать пин-код ГОСТ, в верхнем меню “Операции с приложением” выберите первый пункт “Разблокировать PIN-код пользователя”. На экране появится уведомление, что снятие блокировки обнулит счетчик ошибочных попыток ввода.

Нажмите “ОК” и во вновь открывшемся окне введите пин-код администратора Jacarta ГОСТ 1234567890. После обнуления счетчика ошибок введите стандартный пин-код пользователя ГОСТ 0987654321.

Важно: эта процедура поможет только скинуть счетчик, но не изменить забытый пароль на новый. Если вы изменили пароль ГОСТ, установленный по умолчанию, и забыли его, придется проводить инициализацию и вновь записывать ключ в удостоверяющем центре.

Снятие блокировки PKI

В контейнере PKI записан RSA-ключ, который генерируется в личном кабинете на сайте egais.ru. В случае утери пин-кода этот раздел может быть инициализирован (полностью очищен), так как вы можете повторно записать ключ самостоятельно и бесплатно, без обращения в удостоверяющий центр.