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

Протокол ssl поддерживает следующие методы обмена ключами

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

  • Анонимный метод Диффи-Хеллмана. Используется базовый алгоритм Диффи-Хеллмана, но без аутентификации сторон. Такой режим уязвим для вторжений типа «человек в середине» (man-in-the-middle), что делает его непригодным для коммерческого использования.

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

  • Метод Диффи-Хеллмана с одноразовыми параметрами (Ephemeral Diffie-Hellman) самый безопасный из трех представленных модификаций метода Диффи-Хеллмана. Предполагает использование временных (одноразовых) секретных ключей. Стороны обмениваются открытыми параметрами базового алгоритма Диффи-Хеллмана, подписанными с помощью закрытых ключей (RSA или DSS) отправителя. Получатель для проверки подписи использует соответствующий сертифицированный открытый ключ.

  • Fortezza. Метод, используемый в одноименной схеме шифрования.

Переменные состояния соединения SSL. Параметры, определяющие состояние соединения в течение сеанса SSL, могут устанавливаться индивидуально для каждого нового соединения. Эти параметры следующие:

  • Два случайных числа (идентификатора), server_random и client_random, длиной 32 байта каждый. Эти числа вычисляются сервером и клиентом соответственно в момент установления сеанса и для каждого нового соединения. Эти числа используются для вычисления закрытого ключа, что означает передачу чисел в незашифрованном виде в момент установления сеанса. Напротив, при установлении дополнительного соединения при активном сеансе используется процесс шифрования и числа передаются зашифрованными. Использование этих чисел защищает от атак с повторным применением сообщений, перехваченных в другом соединении (атака перехвата и повтора).

  • Два закрытых ключа, server MAC write secret и client MAC write secret. Эти ключи используются для вычисления кода аутентификации сообщения.

  • Разделяемый двумя сторонами секретный ключ для симметричного шифрования данных, называемый server write key на стороне сервера и client write key на стороне клиента. Длина ключа зависит от выбранного алгоритма шифрования и экспортных ограничений.

  • Два вектора инициализации (IV) для процедуры симметричного шифрования в режиме Cipher Block Chaining (CBC). Один вектор для сервера, другой для клиента. Размер вектора зависит от используемого алгоритма.

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

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]