Протокол записи SSL
Завершающим шагом в работе протокола записи SSL является создание заголовка, состоящего из следующих полей. Протокол записи SSL (SSL Record Protocol) обеспечивает поддержку двух следующих сервисов для соединений SSL. Сжатое сообщение вместе с добавленным к нему значением MAC шифруется. При необходимости выполняет сжатие данных; Передает полученные пакеты сегменту TCP. Шифрует данные (MAC +сжатое… Читать ещё >
Протокол записи SSL (реферат, курсовая, диплом, контрольная)
Протокол записи SSL (SSL Record Protocol) обеспечивает поддержку двух следующих сервисов для соединений SSL.
- * Конфиденциальность. Протокол квитирования SSL (SSL Handshake Protocol) определяет общий для клиента и сервера секретный ключ, используемый алгоритмом традиционной схемы для шифрования данных, передаваемых по протоколу SSL.
- * Целостность сообщений. Помимо обеспечения конфиденциальности, протокол квитирования SSL определяет общий секретный ключ для вычисления значений MAC (Message Authentication Code — код аутентичности сообщения).
Порядок отправки данных:
- 1. Этот протокол, получив сообщение для пересылки другой стороне, сначала фрагментирует данные, разбивая их на блоки подходящего размера;
- 2. При необходимости выполняет сжатие данных;
- 3. Применяет алгоритм вычисления MAC;
- 4. Шифрует данные (MAC +сжатое сообщение);
- 5. Добавляет заголовок
- 6. Передает полученные пакеты сегменту TCP.
При принятии данных: данные дешифруются, проверяются, восстанавливаются, собираются вновь и передаются приложениям более высокого уровня.
При вычислении кода аутентичности сообщения используется специальная схема вычисления MAC, в которой используется алгоритм хэширования MD5 или SHA-1.
Сжатое сообщение вместе с добавленным к нему значением MAC шифруется.
Используемые алгоритмы шифрования:
Блочное шифрование. | Поточное шифрование. | ||
Алгоритм. | Размер ключа. | Алгоритм. | Размер ключа. |
IDEA. | RC4−40. | ||
RC2−40. | RC4−128. | ||
DES-40. | |||
DES. | |||
3DES. | |||
Fortezza. |
В случае применения алгоритмов поточного шифрования шифруются только сжатое сообщение и добавленное к нему значение MAC.
При использовании алгоритмов блочного шифрования после значения MAC можно добавлять заполнитель. Заполнитель состоит из некоторого числа байтов заполнителя, за которыми следует 1-байтовое значение, указывающее длину заполнителя. Для общей длины заполнителя выбирается наименьшее из значений, при котором общая длина последовательности данных, подлежащих шифрованию (открытый текст + MAC + заполнитель), будет кратна длине блока шифра.
Завершающим шагом в работе протокола записи SSL является создание заголовка, состоящего из следующих полей.
- * Тип содержимого (8 битов). Определяет протокол лежащего выше уровня, с помощью которого должен обрабатываться данный фрагмент.
- * Главный номер версии (8 битов). Указывает главный номер версии используемого протокола SSL. Для SSLv3 это поле содержит значение 3.
- * Дополнительный номер версии (8 битов). Указывает дополнительный номер версии применяемого протокола SSL. Для SSLv3 это поле содержит значение 0.
- * Длина сжатого фрагмента (16 битов). Длина в байтах данного фрагмента открытого текста (или сжатого фрагмента при сжатии). Максимально допустимое значение равно 214 + 2048.
Для типа содержимого определены значения change_cipher_spec, alert, handshake и application_data. Первые три значения обозначают протоколы стека SSL.