Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
71
Добавлен:
19.02.2016
Размер:
902.14 Кб
Скачать

9.5. Протоколы взаимодействия и сертификаты в стандарте х.509

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

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

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

Перед использованием открытого ключа проверяется его сертификат (в том числе, путем проверки его подписи). Сертификат обычно содержит идентификатор пользователя, открытый ключ и отметку даты-времени.

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

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

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

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

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

Подобные криптосистемы называются комбинированными (смешанными, гибридными).

В асимметричных криптосистемах важно, чтобы сеансовые и асимметричные ключи были сопоставимы в отношении уровня безопасности, который они обеспечивают.

Если используется короткий сеансовый ключ (например, 40-битовый DES), то не имеет значения, насколько велики асимметричные ключи. Атаке будут подвергнуты не они, а сеансовые ключи алгоритма DES.

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

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

Безопасно создаются и распространяются открытые и секретные ключи асимметричных алгоритмов.

Секретный ключ передается его владельцу. Открытый ключ хранится в базе данных, соответствующей стандарту X.500, и администрируется центром сертификации ключей (Certification Authority или ЦСК).

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

Более того, если центр генерации ключей и лицо (орган), администрирующие их, не одно и то же, то конечный пользователь должен верить, что создатель ключей действительно уничтожил все их копии.

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

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

Теперь нужно решить проблему с передачей сеансового ключа получателю сообщения.

Отправитель должен получить для асимметричного криптоалгоритма открытый ключ получателя от центра сертификации ключей ЦСК.

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

Может существовать целая система сертификатов, подтверждающих подлинность открытого ключа ЦСК.

Стандарт X.509 описывает ряд методов для получения пользователями открытых ключей от ЦCК, однако практически ни один из них не может с 100% гарантией защитить от подмены открытого ключа, что является определенным ограничением для применения систем с открытым распределением ключей (Д.Чандлер в однозначно утверждает, что нет такой системы, в которой можно было бы гарантировать подлинность открытого ключа ЦСК).

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

Это означает, что ЦCК использовал свой секретный ключ для шифрования открытого ключа получателя

Так как только ЦCК знает свой секретный ключ, то есть определенная гарантия того, что открытый ключ адресата получен именно от ЦCК.

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

Затем сеансовый ключ шифруется с использованием асимметричного криптоалгоритма (например, алгоритма Эль Гамаля) и открытого ключа получателя (полученного от ЦCК и проверенного).

Зашифрованный сеансовый ключ объединяется с шифртекстом, который включает в себя добавленную ранее ЭЦП.

Весь полученный пакет данных (зашифрованный сеансовый ключ и шифртекст, в который, помимо исходного текста, входит его ЭЦП) передается получателю.

Так как зашифрованный сеансовый ключ передается по незащищенной сети, он является очевидным объектом различных атак.

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

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

Далее получатель запрашивает у ЦСК открытый ключ ЭЦП отправителя.

После получения этого ключа, он проверяет его с помощью открытого ключа ЦСК и соответствующего асимметричного криптоалгоритма.

Затем с помощью алгоритма ЭЦП и открытого ключа адресанта проверяется подлинность сообщения.

Соседние файлы в папке Гулак_по_главам