Копирование закрытого ключа — Permanent Marker

8 ответов

Лучший ответ

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

Код основан на документе NCC Group < / а>. потребуется запустить инструмент с локальной системной учетной записью, поскольку он работает путем записи непосредственно в память, используемую процессом Windows lsass, чтобы временно пометить ключи как экспортируемые. Это можно сделать с помощью PsExec из PsTools SysInternals. :

  1. Создайте новую командную строку, запущенную от имени пользователя локальной системы:

PsExec64.exe -s -i cmd

  1. В новой командной строке запустите инструмент:

exportrsa.exe

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

Импорт ключей и сертификатов

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

Затем снова узнаем SID пользователя, который будет работать с ЭЦП, если это текущий пользователь, то снова выполните:

Как быть если доступ к старой системе невозможен?

Теория – это хорошо, но практика может подкинуть самые неожиданные ситуации. Как быть, если доступ к старой системе невозможен? Скажем вышла из строя материнская плата или серьезно повреждена операционная система?

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

С копированием сертификатов проблемы возникнуть не должно, их хранилище простая папка на диске, а вот с хранилищем закрытых ключей в реестре немного сложнее. Но не будем забывать, что системный реестр тоже хранится в файлах на диске. Вам следует любым доступным образом скопировать файл SOFTWARE из C:WindowsSystem32config

Transfer-keys-certificates-CryptoPro-004.pngЗатем на целевой системе откройте редактор реестра, перейдите в раздел HKEY_LOCAL_MACHINE и через Файл – Загрузить куст подключите скопированный из старой системы раздел реестра. Дайте ему осмысленное имя, скажем OLD_SOFTWARE.Transfer-keys-certificates-CryptoPro-005.pngПосле чего пройдите в раздел с закрытыми ключами (с учетом новой точки монтирования) и выполните экспорт ветки Keys.Transfer-keys-certificates-CryptoPro-006.pngДальнейшие действия ничем не отличаются от описанных нами в разделе Импорт ключей и сертификатов.

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

Какие есть варианты по копированию контейнеров закрытых ключей?

Читайте также:  Электронная подпись ЭЦП для Росреестра от 2000 рублей

Когда нужно переносить сертификаты в другое место?

И так давайте рассмотрим по каким причинам у вас может появиться необходимость в копировании ваших ЭЦП в другое место.

  1. На текущем физическом компьютере начинает умирать жесткий диск или SSD накопитель (Как проверить жизненные показатели жесткого диска), очень частая история и жизненная, когда люди теряли все свои данные, из-за банальной жадности в покупке нового оборудования и элементарного незнания принципов резервного копирования.
  2. У вас производится модернизация оборудования, его улучшение и вам нужно перенести все сертификаты с закрытыми ключами на другую систему
  3. Вы создали отдельный сервер, в виде виртуальной машины, где будут находится все ваши сертификаты и с ними смогут работать все необходимые сотрудники, терминал для бухгалтерии. Простой пример СБИС, и когда у вас 10-20 организаций.

Копирование закрытого ключа через оснастку криптопро

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

Далее вы выбираете текущий контейнер, который хотите скопировать. Это может быть либо токен, либо реестр компьютера. Затем новое имя и новое расположение контейнера. Опять же, это может быть как реестр, так и другой токен.

Криптопро csp ошибка 0x80090010 отказано в доступе

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

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

Читайте также:  Ключи эцп являются

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

Массовый перенос ключей и сертификатов cryptopro на другой компьютер

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

Держать кучу токенов было не вариант, и для таких вещей у нее все хранилось в реестре и копия сертификатов была на флешке в сейфе. Флешку потом потеряли, встал вопрос сделать резервную копию всего и плюс обновить систему, в виду нового компьютера, на операционной системе Windows 8.1. ЭЦП было штук 50, а так как я ценю свое время, то и искал методы, выполнить это быстрее, к счастью я его нашел.

Заключался метод переноса сертификатов из реестра, в выгрузке веток и подмене SID значения, но обо всем по порядку. О том, как посмотреть SID пользователя и что это такое я рассказывал.

Открываете командную строку cmd и вводите команду:

Массовый перенос ключей и сертификатов cryptopro с компьютера на компьютер

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

Перенос сертификатов в виде пошаговой инструкции

Первые два пункта я описывать тут не стану, так как я уже это подробно рассказывал, посмотрите по ссылкам. Я расскажу, об остальных методах и начнем мы с классического КриптоПРО.

Данный метод подойдет для тех ситуаций, когда у вас один или 2 сертификата (ЭЦП). Если же их несколько десятков, а это не такая уж и редкость, то такой путь вам не подходит, и там придется выбирать 4-й метод.

Читайте также:  Как продлить ключ ЭЦП в Казахстане? ᐉ Tenderbot.kz

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

Сертификат в реестре, на usb-флеш-накопителе, локальном компьютере или дискете.

Чтобы сделать копию такого сертификата, необходимо:

Часто задаваемые вопросы по теме статьи (faq)

Можно ли перенести сертификат, который находится на токене и защищен от копирования?

Очевидно, что предложенное в статье решение для этого не подойдет. Ведь тут идет речь о переносе сертификатов, которые хранятся в реестре, то есть уже были скопированы. Технические средства для копирования защищенных крипто контейнеров тоже существуют, но это не такое простое и очевидное решение.Безопасно ли хранить сертификаты в реестре?

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

Нет, не подойдет. В статье описан способ переноса сертификатов CryptoPro. Другие криптопровайдеры хранят сертификаты по-другому. Универсального способа для всех не существует.Есть ли какой-то очень простой способ скопировать сертификаты crypto pro? То, что описано в статье слишком сложно для меня.

Да, есть статья на сайте контура, в ней ссылка на утилиту для копирования контейнеров Certfix. Можете воспользоваться ей.

Бывает случаи, когда при копировании сертификата возникает ошибка: «Ошибка копирования контейнера». Делимся инструкцией, что делать в такой ситуации.

При копировании сертификата возникает ошибка:

«Ошибка копирования контейнера 123456789@28-07-2021 Иванов Иван Иванович: У вас нет разрешений на экспорт ключа, потому что при создании ключа не был установлен соответствующий флаг. Ошибка 0x8009000B (-2146893813) Ключ не может быть использован в указанном состоянии»

Для решения данной проблемы необходимо:

  1. Проверить наличие лицензии на КриптоПроCSP. Ошибка может возникать на КриптоПРО CSP с истекшими сертификатами со встроенной лицензией. Для автоматического ввода лицензии нужно перейти ссылке и установить лицензию по инструкции.
  2. Повторить копирование сертификата.
  3. Если в имени контейнера есть строка типа: _копия_a0b63dd8 (например 06208439@2021-12-29-ЗАО ПФ СКБ Контур_копия_a0b63dd8), то контейнер имеет признак неэкспортируемый. Следуйте инструкции в зависимости от носителя:

    сертификат в реестре, на USB-флеш-накопителе, локальном компьютере или дискете
    сертификат на рутокене

  4. При копировании, в окне выбора контейнера, нужно поставить переключатель Уникальные имена, продолжить копирование.

    Копирование закрытого ключа — Permanent Marker

  5. Проверить, что КриптоПро запущена с правами администратора. На вкладке «Общие» не должно быть ссылки «Запустить с правами администратора». Если ссылка есть — нажать на ее.
    Копирование закрытого ключа — Permanent Marker

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

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

Adblock
detector