Где SHA256 хеширование вписывается в шаги рукопожатия TLS

226

Я знаю, что во время рукопожатия TLS ...

«Цифровая подпись выполняет алгоритм хеширования для информации, которая должна быть зашифрована, результатом является выходной файл фиксированного размера, называемый дайджестом сообщения»

У меня вопрос, где хэширование SHA256 происходит в шагах ниже. Хэширует ли он последние 28 байтов случайного числа, созданного во время Client Hello (используется позже для генерации ключа), или все передаваемые данные после создания сеансового ключа?

  1. Браузер подключается к серверу, защищенному TLS (https)
  2. Браузер просит сервер идентифицировать себя
  3. Сервер отправляет копию своего сертификата TLS, который включает в себя открытый ключ сервера
  4. Браузер проверяет корень сертификата по списку доверенных центров сертификации.
  5. Если браузер доверяет сертификату, он создает, шифрует и отправляет обратно симметричный сеансовый ключ, используя открытый ключ сервера
  6. Сервер расшифровывает симметричный сеансовый ключ, используя свой закрытый ключ, и отправляет обратно подтверждение, зашифрованное с помощью сеансового ключа, чтобы начать зашифрованный сеанс
  7. Сервер и браузер теперь шифруют все передаваемые данные с помощью ключа сеанса
0
Похоже, что цитата без источника была взята из [Руководства по идиотам по инфраструктуре открытых ключей] (http://studylib.net/doc/7351193/mamoor_dewan_gsec), в котором говорится о PKI, а не о рукопожатии TLS. Игнорируя саму цитату, хеширование (например, SHA-256, но вместо этого могут использоваться другие) используется в нескольких местах внутри TLS, например, при проверке сертификата, обмене ключом шифрования, проверке сообщения Finished и для HMAC. [security.se] может быть лучшим сайтом, чтобы задавать такие вопросы. Steffen Ullrich 5 лет назад 0

0 ответов на вопрос

Похожие вопросы