Разница между SSL/TLS и Starttls

При подключении к почтовому серверу по протоколам IMAP / POP3 клиентская программа запрашивает протокол по которому необходимо устанавливать соединение — среди опций подключения: SSL TLS starttls.

 

 

SSL TLS Starttls разница при подключении к почтовому серверу

Что означают аббревиатуры:

SSL (Secure Sockets Layer) — метод шифрования данных и протокол прикладного уровня модели OSI. Для шифирования используются SSL сертификат и приватный ключ. Существуют версии 1.0, 2.0, 3.0. На основе последней разработан протокол TLS

TLS (Transport Layer Security) — следующее поколение SSL, по сути механизм не поменялся, изменились некоторые криптографические алгоритмы. Версии TLS: 1.0, 1.1, 1.2, 1.3. С 2014 года фактически используется TLS, SSL не применяется как недостаточно защищенный.

 

ssl tls starttls

 

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

 

StartTLS — расширение протокола обмена текстовой информацией в открытом виде. Т.е. основным способом передачи является plain text. StartTLS при установлении сессии опрашивает другую сторону и выясняет поддерживает ли она шифрование. Если поддержка SSL/TLS присутствует, и также она есть на сервере который пытается установить соединение — данные будут шифроваться.

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

 

как работает starttls

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

 

Использования StartTLS следует избегать если это возможно.

 

SSL/TLS при невозможности установить защищенное при помощи шифрования и сертификатов соединение выдадут ошибку, StartTLS начнет передачу данных в нешифрованном виде.