Описание проблемы. Для работы с ЕГАИС используется носитель JaCarta PKI/ГОСТ/SE. Часто один из разделов блокируется (раздел PKI). В этом случае дальнейшая работа с ЕГАИС невозможна.
Причина блокировки – частое обращение универсального транспортного модуля к носителю JaCarta. При десяти неудачных попытках авторизации, носитель блокирует раздел и исключает дальнейшую работу.
Решить проблему можно двумя способами:
- Обратиться в удостоверяющий центр, который выдал носитель.
- Самостоятельно разблокировать носитель JaCarta по инструкции.
Инструкция на примере Microsoft Windows 10.
Пошаговая инструкция как разблокировать PKI раздел
Шаг 1. Переключение в режим администрирования
В меню «Пуск» найдите приложение «Единый клиент JaCarta» и откройте его.
Рис. 1. Единый клиент JaCarta
Откроется рабочая область программы.
Рис. 2. Переключение в режим администрирования
Откроется рабочая область программы. Если раздел PKI заблокирован, вкладка PKI будет красной.
Рис. 3. Информация о токене
Шаг 2. Проверка блокировки PKI раздела
Чтобы понять, что раздел PKI действительно заблокирован, нажмите во вкладке «Информация о токене» на ссылку «Полная информация…».
Откроется «Подробная информация о токене». В новом окне найдите раздел «Информация о приложении PKI». Если статус в строке «PIN-код» - «Заблокирован», то закройте окно и перейдите к следующему пункту инструкции.
Рис. 4. Подробная информация о токене
Шаг 3. Разблокировка PKI раздела
Перейдите на вкладку «PKI». В панели «Операции с приложением» выберите пункт «Разблокировать PIN-код пользователя…».
Откроется окно «Разблокировка PIN-кода пользователя», в котором укажите:
- Текущий PIN-код администратора – по умолчанию 00000000;
- Новый PIN-код пользователя – по умолчанию 11111111;
- Подтверждение кода (имеется ввиду 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 за все время работы. Естественно проблемы более чем годичной давности рассматривать нет смысла.
Например, из самых частых ошибок
- Ошибки при попытке формирования сертификата RSA
- Ошибки синхронизации с УТМ
- Ошибка при обновлении
- Ошибка 610
- Ошибка обнаружения 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. В случае утери пин-кода этот раздел может быть инициализирован (полностью очищен), так как вы можете повторно записать ключ самостоятельно и бесплатно, без обращения в удостоверяющий центр.