КриптоПро 5 не видит встроенную в сертификат лицензию

Если в вашем сертификате электронной подписи есть встроенная лицензия КриптоПро CSP, например в сертификате, полученном через Казначейство, отдельная действующая лицензия на КриптоПро CSP для работы именно с этой электронной подписью не требуется.

Даже если в КриптоПро CSP 5.0 указано, что лицензия является демонстрационной, а её пробный срок уже истёк, сертификат со встроенной лицензией продолжает давать право на использование КриптоПро CSP при работе с этой электронной подписью. Это подтверждают специалисты КриптоПро.

При этом есть важное ограничение: встроенная лицензия относится только к конкретному сертификату, в который она включена. Кроме того, для её использования сертификат должен находиться внутри соответствующего ключевого контейнера.

Но иногда всё выглядит правильно:

  • сертификат установлен;
  • в сертификате присутствует встроенная лицензия;
  • закрытый ключ доступен;
  • контейнер электронной подписи присутствует;

а КриптоПро всё равно периодически показывает раздражающее сообщение:

«Истёк срок действия лицензии КриптоПро CSP»

Почему это может происходить

В первую очередь стоит проверить, действительно ли сертификат со встроенной лицензией связан с нужным ключевым контейнером. Представители КриптоПро при аналогичных проблемах рекомендуют убедиться, что сертификат записан непосредственно в контейнер закрытого ключа.

Есть и ещё один сценарий, с которым мы столкнулись на практике: на компьютере могут оставаться старые и уже не используемые ключевые контейнеры — например, от предыдущих сертификатов электронной подписи.

Некоторые из них могут быть давно неактуальны, но всё ещё присутствовать в системе. Поэтому при диагностике подобных проблем имеет смысл посмотреть полный список контейнеров и удалить те, которые точно больше не используются.

Важно: само наличие старого контейнера не означает автоматически, что именно он является причиной проблемы со встроенной лицензией. Это один из элементов диагностики, особенно если на компьютере за несколько лет накопилось множество старых ЭП.

Как посмотреть контейнеры КриптоПро в Windows

Запустите PowerShell от имени администратора и выполните:

& "C:\Program Files\Crypto Pro\CSP\csptest.exe" -keyset -enum_cont -fqcn -verifycontext

Команда выведет список доступных ключевых контейнеров.

Например:

\\.\REGISTRY\container_name_1
\\.\REGISTRY\container_name_2
\\.\FAT12_F\container_name_3

Имена действительно могут выглядеть довольно загадочно, поэтому удалять контейнеры наугад не стоит.

Утилита csptest, входящая в состав КриптоПро CSP, поддерживает перечисление и удаление ключевых контейнеров. В документации csptest для этого предусмотрены команды -enum_containers и -deletekeyset.

Как проверить конкретный контейнер

Если вы нашли подозрительный контейнер, его можно дополнительно проверить:

& "C:\Program Files\Crypto Pro\CSP\csptest.exe" -keyset -check -container "\\.\REGISTRY\old_container_name_here"

Вместо:

\\.\REGISTRY\old_container_name_here

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

Как удалить старый контейнер

Если вы точно убедились, что контейнер принадлежит старой и больше не используемой электронной подписи, его можно удалить:

& "C:\Program Files\Crypto Pro\CSP\csptest.exe" -keyset -deletekeyset -container "\\.\REGISTRY\old_container_name_here"

Использование csptest для удаления контейнеров является штатным способом: КриптоПро указывает, что утилита использует для этого документированный API криптопровайдера.

Внимание

Не удаляйте контейнер, если не уверены, что он больше не нужен.

Контейнер содержит закрытый ключ электронной подписи. Удаление действующего контейнера без резервной копии может привести к потере доступа к ключу.

После удаления заведомо неактуальных контейнеров проверьте работу электронной подписи повторно.

Если проблема осталась

Если окно с сообщением об истёкшей лицензии продолжает появляться, проверьте:

  1. действительно ли в нужном сертификате присутствует встроенная лицензия КриптоПро CSP;
  2. не истёк ли сам сертификат;
  3. имеется ли связь сертификата с закрытым ключом;
  4. записан ли сертификат со встроенной лицензией непосредственно в соответствующий ключевой контейнер.

В актуальных версиях КриптоПро наличие встроенной лицензии можно увидеть в информации о сертификате — например, в выводе certmgr должна присутствовать строка вида «Встроенная лицензия: КриптоПро CSP».

Не следует ориентироваться только на надпись о демонстрационной или истёкшей лицензии самого КриптоПро CSP: при использовании сертификата со встроенной лицензией состояние обычной демонстрационной лицензии не определяет возможность работы с этим сертификатом.

Нужна помощь?

Если вы не хотите самостоятельно разбираться в контейнерах, сертификатах и лицензиях КриптоПро, Услугус может помочь с диагностикой и настройкой рабочего места электронной подписи.

Напишите нам на contact@uslugus.ru или заполните форму обращения на сайте.

Разберёмся, какой сертификат и контейнер используются, проверим встроенную лицензию и постараемся избавиться от сообщения об истёкшей лицензии — без удаления нужной электронной подписи.

Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *