43575 (662683), страница 4

Файл №662683 43575 (Защита электронной почты в Internet) 4 страница43575 (662683) страница 42016-07-31СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 4)

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

• Тип (1 байт). Указывает один из 10 допустимых типов сообщения.

• Длина (3 байта). Длина сообщения в байтах.

• Содержимое (> 1 байта). Параметры, связываемые с сообщением данного типа.

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

Этапы установления сеанса (session) между клиентом и сервером.

этапа

Т

Client_hello

ипы сообщений

Характеристика этапа

1

Server_hello


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

2

certificate

server_key_exchange

certificate_request

server_hello_done


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

3

certificate

client_key_exchange

Sertificate_verify


Клиент передаёт сертификат, если он был запрошен. Клиент передает сообщение обмена ключами. Клиент может передать сообщение верификации сертификата.

4

Change_cipher_spec

finished

Change_cipher_spec

finished


Смена комплекта шифров и завершение работы протокола квитирования

1-ый этап – определение характеристик защиты.

Процесс инициируется клиентом, который передаёт сообщение серверу client_hello, сервер отвечает сообщением server_hello с выбранными параметрами, которые доступны клиенту.

Тип сообщения: client-hello.

Название поля

Характеристика поля

Версия

Наивысший номер версии SSL, поддерживаемый клиентом.

Случайное значение

Генерируемая клиентом случайная структура, содер­жащая 32-битовую метку даты/времени и 28 байтов, полученных с помо­щью защищенного генератора случайных чисел. Эти значения используют­ся в качестве оказий во время обмена ключами с целью защиты от атак воспроизведения.

Комплект шифров

Список, содержащий наборы криптографических алго­ритмов, поддерживаемых клиентом, перечисленные в порядке убывания их приоритета. Каждый элемент списка (каждый комплект шифров) опре­деляет алгоритм обмена ключами для схем традиционного шифрования, вычислений значений MAC и другие параметры шифрования. Сервер в server_hello должен определить какой-либо комплект шифров.

Метод сжатия

Список методов сжатия, поддерживаемых клиентом. Сервер в server_hello должен определить метод сжатии из доступных по списку.

Идентификатор сеанса

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

2-й этап – Аутентификация сервера и обмен ключами сервера.

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

Затем при необходимости может быть отправлено сообщение server_key_exchange (обмен ключами сервера). Отправка такого сообщения не требуется в двух случаях: (1) когда сервер отправил сертификат для метода Диффи-Хеллмана с фиксированными параметрами или (2) когда предлагается использовать схему обмена ключами RSA. Сообщение server_key_exchange необ­ходимо в случаях, когда используются следующие схемы.

• Анонимный метод Диффи-Хеллмана.

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

• Обмен ключами по схеме RSA, когда использующий RSA сервер имеет ключ RSA только для подписи.

• Fortezza.

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

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

3-й этап - Аутентификация клиента и обмен ключами клиента.

Получив сообщение server_done, клиент должен убедиться в том, что сервер предоставил действительный сертификат (если это требуется) и что параметры сообщения server_hello являются приемлемыми. Если проверка завершается ус­пешно, клиент оправляет серверу следующие сообщения.

1. Если сервер запросил сертификат, клиент начинает данный этап с отправки серверу сообщения certificate. Если у клиента подходящего сертификата нет, клиент отправляет вместо него уведомление no_certificate (нет сертификата).

2. Следующим идет сообщение client_key_exchange (обмен ключами клиента), Содержимое этого сообщения зависит от выбранного метода обмена ключами и может быть следующим.

• RSA. Клиент генерирует 48-байтовый предварительный главный ключ и шифрует его с помощью открытого ключа из сертификата сервера или с помощью временного ключа RSA из сообщения server_key_exchange. Этот предварительный ключ позволяет вычислить главный ключ.

• Метод Диффи-Хеллмана с одноразовыми параметрами, или анонимный метод Диффи-Хеллмана. Отправляются открытые параметры клиента для метода Диффи-Хеллмана.

• Метод Диффи-Хеллмана с фиксированными параметрами. В данном слу­чае открытые параметры клиента для метода Диффи-Хеллмана уже были отправлены в сообщении certificate, поэтому содержимое данного сообще­ния оказывается пустым.

• Fortezza. Отправляются параметры клиента для алгоритма Fortezza.

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

4-ый этап – завершение создания защищённого соединения.

Клиент отправляет сообщение change_cipher_spec (изменение параметров шифрования) и копирует параметры шифрования из поля "комплект шифров" состояния ожидания в поле текущего состоя­ния. Обратите внимание на то, что это сообщение не считается частью протокола квитирования, а отсылается в рамках протокола изменения параметров шифро­вания (Change Cipher Spec Protocol). В ответ клиент немедленно отправляет со­общение finished, шифрованное новым алгоритмом с новыми ключами и секрет­ными значениями. Сообщение finished подтверждает, что процессы обмена клю­чами и аутентификации завершились успешно. Содержимое сообщения finished представляет собой результат конкатенации следующих двух значений хэш-кода.

MD5 (master_secret || pad_2 || MD5 (handshake_messages || Sender || master_secret || pad_l)),

SHA (master_secret || pad_2 || SHA (handshake_messages || Sender || master_secret || pad_l)),

где Sender - код, указывающий на то, что отправителем является кли­ент,

handshake_messages - все данные сообщений квитирования, за исключением данного сообщения.

master_secret – совместно применяемый главный секретный ключ, представляет собой однократно используемое 48-байтовое занчение (384 бита), генерируемое для данного сеанса в ходе защищённого обмена данными.

В ответ на эти два сообщения сервер посылает свое сообщение change_cipher_spec, переводит параметры шифрования состояния ожидания в те­кущее состояние и посылает свое сообщение finished. На этом процесс квитиро­вания завершается, и теперь клиент и сервер могут начать обмен данными на уровне приложения.

3. 6. Создание главного секретного ключа.

Создание главного ключа состоит из двух этапов. На первом этапе согласуется значение предварительного главного ключа (pre_master_secret), а на втором обе стороны вычисляют значение главно­го ключа (master_secret). Для передачи друг другу значения pre_master_secret у сторон имеется два варианта.

• RSA. Генерируемый клиентом 48-байтовый ключ pre_master_secret шиф­руется с помощью открытого ключа RSA сервера и отправляется клиентом серверу. Сервер дешифрует полученный шифрованный текст с помощью своего личного ключа и восстанавливает значение pre_master_secret.

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

Теперь обе стороны могут вычислить значение master_secret по схеме:

master_secret = MD5 (pre_master_secret ||

SHA ('A' || pre_master_secret || ClientHello.random || ServerHello.random)) ||

MD5 (pre_master_secret ||

SHA ('BB' || pre_master_secret || ClientHello.random || Server Hello.random)) ||

MD5 (pre_master_secret ||

SHA ('CCC' || pre_master_secret || ClientHello.random || ServerHello.random)),

где ClientHello.random и ServerHello.random являются значениями оказий, вхо­дящих в оригинальные сообщения приветствия сторон (поле «случайное значение»).

3. 7. Генерирование криптографических параметров.

Для элемента “Параметры шифрования” поля “комплект шифров” требуются секретный ключ MAC клиента для записи, секретный ключ MAC сервера для записи, ключ клиента для записи, ключ сер­вера для записи, вектор инициализации клиента для записи и вектор инициали­зации сервера для записи. Все эти параметры генерируются из главного ключа путем применения функции хэширования к главному ключу с целью получения защищенной последовательности байтов достаточной длины.

Процедура генерирования ключей из главного ключа аналогична процедуре генерирования главного ключа из предварительного и показана ниже.

key_block = MD5 (master_secret ||

SHA ('A' || master_secret || ServerHello.random || ClientHello.random)) ||

MD5 (master_secret ||

SHA ('BB' || master_secret || Server Hello, random || ClientHello.random)) ||

Характеристики

Тип файла
Документ
Размер
2,52 Mb
Тип материала
Учебное заведение
Неизвестно

Список файлов реферата

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6392
Авторов
на СтудИзбе
307
Средний доход
с одного платного файла
Обучение Подробнее