Перенос электронной подписи из 1С на другой компьютер: сертификат, ключ и контейнер

· 9 мин

Содержание

Выгрузить ЭЦП из самой 1С нельзя: программа хранит только сертификат (открытую часть подписи), а закрытый ключ лежит в контейнере криптопровайдера — в реестре Windows, на флешке или на токене. Поэтому сертификат сохраняют в файл из настроек Администрирование → Общие настройки → Электронная подпись и шифрование, а ключ копируют средствами КриптоПро CSP: Сервис → Скопировать.

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

Что подготовить перед выгрузкой подписи

Перед копированием соберите всё, без чего операция остановится на середине:

  • 🔑 PIN-код или пароль контейнера. Без него КриптоПро не прочитает ключ. Для токенов Рутокен и JaCarta заводской PIN часто стандартный, но в организациях его обычно меняют.
  • 💾 Носитель-приёмник. Флешка, токен или реестр нового компьютера. На токене должно быть свободное место: один контейнер ГОСТ занимает несколько килобайт.
  • 🧾 Лицензия КриптоПро CSP на новом компьютере. Демо-период ограничен по времени, после него подписание перестанет работать.
  • 🖥 Права администратора Windows — понадобятся для установки КриптоПро и драйверов токена.
  • 📋 Список того, где используется подпись в 1С: 1С-Отчетность, 1С-ЭДО, подписание заявлений, обмен с маркировкой. После переноса проверять придётся каждое место.

Какой носитель выбрать для копии

  • 🗄 Реестр — удобно, если на компьютере работает один человек. Ключ не потеряется вместе с флешкой, но уйдёт при переустановке Windows.
  • 💽 Флешка — простой вариант для переноса и резервной копии. Защитите контейнер паролем: флешку легко потерять.
  • 🔐 Токен — самый защищённый вариант. Ключ не скопировать без PIN, а сам носитель удобно переносить между рабочими местами.

Не удаляйте контейнер со старого компьютера, пока не проверили подпись на новом. Если копия окажется битой, восстановить ключ можно будет только перевыпуском сертификата.

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

Где лежит ключ электронной подписи, которую видит 1С

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

Смотрим в 1С

  1. Откройте Администрирование → Общие настройки.
  2. Разверните группу «Электронная подпись и шифрование» и перейдите по ссылке настроек.
  3. На вкладке «Сертификаты» откройте нужный сертификат двойным щелчком.
  4. В карточке посмотрите, какая программа указана для работы с ключом, и нажмите Проверить.

Если проверка проходит на этом компьютере, ключ доступен локально — в реестре, на флешке или на подключённом токене. Если подпись облачная (например, подключена через сервис оператора), ключ хранится у оператора и выгружать с компьютера нечего.

Смотрим в КриптоПро CSP

  1. Запустите «КриптоПро CSP» от имени администратора.
  2. Вкладка «Сервис» → Просмотреть сертификаты в контейнере → Обзор.
  3. В списке видно имя контейнера и считыватель, на котором он лежит.
Считыватель в спискеГде ключМожно скопировать
Реестр (REGISTRY)В реестре Windows этого ПКДа, если ключ экспортируемый
Диск X (FAT12_X)На флешке, папка вида abcd1234.000Да
Aktiv Rutoken, JaCarta и подобныеНа токенеЗависит от типа токена и ключа
Ключа нет в спискеОблако или другой криптопровайдерСредствами компьютера — нет

Папка контейнера на флешке содержит шесть файлов: header.key, masks.key, masks2.key, name.key, primary.key, primary2.key. Если хотя бы одного нет, контейнер не откроется.

Сохраняем сертификат подписи из настроек 1С

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

  1. Откройте карточку сертификата: Администрирование → Общие настройки → Электронная подпись и шифрование → вкладка «Сертификаты».
  2. В карточке откройте меню Ещё и выберите команду сохранения сертификата в файл.
  3. Укажите папку. 1С сохранит файл с расширением .cer.

Тот же сертификат можно выгрузить и без 1С: в КриптоПро на вкладке «Сервис» нажмите Просмотреть сертификаты в контейнере, выберите контейнер, затем Свойства → Состав → Копировать в файл. Мастер экспорта Windows предложит формат: выбирайте «X.509 (.CER) в кодировке DER».

Файл .cer подписывать не умеет. Если на новом компьютере установить только его, 1С увидит сертификат, но при подписании сообщит, что закрытый ключ не найден.

Копируем контейнер с ключом через КриптоПро CSP

Это основной способ перенести ЭЦП, с которой работает 1С. Сертификат при этом переносится вместе с ключом.

  1. Вставьте носитель-приёмник: флешку или токен.
  2. Запустите КриптоПро CSP, вкладка «Сервис» → Скопировать.
  3. Нажмите Обзор и выберите контейнер-источник. Введите PIN, если программа его спросит.
  4. Задайте имя нового контейнера. Удобно добавить пометку: ООО Ромашка Иванов копия.
  5. Выберите носитель, на который копируете: флешку, токен или Реестр.
  6. Установите пароль на новый контейнер. Можно оставить прежний, но для флешки лучше задать надёжный.
  7. Дождитесь сообщения об успешном копировании.

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

Экспорт в PFX

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

  1. Откройте оснастку certmgr.msc → «Личное» → «Сертификаты».
  2. Правой кнопкой по сертификату → Все задачи → Экспорт.
  3. В мастере выберите «Да, экспортировать закрытый ключ» и задайте пароль на файл.

Если пункт про закрытый ключ серый, экспорт в PFX для этого ключа запрещён. Тогда переносите контейнер копированием, как выше.

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

Выгрузка контейнера из командной строки

Командная строка удобна, когда ключей много, нужно перенести подпись на сервер 1С или вы работаете через удалённый доступ. Утилиты ставятся вместе с КриптоПро CSP в папку C:\Program Files\Crypto Pro\CSP\.

Сначала выведите список контейнеров с полными именами:

cd "C:\Program Files\Crypto Pro\CSP"
csptest -keyset -enum_cont -verifycontext -fqcn

Полное имя выглядит так: \\.\REGISTRY\ООО Ромашка Иванов или \\.\FAT12_E\abcd1234. Его подставляют в команду копирования:

csptest -keycopy -contsrc "\\.\REGISTRY\ООО Ромашка Иванов" -contdest "\\.\FAT12_E\Romashka_copy" -pinsrc 12345678 -pindest 12345678

Здесь -contsrc — откуда копировать, -contdest — куда, -pinsrc и -pindest — пароли исходного и нового контейнера. Ключи -pinsrc и -pindest можно не указывать: тогда утилита спросит пароли в окне.

Сертификат из хранилища Windows выгружается штатной утилитой certutil. Сначала найдите серийный номер, затем сохраните файл:

certutil -user -store My
certutil -user -store My 0123456789abcdef C:\temp\cert.cer

Если имя контейнера содержит кириллицу и команда его не находит, проверьте кодировку консоли командой chcp. Проще всего при копировании дать новому контейнеру латинское имя.

Ручной перенос через реестр

Опытные администраторы иногда выгружают ветку реестра с контейнерами КриптоПро. На 64-разрядной Windows ключи пользователя лежат в разделе:

HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Crypto Pro\Settings\Users\<SID пользователя>\Keys

Выгруженный файл .reg на новом компьютере придётся править: SID пользователя там будет другим. Способ рабочий, но ошибиться в нём легко, поэтому без нужды используйте копирование через КриптоПро или csptest.

СпособКогда выбиратьРиски
КриптоПро, Сервис → СкопироватьОдин-два ключа, обычный ПКМинимальные
Экспорт в PFXКлюч экспортируемый, нужен один файлФайл легко утечёт
csptest -keycopyМного ключей, сервер, удалённый доступОшибка в имени контейнера
Экспорт ветки реестраМассовый перенос с правкой SIDБитый контейнер при ошибке

Устанавливаем подпись на новом компьютере и подключаем к 1С

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

Установка в Windows

  1. Установите КриптоПро CSP и введите серийный номер лицензии.
  2. Если ключ на токене, поставьте драйвер токена с сайта производителя.
  3. Вставьте носитель с контейнером или импортируйте контейнер в реестр (копированием, как в разделе выше).
  4. В КриптоПро: вкладка «Сервис» → Просмотреть сертификаты в контейнере → выберите контейнер → Установить.
  5. Сертификат появится в хранилище «Личное» и будет связан с закрытым ключом.

Проверка в КриптоПро: на вкладке «Сервис» нажмите Протестировать и выберите контейнер. Тест должен пройти без ошибок. Если там же предложат ввести пароль — это нормально.

Подключение в 1С

  1. Откройте Администрирование → Общие настройки → Электронная подпись и шифрование.
  2. На вкладке «Программы» убедитесь, что КриптоПро CSP есть в списке и не помечена как недоступная.
  3. На вкладке «Сертификаты» нажмите Добавить и выберите сертификат из установленных на компьютере.
  4. Откройте карточку и нажмите Проверить. Все пункты проверки, включая подписание, должны быть зелёными.

Если подпись используется в 1С-Отчетности, после переноса откройте учётную запись документооборота и запустите её проверку. Сервис сверит сертификат и при необходимости предложит обновить настройки.

Подпись перенесена, если…
Выполнено: 0 / 6

Ошибки при выгрузке ЭЦП и как их решить

Диагностика: выберите симптом

Не ищите программы, которые «вытаскивают» неэкспортируемый ключ. Это нарушение условий использования подписи, а ключ после такой выгрузки считается скомпрометированным. Законный путь — перевыпуск сертификата в удостоверяющем центре.

Частые вопросы

Можно ли перенести ЭЦП на второй компьютер и пользоваться на обоих?
Технически да, если ключ экспортируемый: копий контейнера может быть несколько. Но каждая копия — это полноценная подпись, поэтому учитывайте, где они лежат. На каждом компьютере нужна своя лицензия КриптоПро.
Нужно ли заново настраивать 1С-Отчетность после переноса?
Чаще всего достаточно добавить сертификат в настройках электронной подписи и запустить проверку учётной записи. Новое заявление нужно, если меняется сам сертификат, а не компьютер.
Подпись облачная. Как её выгрузить?
Никак: ключ хранится у оператора. На новом компьютере достаточно подключиться к сервису под своей учётной записью и подтвердить вход.
Подпись руководителя из ФНС не копируется. Что делать?
Такие ключи часто записывают на токен без права экспорта. Переносите токен физически. Если нужна подпись на нескольких рабочих местах, используйте доверенности и подписи сотрудников.
Работает ли перенесённая подпись в файловой и серверной базе одинаково?
Да, если подписание выполняется на клиенте. Если в настройках включено подписание на сервере 1С, контейнер и КриптоПро нужны на сервере, под пользователем, от имени которого запущен рабочий процесс.

Источники

  • Федеральный закон от 06.04.2011 № 63-ФЗ «Об электронной подписи»