Разработка системы генерации и проверки подлинности сертификата открытого ключа

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

Задание

 

Необходимо разработать систему генерации и проверки сертификата открытого ключа с использованием функций CryptoAPI на языке Delphi. Система должна выполнять функции:

1.Генерация пары ключей (открытого и закрытого) администратора для подписывания сертификата

2.Ведение списка пользователей и их сертификатов (создание, удаление, редактирование)

.Для каждого нового пользователя создание контейнера ключей и генерация пары ключей - открытого и закрытого.

.Для каждого нового пользователя создание сертификата открытого ключа (формат сертификата см. в приложении В) и его подписывание администратором с помощью своего секретного ключа. Экспорт сертификата в файл.

.Проверка подлинности сертификата, присланного для проверки. Проверка актуальности сертификата (т.е. проверка того, что текущая дата меньше конечного срока действия сертификата)

.Возможность просмотра всех полей сертификата пользователя

.При окончании срока действия перемещение сертификата в архив сертификатов. Ведение архива сертификатов

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

 

 

1. Инфраструктура открытых ключей PKI

 

Инфраструктура открытых ключей PKI (Public Key Infrastructure) представляет собой комплексную систему, обеспечивающую все необходимые сервисы для использования технологии открытых ключей. Эта комплексная система включает в себя структуры, политики, процедуры, аппаратные и программные средства. PKI обеспечивает защищенный обмен сообщениями и надежную идентификацию между сторонами, незнакомыми друг с другом при передаче информации через открытые сети. По прогнозам аналитиков, в ближайшие годы ожидаются высокие темпы роста сферы услуг по использованию PKI вследствие широкого развития электронной коммерции. В настоящее время поставщиками электронных услуг становятся банки, нотариальные конторы, страховые и торговые организации, при операциях которых целостность и конфиденциальность информации, а также неотказуемость от факта ее передачи, имеет первостепенное значение.

 

1.1 Основные компоненты PKI

 

Основными компонентами PKI являются:

Удостоверяющий центр

Регистрационный центр

Реестр сертификатов

Архив сертификатов

Пользователи

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

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

Основные функции УЦ:

Генерация своего секретного ключа и формирование самоподписанного сертификата

Выпуск (т.е. создание и подписывание) сертификатов подчиненных и / или связанных УЦ и сертификатов открытых ключей пользователей

Ведение базы данных изданных сертификатов и реестра аннулированных сертификатов

Выпуская сертификат открытого ключа УЦ тем самым подтверждает, что лицо, указанное в сертификате, владеет секретным ключом, соответствующим открытому ключу. В инфраструктуре PKI удостоверяющие центры выступают как доверенная третья сторона, удостоверяющая подлинность участников.

Регистрационный центр (РЦ) является необязательным компонентом PKI. Регистрационный центр выполняет функции:

регистрации пользователей,

взаимосвязи пользователей с УЦ

проверки информации, которая заносится в сертификат.

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

Реестр сертификатов - это база данных, где хранятся действующие сертификаты и списки аннулированных сертификатов. Термин реестр введен в практику Законом РФ Об электронной цифровой подписи. Реестр обеспечивает хранение и распространение сертификатов, управляет внесениями изменений в сертификаты, предоставляет информацию о текущем статусе сертификата.

Архив сертификатов - это база данных долговременного хранения всех изданных сертификатов. Архив используется для разрешения споров о подлинности цифровых подписей, которыми в прошлом заверялись документы. Главная функция архива - обеспечить целостность хран