Обратите внимание, что сертификат подписан центром сертификации, поэтому он зависит от того, каким центрам сертификации доверяет ваш браузер. Если веб-сервер отправляет сертификат, подписанный центром сертификации, которому доверяет браузер / приложение, и сертификат действителен, вы не должны получать никаких предупреждений.
С другой стороны, если браузер получает сертификат от веб-сервера и не доверяет центру сертификации, подписавшему этот сертификат, браузер предпримет некоторые действия - по крайней мере, он должен предупредить вас об этом , Когда вы импортируете сертификат с веб-сайта, вы, по сути, говорите браузеру, что вы решили доверять этому сертификату независимо от того, кто его подписал.
Редактировать: Применимо то же самое: хранилище ключей хранит список доверенных центров сертификации и их соответствующие сертификаты. Вся концепция PKI состоит в том, чтобы иметь иерархию доверенных CA, которые выдают подписанные сертификаты для других сторон. Если сертификат является самозаверяющим, то нет действительной цепочки доверия - как Java узнает, что злоумышленник не подделал сертификат?
Вы предполагаете, что соединение между клиентом и веб-сервером неявно является доверенным только потому, что сертификаты обмениваются во время рукопожатия SSL. Что если человек посередине изображает из себя веб-сервер и вместо отправки сертификата сервера отправляет свой собственный сертификат? Как клиенты узнают, что сертификат, полученный человеком посередине, нельзя доверять? Если сертификат подписан доверенным центром сертификации или сертификат был добавлен в хранилище ключей вручную в качестве доверенного сертификата, клиент может проверить, должен ли он доверять сертификату или нет.