CryptoPro CSP: ошибка 0x80090031 (NTE_SILENT_CONTEXT) в Windows 10/11 — как исправить (2026)

Если при подписи, входе на госуслуги или работе с ЭЦП вы видите 0x80090031 (NTE_SILENT_CONTEXT), это почти всегда означает одно: CryptoPro хотел показать запрос PIN или подтверждение, но «не смог» сделать это тихо и незаметно. Ниже простой план, который обычно возвращает подпись к жизни за 15–40 минут.
Коротко: что проверить сразу
- Токен/смарт-карта определяется в Windows (вставьте заново, попробуйте другой USB-порт).
- Сертификат установлен с приватным ключом (в «Сертификаты» должен быть значок ключа).
- Подпись делаете в поддерживаемом браузере/приложении и плагин CAdES включён.
- Если раньше работало, а после обновления перестало: сначала обновляем/переустанавливаем компоненты по порядку.
1) Что это за ошибка простыми словами
NTE_SILENT_CONTEXT часто появляется, когда CryptoPro работает в «тихом режиме», но по факту ему нужно спросить у вас PIN-код, показать окно выбора сертификата или подтверждение операции. Если диалог заблокирован политикой, не может всплыть поверх окна, или программа запущена без нужных прав, CryptoPro не получает ответ и отдаёт ошибку.
Хорошая новость: в большинстве случаев это не «сломанный сертификат», а настройка.
2) Быстрый план: от простого к сложному
Двигайтесь по пунктам. После каждого шага попробуйте снова подписать документ или выполнить операцию, где была ошибка.
- Переподключите токен (лучше в USB 2.0 на ПК, без удлинителей/хабов).
- Перезагрузите компьютер (да, банально, но после обновлений драйверов и CryptoPro это важно).
- Откройте CryptoPro CSP и проверьте, что контейнер виден и читается (подробно ниже).
- Проверьте, появляется ли запрос PIN. Если запрос PIN не появляется нигде, значит причина почти точно в «диалогах» или правах.
- Обновите CryptoPro CSP и CAdES Browser Plug-in (если работаете в браузере).
3) Проверяем токен и контейнер в CryptoPro
Это самый понятный тест: если контейнер читается, CryptoPro и драйвер токена живые.
- Откройте Пуск → найдите КриптоПро CSP.
- Перейдите: Сервис → Просмотреть сертификаты в контейнере.
- Нажмите Обзор и выберите ваш носитель (Рутокен/JaCarta/eToken и т.д.).
- Если попросит PIN, введите его. Если PIN вводится и сертификат показывается, контейнер рабочий.
Если на этом шаге уже вылетает 0x80090031 или окно PIN не появляется, переходим к пунктам про права и диалоги.
4) Права, окна PIN и «почему ничего не спрашивает»
Очень частый сценарий: подпись запускается из программы/браузера, который работает без админ-прав, а CryptoPro/драйвер токена пытается показать диалог в другом контексте и не может.
4.1 Запуск от имени администратора (для проверки)
- Закройте браузер/приложение.
- Клик правой кнопкой → Запуск от имени администратора.
- Повторите подпись.
Если после этого заработало, значит причина в правах или в том, что диалог PIN не мог показаться. В таком случае можно оставить запуск как обычно, но дальше поправить настройки/политику, чтобы работало без «админа».
4.2 Разрешаем всплывающие окна и блокировки
В браузере проверьте:
- Отключите блокировщик всплывающих окон для сайта подписи.
- Разрешите открытие окон/вкладок и работу расширения CryptoPro (если оно есть).
- Если стоит сторонний антибаннер, временно выключите для проверки.
4.3 Если подпись в отдельной программе
В некоторых программах диалог PIN может уходить «за окно». Совет простой:
- Сверните все окна и посмотрите, не появилось ли маленькое окно ввода PIN.
- Проверьте панель задач: иногда окно есть, но не на переднем плане.
5) Обновляем CryptoPro и плагин правильно (без лишней боли)
Если ошибка появилась после обновлений Windows или «вдруг вчера работало», лучше обновить компоненты.
- Скачивайте CryptoPro CSP только с официального сайта CryptoPro.
- Плагин для браузера: CryptoPro CAdES Browser Plug-in тоже берём с официального сайта CryptoPro.
Важно: после установки/обновления CSP и плагина перезагрузите ПК. Без перезагрузки часть служб и библиотек могут остаться старой версии.
CMD (Администратор) — выполнять по одной:
sc query cryptsvc
sc query "Crypto-Pro CSP"
sc query "Crypto-Pro Key Container Service"
Если какие-то службы не находятся или не запускаются, это уже подсказка: установка повреждена или не хватает компонентов. Тогда помогает переустановка CSP поверх (с сохранением лицензии) и драйверов токена.
6) PIN-код: частые ловушки
- Неверный PIN. После нескольких попыток токен может заблокироваться. Если сомневаетесь, лучше остановиться и уточнить PIN/PUK.
- PIN сохранён «тихо» (когда-то ставили галочку «не спрашивать»). Иногда это ломается после обновлений. Помогает сброс кэша/настроек токена.
- Смешались драйверы (например, старый и новый драйвер Рутокена). Тут помогает чистая переустановка драйверов.
Если PIN вообще не спрашивается, а ошибка появляется сразу, это обычно про «контекст и диалоги». Смотрите пункты 4 и 7.
7) Политики и настройки CryptoPro: что проверить
Иногда проблема вызвана настройками «не показывать диалоги» или ограничениями безопасности.
- Откройте КриптоПро CSP → вкладка Оборудование → убедитесь, что ваш носитель виден.
- Вкладка Сервис → Проверить (если есть такая кнопка) или «Просмотреть сертификаты в контейнере».
- Если у вас корпоративный ПК: возможны групповые политики, которые запрещают запросы PIN или блокируют плагины.
PowerShell (Администратор) — выполнить целиком:
gpresult /h "$env:TEMP\gp.html"
Start-Process "$env:TEMP\gp.html"
Откроется отчёт по политикам. Если там есть жёсткие ограничения на криптопровайдеры/браузер, лучше согласовать с админом или настроить исключения.
8) Если ошибка в браузере (госуслуги, ЭДО, кабинеты)
Тут чаще всего виноваты плагин/расширение и кеш.
- Обновите CryptoPro CAdES Browser Plug-in.
- Проверьте, что расширение включено (в Edge/Chrome: «Расширения»).
- Очистите кеш и cookies для конкретного сайта.
- Попробуйте другой браузер (часто Edge работает стабильнее).
Win+R — вставить и нажать Enter (откроет настройки расширений Edge):
msedge://extensions/
Если расширение отсутствует, значит ставился только плагин, а расширение не установлено или отключено.
9) Диагностика: что сказать мастеру или что смотреть самому
Если не получилось, соберите минимум информации. Это ускорит решение в разы.
PowerShell (Администратор) — выполнять по одной:
Get-PnpDevice -Class SmartCardReader | Select-Object Status, FriendlyName
Get-ItemProperty "HKLM:\SOFTWARE\Crypto Pro\Settings" -ErrorAction SilentlyContinue
Get-Process | Where-Object {$_.Name -match "cprocsp|csptest|chrome|msedge"} | Select-Object Name, Id
Нас интересует: видит ли Windows считыватель, есть ли настройки CryptoPro и в каком процессе происходит ошибка.
10) Типичные причины, почему NTE_SILENT_CONTEXT появляется снова
- Обновили Windows и не перезагрузили после CryptoPro/драйверов.
- Работа через USB-хаб и токен периодически отваливается.
- Смешались версии CSP/плагина/драйвера токена.
- Сайт открывается во «встроенном» окне программы, где диалоги PIN блокируются.
- Антивирус/защита браузера режет расширение или подпись.
FAQ
Почему ошибка появляется только у одного пользователя на одном ПК?
Часто дело в правах профиля, настройках браузера, расширениях или сохранённом PIN/кэше. Начните с запуска браузера от имени администратора для проверки и очистки данных сайта.
Можно ли просто переустановить всё и забыть?
Можно, но лучше сначала понять причину: иногда достаточно включить расширение или поправить диалоги PIN. Переустановка полезна, если компоненты разных версий конфликтуют.
Токен видно, но контейнер не открывается и PIN не спрашивает. Что делать?
Это как раз похоже на «тихий контекст». Проверьте права, всплывающие окна, запуск от администратора и переустановку драйвера токена. Если токен корпоративный, уточните политики безопасности.