Оставьте заявку

Текст сообщения:


Ключевые контейнеры в реестре как с ними работать

Ключевые контейнеры в реестре как с ними работать

Задача перенести ключевые контейнеры из реестра одной Windows в реестр другой или из одного пользователя в другого.

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

wmic useraccount where name='user' get sid

предположим что ответ  S-1-5-21-4126888996-1677807805-1843639151-1000 у Вас может быть другой

Далее открываем реестр. Проверяем версию операвциооной системы x64 или x86

Открываем в реестре ветку для x86 операционной системы 

HKEY_LOCAL_MACHINE\SOFTWARE\Crypto Pro\Settings\Users\S-1-5-21-4126888996-1677807805-1843639151-1000\Keys
или формальный путь
HKEY_LOCAL_MACHINE\SOFTWARE\Crypto Pro\Settings\USERS\(идентификатор пользователя)\Keys\(Название контейнера)

для x64

HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Crypto Pro\Settings\Users\S-1-5-21-4126888996-1677807805-1843639151-1000\Keys
или
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Crypto Pro\Settings\USERS\(идентификатор пользователя)\Keys\(Название контейнера)

Может получиться так, что Вам не хватит прав на открытие необходимой ветки и тогда вылезет предупреждение:

key_reestr_windows_sevo44_2

В этом случае для работы реестром выполним следующие действия:

Вот так это должно выглядеть в cmd:

key_reestr_windows_sevo44_3

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

Заново заходим в соответствующие ветки реестра

 

Подключаем старый реестр в новый

Для подключения необходимо выполнить следующие действия:

После успешного подключение вы увидите куст с введенным ранее названием.

Серийный номер КриптоПро в реестре

Определить какая стояла версия и серийный номер можно посмотрев записи на скрине ниже (внизу указан путь где смотреть):

key_reestr_windows_sevo44_1

Где хранятся контейнеры ключей в реестре

Все контейнеры вы можете найти по пути (для 64): HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Crypto Pro\Settings
\USERS\(идентификатор пользователя)\Keys\(Название контейнера)

key_reestr_windows_sevo44_4

Сохранение ключевых контейнеров

Теперь нам необходимо экспортировать раздел с ключами для выполнения необходимых изменений и загрузки в рабочий реестр. После экспортирования я получил файл с названием reestr.reg.

Добавление контейнеров в новый реестр

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

Смотрим UID необходимого пользователя

В командной строке cmd вносим команду WHOAMI /USER и видим нужный sid пользователя:

key_reestr_windows_sevo44_5

Чтобы скопировать текст из командной строки Windows, необходимо нажать правой кнопкой мыши на заголовок окна консоли и в меню «Свойства» на вкладке «Общие» включить опцию «Выделение мышью». Вставляется текст по нажатию правой кнопки мыши!

key_reestr_windows_sevo446

Меняем данные в файле

Открываем файл в блокноте и делаем замену:

key_reestr_windows_sevo44_7

Не забудьте убрать название куда добавляли куст! Вам надо загрузить в рабочую часть реестра!

Экспортирует контейнеры в новый реестр

key_reestr_windows_sevo448

Выгружаем старый реестр

Не ищите возможности удаления старого куста который мы добавляли! Ненужный больше куст можно только выгрузить!

Проверка добавления ключевых контейнеров

Открываем программу Crypto Pro и смотрим что у нас есть в реестре:

key_reestr_windows_sevo4410

Всё прошло успешно и все ключевые контейнеры присутствуют.

Перенос личных сертификатов пользователя

Добавление сертификата через Крипто ПРО

Берём открытый сертификат что нам нужен и устанавливаем его через Crypto Pro указав автоматический поиск контейнера. В случае если ставили контейнеры не вводя пароль просто жмите Ентер ( если вводили то ищите куда записали).

Все действия с ключами выполняйте через программу Crypto Pro!

Перенос всех сертификатов

Все сертификаты в системе Windows находятся по пути C:\Users\НУЖНЫЙ ПОЛЬЗОВАТЕЛЬ\AppData\Roaming\Microsoft\SystemCertificates\My. Достаточно скопировать эту папку в аналогичное место на новом компьютере и ключи будут перенесены.

Вывод

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