Протоколы SSL и TLS
Автор: adm
В предыдущем разделе мы говорили о том, как могут использоваться на прикладном уровне обсуждавшиеся в начале этой главы механизмы обеспечения безопасности (на примере электронной почты), такие как шифрование, аутентификация, распределение ключей, целостность данных и цифровые подписи. В этом разделе мы продолжим изучение механизмов обеспечения безопасности на транспортном уровне на примере Интернет-коммерции, поскольку финансовые и коммерческие транзакции являются важной движущей силой развития системы безопасности в Интернете.
Рассмотрим типичный сценарий Интернет-коммерции. Боб, «усевшись» в браузер, путешествует по Интернету и попадает на web-сайт компании Алиса Incorporated, продающей некие товары длительного пользования. На web-сайте Боб обнаруживает форму, в которой нужно указать требуемое ему количество товара, свой адрес и номер кредитной карты для оплаты товара. Боб вводит нужную информацию, щелкает мышью на кнопке submit (утвердить), а затем ожидает получения (например, по обычной почте) купленных им товаров. Кроме того, он рассчитывает увидеть результат покупки в следующем отчете о состоянии свой кредитной карты. Все это звучит прекрасно, но, если не предпринять специальных мер, таких как шифрование и аутентификация, Боба могут ожидать несколько сюрпризов.
□ Злоумышленник может перехватить заказ и, таким образом, получить информацию о кредитной карте Боба. Впоследствии злоумышленник сможет совершать покупки за счет Боба.
□ Web-сайт может отображать знаменитый логотип компании Алиса Incorporated,но в действительности являться сайтом злоумышленника, замаскированнымпод web-сайт компании Алиса Incorporated. Злоумышленник может взять деньги Боба и сбежать. Или злоумышленник может совершить собственные покупки, расплатившись карточкой Боба.
Возможны и другие сюрпризы (о некоторых из них мы поговорим в следующем подразделе), РЮ перечисленные являются наиболее важными. В Интернет-коммерции применяется протокол SSL, решающий обе проблемы.
Протокол SSL (Secure Sockets Layer — слой защищенных сокетов), разработанный компанией Netscape, предназначен для шифрования данных и аутентификации между web-клиентом и web-сервером. Протокол начинает свою работу с фазы рукопожатия, при которой две стороны соединения договариваются об используемом алгоритме шифрования (например, DES или IDEA) и ключах. В этой же фазе производится аутентификация сервера и при необходимости клиента для сервера. После завершения фазы рукопожатия начинается передача прикладных данных. При этом все данные зашифровываются при помощи ключа сеанса, о котором стороны договариваются на стадии рукопожатия. Протокол SSL широко применяется в Интернет-коммерции. Он реализован почти во всех популярных web-браузерах и web-серверах. Кроме того, он составляет основу протокола TLS (Transport Layer Security — безопасность на транспортном уровне), спецификация которого содержится в RFC 2246.
Сфера применения протоколов SSL и TLS не ограничивается Всемирной паутиной. Например, они также могут использоваться для аутентификации и шифрования данных в протоколе ШАР (Internet Mail Access Protocol — протокол доступа к почте Интернета). Протокол SSL может рассматриваться как некий слой между прикладным и транспортным уровнями. На передающей стороне протокол SSL получает данные (например, HTTP- или IMAP-сообщения от приложения), зашифровывает их и направляет в ТСР-сокет. На принимающей стороне протокол SSL считывает данные из ТСР-сокета, расшифровывает их и направляет приложению. Хотя протокол SSL может применяться во многих Интернет-приложениях, мы рассмотрим его в контексте web, где сегодня он используется в основном для Интернет-коммерции.
Протокол SSL предоставляет следующие функции.
□ Аутентификация сервера позволяет пользователю убедиться в подлинностисервера. На поддерживающем протокол SSL web-браузере хранятся список доверенных сертификационных центров и их открытые ключи. Когда браузержелает связаться с web-сервером, браузер получает у сервера сертификат, содержащий открытый ключ сервера. Сертификат подписывается цифровой подписью того сертификационного центра, который есть в списке клиента. Такимобразом, браузер может убедиться в подлинности сервера, прежде чем пользователь сообщит серверу номер своей кредитной карты. В контексте предыдущего примера аутентификация сервера позволяет Бобу убедиться, что он действительно посылает номер своей кредитной карты серверу компании Алиса Incorporated, а не кому-то другому, маскирующемуся под компанию Алиса Incorporated.
□ Аутентификация клиента позволяет серверу убедиться в подлинности клиента. Для этого также используются сертификаты клиентов, издаваемые сертификационным центром. Эта аутентификация важна, если сервер, например, является банком, посылающим своему клиенту конфиденциальную информацию. Аутентификация клиента поддерживается протоколом SSL, но ее применение не является обязательным. В дальнейшем мы не будем рассматривать этот вопрос.
□ Шифрование SSL-сеанса. При шифровании сеанса вся информация, пересылаемая между браузером и сервером, зашифровывается передающей программой (браузером или web-сервером) и расшифровывается принимающей программой (браузером или web-сервером). Эта конфиденциальность может быть важной как для клиента, так и для владельца web-сайта. Кроме того, протокол SSL предоставляет механизм обнаружения вмешательств злоумышленников.
Рассмотрим типичный сценарий Интернет-коммерции. Боб, «усевшись» в браузер, путешествует по Интернету и попадает на web-сайт компании Алиса Incorporated, продающей некие товары длительного пользования. На web-сайте Боб обнаруживает форму, в которой нужно указать требуемое ему количество товара, свой адрес и номер кредитной карты для оплаты товара. Боб вводит нужную информацию, щелкает мышью на кнопке submit (утвердить), а затем ожидает получения (например, по обычной почте) купленных им товаров. Кроме того, он рассчитывает увидеть результат покупки в следующем отчете о состоянии свой кредитной карты. Все это звучит прекрасно, но, если не предпринять специальных мер, таких как шифрование и аутентификация, Боба могут ожидать несколько сюрпризов.
□ Злоумышленник может перехватить заказ и, таким образом, получить информацию о кредитной карте Боба. Впоследствии злоумышленник сможет совершать покупки за счет Боба.
□ Web-сайт может отображать знаменитый логотип компании Алиса Incorporated,но в действительности являться сайтом злоумышленника, замаскированнымпод web-сайт компании Алиса Incorporated. Злоумышленник может взять деньги Боба и сбежать. Или злоумышленник может совершить собственные покупки, расплатившись карточкой Боба.
Возможны и другие сюрпризы (о некоторых из них мы поговорим в следующем подразделе), РЮ перечисленные являются наиболее важными. В Интернет-коммерции применяется протокол SSL, решающий обе проблемы.
Протокол SSL (Secure Sockets Layer — слой защищенных сокетов), разработанный компанией Netscape, предназначен для шифрования данных и аутентификации между web-клиентом и web-сервером. Протокол начинает свою работу с фазы рукопожатия, при которой две стороны соединения договариваются об используемом алгоритме шифрования (например, DES или IDEA) и ключах. В этой же фазе производится аутентификация сервера и при необходимости клиента для сервера. После завершения фазы рукопожатия начинается передача прикладных данных. При этом все данные зашифровываются при помощи ключа сеанса, о котором стороны договариваются на стадии рукопожатия. Протокол SSL широко применяется в Интернет-коммерции. Он реализован почти во всех популярных web-браузерах и web-серверах. Кроме того, он составляет основу протокола TLS (Transport Layer Security — безопасность на транспортном уровне), спецификация которого содержится в RFC 2246.
Сфера применения протоколов SSL и TLS не ограничивается Всемирной паутиной. Например, они также могут использоваться для аутентификации и шифрования данных в протоколе ШАР (Internet Mail Access Protocol — протокол доступа к почте Интернета). Протокол SSL может рассматриваться как некий слой между прикладным и транспортным уровнями. На передающей стороне протокол SSL получает данные (например, HTTP- или IMAP-сообщения от приложения), зашифровывает их и направляет в ТСР-сокет. На принимающей стороне протокол SSL считывает данные из ТСР-сокета, расшифровывает их и направляет приложению. Хотя протокол SSL может применяться во многих Интернет-приложениях, мы рассмотрим его в контексте web, где сегодня он используется в основном для Интернет-коммерции.
Протокол SSL предоставляет следующие функции.
□ Аутентификация сервера позволяет пользователю убедиться в подлинностисервера. На поддерживающем протокол SSL web-браузере хранятся список доверенных сертификационных центров и их открытые ключи. Когда браузержелает связаться с web-сервером, браузер получает у сервера сертификат, содержащий открытый ключ сервера. Сертификат подписывается цифровой подписью того сертификационного центра, который есть в списке клиента. Такимобразом, браузер может убедиться в подлинности сервера, прежде чем пользователь сообщит серверу номер своей кредитной карты. В контексте предыдущего примера аутентификация сервера позволяет Бобу убедиться, что он действительно посылает номер своей кредитной карты серверу компании Алиса Incorporated, а не кому-то другому, маскирующемуся под компанию Алиса Incorporated.
□ Аутентификация клиента позволяет серверу убедиться в подлинности клиента. Для этого также используются сертификаты клиентов, издаваемые сертификационным центром. Эта аутентификация важна, если сервер, например, является банком, посылающим своему клиенту конфиденциальную информацию. Аутентификация клиента поддерживается протоколом SSL, но ее применение не является обязательным. В дальнейшем мы не будем рассматривать этот вопрос.
□ Шифрование SSL-сеанса. При шифровании сеанса вся информация, пересылаемая между браузером и сервером, зашифровывается передающей программой (браузером или web-сервером) и расшифровывается принимающей программой (браузером или web-сервером). Эта конфиденциальность может быть важной как для клиента, так и для владельца web-сайта. Кроме того, протокол SSL предоставляет механизм обнаружения вмешательств злоумышленников.
Комментарии
Эй, хозяин, ты где? Я смотрю по датам: забросил сайт? А зря! Интересно..., был бы трафик дешевле, вообще не вылез бы отсюда!
В любом случае спасибо тебе за твой труд!!!