В протоколе https браузер проверяет, что сертификат, представленный сервером (например, https://paypal.com), проверяет, что сертификат подписан действующим центром сертификации. Как только это доверие установлено, срабатывает все асимметричное c шифрование.
Я хорошо понимаю вторую часть (асимметричное c шифрование, установление секретного ключа). Однако я не могу понять необходимость первой части. Почему серверу нужно идентифицировать себя?
Ага, реестры DNS будут указывать paypal.com на правильные IP-адреса. Это не похоже на то, что хакер может манипулировать DNS так, чтобы paypal.com указывал на его серверы. Даже если он это сделает, он может представить другой сертификат, подписанный ЦС.
Я ищу несколько примеров того, что может go ошибаться, если этап идентификации сервера был исключен?