Односторонний SSL это одностороннее шифрование? - PullRequest
10 голосов
/ 22 ноября 2011

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

  1. Означает ли это, что данные SSL, отправляемые с сервера на клиент в одном направлении, не шифруются и отправляются в виде простого текста?

  2. Для обмена данными между сервером и клиентом и сервером данные / сообщение не подписаны, поэтому защита от несанкционированного доступа или целостность данных не гарантируются. Существуют ли другие способы обеспечения целостности данных при использовании безопасности транспорта на основе SSL, а не параметры безопасности сообщений?

Ответы [ 2 ]

19 голосов
/ 22 ноября 2011

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

Хотя протокол SSL немного сложен, основная суть того, что происходит, заключается в следующем: клиент генерирует случайный ключ, шифрует его так, чтобы толькосервер может расшифровать его и отправить на сервер.Сервер и клиент теперь имеют общий секрет, который можно использовать для шифрования и проверки связи в обоих направлениях.

Сервер не имеет представления о личности клиента, но в противном случае шифрование и проверка сообщений являются двусторонними..

Обновление:

1) Да, шифрование в обоих направлениях симметрично и использует общий секрет, сгенерированный во время настройки сеанса.

2) При использовании общего секрета целостность сообщениятривиально, чтобы заверить.Вы просто убедитесь, что сообщение имеет определенную форму.Например, я могу поставить перед каждым отправленным сообщением порядковый номер и добавить к нему контрольную сумму перед шифрованием.Вы расшифровываете его с помощью общего секрета и проверяете порядковый номер и контрольную сумму.Как злоумышленник может заменить или изменить сообщение, не зная общего секрета, и при этом сохранить порядковый номер и контрольную сумму без изменений?

0 голосов
/ 06 января 2015

В SSL происходят две вещи:

Во-первых, ключ сеанса согласовывается с использованием чего-то вроде метода Диффи-Хеллмана .Это генерирует общий ключ сеанса, но никогда не передает ключ между сторонами.

Во-вторых, этот ключ сеанса используется в обычном симметричном шифровании на время соединения.

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

Извлечено из Как SSL может обеспечить двустороннюю связь только с одной парой ключей?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...