Подтвердить что ты не робот

Как работают цифровые сертификаты при использовании для защиты веб-сайтов (с использованием SSL)?

Пожалуйста, помогите мне понять, как проходит процесс. Я понимаю, что веб-браузеры содержат корневые сертификаты для центров сертификации (CA), таких как Verisign, Entrust, Comodo.. и т.д., Но что именно происходит, когда пользователь обращается к защищенной странице? Отправляет ли веб-браузер запрос на сервер ЦС для проверки ceriticate или просто использует корневой сертификат CA (в браузере) для проверки сертификата?

Я использовал некоторый сниффер HTTP и вошел в систему gmail (страница входа в систему защищена), но не увидела запросы на какие-либо сайты, кроме Google, означает ли это, что он использует только корневой сертификат CA?

4b9b3361

Ответ 1

Это зависит от конфигурации вашего браузера/ОС. В основном браузер или ОС имеет список доверенных корневых полномочий (у Mozilla есть собственный список, IE использует Windows один).

Когда происходит установление связи SSL, сертификат сайта проверяется, чтобы убедиться, что он подписан одним из доверенных лиц, и если имя сервера совпадает с именем в сертификате.

Что происходит дальше, зависит от конфигурации браузера или ОС. У ЦС есть функция списка отзыва (ее либо большой список, либо отдельная служба (OCSP), где вы можете узнать, хорош ли сертификат). Если ваш браузер/ОС настроен для проверки этого, этот дополнительный шаг будет выполнен.

Firefox и Windows будут проверять службы OCSP по умолчанию, если они доступны, ни по списку CRL по умолчанию не проверять.

Ответ 2

Центр сертификации выдает сертификаты, подписанные с закрытым ключом. В вашем браузере хранится соответствующий открытый ключ для группы доверенных ЦС. Когда вы получаете запрос на безопасную транзакцию, ваш браузер проверяет корень сертификата (предоставленный хостом, к которому вы подключаетесь) с открытым ключом, чтобы убедиться, что он действительно подписан соответствующим личным ключом.

Хост хранит сертификат, подписанный доверенной третьей стороной (ЦС), и ваш браузер хранит открытый ключ той же третьей стороны. Когда начинается транзакция, хост должен только подтвердить этот сертификат для вашего браузера. Там нет необходимости в транзакционном вмешательстве доверенной третьей стороны.

Это отличается от таких систем, как PGP, где вам нужно связаться с третьей стороной, чтобы получить открытый ключ от того, с кем вы общаетесь. Системы могут работать по-другому, поскольку с PGP вы шифруете/дешифруете данные. С сертификатами все, что вы делаете, это аутентификация личности.

Ответ 3

В веб-браузере есть список корневых сертификатов, которым он доверяет. Это открытые ключи ЦС. Браузер говорит, что вы можете доверять тому, что закрытые ключи этих центров сертификации на самом деле конфиденциальны, и что все, что было зашифровано одним из этих закрытых ключей, включая предполагаемый сертификат веб-сервера, действительно поступало из ЦС.

Сертификат содержит открытый ключ веб-сервера и адрес веб-сервера (и название компании и т.д.), зашифрованное закрытым ключом ЦС. Это шифрование выполняется один раз, когда владелец веб-сайта купил сертификат из ЦС. После этого владелец веб-сайта держит сертификат под рукой, чтобы отправить вам, когда вы делаете запрос https. Поскольку ваш браузер может использовать открытый ключ CA (который уже был на вашем компьютере) для дешифрования сертификата, отправленного веб-сервером, и видит в расшифрованном сертификате, что сертификат содержит адрес узла, соответствующий хосту https-обслуживающего, браузер делает вывод о том, что общедоступный ключ хоста (расшифрованный с использованием открытого ключа ЦС) является подлинным. Сертификат, обычно выдаваемый веб-хостом, по-прежнему может исходить от какого-то случайного человека, обманывающего хост, но, по крайней мере, вы можете быть уверены, что он содержит аутентичный открытый ключ хост-сервера https, с которым вы хотите общаться.

Затем вы можете отправить данные (например, номер вашей кредитной карты), зашифрованные открытым ключом хоста, и только личный ключ хоста сможет расшифровать ваши данные. Во время транзакции не требовалось общение с ЦС.

Ответ 4

CA подписывает сертификат веб-сервера. Так как браузер уже имеет открытый ключ ЦС (в корневых сертификатах), он может проверить подлинность его, не обращаясь к ЦС. Единственное, что требует доступа CA, это проверить, отменен ли сертификат.