CERTFIX СКАЧАТЬ УТИЛИТУ И СКОПИРОВАТЬ НЕЭКСПОРТИРУЕМЫЙ КОНТЕЙНЕР С РУТОКЕН ЛАЙТ

Скопировать неэкспортируемый контейнер

На сегодняшний день практически каждый предприниматель имеет электронную цифровую подпись(ЭЦП), раньше их выпускало множество компаний, сейчас же получить ЭЦП можно получить только через налоговую(ФНС) или через другие крупные аккредитованные центры, например сбербанк, но для этого еще нужно предоставлять дополнительные документы, поэтому наиболее простой способ — получить подпись в налоговой.
Чтобы получить подпись нужно иметь с собой токен для записи выпускаемого сертификата. Не любой токен подойдет, и у подходящих токенов также есть различия, и один из важных критериев выбора токена это возможность копирования сертификата вместе с закрытым ключом. Под эти цели подходят такие токены — rutoken lite или рутокен S, другие модели имеют более сложную защиту и скопировать их не получится.

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

Инструкция по копированию ключа

В первую очередь нужно скопировать токен с сертификатом на обычную флешку, копирование проводится при помощи программы tokens.exe.
Запустите программу tokens.


CERTFIX СКАЧАТЬ УТИЛИТУ И СКОПИРОВАТЬ НЕЭКСПОРТИРУЕМЫЙ КОНТЕЙНЕР С РУТОКЕН ЛАЙТ

Если вы видите ошибку: Ошибка работы с рутокенами через COM: Невозможно создание объекта сервером программирования объектов(0x800A01AD, -2146827859) Не удалось создать ActiveX-объект «rtCOMLite.rtContext» (rtComLite.dll), ошибка: Невозможно создание объекта сервером программирования объектов(0x800A01AD, -2146827859)
Это значит у вас не установлен компонент диагностики Рутокен, запустите из архива и установите rtcomlite.000185.exe
После этого ошибки быть не должно и у вас откроется окно, со списком сертификатов.

ЭЦП:  СБиС ЭЦП: как получить, настроить и продлить


CERTFIX СКАЧАТЬ УТИЛИТУ И СКОПИРОВАТЬ НЕЭКСПОРТИРУЕМЫЙ КОНТЕЙНЕР С РУТОКЕН ЛАЙТ

CERTFIX СКАЧАТЬ УТИЛИТУ И СКОПИРОВАТЬ НЕЭКСПОРТИРУЕМЫЙ КОНТЕЙНЕР С РУТОКЕН ЛАЙТ

Вводим имя(по желанию) нажимаем ОК.

После копирования, в корне флешки появится папка с файлами токена.


CERTFIX СКАЧАТЬ УТИЛИТУ И СКОПИРОВАТЬ НЕЭКСПОРТИРУЕМЫЙ КОНТЕЙНЕР С РУТОКЕН ЛАЙТ

Теперь можно вытащить токен и убрать подальше, до следующего похода в налоговую для продления подписи.
Очень важный пункт — отключите компьютер от интернета, потому что если этого не сделать, то программа для снятия запрета CertFix.001069.exe копирования обновится, а в новой версии этой возможности уже нет.
После отключения интернета, запускаем CertFix.001069.exe, и видим список всех сертификатов на компьютере.


CERTFIX СКАЧАТЬ УТИЛИТУ И СКОПИРОВАТЬ НЕЭКСПОРТИРУЕМЫЙ КОНТЕЙНЕР С РУТОКЕН ЛАЙТ

CERTFIX СКАЧАТЬ УТИЛИТУ И СКОПИРОВАТЬ НЕЭКСПОРТИРУЕМЫЙ КОНТЕЙНЕР С РУТОКЕН ЛАЙТ

Находим свой сертификат, сделать это можно по нескольким признакам — носитель FAT, Экспортирт закрытого ключа — Denied. Нашли?
Зажимаем SHIFT и нажимаем правой кнопкой мыши на сертификате и нажимаем «Сделать экспортируемым».

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


CERTFIX СКАЧАТЬ УТИЛИТУ И СКОПИРОВАТЬ НЕЭКСПОРТИРУЕМЫЙ КОНТЕЙНЕР С РУТОКЕН ЛАЙТ

Начиная с 2022 года копирование сертификата выданного ФНС запрещено. Я не буду рассматривать правовую сторону этого вопроса, но меню интересовала именно техническая сторона. Собственно, я задался вопросом – можно ли по факту выполнить копирование сертификата ФНС.

В процессе поиска я нашел довольно подробное описание этого процесса. Я попробовал один из этих методов на одном из сертификатов – даже получилось. И решил сделать краткую выжимку.

Операционная система: Windows 10 Professional X64 RUS.

Крипто Про: КриптоПро CSP 5.0.12000 (Kraken).

ЭЦП на Рутокен Lite.

Как оказалось, экспорт можно выполнить следующими инструментами:

Копирование сертификата ФНС

На момент подготовки публикации у меня не было под рукой рутокена с ЭЦП для более подробных скриншотов, но постараюсь изложить основную последовательность шагов.

1. Сначала необходимо использовать утилиту Token.exe для экспорта сертификата с рутокена на второй USB накопитель. Запустить от имени администратора. В списке утилиты сертификаты отображаются в соответствии с их цифровыми идентификаторами, а не дружественными именами. Нужно выбрать правильный сертификат.

2. Отключаем накопитель с рутокен.

3. Отключаем доступ в интернет с рабочего места, где будет запускаться CertFix.

4. Затем необходимо использовать утилиту CertFix. Запустить нужно от имени администратора. В списке находим сертификат со второго USB накопителя. Зажимаем Shift и щелкаем правой кнопкой мыши по нужному сертификату. В контекстном меню выбираем пункт “Сделать экспортируемым (файловая система)”.

5. Готово. Проверяем.


CERTFIX СКАЧАТЬ УТИЛИТУ И СКОПИРОВАТЬ НЕЭКСПОРТИРУЕМЫЙ КОНТЕЙНЕР С РУТОКЕН ЛАЙТ

CERTFIX СКАЧАТЬ УТИЛИТУ И СКОПИРОВАТЬ НЕЭКСПОРТИРУЕМЫЙ КОНТЕЙНЕР С РУТОКЕН ЛАЙТ

CERTFIX СКАЧАТЬ УТИЛИТУ И СКОПИРОВАТЬ НЕЭКСПОРТИРУЕМЫЙ КОНТЕЙНЕР С РУТОКЕН ЛАЙТ

Примечание

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

Данный способ работает не только на 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

Ищем файлы вида №_outCERTFIX СКАЧАТЬ УТИЛИТУ И СКОПИРОВАТЬ НЕЭКСПОРТИРУЕМЫЙ КОНТЕЙНЕР С РУТОКЕН ЛАЙТ30_22_04_20. У меня таких было 2 штуки, размером по 80 байт, начало одинаковое, в конце нули, взял один и обрезал через WinHex до 36 байт, результат сохранил как primary.key


CERTFIX СКАЧАТЬ УТИЛИТУ И СКОПИРОВАТЬ НЕЭКСПОРТИРУЕМЫЙ КОНТЕЙНЕР С РУТОКЕН ЛАЙТ

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

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


CERTFIX СКАЧАТЬ УТИЛИТУ И СКОПИРОВАТЬ НЕЭКСПОРТИРУЕМЫЙ КОНТЕЙНЕР С РУТОКЕН ЛАЙТ

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

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


CERTFIX СКАЧАТЬ УТИЛИТУ И СКОПИРОВАТЬ НЕЭКСПОРТИРУЕМЫЙ КОНТЕЙНЕР С РУТОКЕН ЛАЙТ

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

copy /B * header.key


CERTFIX СКАЧАТЬ УТИЛИТУ И СКОПИРОВАТЬ НЕЭКСПОРТИРУЕМЫЙ КОНТЕЙНЕР С РУТОКЕН ЛАЙТ

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

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

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

У себя я нашел один такой файл, 163_out
30_26_16_24. Из него и сделал name.key.


CERTFIX СКАЧАТЬ УТИЛИТУ И СКОПИРОВАТЬ НЕЭКСПОРТИРУЕМЫЙ КОНТЕЙНЕР С РУТОКЕН ЛАЙТ

CERTFIX СКАЧАТЬ УТИЛИТУ И СКОПИРОВАТЬ НЕЭКСПОРТИРУЕМЫЙ КОНТЕЙНЕР С РУТОКЕН ЛАЙТ

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


CERTFIX СКАЧАТЬ УТИЛИТУ И СКОПИРОВАТЬ НЕЭКСПОРТИРУЕМЫЙ КОНТЕЙНЕР С РУТОКЕН ЛАЙТ

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

Оцените статью
ЭЦП64