Главное отличие - HTTPS перед передачей транспортным протоколом шифрует данные, используя криптографические протоколы SSL и TLS.
Протокол SSL (Secure Sockets Layer) нужен для защиты данных, он гарантирует безопасное соединение браузера пользователя и сервера. Для него требуется установка SSL-сертификата.
А TLS (Transport Layer Security ‒ безопасность на транспортном уровне) обеспечивает информации три уровня защиты:
1. Шифрование. Данные шифруются, чтобы злоумышленники не смогли узнать, какую информацию передают посетители, и перехватить ее.
2. Сохранность. Все намеренные или ненамеренные изменения данных фиксируются.
3. Аутентификация. Пользователи попадут именно на тот сайт, который им нужен, и будут защищены от атаки посредника.
HTTP — универсальный протокол. Он может передавать любые данные: страницы, музыку, видео, PDF-файлы. Но его минус в том, что он открытый: данные, которые передает протокол, никак не защищены.
По пути между браузером и сервером его легко перехватить, прочитать данные, например, пароли или данные кредитной карты. Все равно, что отправлять посылки и письма по почте без конвертов. Кроме того, HTTP-ответ можно подменить или добавить в него свои данные.
HTTPS тоже можно перехватить, но толку от этого мало — данные зашифрованы, а секретного ключа для расшифровки нет. HTTPS шифрует данные.
В шифровании — ключевое различие между HTTP и HTTPS.