masks key что это

Читаем контейнер закрытого ключа КриптоПро средствами OpenSSL

Речь пойдет о файлах primary.key, masks.key и header.key, которые лежат в директории ххххх.000 на флешке. Данные файлы входят в состав криптоконтейнера закрытого ключа электронной подписи криптопровайдера КриптоПро, формат которого нигде не опубликован. Целью данной статьи является чтение контейнера и преобразование закрытого ключа в формат, который может быть прочитан в библиотеке OpenSSL. Долгое время было распространено ошибочное суждение, что достаточно сделать нечто вида (primary_key XOR masks_key) и мы получим закрытый ключ в чистом (raw) виде, однако забегая вперед, можно утверждать, что в КриптоПро было применено более сложное преобразование, в худшем случае состоящее из более чем 2000 (двух тысяч) операций хеширования.

Файл primary.key

Содержит 32 байта ключа в формате Asn1. Это только половина ключа, полный ключ получается при делении этого числа по модулю Q на маску. Поле, хранящее модуль Q в библиотеке OpenSSL имеет название order. Маска лежит в файле masks.key:

Файл masks.key

Содержит 32 байта маски ключа в формате Asn1, зашифрованного на ключе хранения pwd_key. Далее 12 байт «затравочной» информации для генерации ключа хранения pwd_key, если криптоконтейнер защищен паролем, то пароль также участвует в генерации ключа хранения.

Далее контрольная сумма (имитозащита) 4 байта. Контрольной информацией для простоты мы пользоваться не будем, общий контроль будет осуществляться путем генерации открытого ключа и сравнения первых 8 байт полученного ключа с соответствующим полем из файла header.key:

Файл header.key

Читаем закрытый ключ и конвертируем

Основную работу выполняют следующие 3 функции:

1. Создаем ключ хранения исходя из 12-ти байтовой «соли» и пароля.

2. Расшифровываем основной ключ на ключе хранения.

3. Делим ключ с маской на маску.

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

Сборка утилиты конвертирования ключа

Далее сборка исходников описана для Linux версии.

Версию для Windows можно скачать отсюда там же есть сертификаты и закрытый ключ для тестирования, для сборки потребуется бесплатный компилятор Borland C++ 5.5

Компиляция OpenSSL библиотеки

После скачивания и распаковки исходных текстов openssl в целевой директории выполняем команды:

Получаем готовую библиотеку libcrypto.a в текущей директории.
Также потребуются заголовочные файлы из директорий engines/ccgost и include.

Компиляция privkey.c

Формирование файла закрытого ключа private.key

Тестовый закрытый ключ в криптоконтейнере lp-9a0fe.000, сертификат открытого ключа signer.cer и другие файлы для тестирования можно взять отсюда

Получаем результат работы:

Cохраняем в private.key

Пользуемся закрытым ключом private.key для подписывания файла file.txt

Проверяем подпись

Все работает просто замечательно!

Спасибо за внимание. Это была моя первая статья на хабре.

Источник

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

Мы опишем установку сертификата электронной подписи и закрытого ключа для ОС семейства Windows. В процессе настройки нам понадобятся права Администратора (поэтому нам может понадобится сисадмин, если он у вас есть).

Если вы еще не разобрались что такое Электронная подпись, то пожалуйста ознакомьтесь вот с этой инструкцией. Или если еще не получили электронную подпись, обратитесь в Удостоверяющий центр, рекомендуем СКБ-Контур.

Хорошо, предположим у вас уже есть электронная подпись (токен или флешка), но OpenSRO сообщает что ваш сертификат не установлен, такая ситуация может возникнуть, если вы решили настроить ваш второй или третий компьютер (разумеется подпись не «прирастает» только к одному компьютеру и ее можно использовать на нескольких компьютерах). Обычно первоначальная настройка осуществляется с помощью техподдержки Удостоверяющего центра, но допустим это не наш случай, итак поехали.

1. Убедитесь что КриптоПро CSP 4 установлен на вашем компьютере

Для этого зайдите в меню Пуск КРИПТО-ПРО КриптоПро CSP запустите его и убедитесь что версия программы не ниже 4-й.

Если ее там нет, то скачайте, установите и перезапустите браузер.

2. Если у вас токен (Рутокен например)

Прежде чем система сможет с ним работать понадобится установить нужный драйвер.

Алгоритм такой: (1) Скачиваем; (2) Устанавливаем.

Для токена может понадобиться стандартный (заводской) пин-код, здесь есть стандартные пин-коды носителей.

3. Если закрытый ключ в виде файлов

Тут есть тонкость если эти файлы записаны на жесткий диск вашего компьютера, то КриптоПро CSP не сможет их прочитать, поэтому все действия надо производить предварительно записав их на флешку (съемный носитель), причем нужно расположить их в папку первого уровня, например: E:\Andrey\ <файлики>, если расположить в E:\Andrey\keys\ <файлики>, то работать не будет.

(Если вы не боитесь командной строки, то съемный носитель можно сэмулировать примерно так: subst x: C:\tmp появится новый диск (X:), в нем будет содержимое папки C:\tmp, он исчезнет после перезагрузки. Такой способ можно использовать если вы планируете установить ключи в реестр)

Нашли файлы, записали на флешку, переходим к следующему шагу.

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

Теперь нам нужно получить сертификат, сделать это можно следующим образом:

5. Использование электронной подписи без токена или флешки (установка в реестр)

Если скорость и удобство работы для вас стоит чуть выше чем безопасность, то можно установить ваш закрытый ключ в реестр Windows. Для этого нужно сделать несколько простых действий:

Чтобы для сертификата проставить ссылку на этот закрытый ключ выполните действия из пункта (4).

Читайте также:  Что значит тыгыдык у кошек

Важное замечание: портал OpenSRO не «увидит» сертификат, если вышел срок его действия.

Источник

Как установить сертификат ЭЦП на компьютер

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

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

Для того чтобы установить сертификат на свой компьютер, необходимо скачать КриптоПро CSP. Дистрибутив программы доступен для загрузки на сайте (потребуется регистрация/авторизация).

Стоимость использования КриптоПро CSP

Каждый новый пользователь получает бесплатный тестовый период пользования программой – 90 дней. Когда этот период истечёт, нужно будет приобретать лицензию. Но иногда она уже включена в сертификат ЭЦП.

Технические требования для КриптоПро CSP

Перед установкой КриптоПро убедитесь, что ваш компьютер отвечает минимальным техническим требованиям:

операционная система (ОС) – Виндовс 7 и старше (8, 10);

наличие браузера InternetExplorer 8 и выше, либо актуальных версий Яндекс-браузера, Google Chrome, Mozilla Firefox;

процессор – 32 или 64-битный с частотой 1Ггц или выше;

ОЗУ – 512 Мб или выше;

устройство вывода изображения с разрешением 800х600 или выше;

наличие USB-входа стандарта 1.1 или выше.

Откройте программу КриптоПро CSP.

Во вкладке Сервис нажмите кнопку Просмотреть сертификат в контейнере.

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

А если закрытый ключ содержится в виде файлов?

Закрытый ключ может быть в виде шести файлов: header.key, masks.key, masks2.key, name.key, primary.key, primary2.key

И если эти файлы находятся в корневой папке (то есть, записаны непосредственно на жёсткий диск), то КриптоПро CSP их не «увидит». Соответственно, все действия нужно производить только после того, как каждый файл перенесён на флешку. Причём находиться он должен в папке первого уровня.

После выбора контейнера откроется окно Сертификаты в контейнере закрытого ключа. С помощью кнопки Установить начните установку сертификата.

Если установка прошла успешно, перед вами появится окно о завершении операции. Закройте его, нажав ОК.

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

Как настроить рабочее место

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

плагина Astral Toolbox;

ЭЦП на любом портале для программного продукта Астрал-ЭТ.

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

Проверка ЭЦП

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

Настройка браузера

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

Проверка плагинов

При возникновении проблем с Астрал Плагин требуется произвести его переустановку или произвести настройку межсетевого экрана или интернет-браузеров. Если используются «Астрал Онлайн» или «Астрал.ОФД», плагины Astral Toolbox уже могут быть установлены. Версии данных плагинов не совместимы с продуктом «Астрал Отчёт 5.0». Обязательно требуется установка плагина не ниже версии 2.19.2.

Удалённая настройка рабочего места

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

На этом всё! Всем, кто решил обезопасить себя и свой бизнес, используя электронную подпись взамен обычной, желаем успехов в установке!

Источник

Как скопировать контейнер/закрытую часть ключа?

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

Пример закрытого ключа — папки с шестью файлами, и открытого ключа — файла с расширением .cer.

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

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

1. Выбрать Пуск / Панель Управления / КриптоПро CSP.

2. Перейти на вкладку Сервис и кликнуть по кнопке Скопировать контейнер.

3. В окне «Копирование контейнера закрытого ключа» нажмите на кнопку «Обзор».

Читайте также:  при каком правителе было восстание пугачева

4. Выберите контейнер, который необходимо скопировать, и кликните по кнопке «Ок», затем «Далее».

5. Если вы копируете с защищённого ключевого носителя, то появится окно ввода, в котором следует указать pin-код.

6. Если вы не меняли pin-код на носителе, стандартный pin-код необходимо вводить соответственно его типу:

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

8. В окне «Выбор ключевого носителя» выберите носитель, на который будет помещен новый контейнер.

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

В случае утери пароля/pin-кода использование контейнера станет невозможным.

10. Если вы копируете контейнер на смарт-карту ruToken/eToken /JaCarta, окно запроса будет выглядеть так:

11. В окне ввода укажите pin-код. Если вы не меняли pin-код на носителе, стандартный pin-код

12. После копирования система вернется на вкладку «Сервис» КриптоПро CSP. Копирование завершено.

13. Для работы с копией ключевого контейнера необходимо установить личный сертификат.

14. В меню Пуск выберите пункт «КРИПТО-ПРО», запустите приложение «КриптоПро CSP»

15. Перейдите на вкладку «Сервис» и нажмите кнопку «Просмотреть сертификаты в контейнере»:

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

17. После выбора контейнера нажмите кнопку Ок, затем Далее

18. Если после нажатия на кнопку Далее Вы видите такое сообщение:

19. «В контейнере закрытого ключа отсутствует открытый ключ шифрования», следует установить сертификат по рекомендациям, описанным в разделе «Установка через меню «Установить личный сертификат».

20. В окне Сертификат для просмотра нажмите кнопку Установить:

21. Если откроется сообщение «Этот сертификат уже присутствует в хранилище сертификатов. Заменить существующий сертификат новым, с проставленной ссылкой на закрытый ключ?», нажмите Да:

22. Дождитесь сообщения об успешной установке:

23. Сертификат установлен. Можно закрыть все открытые окна КриптоПро.

Установка через меню «Установить личный сертификат».

1. Для установки сертификата этим способом Вам понадобится файл сертификата (файл с расширением.cer).

2. В меню Пуск выберите пункт «КРИПТО-ПРО», запустите приложение «КриптоПро CSP»

3. Перейдите на вкладку «Сервис» и нажмите кнопку «Установить личный сертификат»:

4. В следующем окне нажмите кнопку Обзор, чтобы выбрать файл сертификата. Укажите путь к файлу сертификата и нажмите кнопку Открыть (в нашем примере файл сертификата находится на Рабочем столе):

5. В следующем окне нажмите кнопку Далее; в окне Сертификат для установки нажмите Далее.

6. Поставьте галку в окне Найти контейнер автоматически (в нашем примере контейнер находится в Реестре компьютера) и нажмите Далее:

7. В следующем окне отметьте пункт Установить сертификат (цепочку сертификатов) в контейнер и нажмите Далее:

8. В окне Завершение мастера установки личного сертификата нажмите Готово.

9. Если КриптоПро CSP запрашивает pin-код от контейнера, введите нужный код или попробуйте стандартные pin-коды носителей:

10. Если откроется сообщение «Этот сертификат уже присутствует в хранилище сертификатов. Заменить существующий сертификат новым, с проставленной ссылкой на закрытый ключ?», нажмите Да:

11. Сертификат установлен. Можно закрыть все открытые окна КриптоПро.

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

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

Источник

Как скопировать ЭЦП с рутокена

Из нашей статьи вы узнаете:

Сертификат электронной цифровой подписи — электронный либо бумажный документ, дающий право проконтролировать достоверность текстового или иного файла, принадлежность операции конкретному владельцу. Его выдает специализированный удостоверяющий центр (УЦ), где идет оформление ЭЦП. В обязательном порядке в нем есть следующая информация:

Также в состав сертификата входит информация о владельце ЭЦП. Для физического (частного) лица — это фамилия имя и отчество, номер СНИЛС, ИНН при наличии. Для юрлица — это наименование компании, адрес расположения, ИНН. Дополнительно в сертификате могут находиться сведения о сфере применения, данные об издателе и иные данные.

В общем случае сертификат ЭЦП состоит из трех компонентов:

Как правило, срок действия сертификата составляет 1 год с момента выдачи, по истечение которого надо повторно получать новый. Сделано это для повышения общей надежности и предотвращения компрометации конфиденциальных данных.

Как произвести копирование сертификата с Рутокен

На одном накопителе Рутокен может находиться до 28 сертификатов ЭЦП (зависит от объема встроенной памяти). Этого достаточно для решения задач даже с учетом постепенного копирования на имеющийся носитель дополнительных ключей. На практике иногда приходится сталкиваться с необходимостью копирования сертификата с токена для переноса на другой или временного хранения на жестком диске, в облаке. Также актуальна обратная операция, позволяющая создать копию ЭЦП на другом носителе для передачи ее коллеге, который также получил право на использование.

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

Читайте также:  какой лучше всего наполнитель для котят

Если в качестве исходного носителя используется USB-накопитель, то контейнер с размещенным сертификатом должен находиться в корневой папке. Параллельно на нем может располагаться другая информация любой степени вложенности, которая не будет мешать работе с контейнером во время подписи документации.

Обратим внимание, что использование обычного USB-накопителя стоит рассматривать исключительно в качестве временной меры для хранения сертификатов и ключей из-за риска их хищения злоумышленниками. Исключением будет случай, когда подобное копирование используется для получения дополнительного комплекта файлов на случай выхода из строя Рутокен.

Как выполнить копирование сертификата с Рутокена через КриптоПРО

Для решения задачи понадобится программа КриптоПРО CSP. Непосредственно копирование ЭЦП с токена идет следующим образом:

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

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

Проведение копирования контейнера с помощью встроенных средств операционной системы Windows

Файл primary.key включает в себя 32 байта ключа, представленного в формате ASN1. При этом данное значение представляет собой только 50% искомого ключа, так как полная его версия может быть получена при делении на маску с учетом модуля Q.

Файл masks.key включает 32 байта маски ключа, которая также представлена в формате ASN1. Также здесь есть 12 байт данных для генерации ключа при условии, что криптографический контейнер защищен от несанкционированного доступа паролем (последний также принимает участие при генерации уникального ключа хранения). Завершает перечень информации в файле контрольная сумма, занимающая 4 байта.

Файл header.key представляет собой набор параметров ЭЦП и другую общую информацию.

Как выполнить копирование ЭП из реестра

Внимание!

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

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

Теперь достаточно для копирования выполнить действия в соответствии со следующим алгоритмом:

*Примечание:

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

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

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

В случае успеха будет выдано окно о завершении операции. Нажмите кнопку «ОК»

Как перенести нужный контейнер на Рутокен из другого источника

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

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

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

Удалить также можно с помощью программы КриптоПро CSP, которое значительно упрощает действия с контейнерами. Для проведения операции сделайте ряд действий:

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

При необходимости решить вопросы с копированием, организацией рабочих мест, где понадобится использование ЭЦП Рутокен любого типа, обращайтесь в компанию «Астрал-М». Мы специализируемся на внедрении в компаниях IT-решений по автоматизации электронного документооборота, выпуске электронных цифровых подписей любой степени сложности. Вы получите высокое качество услуг по доступной цене. Дополнительно мы предлагаем возможность оформления ЭЦП в ускоренном формате, когда заявка будет выполнена в течение 1-2 часов при наличии пакета документов.

Источник

Сказочный портал