Что такое SSL

Протокол SSL (Secure Sockets Layer) представляет собой протокол для передачи данных с применением криптографии.

Протокол SSL обеспечивает несколько уровней безопасности:

  • Обмен ключами производится при помощи аутентификации и асимметричной криптографии;
  • Конфиденциальность сохраняется за счет симметричного шифрования;
  • Целостность информации проверяется кодами аутентификации.

Протокол SSL используется для аутентификации с сервером прежде передачи данных от приложений, а так же для согласования алгоритмов криптографии и сессионных ключей.

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

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

SSL используется как защитный фильтр для информации на транспортном уровне протокола TCP/IP и различных программ с протоколами HTTP, TELNET, FTP.

Для верификации открытых ключей на предмет соответствия настоящему владельцу в SSL используются цифровые сертификаты. Для SSL применяются несколько видов сертификатов:

  • Доверенный. Выдается в специальных центрах сертификации, которые выступают доверенными посредниками и подтверждают принадлежность открытого ключа владельцу.
  • Самоподписанный. Изготовленный пользователем самостоятельно. Обеспечивает защиту соединения, как и доверенный;
  • Пустой. С произвольными данными для проверки настроек SSL.

Сертификаты SSL широко применяются для шифрования соединений HTTP между браузером и сайтом, по которым требуется безопасно передавать пароли и другие конфиденциальные данные.

Методы криптографии SSL

В протоколе SSL применяются ассиметричная и симметричная криптография.

Шифрование асимметричным методом позволяет кодировать данные при помощи открытого ключа (который чаще всего указывается в сертификате) и приватного ключа для расшифровки данных. Самым распространенным алгоритмом ассиметричного шифрования можно считать RSA.

Шифрование симметричным методом происходит с использованием идентичных ключей, которые должны находиться у отправителя и получателя. Этот метод используют для случаев работы с большими объемами данных, так как он более быстрый, чем асимметричный. Пример: AES, 3-DES, RC4.

Криптография с открытыми ключами используется в SSL для аутентификаций отправителя и получателя (с использованием цифровых сертификатов). В свою очередь, для создания ключей сессии применяются более быстрые алгоритмы симметричного шифрования.

Для проверки целостности информации в SSL используются функции хеширования. В настоящее время одним из самых надежных алгоритмов считается SHA256.

Где применяется SSL

При разработке различных приложений, требующих шифрования, SSL встраивается поверх различных прикладных протоколов, таких как SMTP, HTTP, FTP. Ранее протокол SSL всегда использовали в связке с надежным уровнем транспортных протоколов TCP. Впоследствии были реализованы взаимодействия SSL с датаграммами UDP.

Практически все самые популярные браузеры (Chrome, Firefox, Opera, Safari) поддерживают работу протоколов SSL/TLS. Протокол SSL широко применяется при настройках виртуальных частных сетей (VPN с использованием IPsec), а также при работе с электронной почтой.

Многие вебсайты для обеспечения шифрования данных часто применяли протокол SSL, на основе которого впоследствии и был создан протокол HTTPS, который обеспечивает безопасное соединение для платежных сервисов и программ.

Наличие SSL сертификата  у веб-сайта во время установленного защищенного соединения подтверждается значком в виде замочка в строке состояния (статус баре) браузера и префиксом «https». Более доверительным признаком безопасного соединения является наличие в строке состояния названия компании зеленого цвета рядом со значком замочка. Такой признак обозначает пройденную проверку у центра сертификации с подтверждением принадлежности сайта данной компании.

Уязвимости SSL

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

Распространен вид атаки на протокол «рукопожатия» в момент установки связи между клиентом и сервером с целью добиться выбора различных менее стойких алгоритмов шифрования. Такие действия вычисляются несовпадением хэш суммы сообщений, и атака обнаруживается.

На государственном уровне возможна атака на SSL-соединения, когда спецслужбы могут устанавливать следящее оборудование в центрах обработки данных (ЦОД). При этом перехват производится после того, как внешний трафик SSL расшифровывается внутри ЦОД и передается в открытом виде между серверами приложений. Теперь все типы шифрования, включенные в SSL, требующие хранения ключа на сервере, могут быть взломаны в случае доступа к ЦОД.

В настоящее время протокол SSL рекомендуется заменить более стойким протоколом TLS.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *