Ошибки 0x800B010A и 0x800B0109 появляются при подписании, отправке отчёта или входе по ЭЦП (электронная цифровая подпись): Windows не может проследить ваш сертификат до доверенного корневого. Обычно в системе просто нет одного-двух сертификатов удостоверяющего центра, и их достаточно установить
Коротко: что делать
- Откройте свой сертификат двойным щелчком
- На вкладке Путь сертификации проверьте поле Состояние сертификата
- Скачайте недостающие сертификаты на сайте своего удостоверяющего центра или ФНС
- Установите их через Установить сертификат: корневые в доверенные корневые, остальные в промежуточные
- Закройте программу и откройте её заново
- Повторите действие
- Если ошибка осталась, попробуйте поставить сертификат удостоверяющего центра в промежуточные или позовите инженера
Что означает ошибка
0x800B0109 - константа CERT_E_UNTRUSTEDROOT. Текст Windows: «Цепочка сертификатов обработана, но завершена в корневом сертификате, который не является доверенным поставщиком доверия». Она выстроилась, но верхнее звено компьютер не считает надёжным
0x800B010A - константа CERT_E_CHAINING. Текст: «Не удалось создать цепочку сертификатов для доверенного корневого центра». Цепочка не выстроилась вовсе: не хватает звена
В окне сертификата Windows это выглядит как «Этот сертификат не удалось проверить, проследив его до доверенного центра сертификации»
Как устроена цепочка. Ваш сертификат подписан сертификатом удостоверяющего центра (УЦ), тот - сертификатом вышестоящего центра, и так до корневого. Чтобы доверять вашей подписи, компьютер должен знать всю эту цепочку. Обе ошибки есть в справочнике кодов ошибок
Причины
- В системе нет сертификатов цепочки: головного удостоверяющего центра (ГУЦ) и УЦ, который выдал вашу подпись
- Установлены не все звенья: корневой есть, а промежуточного нет
- Сертификаты стоят не в тех хранилищах
- Смешаны сертификаты тестовой и рабочей цепочек
- Вы поставили не тот корневой сертификат, например сертификат для сайтов вместо корня для КЭП (квалифицированная электронная подпись)
Диагностика
- Найдите файл сертификата или откройте его из КриптоПро CSP
- Дважды щёлкните по сертификату и перейдите на вкладку Путь сертификации
- Посмотрите поле Состояние сертификата. Если там написано, что сертификат не удалось проверить до доверенного центра, цепочка неполная
- Если подпись выдана ФНС, сверьте дату выдачи со страницей ресурсов УЦ ФНС: корневой сертификат зависит от даты выдачи
Решение
Установить недостающие сертификаты
- Определите, кто выдал вашу подпись, по вкладке Путь сертификации
- Скачайте корневой сертификат и сертификат УЦ на сайте этого центра. Для подписи ФНС - на странице ресурсов удостоверяющего центра ФНС
- Для ГУЦ ссылка с этой страницы ФНС:
http://crl.gosuslugi.ru/cdp/guc2022.crt - Дважды щёлкните по скачанному файлу
- Нажмите Установить сертификат
- Корневые сертификаты (ГУЦ и УЦ, выдавший подпись) поместите в Доверенные корневые центры сертификации, остальные сертификаты цепочки - в Промежуточные центры сертификации
- Повторите для каждого недостающего файла
- Перезапустите браузер или программу
- Повторите подписание
Подробнее про корни Минцифры и ФНС - в статье корневые сертификаты Минцифры
⚠️ Устанавливайте сертификаты только с сайта удостоверяющего центра, ФНС или Минцифры. Файл «корневого» сертификата из случайной статьи или с форума ставить нельзя: чужой корневой сертификат вы признаёте надёжным для всего компьютера
Проверить, что сертификаты встали на место
- Нажмите Win+R, введите
certmgr.mscи нажмите Enter. Откроется хранилище текущего пользователя - Раскройте Доверенные корневые центры сертификации, затем Сертификаты, и найдите корневой сертификат вашего центра
- Так же проверьте Промежуточные центры сертификации
- Для хранилища всего компьютера вместо
certmgr.mscвведитеcertlm.msc - Если сертификата нет, повторите установку
- Выберите хранилище вручную
Если после установки корня ошибка осталась
Источники расходятся, куда именно ставить сертификат УЦ, выдавший подпись. Если после установки корня ошибка осталась, попробуйте поставить сертификат УЦ в Промежуточные центры сертификации, а не в доверенные корневые, и проверьте цепочку заново на вкладке Путь сертификации
Что проверяет инженер
Инженер может проверить сертификат командой с загрузкой сертификатов центров и списков отзыва. Команда запускается в командной строке, вместо сертификат.cer подставьте путь к файлу:
certutil -verify -urlfetch сертификат.cer
Параметр -urlfetch скачивает и проверяет сертификаты центров и списки отзыва. Вывод длинный и рассчитан на специалиста: если не уверены, что он вам понятен, не разбирайте его сами
Если вместо цепочки ошибка про список отзыва, смотрите 0x80092013 и 0x80092010. Если сертификат не виден в программе совсем - КриптоПро не видит сертификат
Если не помогло
Если цепочка сертификатов так и не собралась, а отчёт или документ нужно отправить сегодня, инженер ProKEP.ru подключится удалённо и установит недостающие сертификаты при вас
- подключение через RuDesktop, вы видите все действия на экране
- PIN-код вы вводите сами, инженер не просит его назвать и не копирует ключи
- после работы - официальный чек самозанятого
Как связаться с инженером и сколько это стоит - на странице помощи инженера
Частые вопросы
Чем 0x800B0109 отличается от 0x800B010A?
0x800B010A значит, что Windows не смогла выстроить цепочку сертификатов до корневого центра, то есть в системе не хватает одного из звеньев. 0x800B0109 значит, что цепочка выстроена, но заканчивается корневым сертификатом, которому компьютер не доверяет. Лечатся они похоже: нужно установить недостающие сертификаты удостоверяющего центра
Где взять корневой сертификат для исправления ошибки?
Только у источника: на сайте удостоверяющего центра, который выдал подпись, или в самом центре. Для подписей ФНС - на странице ресурсов удостоверяющего центра ФНС на nalog.gov.ru. Не скачивайте корневой сертификат со сторонних сайтов и из случайных статей
В какое хранилище ставить сертификат удостоверяющего центра?
По инструкции для Честного знака, головной удостоверяющий центр и центр, выдавший подпись, ставят в Доверенные корневые центры сертификации, остальные сертификаты цепочки - в Промежуточные центры сертификации. Другие источники советуют ставить сертификат удостоверяющего центра в Промежуточные, поэтому если после установки корня ошибка осталась, попробуйте второй вариант
Можно ли отключить проверку цепочки, чтобы подписать документ?
Нет. Отключение проверки не устраняет причину, а подпись с непроверенной цепочкой площадка или ведомство всё равно не примет. Нужно установить недостающие сертификаты, а не отключать проверку