Ошибка эцп signature is not valid
В данной статье мы расскажем о путях решения ошибки «Этот сертификат содержит недействительную цифровую подпись» на примере «Тензор» и Казначейства. Вы узнаете, что такое цепочка доверия¸ как её настроить и многое другое.
Для возможности использования квалифицированной электронно-цифровой подписи (далее - КЭЦП) необходимо, чтобы криптопровайдер счёл сертификат пользователя достоверным, то есть надёжным. Этого можно добиться только в том случае, если корректно выстроена линия доверия сертификата, которая состоит из трёх элементов:
Сертификат ключа проверки ЭП (далее - СКПЭП).
Промежуточный сертификат (далее - ПС).
Корневой сертификат (далее - KC).
Изменения хотя бы одного из этих документов повлечёт за собой недействительность сертификата, из-за чего он не сможет быть применён для заверки электронной документации. Также причинами ошибки может оказаться некорректная работа криптопровайдера, невозможность интегрирования с браузером и т.п.
В сертификате содержится недействительная цифровая подпись: разбор ситуации, на примере «Тензор»
Для того, чтобы узнать о состоянии ключа, следует:
Войти в меню «Пуск».
Открыть раздел «Все программы» и перейти в «КриптоПро».
После этого нужно нажать л.к.м. на «Сертификаты».
В строке хранилище, отметить нужное.
Кликнуть на выбранный сертификат.
Открыть раздел «Путь сертификации».
В строке «Состояние» будет отражён статус неактивного сертификата.
Во вкладке «Общие» отображается причина, к примеру, «Этот сертификат не удалось проверить, проследив его до доверенного центра».
Линия доверия была нарушена (неправильно прописан путь сертификации), произошло повреждение одного или всех сертификатов (кодирование соединения не будет доверенным, либо просто не будет работать).
Некорректно инсталлирован криптопровайдер КриптоПро.
Алгоритмы шифрования СКЗИ не работают, или работают некорректно.
Нет доступа к реестровым документам.
Версия браузера устарела.
На компьютере выставлены неправильные хронометрические данные.
Из всего этого следует, что ошибка может быть вызвана: напрямую сертификатом, криптопровайдером, либо некорректными настройками компьютера. При этом, все эти варианты предполагают разные способы решения проблемы.
Цепочка доверия, от министерства цифрового развития и связи до пользователя
До того, как приступить к выяснению причины ошибки, в первую очередь, необходимо разобраться в алгоритме строения цепочки доверия сертификатов (далее, - ЦДС) – она является обязательной для правильной работы КЭЦП на всех существующих информационных ресурсах.
Принцип построения ЦДС
Первая ступень в построении ЦДС – это корневой сертификат ключа проверки министерства цифрового развития и связи. Именно Минкомсвязь производит аккредитацию удостоверяющих центров и предоставляет им разрешение на выпуск КЭЦП. Список аккредитованных УЦ представлен на официальном сайте Министерства цифрового развития и связи.
Вторая ступень – это ПС, он предоставляется в комплекте с КС и включает в себя:
Данные об УЦ и срок действия ключа.
Электронный адрес для связи с реестром организации.
Данные сведения поступают в закодированном формате и применяются криптопровайдером для подтверждения подлинности открытого ключа КЭЦП.
В теории КЭЦП может быть украдена у владельца, но использовать её без инсталлированного сертификата УЦ не представляется возможным. Все эти меры направлены на то, чтобы минимизировать риски незаконного применения КЭЦП посторонними лицами.
СКПЭП последнее звено цепи доверия. УЦ предоставляет его вместе с открытым и закрытым ключом. Сертификат может быть предоставлен в бумажном, либо электронном виде, на него записаны основные сведения о владельце КЭЦП.
СКПЭП объединяет открытый ключ с определенным человеком, иными словами, подтверждает факт принадлежности ЭП конкретному лицу.
КС министерства цифрового развития и связи действителен, вплоть до 2036 года, а ПС предоставляется только на год, затем необходимо оплатить новый и инсталлировать его на свой компьютер.
Причиной возникновения ошибки «Этот сертификат содержит недействительную цифровую подпись» может служить повреждение любого отрезка ЦДС, начиная с Минкомсвязи РФ и заканчивая пользователем.
Пути решения ошибки
Для начала необходимо убедиться в том, что КС активен и верно инсталлирован. Для этого применяется стандартный путь: «Пуск» → «Все программы» → «КриптоПро» → «Сертификаты» → «Доверенные центры сертификации» → «Реестр». В появившемся перечне должен находиться файл от ПАК «Минкомсвязь России». Если сертификата нет, или он не активен, требуется его инсталлировать:
Запустите скачанный файл на компьютере и, в разделе «Общие», нажмите «Установить».
Поставьте отметку рядом со строчкой «Поместить в следующее хранилище».
Укажите хранилище «Доверенные корневые центры сертификации».
Для продолжения инсталляции, кликните на кнопку «ОК» и дайте согласие в окне, предупреждающем о безопасности.
После инсталляции сертификата, перезагрузите ПК.
Файл предоставляется УЦ одновременно с остальными средствами для генерации КЭЦП, если он потерян или удалён, необходимо обратиться в УЦ, предоставивший СКПЭП.
Когда с КС Минкомсвязи всё в порядке, но статус по-прежнему неактивен, необходимо его переустановить (удалить и инсталлировать повторно).
Существует ещё один вариант исправления ошибки, но он срабатывает не каждый раз. В случае, если предыдущий способ не помог, войдите в «Пуск», в строке поиска наберите regedit, после чего войдите в редактор и самостоятельно удалите следующие файлы.
На форуме CryptoPro CSP предлагается еще один вариант решения проблемы. Но работает он не всегда. Если установка документа не помогла, откройте меню «Пуск» и выполните поиск редактора реестра по его названию regedit. В редакторе найдите и вручную удалите следующие ветки:
Они могут быть как полностью, так и частично, поэтому следует удалить все, что имеется. Проверьте статус, он должен стать активным.
Следует помнить, что самовольное редактирование реестровых ключей может отразиться на работе системы, поэтому лучше поручить данную работу специалистам.
Исправление ошибки, на примере казначейства
Наиболее популярная причина недействительности сертификата – это нарушение путей сертификации. Причём неполадки могут быть не только в файлах министерства цифрового развития и связи, но и в промежуточных, а также личных СКЭП.
Ниже мы разберём причину ошибки, на примере Управления Федерального казначейства (УФК).
Изменение или повреждение файла УФК
Обязанности УЦ исполняются в территориальных органах Росказны по всей России. Для проведения аукционов и размещения на платформах сведений о госзакупках, участники должны подписывать отчёты цифровой подписью, полученной в УФК.
В случаях, когда не получается подписать документ, предоставленной казначейством ЭП, и высвечивается ошибка « Этот сертификат содержит недействительную цифровую подпись», необходимо:
Зайти в раздел «Личное».
Указать неработающий СКПЭП, после чего открыть раздел «Путь сертификации». В таком случае, основным УЦ будет выступать Мнкомсвязи РФ, а подчинённым УФК. Самым последним элементом в доверительной линии будет СКПЭП пользователя.
Если после этого, статус до сих пор недействительный, то следует проследить всю доверительную линию и определить слабый элемент.
Вернуться обратно во вкладку «Общие» и проверить, правильно ли указаны данные организации, выпустившей СКПЭП.
После чего перейти в «Промежуточные центры сертификации». Если выявится, что причина в данном звене, в разделе «Общие» появятся следующие данные: «Этот сертификат не удалось проверить, проследив его до . ».
На сайте УФК войти во вкладку «Корневые сертификаты».
Загрузить «Сертификат УЦ Федерального казначейства».
Переместить файл на компьютер. Процедура перемещения такая же, как и для основного центра, но как хранилище необходимо указать «Промежуточные центры сертификации».
Выключите и включите ПК.
На последнем этапе нужно открыть вкладку «Личное» и указать необходимый СЭП, после чего сделать проверку пути сертификации.
Если всё прошло удачно, и проблема решена, в строке со статусом отобразится «Этот сертификат действителен». Значит, система произвела проверку ЦДС и не обнаружила отклонений.
Истечение срока
Для установки новых ключей не требуется подключения к интернету, файл будет проверен в автоматическом режиме, как только устройство выйдет в сеть.
Ошибка с отображением в КриптоПро
Когда возникает подобная ошибка, некоторые сайты могут отклонять СЭП, зато остальные с лёгкостью интегрируются с ней, потому что не все сайты производят проверку пути до основного УЦ. Исправление появившихся вследствие этого ошибок может усложняться, потому что в таких ситуациях вся цепь доверия не имеет нарушений и обозначается как активная.
В таких ситуациях может оказаться что неполадка связана с работой криптопровайдера, либо браузера.
Неправильная работа КриптоПро
Для того, чтобы убедиться в корректности работы, нужно зайти в КриптоПро CSP и открыть раздел «Алгоритмы». Если их характеристики пустые, это означает, что программа работает неправильно и её следует переустановить:
Для того, чтобы произвести переустановку, необходимо наличие специального программного обеспечения (КриптоПро), которую можно загрузить с портала разработчика. Она создана для экстренного удаления криптопровайдера. Этот способ даёт возможность полностью удалить КриптоПро с компьютера, что необходимо для качественной переустановки.
Сервисы инициализации
СЭП может высвечиваться как недействительный, в случаях, когда не активирована служба распознавания КриптоПро CSP.
Для того, чтобы проверить активность службы:
Активируйте системное окошко «Выполнить», зажав на клавиатуре Win+R.
После чего вбейте в командной строке services.msc.
В перечне служб, укажите «Службы инициализации».
Зайдите в подраздел «Свойства» и если служба неактивна, запустите её.
Выключите и включите компьютер, если всё сделано правильно КЭЦП будет работать корректно.
Что делать, если ошибка вызвана сбоем браузера
Если после коррекции цепочки доверия, устранения неисправностей криптопровайдер, ошибка всё равно высвечивается, существует вероятность того, что она вызвана сбоем браузера. В основном, так происходит при заверении документов на государственных порталах, либо сайтах контролирующих органов.
Создатели CryptoPro советуют пользоваться для работы с КЭП, только Internet Explorer, так как он уже вшит в Windows, но даже с ним может произойти сбой.
Чаще всего, после того как пользователь входит под паролем администратора, всё налаживается, и ключи начинают функционировать в стандартном режиме.
Что нужно сделать:
Правой кнопкой мыши нажмите на значок браузера.
Выберите строку «Запуск от имени администратора».
После того, как ошибка исчезнет:
Правой кнопкой мыши нажмите на значок браузера.
Кликните на «Дополнительно»
И выберите «Запуск от имени администратора».
Теперь каждый раз при загрузке ПК, права администратора будут вступать в силу автоматически и больше не потребуется постоянно изменять настройки.
Выключение антивирусника
Некоторые антивирусные программы, к примеру, Symantec или AVG, распознают КриптоПро, как угрозу, и начинают блокировать программные процессы. В результате возникают всевозможные ошибки с СКПЭП, поэтому для того, чтобы подписать цифровой документ, желательно на некоторое время выключить антивирусную программу, для этого:
Нажав правой кнопкой мыши на значок антивирусной программы, выберите «Сетевые экраны» или «Управление экранами».
После чего, отметьте временной отрезок, на который предусмотрено отключение ПО.
Когда электронный документ будет подписан, активируйте антивирусную программу обратно.
Настройка хронометрических данных
Также необходимо проверить, актуально ли на компьютере выставлено число и время, для этого:
Правой кнопкой мыши кликните на значок часов в правом нижнем углу монитора.
Область применения ЭП довольно широка. Например, многие специальные сервисы требуют верификации пользователя с её помощью: Госуслуги, онлайн-сервисы для управления средствами в банке и электронные площадки и другие. Поэтому любые технические неполадки, возникающие при использовании ЭП, могут вызвать различные серьёзные: от упущенной выгоды до материальных убытков.
Какие бывают ошибки
Проблемы при использовании ЭП, с которыми пользователи встречаются чаще всего, можно условно разделить на три группы:
Проблемы с сертификатом Они появляются, когда сертификат не выбран, не найден или не верен.
Проблемы с подписанием документа. Ошибки возникают при попытке подписать документ.
Проблема при авторизации на торговых площадках.
Рассмотрим неполадки подробнее и разберёмся, как их решать.
Сертификат не найден
Иногда при попытке подписать электронный документ с помощью ЭП пользователь может столкнуться с ошибкой «Не удалось найти ни одного сертификата, пригодного для создания подписи»
У подобных ошибок могут быть следующие причины:
1. На компьютере не установлены корневые сертификаты Удостоверяющего Центра (УЦ), в котором была получена ЭП. Необходимо установить либо обновить корневой сертификат. Установка корневых сертификатов удостоверяющего центра подробно описана в нашей инструкции.
2. На ПК не установлено ни одного личного сертификата ЭП. Для применения ЭП необходимы и личные сертификаты. Об их установке мы писали в другой статье.
3. Установленные на компьютере необходимые сертификаты не валидны. Сертификаты отозваны или просрочены. Уточните статус сертификата в УЦ. Ошибка с текстом «Ваш сертификат ключа подписи включён в список отозванных» возникает, если у сертификата закончился срок действия или на ПК нужно обновить список сертификатов. В последней ситуации следует вручную загрузить перечень отозванных сертификатов.
Для установки списка отозванных сертификатов:
Откройте личный сертификат пользователя в окне Свойства браузера. Чтобы открыть его, наберите «Свойства браузера» в поисковой строке меню Пуск. Перейдите во вкладку Содержание и нажмите кнопку «Сертификаты».
Во вкладке Состав выберите из списка пункт «Точки распространения списков отзыва».
В блоке Имя точки распространения скопируйте ссылку на загрузку файла со списком отзыва.
Скачайте по указанной ссылке файл. Нажмите по нему правой кнопкой мыши и выберите в контекстном меню «Установить список отзыва (CRL)».
Следуйте указаниям «Мастера импорта сертификатов».
Не виден сертификат на носителе
Как правило, причина такой проблемы — сбой в работе программных компонентов. Для её решения достаточно перезагрузить компьютер. Однако иногда этого бывает недостаточно, поэтому требуется переустановка драйверов или обращение в службу техподдержки.
К наиболее распространённым причинам такой проблемы относятся следующие случаи:
Драйвер носителя не установлен или установлен некорректно. Для решения проблемы необходимо извлечь носитель электронной подписи из ПК и скачать последнюю версию драйвера носителя с официальных ресурсов. Если переустановка драйвера не помогла, подключите носитель к другому ПК, чтобы убедиться в исправности токена. Если токен определится другой системой, попробуйте удалить на неисправном компьютере драйвер носителя и установить его заново.
Долгое опознание носителя. Для решения проблемы необходимо дождаться завершения процесса или обновить версию операционной системы.
Некорректная работа USB-порта. Подключите токен к другому USB-порту, чтобы убедиться, что проблема не в носителе ЭП. Если система определила токен, перезагрузите компьютер. Если это не поможет, следует обратиться службу технической поддержки.
Неисправность носителя. Если при подключении токена к другому компьютеру или USB-порту система не определяет его, значит, проблема в самом носителе. Устранение неисправности возможно в данном случае лишь одним путём — нужно обратиться в сервисный центр для выпуска нового носителя.
ЭП не подписывает документ
Причин у подобной проблемы множество. Среди самых распространённых можно выделить следующие неполадки:
Закрытый ключ на используемом контейнере не соответствует открытому ключу сертификата. Возможно был выбран не тот контейнер, поэтому следует проверить все закрытые контейнеры на компьютере. Если необходимый контейнер по тем или иным причинам отсутствует, владельцу придётся обращаться в удостоверяющий центр для перевыпуска ЭП.
Ошибка «Сертификат недействителен» (certificate is not valid). Следует повторно установить сертификат ЭП по инструкциям УЦ в зависимости от используемого криптопровайдера — КриптоПро CSP, ViPNet CSP или другого.
Сертификат ЭП определяется как непроверенный. В этом случае необходимо переустановить корневой сертификат удостоверяющего центра.
Истёк срок действия криптопровайдера. Для решения этой проблемы необходим новый лицензионный ключ к программе-криптопровайдеру. Для его получения необходимо обращаться к специалистам УЦ или к ответственным сотрудникам своей организации.
Подключён носитель с другим сертификатом. Убедитесь, что подключён правильный токен. Проверьте также, не подключены ли носители других сертификатов. Отключите другие носители в случае их обнаружения.
В момент подписания электронных документов или формирования запроса в различных может возникнуть ошибка «Невозможно создание объекта сервером программирования объектов».
В этой ситуации помогает установка и регистрация библиотеки Capicom:
Распакуйте и переместите файлы capicom.dll и capicom.inf в каталог syswow64, находящийся в корневой папке ОС.
Откройте командную строку от имени администратора — для этого в меню Пуск наберите «Командная строка», нажмите по найденному приложению правой кнопкой мыши и выберите Запуск от имени администратора.
Введите «c:\windows\syswow64\regsvr32.exe capicom.dll» (без кавычек) и нажмите ENTER. Должно появиться уведомление о том, что команда выполнена успешно.
Выбранная подпись не авторизована
Процесс запроса на авторизацию ЭП на разных торговых площадках может отличаться: часто нужно отправлять запрос оператору системы на авторизацию, иногда рабочее место настраивается автоматически.
Если ошибка сохраняется, возможно, следует отключить защитное ПО или добавить сайт электронной площадки в исключения.
Если ваша проблема с электронной подписью не решена, но обратитесь к нашим специалистам техподдержки.
В современном интернет-пространстве использование ЭЦП необходимо для ведения документооборота, для работы в информационных системах, на торговых площадках и т.д. Работа программных средств ЭЦП и самой подписи не вызывает у пользователей сложностей, а постоянная доработка ПО позволяет отслеживать и устранять все возникающие неполадки для следующих версий. Однако иногда при авторизации или во время подписания документа ПО или система выдает ошибки авторизации, невалидности ЭЦП и т.п. Устранить их можно своими силами за несколько минут, если следовать пошаговой инструкции.
Выбранная подпись не авторизована
Обычно ошибка «Выбранная ЭЦП не авторизована» возникает во время попытки входа в личный кабинет на электронных торговых площадках.
Возникает она при использовании нового ключа ЭЦП на торговой площадке без регистрации пользователя или без регистрации нового сертификата. Для авторизации подписи в личном кабинете необходимо:
ЭЦП поставлено сертификатом без заключенного соглашения
Ошибка «ЭЦП проставлено сертификатом, на который нет заключенного соглашения» часто возникает при обращении в Пенсионный фонд. При возникновении ошибки нужно проверить, заключено ли пользовательское соглашение об электронном документообороте по телекоммуникационным каналам связи между организацией и Пенсионным фондом.
Если соглашения нет, то его необходимо заключить в письменной форме. Если соглашение было заключено ранее, то нужно проверить соответствие ФИО, указанное в соглашении, с ФИО в сертификате ключа ЭЦП. Если данные не менялись, то нужно дождаться квитанции о приеме, которая приходит в течение 4 рабочих дней после отправки отчета об ошибке. Протокол проверки ошибки приходит вместо квитанции в случае, когда проверка наличия пользовательского соглашения прошла ранее запроса.
Если реквизиты были изменены, то необходимо предоставить в отделение Пенсионного фонда приказ, наделяющий правом подписи сотрудника указанного в новом сертификате.
Не поддерживается алгоритм сертификата ЭЦП
Также нужно проверить хранилище сертификатов на предмет наличия там закрытого ключа ЭЦП. Если проблема повторяется, то можно установить КриптоПро.nет и sdk версии 1.0.48668.1 или выше. Если переустановка криптопровайдера не помогает и одновременно возникает ошибка ОС «Неустранимая ошибка при инициализации исправлений», то необходима полная переустановка операционной системы.
Электронная подпись невалидна
Ошибка «Электронная подпись документа невалидна» чаще возникает при работе в системах 1С. Обычно связана проблема с тем, что на ПК не установлен корневой сертификат (КС) Удостоверяющего центра. Это может быть по следующим причинам:
- не установлен в соответствующую папку сертификат головного удостоверяющего центра минкомсвязи;
- не установлен в соответствующую папку корневой сертификат удостоверяющего центра, изготовившего ЭЦП.
Для устранения ошибки нужно открыть документ и проверить ЭЦП, которая обозначена красным.
Далее двойным кликом мышки нужно открыть сертификат и сохранить его на рабочем столе или в любом удобном месте на ПК.
Затем сохраненный сертификат открывают и выбирают вкладку «Путь сертификации».
Для установки сертификата нужно лишь открыть его и установить.
Если не открывается цепочка сертификатов, то нужно перейти во вкладку «Состав» и «Доступ к информации о центре сертификации».
Затем пользователь выделяет и копирует одну из ссылок, имеющих в окончании .cer/.crt, после чего вставляет ссылку в адресную строку используемого браузера и начинает скачивание КС.
После скачивания КС открывают и нажимают «Установить сертификат».
Местом хранилища назначают «Доверенные корневые центры сертификации».
Следующий шаг — подтверждение установки КС.
Затем пользователь возвращается в рабочее окно 1С и нажимает на подпись-статус «ЭЦП не верна». В открывшемся меню нужно выбрать «Проверить ЭЦП».
Если установка прошла без ошибок, то статус изменится на «ЭЦП верна».
Ошибка создания объекта сервером программирования объектов подписи
При подписании документов или при формировании запросов в разных информационных системах может возникнуть ошибка «Невозможно создание объекта сервером программирования объектов ЭЦП».
Решить проблему можно переустановкой КриптоПро или обновлением плагина для Криптопро. Если после переустановки ПО ошибка повторяется, то нужно зарегистрировать библиотеку capicom.
Для этого нужно:
Если установка через архивы вызывает сложности, то можно установить capicom.dll вручную. Для этого пользователь должен:
- Скопировать файл capicom.dll в каталог операционной системы. При необходимости файл заменяют на новый.
- Через меню «Пуск» вызывают командную строку и вводят «regsvr32 capicom.dll».
- Нажимают «ОК».
После установки библиотеки нужно проверить ее наличие в надстройках IE. Для этого пользователь переходит в «Сервис»/«Свойства обозревателя»/«Программы»/«Надстройки». В открывшемся окне нужно найти и включить capicom.dll.
Если после всех действий ошибка повторяется, то проблема кроется в блокировке работы ЭЦП системными службами. В этом случае необходимо отключить брандмауэр windows и центр обеспечения безопасности. Делается это просто:
- Пользователь переходит в «Панель управления»панель управления/«Администрирование»/«Службы».
- В открывшемся списке нужно найти системные службы и щелкнуть по каждой двойным кликом мышки.
- В новом окне изменяют тип запуска на «Отключена» и затем нажимают кнопку «Остановить».
После этого рекомендуется перезагрузить ПК. При повторении ошибки после всех произведенных действий лучше обратиться в службу поддержки пользователей Удостоверяющего центра.
ЭЦП попала в список отозванных
Ошибка «Ваш сертификат ключа подписи включен в список отозванных» может возникать из-за закончившегося срока действия сертификата или из-за необходимости обновить список сертификатов на ПК.
Если срок действия ЭЦП еще не истек. то нужно:
Для установки нужно:
- В окне сохранить выбрать месторасположение «Рабочий стол» или любое удобное место.
- Правой кнопкой мышки кликнуть по файлу и выбрать «Установить список отзыва».
- Нажать последовательно «Далее»/«Готово»/«Готово».
После этого можно перезагрузить ПК. Если ошибка повторяется, то необходимо связаться с оператором удостоверяющего центра, выпустившего сертификат.
Для Сбербанк-АСТ
Чтобы зарегистрировать новый сертификат на ЭТП нужно:
Если все действия были выполнены верно, то сразу после обновления информации можно заходить в систему с новым сертификатом.
Для Национальной электронной площадки
Добавление нового сертификата может происходить двумя способами. Можно войти в личный кабинет используя логин и пароль или через личный кабинет Еиной Системы Идентификации и Аутентификации (ЕСИА). Далее перейти в «Мой кабинет» и выбрать в окне «Загрузка сертификатов» новый сертификат ЭЦП.
Если по каким-то причинам вход в личный кабинет невозможен, то нужно:
Письмо обычно приходит в течение часа после формирования запроса. Работать в кабинете по новому логину и паролю можно сразу после авторизации.
Для РТС-Тендер
Привязка нового сертификата для личного кабинета в системе РТС-Тендер зависит от того имеет ли пользователь учетную запись в Единой Информационной Системе или нет.
Если у участника есть личный кабинет. то нужно выбрать в нем «Добавление нового сертификата». Если личного кабинета нет, то пользователь должен:
При правильном заполнении данный заявка будет утверждена через 20-40 минут. Если после всех действий ЭЦП не работает, то лучше обратиться в службу технической поддержки.
Работа с электронной подписью обычно не вызывает затруднений, а все возникающие ошибки можно устранить самостоятельно. Часть проблем решается переустановкой программного обеспечения КриптоПро и обновлением списка сертификатов. А часть — повторной регистрацией сертификата ЭЦП в информационной или торговой системе, а также отправкой запроса на добавление нового пользователя. Если после всех произведенных действий ошибка повторяется, то нужно обратиться в поддержку пользователей используемой системы или удостоверяющего центра, т.к. проблема может крыться в неисправности подписи или ее носителя.
Область применения ЭП довольно широка. Например, многие специальные сервисы требуют верификации пользователя с её помощью: Госуслуги, онлайн-сервисы для управления средствами в банке и электронные площадки и другие. Поэтому любые технические неполадки, возникающие при использовании ЭП, могут вызвать различные серьёзные: от упущенной выгоды до материальных убытков.
Какие бывают ошибки
Проблемы при использовании ЭП, с которыми пользователи встречаются чаще всего, можно условно разделить на три группы:
Проблемы с сертификатом Они появляются, когда сертификат не выбран, не найден или не верен.
Проблемы с подписанием документа. Ошибки возникают при попытке подписать документ.
Проблема при авторизации на торговых площадках.
Рассмотрим неполадки подробнее и разберёмся, как их решать.
Сертификат не найден
Иногда при попытке подписать электронный документ с помощью ЭП пользователь может столкнуться с ошибкой «Не удалось найти ни одного сертификата, пригодного для создания подписи»
У подобных ошибок могут быть следующие причины:
1. На компьютере не установлены корневые сертификаты Удостоверяющего Центра (УЦ), в котором была получена ЭП. Необходимо установить либо обновить корневой сертификат. Установка корневых сертификатов удостоверяющего центра подробно описана в нашей инструкции.
2. На ПК не установлено ни одного личного сертификата ЭП. Для применения ЭП необходимы и личные сертификаты. Об их установке мы писали в другой статье.
3. Установленные на компьютере необходимые сертификаты не валидны. Сертификаты отозваны или просрочены. Уточните статус сертификата в УЦ. Ошибка с текстом «Ваш сертификат ключа подписи включён в список отозванных» возникает, если у сертификата закончился срок действия или на ПК нужно обновить список сертификатов. В последней ситуации следует вручную загрузить перечень отозванных сертификатов.
Для установки списка отозванных сертификатов:
Откройте личный сертификат пользователя в окне Свойства браузера. Чтобы открыть его, наберите «Свойства браузера» в поисковой строке меню Пуск. Перейдите во вкладку Содержание и нажмите кнопку «Сертификаты».
Во вкладке Состав выберите из списка пункт «Точки распространения списков отзыва».
В блоке Имя точки распространения скопируйте ссылку на загрузку файла со списком отзыва.
Скачайте по указанной ссылке файл. Нажмите по нему правой кнопкой мыши и выберите в контекстном меню «Установить список отзыва (CRL)».
Следуйте указаниям «Мастера импорта сертификатов».
Не виден сертификат на носителе
Как правило, причина такой проблемы — сбой в работе программных компонентов. Для её решения достаточно перезагрузить компьютер. Однако иногда этого бывает недостаточно, поэтому требуется переустановка драйверов или обращение в службу техподдержки.
К наиболее распространённым причинам такой проблемы относятся следующие случаи:
Драйвер носителя не установлен или установлен некорректно. Для решения проблемы необходимо извлечь носитель электронной подписи из ПК и скачать последнюю версию драйвера носителя с официальных ресурсов. Если переустановка драйвера не помогла, подключите носитель к другому ПК, чтобы убедиться в исправности токена. Если токен определится другой системой, попробуйте удалить на неисправном компьютере драйвер носителя и установить его заново.
Долгое опознание носителя. Для решения проблемы необходимо дождаться завершения процесса или обновить версию операционной системы.
Некорректная работа USB-порта. Подключите токен к другому USB-порту, чтобы убедиться, что проблема не в носителе ЭП. Если система определила токен, перезагрузите компьютер. Если это не поможет, следует обратиться службу технической поддержки.
Неисправность носителя. Если при подключении токена к другому компьютеру или USB-порту система не определяет его, значит, проблема в самом носителе. Устранение неисправности возможно в данном случае лишь одним путём — нужно обратиться в сервисный центр для выпуска нового носителя.
ЭП не подписывает документ
Причин у подобной проблемы множество. Среди самых распространённых можно выделить следующие неполадки:
Закрытый ключ на используемом контейнере не соответствует открытому ключу сертификата. Возможно был выбран не тот контейнер, поэтому следует проверить все закрытые контейнеры на компьютере. Если необходимый контейнер по тем или иным причинам отсутствует, владельцу придётся обращаться в удостоверяющий центр для перевыпуска ЭП.
Ошибка «Сертификат недействителен» (certificate is not valid). Следует повторно установить сертификат ЭП по инструкциям УЦ в зависимости от используемого криптопровайдера — КриптоПро CSP, ViPNet CSP или другого.
Сертификат ЭП определяется как непроверенный. В этом случае необходимо переустановить корневой сертификат удостоверяющего центра.
Истёк срок действия криптопровайдера. Для решения этой проблемы необходим новый лицензионный ключ к программе-криптопровайдеру. Для его получения необходимо обращаться к специалистам УЦ или к ответственным сотрудникам своей организации.
Подключён носитель с другим сертификатом. Убедитесь, что подключён правильный токен. Проверьте также, не подключены ли носители других сертификатов. Отключите другие носители в случае их обнаружения.
В момент подписания электронных документов или формирования запроса в различных может возникнуть ошибка «Невозможно создание объекта сервером программирования объектов».
В этой ситуации помогает установка и регистрация библиотеки Capicom:
Распакуйте и переместите файлы capicom.dll и capicom.inf в каталог syswow64 , находящийся в корневой папке ОС.
Откройте командную строку от имени администратора — для этого в меню Пуск наберите «Командная строка», нажмите по найденному приложению правой кнопкой мыши и выберите Запуск от имени администратора.
Введите «c:\windows\syswow64\regsvr32.exe capicom.dll» (без кавычек) и нажмите ENTER. Должно появиться уведомление о том, что команда выполнена успешно.
Если ваша проблема с электронной подписью не решена, но обратитесь к нашим специалистам техподдержки.
Система межведомственного электронного взаимодействия (СМЭВ) задумывалась как цифровая среда предоставления услуг и исполнения государственных и муниципальных функций в электронной форме.
В настоящее время СМЭВ продолжает расширять свои возможности и вовлекать все большее количество участников взаимодействия.
Что оказалось как нельзя кстати, в том числе для коммерческих организаций, в частности банков, которые все больше стремятся перевести свои услуги в цифру и сериализовать процессы.
Может возникнуть вопрос. Почему своими силами? Когда для СМЭВ 3 есть целый Технологический портал, где
По той простой причине, что уже есть собственная информационная система, работающая с форматами электронной подписи XMLDSig, XAdES, в которой применяются библиотеки проекта Apache Santuario, реализующие основные стандарты безопасности для XML. А также библиотеки, входящие в состав КриптоПро JCSP, помимо работы с XML, обеспечивающие API криптографических функций СКЗИ КриптоПро CSP.
Написание собственных методов для работы с электронными подписями СМЭВ 3 в данном случае выглядит более целесообразно, нежели разворачивание полного клиента поставляемого:
ФГБУ НИИ «Восход» (до 21 марта 2016 года ФГУП НИИ «Восход») или интеграция, его отдельных классов и пакетов.
В то же время заглянуть в открытый код клиента всегда полезно, а его наличие само по себе говорит о зрелости системы и высоком уровне поддержки.
Анализ исходных данных
Открываем пример конверта СМЭВ 3 SendRequestRequestNoAttach.xml
- больше не используется прием с выносом из содержимого тега Signature в Security заголовок элемента BinarySecurityToken с сертификатом открытого ключа проверки электронной подписи и ссылкой на него через SecurityTokenReference в теле самого Signature, как, например, в СМЭВ 2.4.6. Теперь сертификат должен находиться внутри Signature.
- второе и, по сути, самое существенное и важное изменение, оказывающее большое влияние на процесс подписи — это добавление новой проприетарной трансформации:
Каноникализация — процесс приведения данных, имеющих несколько возможных форм представления, к одному нормализованному стандартному виду.
Перед тем как посчитать хэш подписываемого атрибута в XML-конверте и подписать, необходимо выполнить его конвертацию в заданный правилами СМЭВ 3 вид.
В поисках описания трансформации urn://smev-gov-ru/xmldsig/transform открываем Методические рекомендации 3.4.0.3
Трансформация, дополнительно к канонизации urn://smev-gov-ru/xmldsig/transform
Требования к форматированию В XML-структуре подписи между элементами не допускается наличие текстовых узлов, в том числе переводов строки.
Пункт Методических указаний 12.4. ПРИЛОЖЕНИЕ 4: ОБРАЗЦОВАЯ РЕАЛИЗАЦИЯ ТРАНСФОРМАЦИИ URN://SMEV-GOV-RU/XMLDSIG/TRANSFORM
содержит Java класс SmevTransformSpi.java, реализующий алгоритм трансформации «urn://smev-gov-ru/xmldsig/transform», наследник org.apache.xml.security.transforms.TransformSpi из библиотеки Apache Santuario.
Таким образом, чтобы обеспечить каноникализацию подписываемого конверта СМЭВ 3, можно использовать в своем коде этот класс трансформации.
Единственным условием и ограничением в этом случае будет, что для обработки XML-документа при формировании подписи или ее проверки нужно использовать именно org.apache.xml.security.signature.XMLSignature из проекта Apache Santuario.
Задействовать инструменты из пакетов javax.xml.crypto.dsig или ru.CryptoPro.JCPxml.xmldsig просто так уже не получится.
Подготовка к подписи по правилам СМЭВ 3
Apache Santuario изначально ничего не знает про ГОСТ криптографические алгоритмы и СКЗИ КриптоПро.
В библиотеке xmlsec-1.5.0.jar в файле \org\apache\xml\security\resource\config.xml содержатся настройки только для работы с зарубежными криптографическими алгоритмами.
Чтобы он начал распознавать и применять ГОСТ, нужно выполнить его инициализацию.
По старинке это делалось так:
В новых версиях КриптоПро JCP (JCSP) инициализацию выполнит одна строчка:
Теперь нужно Apache Santuario научить новым правилам трансформации, которые диктует СМЭВ 3. Для этого регистрируем класс трансформации:
Заодно сразу выполняем требование из Методических указаний:
Требования к форматированию В XML-структуре подписи между элементами не допускается наличие текстовых узлов, в том числе переводов строки.
Делается это в привилегированном блоке AccessController.doPrivileged
и через reflection, из-за особенности реализации свойства ignoreLineBreaks в Santuario.
Просто через настройку системного свойства:
Через настройку опции JVM:
Если взглянуть на код класса org.apache.xml.security.utils.XMLUtils, то можно увидеть, что поле ignoreLineBreaks статическое, инициализируется в привилегированном блоке из системного свойства «org.apache.xml.security.ignoreLineBreaks».
Такая реализация приводит к невозможности гибко настроить в одном Java процессе для части методов игнорировать перевод строк, а для другой части не игнорировать.
Т.е., если одно приложение выполняет подписи XMLDsig, СМЭВ 2 и СМЭВ 3, все XML документы, обработанные Santuario должны на выходе лишиться перевода строк.
С этим свойством, конечно, возникает вопрос к Apache Santuario:
Для подписи документов СМЭВ 3 все готово.
Код подписания выглядит следующим образом:
Основными параметрами здесь являются:
Код проверки подписи выглядит следующим образом:
Проблемы. Хэш не совпадает
Несмотря на то, что метод подписи и трансформация SmevTransformSpi, взятая из Методических указаний, отрабатывали, на выходе был подписанный документ, подпись которого при онлайн-проверке на портале СМЭВ 3 трактовалась как
ЭП-ОВ не подтверждена: Ошибка проверки ЭП: Нарушена целостность ЭП
не совпадал с оригинальным примером:
Для диагностики причин в класс SmevTransformSpi в метод process был добавлен свой XMLEventWriter.
для параллельного анализа всех этапов трансформации.
Нормализованный элемент XML, на который требуется поставить подпись, выглядел следующим образом:
Поиск решения показал, что, во-первых форум КриптоПро, нормализованный документ может выглядеть на самом деле иначе и соответственно его хэш будет другой и возможно правильный.
Во-вторых, привел в GitHub, где был выложен класс SmevTransformSpi более старой версии.
Старая версия класса трансформации выдала следующий нормализованный документ:
С ним хэш стал совпадать, а подпись успешно проходить валидацию.
Сравнение версий класса SmevTransformSpi показала, что помимо добавленных в новой реализации дополнительных функций логирования и диагностики в debug режиме:
Класс из Методических указаний не содержит нужную строчку, или содержит опечатку:
, которая удаляет первый объект из стека с префиксами
, что приводило к неверной работе SmevTransformSpi.
Добавление этой строки в новую версию SmevTransformSpi.java решило проблему.
Результаты
Подписание конвертов СМЭВ 3 выполняется успешно.
Читайте также: