Криптопро где хранятся ключи в реестре
Перейти к содержимому

Криптопро где хранятся ключи в реестре

  • автор:

Выгрузка из реестра контейнера КриптоПро CSP

Если контейнеры требуется перенести вручную на другой ПК, выгрузите ветку реестра. Для этого откройте редактор реестра regedit.exe и перейти в необходимую ветку. В том случае, когда в качестве криптопровайдера используется СКЗИ КриптоПро CSP, а в качестве считывателя используется реестр, контейнеры хранятся в ветке реестра:

  • В x32 операционных системах контейнеры находятся в ветке: HKEY_LOCAL_MACHINE\SOFTWARE\CryptoPro\Settings\Users\\Keys\
  • В x64 операционных системах контейнеры находятся в ветке: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\CryptoPro\Settings\Users\\Keys\

Выберите папку Keys и выполните её экспорт.

Импорт контейнера в реестр

На том рабочем месте, куда нужно импортировать контейнеры, проверьте разрядность ОС и узнайте SID пользователя.

SID — Идентификатор безопасности пользователя ОС Windows. У каждого пользователя Windows свой SID. Для того, чтобы узнать SID пользователя запустите ОС Windows под его учетной записью, после чего перейдите в командную строку (Пуск → Выполнить → cmd) и введите команду whoami/user. Команда отобразит основные сведения о текущем пользователе, включая его SID

Пример SID: S-1-5-12-12345678-1234567890-1234567890-1234.

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

После этого загрузите ветку реестра в систему. Для импорта сохраненного файла реестра дважды кликните левой кнопкой мыши по файлу с расширением REG или воспользуйтесь альтернативным способом:

  1. Откройте редактор реестра (regedit.exe).
  2. В меню Файл выберите пункт Импортировать.
  3. В открывшемся окне найдите файл для импорта, выделите его и нажмите кнопку Открыть.

Для использования электронной подписи на другом ПК, на нем должен быть установлен СКЗИ КриптоПро CSP, после добавления ветки реестра необходимо установить сертификат.

КриптоПро CSP: Как установить/скопировать сертификат/контейнер/ключ в реестр?

1. Вставьте в компьютер носитель с действующим сертификатом.
2. Откройте меню «Пуск» — «Панель управления» — «КриптоПро CSP». В открывшемся окне откройте вкладку «Сервис», нажмите «Скопировать».

й

3. В открывшемся окне нажмите «Обзор…», выберите ключевой контейнер с действующим сертификатом, нажмите «ОК». Нажмите «Далее».

2

4. Введите Pin-код от ключевого контейнера (носителя). Нажмите «ОК»

3

5. Введите имя для создаваемого ключевого контейнера. Советуем оставлять имя контейнера, предложенное по умолчанию. Нажмите «Готово».

4

6. Выберите носитель для хранения контейнера (по умолчанию выбран «Реестр»). Нажмите «ОК».

5

7. Задайте пароль для создаваемого контейнера, нажмите «ОК».

6

8. Дождитесь успешного копирования контейнера.

7

9. Для того, чтобы пользоваться электронной подписью, записанной в реестр, не вставляя ключевой носитель, необходимо переустановить личный сертификат в хранилище «Личные». Инструкция «КриптоПро CSP: сообщение «Вставьте ключевой носитель» или «Вставлен другой ключевой носитель» — выполите действия, описанные в п.2.

Остались вопросы?

Отдел технической поддержки

тел.: 8 (800) 333-91-03, доб. 2400
email: otp@itcomgk.ru

Записки IT специалиста

Перенос сертификатов и закрытых ключей CryptoPro хранящихся в реестре

  • Автор: Уваров А.С.
  • 21.09.2020

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

Онлайн-курс по устройству компьютерных сетей
На углубленном курсе «Архитектура современных компьютерных сетей» вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.

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

В повседневной деятельности широко распространено понятие «сертификат», им оперируют все, от сотрудников удостоверяющих центров, то бухгалтеров, работающих с ЭЦП. Часто можно услышать что-то подобное: «нам купили в бухгалтерию новый компьютер, нужно перенести сертификаты». Но если подходить с точки зрения криптографии, то слово «сертификат» в данном случае употребляется неправильно. Вся современная криптография строится вокруг инфраструктуры открытых ключей (PKI), которая подразумевает наличие у каждого участника ключевой пары: открытого и закрытого ключа.

Закрытый ключ является секретным, с его помощью мы можем подписывать документы, шифровать информацию и т.д. и т.п. Закрытый ключ Усиленной квалифицированной электронной подписи (УКЭП) равнозначен нотариально заверенной подписи и его попадание в чужие руки может привести к самым тяжелым последствиям.

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

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

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

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

Для того, чтобы правильно экспортировать закрытые ключи, нам нужно выяснить идентификатор безопасности ( SID) текущего пользователя (который работает с ЭЦП), это можно сделать командной:

wmic useraccount where name='%username%' get sid

Transfer-keys-certificates-CryptoPro-001.png

Затем откроем редактор реестра и перейдем в ветку для 32-битных систем:

HKEY_LOCAL_MACHINE\SOFTWARE\Crypto Pro\Settings\Users

для 64-битных систем:

\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Crypto Pro\Settings\Users

Найдем и раскроем раздел с SID текущего пользователя и экспортируем оттуда ветку Keys.

Transfer-keys-certificates-CryptoPro-002.png

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

После чего скопируем все сертификаты, расположенные по пути

%USERPROFILE%\AppData\Roaming\Microsoft\SystemCertificates\My\Certificates

Это открытые ключи, никакой секретности они не представляют, поэтому просто копируем их любым доступным способом.

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

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

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

wmic useraccount where name='%username%' get sid

В противном случае:

wmic useraccount where name='Name' get sid

где Name — имя пользователя.

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

Transfer-keys-certificates-CryptoPro-003.png

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

Следующим шагом скопируйте сохраненные сертификаты в

%USERPROFILE%\AppData\Roaming\Microsoft\SystemCertificates\My\Certificates

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

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

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

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

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

Transfer-keys-certificates-CryptoPro-004.png

Затем на целевой системе откройте редактор реестра, перейдите в раздел HKEY_LOCAL_MACHINE и через Файл — Загрузить куст подключите скопированный из старой системы раздел реестра. Дайте ему осмысленное имя, скажем OLD_SOFTWARE.

Transfer-keys-certificates-CryptoPro-005.png

После чего пройдите в раздел с закрытыми ключами (с учетом новой точки монтирования) и выполните экспорт ветки Keys.

Transfer-keys-certificates-CryptoPro-006.png

Дальнейшие действия ничем не отличаются от описанных нами в разделе Импорт ключей и сертификатов.

Онлайн-курс по устройству компьютерных сетей
На углубленном курсе «Архитектура современных компьютерных сетей» вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.

Помогла статья? Поддержи автора и новые статьи будут выходить чаще:

Поддержи проект!

Подпишись на наш Telegram-канал

Или подпишись на наш Телеграм-канал:

Практические приёмы работы с Реестром¶

В данном разделе рассматриваются практические примеры работы с реестром:

  • Лицензия КриптоПро в реестре [1017]
  • Где хранятся ключи(закрытый ключ сертификата) в реестре? [1739]
  • Восстановление закрытых ключей с неисправного компьютера
  • Извлечение информации из резервной копии реестра
  • Доступ к считываетлям (Calais)
  • Доверенные узлы

Лицензия КриптоПро в реестре [1017]¶

Лицензия КриптоПро хранится в реестре, её можно оттуда скопировать, либо ввести.

  1. Перейти в ветку:

КриптоПро 3.6:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer \UserData\S-1-5-18\Products\05480A45343B0B0429E4860F13549069\InstallProperties 

КриптоПро 3.9:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer \UserData\S-1-5-18\Products\68A52D936E5ACF24C9F8FE4A1C830BC8\InstallProperties 

КриптоПро 4.0:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer \UserData\S-1-5-18\Products\7AB5E7046046FB044ACD63458B5F481C\InstallProperties 

КриптоПро 3.0:

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18 \Products\0CC4F742C3275A04A9832E2E2CD4BE64\InstallProperties\ProductID 
  1. Открыть двойным нажатием левой кнопки мыши параметр ProductID и прописать в поле Значение серийный номер лицензии (можно с дефисами, можно без). Либо скопировать номер лицензии оттуда.

Где хранятся ключи(закрытый ключ сертификата) в реестре? [1739]¶

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

  • для 32-битной ОС:
HKEY_LOCAL_MACHINE\SOFTWARE\CryptoPro\Settings\ Users\(идентификатор пользователя)\Keys\(Название контейнера) 
  • для 64-битной ОС:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Crypto Pro\Settings \USERS\(идентификатор пользователя)\Keys\(Названиеконтейнера) 
  • В некоторых случаях сертификат попадает сюда:
HKEY_USERS\S-1-5-21-SID>_Classes\VirtualStore\MACHINE\SOFTWARE \[Wow6432Node]\Crypto Pro\Settings\USERS\S-1-5-21-SID>\Keys\

Где SID (идентификатор пользователя) (англ. Security Identifier (SID)) — структура данных переменной длины, которая идентифицирует учетную запись пользователя, группы, домена или компьютера.

Узнать SID пользователя можно через командную строку («Пуск → Выполнить → cmd»), введя команду WHOAMI /USER .

Рис. 23 – Узнать SID пользователя через командную строку

Рис. 23 – Узнать SID пользователя через командную строку

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

Восстановление закрытых ключей с неисправного компьютера¶

Обязательно ознакомьтесь с главой Работа с Редактором реестра и разделами:

  • Открытие реестра
  • Загрузка и выгрузка куста ;
  • Права доступа (Разрешения) ;
  • Получение полных прав и смена владельца ;
  • Работа через утилиту PsExec .

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

Это можно сделать только в том случае, если жесткий диск в рабочем состоянии и есть возможность его подключить к рабочему системному блоку. Или есть копия папки C:\Windows\System32\config\ .

Если условия выполняются, необходимо проделать следующее:

  1. Подключить жесткий диск от неработающего компьютера к рабочему системному блоку;
  1. Скачать утилиту PsExec.exe и скопировать ее в корень диска C .

Открыть редактор реестра с помощью утилиты PsExec.exe (см. раздел Работа через утилиту PsExec ). В командной строке («Пуск → Выполнить → cmd») ввести команду;

C:\PsExec.exe -i -s regedit.exe 
  1. Загрузить куст HKEY_LOCAL_MACHINE\Software (см. раздел Загрузка и выгрузка куста ):
  • Перейти в раздел HKEY_LOCAL_MACHINE ;
  • Выбрать «Файл → Загрузить куст»;
  • В файловом менеджере выбрать соответствующий файл куста с нерабочего компьютера C:\Windows\System32\config\SOFTWARE ;
  • Задать произвольное имя загруженному кусту, например, AZAZAZ .

Загрузка куста может занять некоторое время.

  1. Перейти в раздел, в котором хранятся КЭП ;
  • для 32-битной ОС:
HKEY_LOCAL_MACHINE\ASASAS\CryptoPro\Settings\ Users\(идентификатор пользователя)\Keys\(Название контейнера) 
  • для 64-битной ОС:
HKEY_LOCAL_MACHINE\ASASAS\Wow6432Node\Crypto Pro\Settings \USERS\(идентификатор пользователя)\Keys\(Названиеконтейнера) 

В некоторых случаях сертификат попадает сюда:

HKEY_USERS\S-1-5-21-SID>_Classes\VirtualStore\MACHINE\SOFTWARE \[Wow6432Node]\Crypto Pro\Settings\USERS\S-1-5-21-SID>\Keys\
  1. После того, как найден нужный раздел с ключами:
  • Нажать на подраздел keys правой кнопкой мыши и выбрать пункт «Экспортировать» (см. раздел Создание резервной копии реестра (Экспорт) ).
  • Выбрать место для сохранения и задать имя файла. Экспортированный файл будет иметь расширение .reg .
  • Если требуется, перенести экспортированный файл с расширением .reg на другой компьютер.
  1. Открыть экспортированный файл с расширением .reg в текстовом редакторе (Notepad++, Блокнот) и изменить в файле идентификатор пользователя (SID) на идентификатор текущего пользователя, для этого:

Рис. 24 – Изменение пути к веткам реестра

Рис. 24 – Изменение пути к веткам реестра

  • В командной строке («Пуск → Выполнить → cmd») ввести команду WHOAMI /USER (см. рисунок Рис. 23 – Узнать SID пользователя через командную строку ).

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

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

  1. Сохранить изменения в файле и открыть его двойным щелчком мыши (см. раздел Восстановление реестра из резервной копии (Импорт) ). Разрешить внести изменения в реестр.

После этого выполнить установку открытого ключа через Крпто Про CSP (Инструкция по установке личного сертификата).

Перед тем, как вносить изменения в реестр, обязательно создавайте его резервную копию. Подробнее в разделе Создание резервной копии реестра (Экспорт) .

  1. В конце рекомендуется выгрузить ранее загруженный куст «Файл → Выгрузить куст».

Можно запускать реестр и не используя утилиту PsExec.exe , но тогда придется добавлять загруженным веткам права и разрешения вручную так, как описано в разделе Права доступа (Разрешения) . Это не критично, если речь идет, например, о копировании всего одного контейнера закрытого ключа. Если файлов много, то гораздо быстрее и удобнее использовать PsExec.exe .

Рекомендую всегда держать на готове утилиту PsExec.exe , ее скачивание и копирование занимает не так много времени.

Извлечение информации из резервной копии реестра¶

Резервные копии реестра обычно создаются автоматически каждые десять дней. Сохраняются они в папке:

  • C:\Windows\System32\config\RegBack – для Windows 7 и Server 2008;
  • C:\Windows\repair – для XP и Server 2003.

Данные папки содержит те же файлы, что и C:\Windows\System32\config\ .

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

Порядок действия аналогичен, описанному порядку в инструкции Восстановление закрытых ключей с неисправного компьютера . Отличается только файл загружаемого куста C:\Windows\System32\config\RegBack\Software .

Доступ к считываетлям (Calais)¶

Иногда возникает проблема с доступом к считывателям смарт-карт. Она может быть связана с тем, что у текущего пользователя недостаточно прав на следующие ветки:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Calais HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Calais\Readers 

Подробнее о настройке прав доступа читайте в разделе Права доступа (Разрешения) .

Может возникнуть ситуация, когда текущий пользователь системы даже не будет являться владельцем данных веток реестра, следовательно, у него не будет прав на них. В таком случае, необходимо сначала добавить текущего пользователя во владельцы этих веток, а затем проставить ему соответствующие права, как описано в разделе Права доступа (Разрешения) данного руководства.

Доверенные узлы¶

Если узел не добавляется в надежные узлы, можно добавить его вручную через реестр, для этого необходимо:

  1. Перейти в ветку HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains ;
  2. Добавить подраздел с названием домена, например, kontur.ru ;
  3. В добавленном подразделе создать еще один подраздел с названием субдомена: extern ;
  4. Добавить параметр DWORD https со значением 2

Рис. 25 – Добавление зон надежных узлов вручную

Рис. 25 – Добавление зон надежных узлов вручную

© Copyright 2015, Dmitry Mazhartsev. Revision 6bfe9488 .

Built with Sphinx using a theme provided by Read the Docs.
Read the Docs v: latest

Versions latest Downloads htmlzip epub On Read the Docs Project Home Builds Free document hosting provided by Read the Docs.

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

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