Как правильно перенести сертификаты из ViPNet в КриптоПро для корректной работы в 1С?

Системный администратор 1С v8.3 (Управляемые формы) Налоговый учет IT и автоматизация бизнеса
← На главную

С изменением правил выдачи квалифицированных электронных подписей (КЭП) со стороны ФНС России, многие пользователи столкнулись с необходимостью перехода с программного обеспечения ViPNet CSP на КриптоПро CSP. Основная сложность заключается в том, что эти два криптопровайдера используют разные структуры контейнеров закрытых ключей, и простое копирование файлов здесь не поможет. Кроме того, одновременное нахождение обеих программ на одном компьютере (особенно на Windows Server) часто приводит к программным конфликтам, из-за которых 1С «перестает видеть» подписи. В этой статье мы подробно разберем, как осуществить миграцию корректно и избежать типичных ошибок.

Анализ проблемы несовместимости контейнеров

Прежде всего, проанализируем ситуацию: почему нельзя просто перенести папку с ключами? Криптопровайдеры ViPNet и КриптоПро работают с разными форматами хранения данных. Для успешного переноса нам потребуется промежуточный формат — PKCS#12 (файл с расширением .pfx). Этот стандарт позволяет упаковать и открытый сертификат, и закрытый ключ в один зашифрованный архив.

Важно помнить: экспорт закрытого ключа возможен только в том случае, если при его создании в ViPNet была установлена пометка «Экспортируемый». Если ключ помечен как неэкспортируемый, штатно перенести его не удастся — в этом случае потребуется только перевыпуск КЭП в Удостоверяющем центре ФНС сразу под КриптоПро.

Шаг 1. Правильный экспорт ключа из ViPNet CSP

Рассмотрим пошагово процесс подготовки файла для миграции. Основная ошибка пользователей на этом этапе — экспорт «голого» сертификата без связки с закрытым ключом или без дополнительных свойств.

  1. Откроем монитор ViPNet CSP и найдем нужный контейнер.
  2. Запустим процедуру экспорта сертификата в файл .pfx.
  3. Критически важный момент: в мастере экспорта обязательно установим флаг «Экспортировать дополнительные свойства». Как показывает практика, без этой галочки КриптоПро при импорте может некорректно интерпретировать расширенные атрибуты ключа, что приведет к его установке в хранилище «Другие пользователи» вместо «Личное».
  4. Зададим пароль на pfx-файл. Постарайтесь не забыть его, так как он потребуется при импорте в КриптоПро.

Шаг 2. Полная очистка системы от ViPNet

Выясним причину, по которой 1С часто не видит новый криптопровайдер даже после успешной установки. Дело в том, что в реестре Windows за определенные типы алгоритмов ГОСТ отвечают конкретные ветки. Если ViPNet был удален некорректно, он может оставлять за собой «хвосты», которые перехватывают обращения 1С к криптографии.

Проанализируем алгоритм правильной очистки:

Важное замечание: Если вы сначала установили КриптоПро, а потом удалили ViPNet, рекомендуется выполнить «Исправление» (Repair) установки КриптоПро через панель управления. Это позволит программе заново прописать себя в качестве основного провайдера ГОСТ-алгоритмов.

Шаг 3. Импорт сертификата в КриптоПро 5.0

Теперь разберем, как правильно принять файл .pfx. Мы рекомендуем использовать встроенные инструменты КриптоПро CSP версии 5.0, так как они обладают наиболее совершенными механизмами импорта сторонних контейнеров.

  1. Запустим «Инструменты КриптоПро» (или классическую панель управления КриптоПро CSP).
  2. Перейдем на вкладку «Сервис» и выберем пункт «Импорт сертификата».
  3. Укажем путь к нашему .pfx файлу.
  4. При импорте выберем автоматическое создание контейнера. Система предложит выбрать место хранения (реестр, токен или папка). На Windows Server чаще всего выбирают «Реестр» для обеспечения доступа к ключу из-под разных сессий (если это разрешено политикой безопасности).
  5. Убедимся, что сертификат попал в хранилище «Личное» (My) текущего пользователя.

Шаг 4. Решение проблемы «Другие пользователи» и принудительная связка

Если после импорта сертификат всё равно оказывается в «Других пользователях» или отображается без значка закрытого ключа (маленький ключик на иконке сертификата), проанализируем ситуацию через командную строку. Часто системе нужно «подсказать», где лежит закрытый ключ.

Выполним команду certutil для восстановления связки:


certutil -repairstore my "Серийный_номер_вашего_сертификата"

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

Шаг 5. Настройка 1С:Предприятие после миграции

После того как КриптоПро успешно видит ключ, перейдем к настройке 1С. Рассмотрим типичные места, где 1С «теряет» связь с криптографией.

  1. Откроем 1С и перейдем в раздел «Администрирование» — «Настройки программы» — «Криптография и шифрование».
  2. Проверим список программ. Если там до сих пор значится ViPNet, его необходимо удалить из списка или деактивировать.
  3. Добавим новую запись для КриптоПро. Обычно используется тип провайдера 75 (для ГОСТ 2001) или 80 (для ГОСТ 2012). В современных версиях 1С достаточно выбрать пресет «Crypto-Pro GOST CSP».
  4. Нажмем кнопку «Проверить». Если все настройки верны, 1С должна выдать зеленые галочки напротив пунктов «Установка программы», «Сертификат», «Закрытый ключ».

Особенности для Windows Server: Если 1С работает в клиент-серверном варианте, помните, что проверка подписи может происходить на стороне сервера. В этом случае КриптоПро и сам сертификат с закрытым ключом должны быть установлены на сервере под той учетной записью, от которой запущена служба «Агент сервера 1С:Предприятие» (например, USR1CV8). Если ключ установлен в реестр текущего пользователя (администратора), сервер 1С его просто не увидит.

Работа с физическими токенами (ФНС)

Выясним ситуацию с ключами на аппаратных носителях (Рутокен, JaCarta). Если ваша подпись от ФНС изначально находится на защищенном токене, процедура «переноса» значительно упрощается. Вам не нужно экспортировать .pfx. Достаточно:

Программа сама свяжет аппаратный ключ с сертификатом, и он станет доступен в 1С. Ключи на токенах ФНС, как правило, являются неэкспортируемыми, поэтому работа с ними напрямую через считыватель КриптоПро — самый надежный и безопасный вариант.

Таким образом, залогом успешного перехода является полная деинсталляция старого ПО, использование правильных опций экспорта (дополнительные свойства) и корректная настройка параметров криптографии внутри самой 1С. Следуя этим шагам, вы обеспечите бесперебойную работу 1С-Отчетности и других сервисов электронного документооборота.

← На главную