CryptoPro: сайт выбирает не тот сертификат или показывает дубликаты. Как навести порядок и вернуть нормальную подпись (2026)

Типичная история после перевыпуска подписи, обновления Windows или переустановки CryptoPro: заходите на сайт (банк, ФНС, Госуслуги, ЭДО, торговая площадка), а там два похожих сертификата, или сайт упорно берёт старый, или подпись то проходит, то нет. Это почти всегда не «магия», а бардак в хранилищах сертификатов Windows и в ключевых контейнерах. Ниже разберёмся по-человечески, без лишней теории.
Коротко: почему так происходит
- Windows хранит сертификаты сразу в нескольких местах (для пользователя и для компьютера).
- После перевыпуска старый сертификат часто остаётся в системе.
- Браузер показывает список не из CryptoPro, а из хранилища Windows.
- Иногда сертификат есть, а приватного ключа уже нет, и сайт путается.
Перед началом: как не сделать хуже
Мы будем удалять только то, что действительно лишнее. Но есть правила, которые лучше соблюдать:
- Если подпись единственная и Вы не уверены, что она рабочая, сначала сделайте резервную копию (обычно это делает УЦ или администратор).
- Если сертификат хранится на токене (Рутокен/JaCarta), сам ключ обычно не исчезнет, даже если убрать лишние копии сертификата в Windows.
- Если сертификат программный (в контейнере на диске), удалять без понимания опаснее. Если сомневаетесь, лучше остановиться на диагностике.
Как понять, какой сертификат “правильный”
Обычно правильный сертификат определяется так:
- он не просрочен (срок действия актуальный);
- в нём есть отметка, что есть приватный ключ;
- он соответствует нужной организации/ФИО/ИНН;
- чаще всего он “свежий”, выдан недавно после перевыпуска.
Дальше мы аккуратно добьёмся ситуации, когда в списке выбора остаётся только актуальный сертификат (или хотя бы два, но без “мёртвых” дублей).
1) Проверяем сертификаты через стандартный менеджер Windows (без команд)
Самый понятный для новичка способ — открыть хранилище сертификатов текущего пользователя.
Win + R → вводим certmgr.msc → Enter.
Дальше:
- Слева откройте «Личное» → «Сертификаты».
- В правой части найдите сертификаты с Вашим именем/организацией.
- Откройте каждый двойным кликом и посмотрите:
- срок действия;
- назначение (подпись/аутентификация);
- вкладку «Путь сертификации» (не должно быть явной ошибки доверия);
- самое важное: внизу обычно есть строка “У вас есть закрытый ключ, соответствующий этому сертификату”. Если её нет, сертификат часто бесполезен для подписи.
Если Вы видите 2-3 сертификата и у одного явно нет приватного ключа — это уже кандидат на удаление, но удаляем позже, когда убедимся окончательно.
2) Проверяем, не лежат ли дубли в хранилище компьютера (LocalMachine)
Иногда сертификаты попадают не только “для пользователя”, но и “для компьютера”. Тогда браузер может показывать лишнее.
Важно: этот шаг требует прав администратора.
Командная строка (Администратор). Команду вставить целиком:
mmc.exe
Дальше в открывшейся консоли:
- Меню «Файл» → «Добавить или удалить оснастку».
- Выберите «Сертификаты» → «Добавить».
- Выберите «Учетная запись компьютера» → «Локальный компьютер» → «Готово».
- Откройте «Личное» → «Сертификаты» и посмотрите, нет ли там копий того же сертификата.
Если в LocalMachine лежит старый сертификат, а у пользователя новый, некоторые сайты/компоненты реально могут путаться.
3) Проверяем контейнеры в CryptoPro: есть ли ключи и не “оторвался” ли сертификат
Откройте CryptoPro CSP → вкладка «Сервис».
- Откройте «Просмотреть контейнеры» и убедитесь, что контейнер(ы) видны.
- Потом откройте «Просмотреть сертификаты в контейнере» и проверьте, что актуальный сертификат действительно находится в контейнере.
Почему это важно: Windows может показывать красивый сертификат, но если он не привязан к контейнеру или контейнер не читается, подпись будет “через раз” или не будет вовсе.
4) Быстрый тест: список контейнеров через csptest
Этот шаг помогает быстро понять, видит ли CryptoPro ключи нормально.
Командная строка (Администратор). Команду вставить целиком:
csptest -keyset -enum_cont
Если контейнеры не выводятся или есть ошибки чтения, сначала решаем проблему с токеном/драйвером, а уже потом чистим сертификаты.
Официальные страницы драйверов (скачивать только оттуда):
5) Убираем “мёртвые” дубликаты: аккуратная чистка
Сначала чистим самое безопасное: сертификаты, которые точно не используются.
Что обычно можно удалить без боли:
- просроченные сертификаты, которые точно старые и уже не применяются;
- сертификаты без приватного ключа (если у Вас есть второй, рабочий, с ключом);
- дубликаты одного и того же сертификата в одном хранилище (иногда копируется два раза).
Как удалять правильно (через certmgr.msc):
- Откройте
certmgr.msc. - «Личное» → «Сертификаты».
- Правой кнопкой по ненужному сертификату → «Удалить».
- Перезапустите браузер и проверьте выбор сертификата на сайте.
Если дубликаты есть в LocalMachine: удаляйте их только если уверены, что они не требуются для рабочих задач на этом ПК. В сомнительных случаях лучше ограничиться хранилищем текущего пользователя.
6) Если сайт всё равно берёт не тот: наводим порядок в браузере
Большинство современных браузеров (Chrome, Edge, Яндекс) берут сертификаты из хранилища Windows. Поэтому после чистки важно:
- полностью закрыть браузер (включая фоновые процессы);
- открыть заново и зайти на сайт.
Если браузер упрямо показывает старый список, сделайте так:
- Закройте браузер.
- Откройте Диспетчер задач и убедитесь, что процессов браузера не осталось.
- Подключите токен заново (лучше в другой USB-порт, без хабов).
- Откройте браузер и повторите попытку.
Ещё важный момент: иногда сайт запоминает выбор сертификата в рамках сессии. Тогда помогает выход из аккаунта на сайте и повторный вход.
7) Переустановка CryptoPro: когда она действительно нужна
Если у Вас:
- контейнеры не перечисляются через csptest;
- CryptoPro CSP открывается с ошибками;
- после обновления Windows подпись ломается на всех сайтах;
тогда можно переустановить CryptoPro.
Скачивать только с официального сайта:
Обычно порядок такой:
- Удалить CryptoPro через «Программы и компоненты».
- Перезагрузить ПК.
- Установить CryptoPro заново.
- Подключить токен и проверить контейнеры.
FAQ
У меня два сертификата, оба не просрочены. Как понять, какой удалить?
Смотрите на наличие приватного ключа и на данные владельца. Если один сертификат “без ключа”, он почти всегда лишний для подписи. Если оба с ключом, вероятно это два разных контейнера, тогда лучше ничего не удалять, а сначала выяснить, какой используется на конкретном сайте.
После удаления старого сертификата сайт всё равно не видит подпись.
Значит проблема не в дублях, а в контейнере/драйвере/плагине. Проверьте csptest и контейнеры в CryptoPro CSP, а также драйвер токена с официального сайта.
Может ли это быть из-за обновления Windows?
Да, особенно если обновление меняло компоненты безопасности или драйверы. Тогда часто появляются “лишние” копии в разных хранилищах или ломается привязка сертификата к контейнеру.
Удалил не то. Можно вернуть?
Если сертификат был на токене, чаще всего его можно заново “подтянуть” через CryptoPro и контейнер. Если сертификат был программный и был удалён вместе с ключом, восстановление может быть сложнее. В таких случаях лучше сразу остановиться и не делать дальнейших удалений.