SSL: понятие, суть, предназначение
Для защиты передачи данных в интернете часто используется специальный протокол с криптографией под названием SSL. Имя его основано на английской аббревиатуре Secure Sockets Layer, что дословно переводится как «слой защищенных сокетов».
SSL особенно часто используется вкупе с гипертекстовым протоколом http, который трансформируется в https. Одной из главных его особенностей является использование 443 порта, тогда как при обычном «коннекте» данные идут через 80-й порт.
SSL гарантирует достойный уровень защиты при передачи любой информации от пользователя на сервер. Чаще всего протокол используют там, где так или иначе задействованы деньги. К примеру, это может быть интернет-банкинг, оплата покупок в магазине, обмен валюты и т.п. Во время проведения подобных операций через сеть могут проходить персональные данные человека, которые очень интересны злоумышленникам. Однако использование SSL защищает от любых утечек и позволяет не беспокоится о передачи любой личной информации. Кстати, сам протокол был создан в компании Netscape Communications.
Данные в Secure Sockets Layer хоть и идут по незасекреченным каналам, но их конфиденциальность обеспечивается при помощи шифрования. Еще одной особенностью можно считать использование так называемых слоев, которых в протоколе может быть как минимум два.
Слой №1 – транспортный. Он формирует пакеты и передает их на сервер.
Слой №2 – защитный. Отвечает за шифрование и защиту данных.
Эти два слоя выступают неким ядром любого SSL-соединения. Следовательно, существовать могут и дополнительные слои, которые накладываются друг на друга. К примеру, Handshake Protocol устанавливает соответствия между алгоритмом шифрования и используемыми ключами. На практике увеличение слоев относят к дополнительным защитным мерам.
40-, 56- и 128-битные криптографические ключи служат для шифрования информации, передаваемой по SSL. «Сила» алгоритма напрямую зависит от его битности. 40-битный ключ весьма логично считается наиболее слабым. Взлом при помощи прямого перебора продлится не дольше 24-х часов. Internet Explorer от Microsoft работает с 40- и 56-битными ключами.
Самые важные данные следует пропускать через 128-битное шифрование. Однако такой роскошью по умолчанию могут пользоваться только в Канаде и США. Чтобы переключиться на использование 128-битных ключей в любой другой точке планеты, нужно загрузить себе security pack – пакет, обеспечивающий дополнительные меры безопасности.
Для работы с SSL на сервере должен быть специальный сертификат, содержащий данные об открытом ключе, центре сертификации и о владельце. Кроме того, при авторизации сервер может потребовать сертификат клиента от пользователя, если все настроено на подобный сценарий.
Первым шагом при задействовании протокола SSL является обмен инициализационными сообщениями. В них обычно содержится идентификатор сессии, способ шифровки и сжатия, версия протокола. После этого сервер запрашивает у клиента сертификат, о чем свидетельствует соответствующее сообщение. Далее проходят еще несколько операций, которые завершаются уточнением алгоритма и актуальных ключей. Также сервер отправляет сообщение о том, что все нормально. Наконец, происходит обмен закодированными данными. Идентификация длится достаточно долго, потому во время повторного коннекта может быть взят идентификатор предыдущей сессии.
Сам протокол SSL никак не зависит от платформы или программы, которая его использует. Работает так называемый принцип переносимости. Следовательно, реальную угрозу безопасности несут только клиентские приложения. Речь об уязвимости в браузерах и подобном.
С другой стороны, уровень защиты любых приложений постоянно растет, а SSL становится наиболее распространенным защищенным протоколом в интернете.