CryptoPro CSP: ошибка 0x8009000D (NTE_BAD_DATA) — подпись не работает, контейнер/сертификат «битый» (2026)

CryptoPro CSP: ошибка 0x8009000D (NTE_BAD_DATA) — подпись не работает, контейнер/сертификат «битый» (2026)

При подписи документов или входе на госуслуги/ЭДО выскакивает 0x8009000D (NTE_BAD_DATA)? Это одна из самых неприятных ошибок CryptoPro: вроде бы всё установлено, но ключ «не читается». Ниже простой план: от быстрых проверок для новичка до аккуратной «чистки» компонентов. Старался писать без лишней магии.

Коротко: что проверить сразу

  • Ошибка появляется везде (и в браузере, и в программах) или только в одном месте.
  • Токен/носитель (Рутокен, JaCarta и т.п.) виден в системе и без жёлтых значков в «Диспетчере устройств».
  • Подпись делаете именно тем сертификатом, где есть приватный ключ (в CryptoPro он должен отображаться как доступный).
  • Если носитель подключён через хаб или монитор, временно подключите его напрямую в USB ПК.
Нужна помощь? Могу подключиться удалённо: проверю CSP, драйвер токена, цепочку сертификатов, плагин браузера и помогу восстановить подпись без риска для ключей.

1) Сначала выясняем: где именно ломается подпись

От этого зависит решение. Самые частые сценарии:

  • Только в браузере (на сайте ЭДО/банка/кабинета), а в CryptoPro или CryptoPro Tools всё открывается.
  • В программе (КриптоАРМ, 1С, Word/Excel с подписью), а браузер вообще не при чём.
  • При установке/импорте сертификата или при просмотре контейнера.

Если ошибка только в браузере, чаще виноват плагин/расширение. Если везде, начинайте с носителя и контейнера.

2) Носитель и драйвер: самое простое, но часто решает

0x8009000D нередко появляется из-за нестабильного чтения ключа. Сделайте по порядку:

  1. Отключите токен, подождите 5 секунд, подключите снова.
  2. Подключите в другой USB-порт. Лучше в задние порты системника. На ноутбуке попробуйте порт с другой стороны.
  3. Если стоит USB-хаб, док-станция или монитор с USB, временно подключите токен без них.
  4. Откройте «Диспетчер устройств» → разделы «Смарт-карты» и «USB-контроллеры». Если видите ошибку устройства, сначала лечим драйвер.

Подсказка: если токен иногда «отваливается», а потом снова появляется, это почти всегда кабель/порт/питание USB или конфликт драйвера. Тогда переустановка плагина в браузере не поможет.

3) Проверяем контейнер и сертификат в CryptoPro

Дальше нужно убедиться, что ключ и сертификат действительно в порядке.

  • Откройте: Пуск → найдите CryptoPro CSP → «Сервис» / «Просмотр сертификатов в контейнере» (названия могут отличаться).
  • Выберите контейнер на носителе и проверьте, открывается ли он без ошибок.
  • В хранилище сертификатов Windows убедитесь, что ваш сертификат отмечен как имеющий приватный ключ (обычно в описании есть «Есть приватный ключ»).

Командная строка (Администратор) — выполнять по одной:

certutil -scinfo
certutil -user -store my

Первая команда покажет, видит ли система смарт-карту/токен и что с ним происходит. Вторая выведет список личных сертификатов текущего пользователя.

4) Если ошибка только в браузере: приводим в порядок плагин и расширение

Сейчас подпись в браузере обычно делает связка: CAdES Browser Plug-in + расширение/надстройка (зависит от браузера и сайта). Из-за обновлений браузера старое расширение может начать чудить.

  • Удалите старые расширения подписи, если их несколько (часто остаются «дубликаты»).
  • Переустановите CAdES-плагин с официального сайта CryptoPro.
  • Перезапустите браузер полностью (закройте все окна) и попробуйте снова.

Официальные страницы (скачивайте только оттуда): CryptoPro CAdES и CryptoPro CSP.

5) «Смешались версии» и хвосты после обновлений: безопасная переустановка

Если раньше подпись работала, а потом после обновления Windows/браузера/КриптоПро появилась 0x8009000D, часто виноваты остатки старых компонентов.

  1. Удалите только программные компоненты: CryptoPro CSP, CAdES Browser Plug-in, дополнительные надстройки.
  2. Перезагрузите ПК.
  3. Установите заново: сначала CryptoPro CSP, потом CAdES.
  4. Ещё раз перезагрузите.

Важно: удаление CryptoPro CSP не стирает ключи на токене. Но если контейнер лежит на диске (редко, но бывает), заранее сделайте резервную копию или попросите специалиста.

PowerShell (Администратор) — вставить целиком:

# Быстрая проверка: что установлено из CryptoPro
Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* |
  Where-Object { $_.DisplayName -match "CryptoPro|КриптоПро|CAdES" } |
  Select-Object DisplayName, DisplayVersion, Publisher |
  Sort-Object DisplayName

Если видите несколько строк про один и тот же компонент с разными версиями, это кандидат на «конфликт».

6) Диагностика: что говорит Windows и куда смотреть

Если после базовых шагов ошибка остаётся, полезно собрать минимальную картину:

PowerShell (Администратор) — выполнять по одной:

Get-PnpDevice -PresentOnly | Where-Object {$_.FriendlyName -match "Rutoken|JaCarta|Smart|Card|Смарт"} | Select-Object Status, Class, FriendlyName
Get-WinEvent -LogName Application -Max 200 | Where-Object {$_.Message -match "CryptoPro|CSP|CAdES|0x8009000D|NTE_BAD_DATA"} | Select TimeCreated, Id, ProviderName, Message

Первая команда покажет, как Windows видит носитель. Вторая поможет найти сообщения об ошибке от компонентов подписи.

7) Типичные причины 0x8009000D и что с ними делать

  • Контейнер ключа повреждён или частично не читается: обычно помогает только выпуск нового ключа/сертификата.
  • Драйвер токена устарел: ставьте драйвер с официального сайта производителя носителя.
  • Конфликт версий CSP и CAdES: переустановка в правильном порядке (CSP → CAdES) часто лечит.
  • Сертификат без приватного ключа: импортирован только публичный сертификат, а ключ в контейнере другой.
  • USB-питание/хабы: токен «прыгает» и чтение ключа срывается, особенно на фронтальных портах.

FAQ

Я боюсь «сломать подпись». Что самое безопасное начать делать?

Начните с простого: другой USB-порт, отключить хаб, проверить в «Диспетчере устройств». Дальше проверьте контейнер в CryptoPro. Переустановка CSP и CAdES тоже обычно безопасна для токена: ключи на носителе не стираются.

Ошибка появилась после обновления браузера. Это нормально?

Да, такое бывает. Браузеры часто меняют правила для расширений. Обычно помогает обновить CAdES-плагин и расширение, убрать дубликаты и перезапустить браузер.

Если контейнер повреждён, можно ли восстановить старый ключ?

Иногда помогает резервная копия контейнера, если она была сделана заранее. Если копии нет и носитель не читается стабильно, правильный путь обычно один: выпуск нового ключа и перевыпуск сертификата через ваш УЦ или администратора.

Читайте также: