Выгрузка из реестра контейнера КриптоПро CSP
В том случае, когда в качестве криптопровайдера используется СКЗИ КриптоПро CSP, а в качестве считывателя используется реестр, контейнеры хранятся в ветке реестра:
- В x32 операционных системах контейнеры находятся в ветке: HKEY_LOCAL_MACHINE\SOFTWARE\CryptoPro\Settings\Users\
\Keys\ - В x64 операционных системах контейнеры находятся в ветке: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\CryptoPro\Settings\Users\
\Keys\
Если контейнеры требуется перенести вручную на другой ПК, выгрузите ветку реестра.
На том рабочем месте, куда нужно импортировать контейнеры, проверьте разрядность ОС и узнайте SID пользователя.
SID — Идентификатор безопасности пользователя ОС Windows. У каждого пользователя Windows свой SID. Для того, чтобы узнать SID пользователя запустите ОС Windows под его учетной записью, после чего перейдите в командную строку (Пуск → Выполнить → cmd) и введите команду whoami/user. Команда отобразит основные сведения о текущем пользователе, включая его SID
Пример SID: S-1-5-12-12345678-1234567890-1234567890-1234.
После этого откройте с помощью блокнота выгруженный файл реестра в формате .reg, измените SID и, если необходимо, путь к конечной ветке.
После этого загрузите ветку реестра в систему.
Для использования электронной подписи на другом ПК, на нем должен быть установлен СКЗИ КриптоПро CSP, после добавления ветки реестра необходимо установить сертификат.
Прописать сертификат закрытого ключа в реестр КриптоПро

Электронный документооборот всё плотнее входит в нашу жизнь.
Сегодня данный вопрос касается уже далеко не только офисных сотрудников предприятий и индивидуальных предпринимателей, работа с электронными документами всё чаще облегчает решение повседневных проблем рядовым гражданам и в быту. Разумеется, что с расширением применяемости электронных документов шире становится и распространение электронной цифровой подписи, сокращённо — ЭЦП .
Именно о повышении удобства в работе с ЭЦП и пойдёт речь дальше, а именно, мы рассмотрим, как добавить ключ ЭЦП в реестр КриптоПро на компьютере.
Содержание статьи:
Что такое ЭЦП и сертификат закрытого ключа
Электронная цифровая подпись используется во многих программных продуктах: 1С: Предприятие (и другие программы для ведения хозяйственного или бухгалтерского учёта), СБИС++ , Контур.Экстерн (и прочие решения для работы с бухгалтерской и налоговой отчётностью) и других. Также ЭЦП нашла применение в обслуживании физических лиц при решении вопросов с государственными органами.
Как и при подписании бумажных документов, процесс подписания электронных носителей информации связан с «редактированием» первичного источника.
На сегодняшний день сертификаты закрытого ключа чаще всего распространяются либо на обычных USB-флешках, либо на специальных защищённых носителях с тем же USB интерфейсом ( Рутокен , eToken и так далее).
При этом, каждый раз, когда возникает необходимость в подписи документов (или идентификации пользователя), нам нужно вставить носитель с ключом в компьютер, после чего проводить манипуляции с сертификатом. Соответственно, после завершения работы нам достаточно просто извлечь носитель из компьютера, чтобы нашей подписью больше никто не мог воспользоваться. Этот способ достаточно безопасен, но не всегда удобен.
Если вы используете ЭЦП у себя дома, то каждый раз подключать/отключать токен быстро надоедает. Кроме того, носитель будет занимать один USB-порт , которых и так не всегда хватает для подключения всей необходимой периферии.
Если же вы используете ЭЦП на работе, то бывает, что ключ удостоверяющим центром выдан один, а подписывать документы должны разные люди . Таскать контейнер туда-сюда тоже не удобно, да ещё бывают и случаи, когда в одно время с сертификатом работают сразу несколько специалистов .
Кроме того, и дома, и, особенно, на работе, случается, что на одном компьютере необходимо производить действия с использованием сразу нескольких ключей цифровой подписи .
Именно в тех случаях, когда использование физического носителя сертификата неудобно, можно прописать ключ ЭЦП в реестр КриптоПро (подробнее о реестре Windows в общем понимании можно почитать в соответствующей статье: Изменение параметров системного реестра Windows) и использовать сертификат, не подключая носитель к USB-порту компьютера.
Добавление считывателя Реестр в КриптоПро CSP
В первую очередь, чтобы наш КриптоПро смог работать с прописанными локально ключами, требуется добавить сам вариант подобного считывателя.
Для того, чтобы установить в CSP утилиту новый тип носителя, запускаем программу от имени администратора правой кнопкой мыши или из меню самой утилиты на вкладке Общие

Теперь переходим на вкладку Оборудование и нажимаем на кнопку Настроить считыватели.
Если в открывшемся окне нет варианта Реестр, то, чтобы его здесь вывести, жмём на кнопку Добавить.

Далее, следуя командам Мастера установки считывателя поэтапно перемещаемся по окнам:
- Жмём кнопку Далее в первом окне.
- Из списка считывателей от всех производителей выбираем вариант Реестр и снова жмём Далее .
- Вводим произвольное имя считывателя, можно оставить название по умолчанию. Жмём Далее .
- В последнем окне видим оповещение, что после завершения настройки считывателя рекомендуется перезагрузить компьютер. Жмём кнопку Готово и самостоятельно перезагружаем машину.
Первый этап завершён. Считыватель Реестр добавлен , о чём свидетельствует соответствующий пункт в окне Управление считывателями ( напоминаем, что данное окно вызывается по пути КриптоПро — Оборудование — Настроить считыватели. )

Копирование ключа в Реестр КриптоПро CSP
Чтобы прописать ключевой контейнер в локальное хранилище, подсоединяем физический носитель с ключом к компьютеру.
Теперь снова запускаем утилиту КриптоПро , открываем вкладку Сервис и жмём на кнопку Скопировать.
Далее в окне Мастера копирования контейнера закрытого ключа жмём кнопку Обзор (либо По сертификату. ) и выбираем наш ключевой носитель, подтвердив выбор кнопкой OK , после чего переходим к следующему окну кнопкой Далее .

В новом окне задаём произвольное понятное имя создаваемому контейнеру ключа и нажимаем кнопку Готово . Затем для записи ключа выбираем созданный нами ранее тип считывателя Реестр, подтвердив выбор кнопкой OK .
После подтверждения нам необходимо установить Пароль на созданный ключевой контейнер, по умолчанию, чаще всего, используют пароль 12345678, но для более безопасной работы пароль можно задать сложнее. После ввода пароля жмём на кнопку OK .
Всё, ключевой контейнер добавлен в Реестр КриптоПро .
Установка сертификата закрытого ключа КриптоПро CSP
В завершении настройки подписи документов без подключения носителя ключа к компьютеру нам остаётся только установить сертификат закрытого ключа из контейнера созданного носителя.
Чтобы установить сертификат в КриптоПро необходимо проделать следующее:
- В утилите CSP на вкладке Сервис жмём на кнопку Просмотреть сертификаты в контейнере.
- В открывшемся окне нажимаем на кнопку Обзор , где по заданному нами имени выбираем искомый носитель, подтвердив выбор кнопкой OK . Нажимаем Далее .
- В завершающем окне проверяем правильность выбора сертификата и подтверждаем решение кнопкой Установить .

Теперь у нас установлен Сертификат закрытого ключа из локального носителя Реестр .
Настройка КриптоПро завершена, но вам следует помнить, что для многих программных продуктов также потребуется перепрописать новый ключ в настройках системы.
После проделанных действий мы можем подписывать документы без подключения ключа, будь то Рутокен, eToken или какой-то другой физический носитель.
Как установить сертификат ЭЦП в реестр
Перенос сертификата электронной цифровой подписи (ЭЦП) в реестр необходим в случае, если имеется виртуальная инфраструктура и подключение USB-носителя невозможно или если сертификатов подписи много и нужно работать с 5-ю и более ключами одновременно. Также установка ЭЦП в реестр удобна при частых поездках и сменах офиса: снижается риск потери или порчи носителя. Скопировать сертификат с флешки можно несколькими способами, а весь процесс занимает всего несколько минут и не требует специальных навыков работы с ПК.
Как скопировать сертификат в реестр
Процесс копирования закрытых ключей с флешки на ПК состоит из нескольких этапов: настройки считывателей, самого копирования и установки.

Настройка считывателя
Для установки реестра в список считывателей ключевых носителей пользователь должен:
- запустить КриптоПро от имени администратора;

- через «Оборудование» нажать «Настроить считыватель»;

- в открывшемся новом окне нажать кнопку «Добавить»;

- затем в мастере установки выбрать, какой считыватель необходимо добавить (реестр, смарт-карту, диски и т.д.);

- последовательно нажать «Далее» и «Готово».
Для последующей корректной работы необходимо перезагрузить компьютер.
Копирование
Для копирования сертификата в реестр лучше воспользоваться программой КриптоПро. Пользователь запускает программу и нажимает «Запустить с правами администратора».

Затем переходим во вкладку «Сервис» и жмем «Скопировать».

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

В поле «Имя ключевого контейнера» имя отразится в нечитаемом формате. Это нормально.

Нужно нажать «ОК» и «Далее», после чего откроется окно для ввода пин-кода от USB-носителя.

Если пароль не менялся, то стандартный будет:
- для Рутокен для пользователя: 12345678;
- для Рутокен для администратора:87654321;
- для eToken: 1234567890.
После пин-кода нужно задать новое имя личного сертификата в реестре. В КриптоПро это сделать просто.

Теперь нужно переложить сертификаты в реестр.

Последний шаг — после копирования контейнера задаем новый пароль.

На этом процесс копирования закрытого ключа электронной подписи закончен.
Установка
После копирования установить сертификат ЭЦП на компьютер с флешки в реестр можно 2 способами:
- через установку личных сертификатов;
- через просмотр сертификатов в контейнере.
Оба способа используют программу КриптоПро CSP.
Через раздел личных сертификатов
Как установить ЭЦП в реестр при условии, что на ключевом носителе имеется папка *.000 и файл .cer:
- Запустить КриптоПро и выбрать «Установить личный сертификат» через вкладку «Сервис».

- В мастере установки сертификатов нажать «Далее» и через «Обзор» выбрать расположение файла сертификата.

- В новом окне нужно выбрать «Мой компьютер» и далее вид съемного носителя, который содержит закрытый ключ. Затем нажать «Открыть»;

- Далее в соответствующей строке прописывают расположения файла сертификата.

- Затем нужно проверить данные сертификата, который необходимо установить, и нажать «Далее».
- Следующий шаг — это в новом окне выбор ключевого контейнера через кнопку «Обзор».

- В списке выбираем реестр, после чего нажимаем «Ок».
- В строке с именем ключевого контейнера должен автоматически прописаться контейнер с закрытым ключом. Нажать «Далее».
- Через «Обзор» выбираем хранилище сертификата.

- Через папку «Личные» выбираем папку «Реестр», а затем нажимаем «Далее».
Последний шаг — завершить установку нажатием кнопки «Готово».

Через несколько секунд система выдаст сообщение об успешном завершении установки сертификата электронной подписи.
Через просмотр сертификатов
Данный способ подходит в том случае, если имеется только папка вида *.000.
Для установки нужно:
- Запустить КриптоПро.
- Через «Сервис» перейти на вкладку «Просмотреть сертификаты в контейнере».

- Затем выберите носитель через кнопку «Обзор» и в открывшемся окне выделите нужный реестр.

- В строке с именем контейнера должна быть информация о контейнере с закрытым ключом, если все верно, то нужно нажать «Ок».
- Затем в окне с информацией нужно нажать «Свойства».

- После проверки данных нажать кнопку «Установить».

- В открывшемся мастере импорта нужно выбрать хранилище. Для этого сначала ставят галочку напротив «Поместить все сертификаты в…» и нажимают «Обзор».

- Затем через папку «Личные» выбрать папку с носителем реестром и в строке «Название хранилища» нажать «Далее».
В завершении установки нужно лишь «Готово» в мастере установки.

Где хранится ключ в реестре
Все установленные на ПК закрытые ключи ЭЦП хранятся в отдельной папке, которая называется реестром. Для просмотра закрытого ключа нужно иметь права доступа администратора. Чтобы открыть реестр, нужно нажать Win+R и в командной строке ввести certmgr.msc.

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

Чтобы посмотреть информацию об электронной подписи, нужно нажать «Открыть» на выбранном файле.

Ошибка при копировании сертификата
Устанавливать электронную подпись на компьютер просто, но иногда в процессе возникает ошибка копирования контейнера. Объясняется она отсутствием разрешения на экспорт ключа, т.к. при создании его не был указан соответствующий пункт. Чтобы скопировать сертификат с флешки и избежать ошибки нужно:
- Убедиться, что КриптоПро имеет действующую лицензию.
- Попробовать повторно установить закрытый ключ ЭЦП.
- Если в имени имеется строка, содержащая данные «_копия_a0b63dd8», то нужно провести копирование одним из способов, соответствующих типу носителя.
- При переносе ключа поставить галочку «Уникальные имена».

- Проверить, что КриптоПро запущена с правами администратора.

Если сертификат находится на USB-носителе или дискете, или на ПК, то копия делается так:
- Пользователь устанавливает утилиту CertFix (https://h.kontur.ru/cf).
- После запуска утилиты дожидается загрузки списка сертификатов.
- Нажимает одновременно SHIFT и правой кнопкой мыши кликает по нужному хранилищу.
- В открывшемся окне выбирает вариант, зависящий от расположения хранилища.

- При необходимости вводят пароль и повторяют процедуру копирования.
Если сертификат расположен на рутокене:
- Подключают токен к ПК.
- Запускают утилиту tokens.exe (https://www.kontur-extern.ru/Files/Modules/CmsFile/Tokens.zip).
- Нажимают «Экспорт» у нужного контейнера.
- Выбирают место, куда нужно устанавливать сертификат.
- В следующем окне вводят новое имя для контейнера.
- Устанавливают утилиту CertFix и повторяют действия из предыдущего способа копирования.
Скопировать сертификат с флэшки на ПК нужно в случае, если пользователь работает сразу с несколькими ключами ЭЦП или часто путешествует. Установка подписи на ПК поможет снизить риски потери или порчи носителя, а процесс занимает всего несколько минут. Для копирования используется стандартная лицензионная программа КриптоПро, а установить сертификат можно двумя способами. Первый использует путь через «Личные сертификаты», а второй — через «Просмотр ключей в контейнере». Иногда при копировании закрытых ключей возникает ошибка, т.к. ЭЦП имеет встроенную защиту от экспорта. В этом случае нужно установить специальную утилиту и повторить весь путь копирования.
КриптоПро
КриптоПро — линейка криптографических утилит (вспомогательных программ), так называемых «криптопровайдеров». Они используются во многих программах российских разработчиков для генерации ЭЦП, работы с сертификатами, организации структуры PKI и т.д. (см.сайт).
Совместимость
По информации разработчика, с ALT Linux совместимы следующие продукты КриптоПро:
- КриптоПро CSP
- КриптоПро JCP
- КриптоПро HSM
- КриптоПро TSP
- КриптоПро OCSP
- КриптоПро ЭЦП Browser plug-in
- КриптоПро SSF
- КриптоПро Stunnel
- Браузер КриптоПро Fox
Установка КриптоПро CSP
Загрузка
Архив с программным обеспечением (КриптоПро CSP 4.0 R4 — сертифицированная версия, КриптоПро CSP 5.0 — несертифицированная) можно загрузить после предварительной регистрации:
- linux-ia32.tgz (19,3 МБ, для i586) — для 32-разрядных систем (x86, rpm) ;
- linux-amd64.tgz (20,1 МБ, для x86_64) — для 64-разрядных систем (x64, rpm) .
Установка
1. Установите пакет cryptopro-preinstall :
2. Распакуйте архив, скачанный с официального сайта КриптоПро:
Таблица 1. Описание необходимых пакетов КриптоПро.
| Пакет | Описание |
|---|---|
| Базовые пакеты: | |
| cprocsp-curl | Библиотека libcurl с реализацией шифрования по ГОСТ |
| lsb-cprocsp-base | Основной пакет КриптоПро CSP |
| lsb-cprocsp-capilite | Интерфейс CAPILite и утилиты |
| lsb-cprocsp-kc1 | Провайдер криптографической службы KC1 |
| lsb-cprocsp-kc2 | Провайдер криптографической службы KC2 (требует наличия аппаратного датчика случайных чисел или гаммы) |
| lsb-cprocsp-rdr | Поддержка ридеров и RNG |
| Дополнительные пакеты: | |
| cprocsp-cptools-gtk | Инструменты КриптоПро — кроссплатформенный графический интерфейс |
| cprocsp-rdr-gui-gtk | Графический интерфейс для диалоговых операций |
| cprocsp-rdr-rutoken | Поддержка карт Рутокен |
| cprocsp-rdr-jacarta | Поддержка карт JaCarta |
| cprocsp-rdr-pcsc | Компоненты PC/SC для ридеров КриптоПро CSP |
| lsb-cprocsp-pkcs11 | Поддержка PKCS11 |
| ifd-rutokens | Конфигурация Рутокеновских карт (или можно взять pcsc-lite-rutokens из репозитория) |
3. Установите пакеты КриптоПро:
-
под правами пользователя root перейдите в папку с распакованным архивом:
- установите пакеты для поддержки токенов (Рутокен S и Рутокен ЭЦП):
- установите пакет для поддержки токенов (JaCarta):
- установите пакет для поддержки носителей с неизвлекаемыми ключами:
- Для установки сертификатов Главного удостоверяющего центра:
Также можно выполнить установку КриптоПро, запустив ./install_gui.sh в распакованном каталоге и выбрав необходимые модули:

Примечания:
- Для КриптоПро CSP 3.6 R2 потребуется установить пакет cprocsp-compat-altlinux-1.0.0-1.noarch.rpm
- Для установки cprocsp-rdr-gui может понадобиться libXm.so.3 ( libopenmotif3 ) и для вывода кириллицы fonts-bitmap-cyr_rfx-iso8859-5 .
- Для установки cprocsp-rdr-gui-gtk потребуется предварительно установить libpangox-compat .
- В версии 4.0.0-alt5 пакета cryptopro-preinstall добавлены подпакеты:
- cryptopro-preinstall-base для установки с cprocsp-compat-altlinux , «предоставляющим» lsb (в случае нежелательности «лишних» зависимостей вроде libqt3 ), и
- cryptopro-preinstall-full для автоустановки зависимостей cprocsp-rdr-gui .
Обновление
Для обновления КриптоПро необходимо:
-
Запомнить текущую конфигурацию:
-
набор установленных пакетов:
Прописывание путей к исполняемым файлам
Утилиты КриптоПро расположены в директориях /opt/cprocsp/sbin/<название_архитектуры> и /opt/cprocsp/bin/<название_архитектуры> .
Чтобы каждый раз не вводить полный путь к утилитам КриптоПро:
- после установки пакета cryptopro-preinstall начните новый сеанс пользователя в консоли;
- выполните от имени пользователя, который будет запускать команды (будет действовать до закрытия терминала):
Проверка лицензии
Проверить срок истечения лицензии можно командой (обратите внимание на строки Expires:):
Для установки другой лицензии выполните (под root):
Проверка версии
Проверить версию КриптоПро можно командой:
Удаление КриптоПро
Настройка оборудования
Настройка устройств хранения (носителей) и считывания (считывателей) ключевой информации и датчиков случайных чисел.
Считыватели (readers) — устройства, предназначенные для чтения ключей. К считывателям относится считыватели дискет (FAT12), считыватели флеш-накопителей (FLASH), считыватели смарт-карт и токенов, считыватель образа дискеты на жестком диске (HDIMAGE) и др.
Ключевые носители (media) являются местом хранения электронной подписи. В качестве носителя ключевой информации могут использоваться: защищенный флэш-накопитель (токен) (Рутокен, JaCarta, ESMART и др.), смарт-карта, флэш-накопитель, дискета.
Ключевые контейнеры — это способ хранения закрытых ключей, реализованный в КриптоПро. Их физическое представление зависит от типа ключевого носителя (на флеш-накопителе, дискете, жестком диске это каталог в котором хранится набор файлов с ключевой информацией; в случае со смарт-картами — файлы в защищенной памяти смарт-карты).
Встроенный в «КриптоПро CSP» датчик случайных чисел (далее ДСЧ) используется для генерации ключей.
Для смарт-карт: ключи дополнительно защищаются кодом доступа к защищенной памяти смарт-карты (PIN). При всех операциях с защищенной памятью (чтение, запись, удаление. ) требуется вводить PIN. Для других носителей: для повышения безопасности на контейнер можно установить пароль. В этом случае всё содержимое контейнера хранится не в открытом виде, а в зашифрованном на этом пароле. Пароль задается при создании контейнера, в дальнейшем для чтения ключей из контейнера необходимо будет вводить пароль.
Управление считывателями
Просмотр доступных (настроенных) считывателей:
Инициализация считывателя HDIMAGE, если его нет в списке доступных считывателей (под правами root):
Считыватель HDIMAGE размещается на /var/opt/cprocsp/keys/<имя пользователя>/ .
Для работы со считывателем PC/SC требуется пакет cprocsp-rdr-pcsc. После подключения считывателя можно просмотреть список видимых считывателей (не зависимо от того, настроены ли они в КриптоПро как считыватели, зависит только от того, какие установлены драйверы для считывателей):
Инициализация считывателя Aktiv Co. Rutoken S 00 00 (требуется, если считыватель есть в списке видимых считывателей и отсутствует в списке настроенных), в параметре -add указывается имя, которое было получено при просмотре видимых считывателей, в параметре -name — удобное для обращения к считывателю имя, например, Rutoken (под правами root):
Современные аппаратные и программно-аппаратные хранилища ключей, такие как Рутокен ЭЦП или eSmart ГОСТ, поддерживаются через интерфейс PCSC. За реализацию этого интерфейса отвечает служба pcscd , которую необходимо запустить перед началом работы с соответствующими устройствами: