Статья:

ПРИЛОЖЕНИЕ АВТОМАТИЗИРОВАННОГО СОСТАВЛЕНИЯ ЗАПРОСОВ НА СЕРТИФИКАТ

Конференция: I Студенческая международная заочная научно-практическая конференция «Молодежный научный форум: технические и математические науки»

Секция: 3. Информационные технологии

Выходные данные
Вуколов А.В. ПРИЛОЖЕНИЕ АВТОМАТИЗИРОВАННОГО СОСТАВЛЕНИЯ ЗАПРОСОВ НА СЕРТИФИКАТ // Молодежный научный форум: Технические и математические науки: электр. сб. ст. по мат. I междунар. студ. науч.-практ. конф. № 1(1). URL: https://nauchforum.ru/archive/MNF_social/1.pdf (дата обращения: 19.04.2024)
Лауреаты определены. Конференция завершена
Эта статья набрала 14 голосов
Мне нравится
Дипломы
лауреатов
Сертификаты
участников
Дипломы
лауреатов
Сертификаты
участников
на печатьскачать .pdfподелиться

ПРИЛОЖЕНИЕ АВТОМАТИЗИРОВАННОГО СОСТАВЛЕНИЯ ЗАПРОСОВ НА СЕРТИФИКАТ

Вуколов Андрей Владимирович
cтудент ЮГУ, г. Ханты-Мансийск
Царегородцев Александр Леонидович
научный руководитель, канд. техн. наук, доцент, ЮНИИИТ

Аннотация

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

Ключевые слова: Электронная подпись; запрос на сертификат; удостоверяющий центр; криптография; XML.

В Российской Федерации существует большое количество удостоверяющих центров, работающих на базе программного обеспечения КриптоПро. Они выпускают электронную подпись согласно действующего в настоящее время федерального закона от 06.04.2011 № 63 «Об электронной подписи». Основная работа сотрудников УЦ связана с ручными проверками заявлений, манипуляциями с документами и флеш-носителями, выполняемыми оператором на внедрение приложения, способного выполнять эти функции, без участия оператора, а при использовании этого приложения непосредственно клиентами, делая эти процессы проще для обеих сторон.

На базе Югорского НИИ ИТ в 2007 году создан УЦ согласно распоряжению от 9 июля 2007 года № 128 «О включении сертификата ключа подписи уполномоченного лица удостоверяющего центра в Единый государственный реестр». В 2008 году он определен в качестве регионального удостоверяющего центра для органов государственной власти автономного округа на основе распоряжения № 256-рг от 02.06.2008 г.

Для осуществления своей деятельности Удостоверяющий центр использует программно-аппаратный комплекс КриптоПро УЦ, данный комплекс позволяет издавать сертификаты, имея в качестве входной информации файл формата *.P10, формируемого вместе с закрытым ключом программой КриптоПро CSP. В настоящее время этот файл формирует сам оператор Удостоверяющего центра, накладывая на себя ответственность при заполнении полей и временным наличием у него закрытого ключа.

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

 

При шифровании с открытым ключом для шифрования и дешифрования используются различные ключи

Рисунок 1. Шифрование с закрытым ключом

 

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

Деятельность Удостоверяющего Центра ХМАО-Югры (УЦ) заключается в предоставлении услуг оформления, регистрации и выдачи отрытых ключей оформления заявок на создание и получение сертификата, необходимого для ведения осуществления своей деятельности уполномоченным лицам ОГВ в их системах документооборота, таких как: АРМ Бюджет, Госзаказ, Система межведомственного электронного взаимодействия и др.

Сложность заключается в том, что для получения отрытого и закрытого ключей пользователю необходимо написать заявление, вписав туда свои данные, отправить в УЦ на проверку, при необходимости исправить, повторить операции еще раз, пока все ошибки не будут исправлены, после чего выслать подписанный документ заявления. Когда сертификат с ключом будут готовы, пользователь или доверенное лицо, должен приехать в Ханты-Мансийск и получить в УЦ открытый и закрытый ключи. Для экономии времени, затраченного операторами необходимо упростить данный процесс, автоматизировав его, и, позволить пользователям формировать закрытый ключ на своем рабочем месте, сняв с оператора УЦ излишнюю ответственность.

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

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

 

 

Рисунок 2. Модульное структура приложения

 

Для реализации криптографических функций и интеграции Крипто-Про используется COM интерфейс Certificate Enrollment Control предназначенный для использования ограниченного количества функций CryptoAPI 2.0, связанных с генерацией ключей, запросов на сертификаты открытых ключей и обработкой сертификатов, полученных от Центра Сертификации, с использованием языков программирования Visual Basic, C++, JavaScript, VBScript и др.

Именно этот интерфейс используют различные Центры Сертификации (Verisign, Thawte и т. д.) при формировании сертификатов открытых ключей пользователей на платформе Windows [1].

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

Документы, написанные на языке XML достаточно просты, но способны хранить в себе любую информацию в структурированном виде. Информация в этом файле имеет синтаксис, который позволяет легко писать программы для работы с документами XML имеющей встроенные средства проверки корректности структуры и информации, описанной в документе и другие параметры, облегчающие создание, обработку и использование данных, описанных в документах XML [2].

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

<Root>

<List id="1">

<Name>Сертификат пользователя УЦ-УРМ, ozhmao</Name>

<Oids>

<Oid num="1.3.6.1.5.5.7.3.2">Проверка подлинности </Oid>

<Oid num="1.3.6.1.5.5.7.3.4">Защищенная эл. почта</Oid>

<Oid num="1.2.643.2.2.34.6">Пользователь HTTP, TLS</Oid>

</Oids>

<Fields>

<ФИО>                1</ФИО>

<Должность>     1</Должность>

.

.

<СНИЛС>  1</СНИЛС>

</Fields>

</List>

.

.

В корне структуры стоит тег Root, который обозначает начало списка шаблонов, на следующем уровне располагаются сами шаблоны, обрамленные тегами List, имеющих атрибут “id”, используемое для нумерации шаблонов. В каждый шаблон вложены такие объекты как название шаблона “Name” полномочия “Oids”, где, ниже уровнем перечисляются полномочия «oid» у которых в атрибуте “num” задается числовой идентификатор полномочия, а в значении — название. Во вложенном списке “Fields” перечислены поля, располагаемые на форме, значение которых определяет их наличие на форме: «1» — поле присутствует, «0» — отсутствует.

Считывание документа, а конкретно — структуры производится путем использования технологии LINQ to XML. Для считывания и хранения данных используются объекты типа XNode — представление узла или блоков данных в XML дереве, XElement — представление XML-элементов, XAttribute — представление атрибутов XML-документов.

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

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

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

 

Список литературы:

1. Крипто-Про, «Архитектура и встраивание СКЗИ на Windows/Unix» [Электронный ресурс]: Библиотеки ООО «КРИПТО-ПРО», Руководство разработчика, доступа URL: http://cpdn.cryptopro.ru/content/csp36/html/architecture.html.

2. «Cамоучители», «Введение в работу XML. SAX, DOM» [Электронный ресурс]: Статья — Электронный текст, 4 апреля 2008 г. Режим доступа URL: http://samoucka.com/?p=47.

3. Смирнов В.И, «Основы шифрования. Шифрование с закрытым ключом. Шифрование с открытым ключом» [Электронный ресурс]: Справочный материал — Электронный текст, Режим доступа URL: http://sevidi.ru/phpstroy/phpstroy73.php.