Поскольку сертификат должен проверяться сертификатами ОС или, в случае Firefox, сертификатом браузера, мне трудно понять, почему сертификат веб-сервера также состоит из открытого ключа.
Разве открытый ключ не содержится также в сертификатах ОС?
Мне кажется, это звучит так:
«Привет, меня зовут Дэвид, и настоящим я подтверждаю, что я Дэвид».
Что я здесь неправильно понимаю?
решение1
Криптография с открытым ключом опирается на то, что известно как асимметричные шифры. Это означает, что что-то зашифрованное одним ключом, например, открытым ключом,не могубыть расшифрованы тем же ключом.
Это означает, что в итоге у вас получится ключ, состоящий из двух частей: открытого ключа, который вы раздаете всем, и секретного ключа, который вы оставляете себе.
Передавая открытый ключ, вы можете быть уверены, что расшифровать данные сможет только тот, у кого есть правильный секретный ключ.
Вы можете проверить владельца открытого ключа, используя цепочку подписей сертификатов, по сути, корпорацию или список людей, которые гарантируют вам, что человек, способный расшифровать ваши данные, — это именно тот, кому вы хотите предоставить возможность их расшифровать.
Затем вы отправляете этому человеку свой ключ (или пароль и т. д.), зашифрованный с помощью его открытого ключа, а он расшифровывает его с помощью своего секретного ключа. Поскольку вы использовали его открытый ключ, и он может его расшифровать, вы по сути подтверждаете, что веб-сайт является тем, за кого себя выдает, и вы можете «доверять» соединению с ним. Если он не смог расшифровать его с помощью открытого ключа, то это не тот сайт, о котором вы просите.
На сайте есть элемент, как вы говорите, гласящий: «Привет, меня зовут Дэвид, и настоящим я подтверждаю, что я Дэвид». Потому что это то, что вам нужно и что вы хотите, когда собираетесь отправить на этот сайт некоторые очень личные данные, такие как ваше имя пользователя и пароль для входа. Вынуждатьсязнать, чтотолькоместо, куда вы отправляете данные, может расшифровать отправленные вами данные.