Кибербезопасность может восприниматься как минное поле со всеми ее сложностями. Вы можете не знать, что такое SSL или TLS, но это важно. TLS — это то, благодаря чему хакеры не могут шпионить за вашим трафиком и красть данные вашей карты, пока вы используете интернет-банкинг. Но как это работает?
Определение SSL и TLS
SSL и TLS — это криптографические протоколы, которые шифруют и аутентифицируют данные, передаваемые от клиента (т. е. вашего устройства, запрашивающего веб-сайт) на сервер, компьютер или приложение.
SSL является предшественником TLS. Впервые протокол SSL был выпущен в свет в 1995 году. Однако у него было много уязвимостей, поэтому год спустя он был заменен SSL v3.0. Последнее тоже не было идеальным, поэтому TLS был введен в 1999 году. Большинство устройств и браузеров перешли на TLS v1.2. Однако многие люди настолько привыкли к термину SSL, что будут называть TLS SSLом. Большинство сейчас используют двойной термин SSL/TLS для лучшего понимания.
Зачем сайтам нужен SSL/TLS?
SSL/TLS взаимодействуют с HTTP и является тем, что добавляет S — HTTPS. HTTP — это прикладной протокол, который передает данные из браузера на сервер или, проще говоря, доставляет результаты поиска в ваш браузер. Однако HTTP соединения небезопасны сами по себе. Это все равно, что отправлять свои данные в открытый доступ — их может увидеть любой желающий. HTTP уязвим для атак, что означает, что любой, кто шпионит за трафиком, может украсть ваш логин или данные карты.
Вот почему был введен HTTPS. Это комбинация HTTP, которая обрабатывает механику передачи данных и SSL/TLS, который обрабатывает шифрование данных. Благодаря шифрованию SSL/TLS ваши данные безопасности — любой, кто следит за вашим трафиком, теперь может видеть только зашифрованные данные. В наши дни большинство сайтов используют HTTPS.
Как работает SSL?
SSL/TLS шифрование можно разделить на два этапа: handshake SSL/TLS и record layer SSL/TLS. Стоит углубится в них более подробно.
Что такое SSL handshake?
Это форма связи между клиентом и сервером, где оба решают, какая версия протокола будет использоваться для их дальнейшего взаимодействия. Как это работает на практике?
- Клиент посылает запрос «привет» на сервер, с которым он хочет связаться. Он включает в себя типы шифров (алгоритмы шифрования), которые может поддерживать клиент.
- Сервер отправляет’ привет ‘ обратно со своим сертификатом SSL и его открытым ключом. Клиент и сервер здесь используют асимметричную криптографию для обмена защищенными сообщениями. Это означает, что клиенту нужен открытый ключ сервера для шифрования сообщений, а серверу нужны два ключа – частный и открытый – для его расшифровки. Никто, шпионящий за трафиком, не может расшифровать их сообщения.
- Затем клиент использует открытый ключ сервера для создания предварительного pre-master и отправляет его на сервер. Это будет использоваться для создания ключей сеанса и повышения уровня связи до симметричного шифрования. Теперь оба конца будут использовать только закрытые ключи. Симметричная криптография сделает их связь намного быстрее и будет использовать меньше ресурсов.
- Сервер расшифровывает pre-master, использует его для создания симметричного ключа и обменивается им с клиентом. При установленном симметричном шифровании они теперь могут обмениваться зашифрованными сообщениями. Трафик защищен.
Вам будет полезно узнать — стандарт шифрования pgp.
Уровень записи SSL/TLS
Именно здесь происходит шифрование. Данные отправляются из приложения пользователя и шифруются. В зависимости от шифра, он также может быть сжат. Затем он отправляется дальше на сетевой транспортный уровень, который определяет, как отправить данные на целевое устройство.
Что такое SSL-сертификат и зачем он нужен?
Серверы, поддерживающие протокол TLS, будут иметь сертификаты SLS, хотя правильнее было бы называть их сертификатами SSL/TLS. Они приобретаются с платформ хостинга и необходимы во время процесса handshake SSL/TLS, чтобы удостовериться, что они действительно являются провайдерами безопасного соединения.
Однако протоколы — это не то же самое, что сертификаты. Какой протокол будет использоваться при подключении, SSL или TLS, определяется вашим браузером и конфигурациями целевого сервера, а не сертификатом сайта. Можно подключиться к сайту, который имеет HTTPS, но использует устаревший протокол SSL v3.0.
Такие соединения уязвимы для атак. Большинство новых браузеров укажут это в вашем URL. Просто посмотрите на закрытые зеленые висячие замки и символы HTTPS. Если вы беспокоитесь о случайном подключении к сайту, который поддерживает только SSL v3.0, то можете вручную отключить SSL соединения. Но это может привести к обрыву связи.
Вам будет полезно узнать — SOCKS (Socket Secure) — очень распространенный прокси-протокол.