СЕРТФИКС СКАЧАТЬ

А. Копирование контейнера закрытого ключа на USB-флеш-накопитель.

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

Рутокен (старый несертифицированный), Рутокен S, Рутокен Lite — ;   
Рутокен ЭЦП 2.0, JaCarta LT, ESMART Token ГОСТ — на момент написания статьи (январь 2022 года) 

У меня тип носителя был  .


СЕРТФИКС СКАЧАТЬ

Поэтому далее действовал по приведенным на порталах инструкциям.

1) Подключил Рутокен и чистый USB-флеш-накопитель к компьютеру. 
2) Запустил утилиту Tokens.exe.
  Если на данном шаге появилось вот такое сообщение:


СЕРТФИКС СКАЧАТЬ

Кликните по каждой ссылке (1. CAPICOM, 2. Компонент диагностики Рутокен, 3. Ресурсы СКБ Контура добавлены в надежные узлы, и произведена настройка надежной зоны) и установите эти компоненты .

3) У нужного контейнера нажал «Экспорт».


СЕРТФИКС СКАЧАТЬ

4) Для экспорта указал путь к USB-флеш-накопителю.

5) Переименовал контейнер. Имя можно задать любое, отличное хотя бы на 1 символ от исходного.
6) Вынул из системника Рутокен и оставил USB-флеш-накопитель

Б. Снятие флага «экспорт запрещён» в скопированном на USB-флеш-накопитель контейнере.

1) .
2) Запустил утилиту CertFix.000032.exe, загрузился список сертификатов и напротив строки «Поиск» появилась надпись «Загрузка завершена».


СЕРТФИКС СКАЧАТЬ

3) В списке выделил свой сертификат — справа в колонке экспорта стоял DENIED, нажал Shift и правый(!) клик мышкой, появилось меню с опцией «сделать экспортируемым (файловая система)».
4) Кликнул на эту опцию и задал пароль (обязательно). Готово, ключ в контейнере на флешке приобрел статус «экспортируемый».

В. Копирование контейнера закрытого ключа с USB-флеш-накопителя в реестр.

Делается стандартными средствами через КриптоПро CSP. Можно посмотреть здесь: https://zakupki-32.ru/blog/na-styke-realnogo-i-virtualnogo/pri-podklyuchenii-po-rdp-k-udalennoy-mashine-brauzer-ne-vidit-rutoken.php . Только вместо Рутокена в USB-порт вставляем USB-флеш-накопитель со скопированным на него контейнером закрытого ключа.

Г. Устанавливаем сертификат контейнера закрытого ключа в хранилище сертификатов.

Делается стандартными средствами через КриптоПро CSP: в меню «Сервис» нажать кнопку «Посмотреть сертификаты в контейнере», нажать на «Обзор», в открывшемся окне «Выбор ключевого контейнера» в «Списке ключевых контейнеров» выделить строку, где в столбце «Считыватель» указано «Реестр». Нажать «Ок».
Потом «Далее». В окне «Сертификат для просмотра» нажать «Свойства». В открывшемся окне «Сертификат» нажать «Установить сертификат» и поместить его в хранилище «Личное».

Копирование контейнера с сертификатом на другой носитель

Копирование сертификата, выданного УЦ ФНС, невозможно.

Ниже описаны варианты копирования для сертификатов, выданных УЦ Контура для сотрудников организации и физических лиц.

Копирование средствами Windows

Если для работы используется дискета, flash-накопитель или не системный диск, скопировать контейнер с сертификатом можно средствами Windows — этот способ подходит для версий КриптоПро CSP не ниже 3.0. Папку с закрытым ключом (и, если есть, файл сертификата — открытый ключ) поместите в корень дискеты, корень flash-накопителя или в корень не системного диска. Если поместить не в корень, то работа с сертификатом будет невозможна. Название папки при копировании рекомендуется не изменять.

В папке с закрытым ключом должно быть 6 файлов с расширением *.key. Как правило, в закрытом ключе присутствует открытый ключ (файл header.key в этом случае будет весить больше 1 Кб). В этом случае копировать открытый ключ необязательно. Пример закрытого ключа — папки с шестью файлами и открытого ключа — файла с расширением *.cer.

Копирование с помощью КриптоПро CSP

После копирования система вернется на вкладку «Сервис» КриптоПро CSP. Копирование завершено. Если вы планируете использовать для работы в сервисе новый ключевой контейнер,  установите его через КриптоПро.

Экспорт PFX-файла и его установка

Экспорт сертификата с закрытым ключом

Установка сертификата с закрытым ключом

Массовое копирование

Если хотите работать со скопированными контейнерами — необходимо установить сертификаты.

Копирование из реестра другого пользователя


СЕРТФИКС СКАЧАТЬ

СЕРТФИКС СКАЧАТЬ

СЕРТФИКС СКАЧАТЬ

Примечание

Автор ПО и методики — Сергей Солдатов

Данный способ работает не только на JaCarta LT и ESMART Token (нет личного опыта только сторонний отзыв, и непонятно какая именно модель 64K или ГОСТ).

Данное способ точно не работает на токенах Рутокен ЭЦП 2.0 и токенами формата PKCS#11

Что понадобится

perl writeBinaryAPDU.pl < rundll32.exe.txt

Для хлебушков, команда выполняется в папке, где лежит файл rundll32.exe.txt

В результате rundll32.exe.txt будет разобран на бинарные файлы (появится отдельная папка) вида “001_out

39_6A_42_32”, где:001 – идентификатор последовательности запрос-ответ;out – направление передачи: out – из токена в приложение, in – от приложения в токен;

– количество переданных/полученных байтов;39_6A_42_32 – первые 4 байта.

Собираем контейнер

primary.key – размер 36 байт, начинается с 30_22_04_20

Ищем файлы вида №_out

30_22_04_20. У меня таких было 2 штуки, размером по 80 байт, начало одинаковое, в конце нули, взял один и обрезал через WinHex до 36 байт, результат сохранил как primary.key


СЕРТФИКС СКАЧАТЬ

masks.key – размер 56 байт, начинается с 30_36_04_20

Ищем файлы вида №_out

30_36_04_20. У меня таких было 2 штуки, размером по 64 байта, одинаковые, в конце нули, взял один и обрезал через WinHex до 56 байт, результат сохранил как master.key


СЕРТФИКС СКАЧАТЬ

header.key – самый большой файл.

Находим файлы с самым большим объёмом, плюс берём кусок до и кусок после. У меня таких файлов было много, но их все можно было разбить на группы и получилось 6 групп по 16 файлов (18 если учитывать нулевые).


СЕРТФИКС СКАЧАТЬ

Копируем все файлы в “C:SmartcardSnifferheader” и склеиваем их командой:

copy /B * header.key


СЕРТФИКС СКАЧАТЬ

name.key – тут есть два варианта:

Если с первым пунктом всё понятно, то со вторым чуть интересней. В дампе ищем файл — следующего вида №_out(длина имени)30_длина имени_16_длина имени – 2.

Интересен тот факт, что содержимое этого файла, в целом, не важно, поэтому можно сгенерить свой файл name.key, с соблюдением формата его первых четырех байт.

У себя я нашел один такой файл, 163_out

30_26_16_24. Из него и сделал name.key.


СЕРТФИКС СКАЧАТЬ

СЕРТФИКС СКАЧАТЬ

И накидал в него данных, чтобы привести его виду обычного name.key из рабочего контейнера:


СЕРТФИКС СКАЧАТЬ

Результат сохранил как name.key

Далее схема работы простоя, по аналогии со статьей с Rutoken Lite:

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

Папка копируется в корень другого носителя. Название папки при копировании изменять не следует!

Копирование контейнера с помощью программы КриптоПро CSP

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

При копировании контейнера на носитель Rutoken, вместо окна для создания пароля, будет выведено окно для создания PIN-кода. Поскольку для токенов PIN-коды являются обязательными, рекомендуется указать стандартный для этих носителей PIN-код: 12345678.

В случае утери пароля или PIN-кода использование контейнера может стать невозможным. Поэтому не следует изощряться при создании паролей, а PIN-коды использовать стандартные (их можно найти в предыдущей статье).

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

Программы имеет интуитивно понятный интерфейс, а потому вряд ли стоит подробно её описывать. В ней всё просто: ставишь «галочки» напротив нужных контейнеров и выбираешь в меню «Массовые действия» нужную операцию.

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

Чтобы увидеть результат выполнения операции, следует нажать кнопку «Обновить» в правом нижнем углу окна программы (см. рис. выше).

ЭЦП:  ШИФРОВАНИЕ ПРИ ЗАГРУЗКЕ ПОДПИСИ И СОЗДАНИИ ЭЛЕКТРОННОЙ ПОДПИСИ В MICROSOFT OFFICE WORD И EXCEL 2007 И 2010 С ИСПОЛЬЗОВАНИЕМ CRYPTO PRO OFFICE SIGNATURE
Оцените статью
ЭЦП64