Функционирование протокола SSL

Автор: adm

Пользователь, например Боб, путешествует в браузере по Всемирной паутине и щелкает мышью на ссылке, приводящей его на безопасную страницу поддерживающего протокол SSL сервера Алисы. Протокольная часть URL-адреса этой web-страницы представляет собой слово «https» вместо обычного «http».
Затем браузер и сервер запускают процедуру рукопожатия протокола SSL, в ходе которой, во-первых, осуществляется аутентификация сервера, во-вторых, генерируется пара симметричных ключей. На обоих этапах используется технология открытого ключа RSA. Основной поток событий процедуры рукопожатия показан на рис.32. Во время этой процедуры Алиса посылает Бобу свой сертификат, из которого Боб получает открытый ключ Алисы. Затем Боб создает случайный симметричный ключ, зашифровывает его открытым ключом Алисы и посылает Алисе. Теперь у Боба и Алисы есть по симметричному ключу сеанса. По завершении процедуры рукопожатия все данные, пересылаемые между браузером и сервером (по ТСР-соединениям), зашифровываются при помощи симметричного ключа сеанса каждого из участников.
Итак, мы получили общее представление о протоколе SSL. Рассмотрим теперь некоторые наиболее важные детали и в частности процедуру рукопожатия.
1. Браузер посылает серверу номер версии используемого браузером протоколаSSL и криптографические предпочтения, чтобы договориться об алгоритмешифрования с симметричными ключами.
2. Сервер посылает браузеру свой номер версии протокола SSL, криптографические предпочтения и свой сертификат. Сертификат включает открытый RSA-ключ сервера и подпись некоего сертификационного центра.
3. У браузера есть список доверенных сертификационных центров, а также открытый ключ каждого сертификационного центра. Когда браузер получает от сервера сертификат, он смотрит, есть ли такой сертификационный центр в его списке. Если такого сертификационного центра в списке нет, пользователю сообщается, что безопасное соединение не может быть установлено. В противном случае браузер с помощью открытого ключа сертификационного центра проверяет сертификат и получает открытый ключ сервера.
4. Браузер генерирует симметричный ключ сеанса, зашифровывает его открытымключом сервера и посылает серверу.
5. Браузер посылает серверу сообщение, информируя его о том, что дальнейшиесообщения клиент будет шифровать ключом сеанса. Затем он посылает отдельное (зашифрованное) сообщение, в котором указывает, что браузер завершилсвою часть рукопожатия.
6. Сервер посылает браузеру сообщение, информирующее его о том, что дальнейшие сообщения сервер будет шифровать ключом сеанса. Затем он посылает отдельное (зашифрованное) сообщение, в котором указывает, что серверная частьрукопожатия завершена.
7. После завершения SSL-рукопожатия начинается SSL-сеанс. Браузер и сервериспользуют ключи сеанса для шифрования, дешифрирования посылаемых другдругу данных. Кроме того, симметричные ключи сеанса гарантируют целостность данных.
рис 32

Рис.32. Общая схема фазы рукопожатия протокола SSL
Процедура рукопожатия протокола SSL подразумевает выполнение гораздо большего числа шагов, чем перечислено выше. Дополнительную информацию о протоколе SSL можно найти на сайте Security Developer Central корпорации Nescape (http://developer.netscape.com/tech/security/). Отметим также, что протокол SSL может применяться не только для оплаты покупок кредитными картами в Интернете, но и для других финансовых транзакций, включая банковские и биржевые операции.

Комментарии

Нет комментариев. Вы можете быть первым!

Оставить комментарий

:

:
: