Возможно ли отправить сообщение через https, которое не зашифровано? Например, требуется проверка и авторизация сертификата, но не шифрование фактических данных, отправляемых через сокет?Нешифрованный протокол SSL?
ответ
Да, TLS и SSL поддерживают режимы «без шифрования». Независимо от того, настроен ли конкретный клиент и сервер для включения, это отдельная проблема.
Возможно, маловероятно, чтобы сервер мог включить один из этих наборов шифров по умолчанию. Скорее всего, сервер по умолчанию разрешает использование слабых наборов шифров (например, «экспортных» классов на основе DES). Вот почему вы должны тщательно просмотреть белый список серверов шифрованных наборов, и leave only a few trusted, widely-supported algorithms.
Вы можете использовать шифровой набор TLS_RSA_WITH_NULL_SHA, среди прочего, для защиты подлинности и целостности трафика без шифрования.
«RSA» в данном случае относится к алгоритму обмена ключами, а «SHA» относится к алгоритму аутентификации сообщений, используемому для защиты трафика от изменения. «NULL» - это алгоритм шифрования или, в данном случае, отсутствие шифрования.
Важно понимать, что трафик, хотя он и не зашифрован, связан с протоколами SSL. Клиент и сервер должны быть включены в SSL.
Если вы ищете понижающее решение, в котором некоторые данные обмениваются через SSL, тогда SSL отключается, но трафик приложений продолжается, но это также возможно, но имейте в виду, что он не обеспечивает абсолютно никакой безопасности для открытого текста трафик; он может быть взломан злоумышленником. Так, например, аутентификация с помощью SSL, а затем переход к протоколу «in-the-clear» для приема команд, использующих аутентификацию, согласованную через SSL, будет небезопасным.
Здравствуйте, у меня есть вопрос о openssl, вы бы хотели взглянуть со следующим адресом?. http://stackoverflow.com/questions/2542156/openssl-ssl-encryption – deddihp
Нет, протокол не позволяет этого.
Одним из решений, которое вы можете выполнить, является подключение через https, проверка соединения и последующее подключение к HTTP с помощью cookie сеанса. Без этого файла cookie перенаправляйте обратно на https, чтобы клиент всегда подключался к нему.
Возможно, это не относится к вам, поэтому, если вы предоставите больше информации о проблеме, которую пытаетесь решить, мы могли бы помочь.
Думаю, вы можете.
но было бы глупо, вы потеряете точку аутентификации и оставите себя подверженным атакам, которые могут перехватывать и изменять ваши пакеты.
Конфиденциальность и целостность - это две разные вещи. Вы можете использовать TLS без конфиденциальности; злоумышленники могут читать ваши пакеты, но вы знаете, изменили ли они пакет. – erickson
@erickson Я не знаю SSL и его детей достаточно хорошо, но почему вы хотите использовать криптографический хеш на своих транзитных данных, а не просто шифровать его? –
У меня не было приложения для этого. Я просто указывал, что SSL может защитить от изменения пакета без обеспечения конфиденциальности, а простого шифрования недостаточно для предотвращения изменения пакета. – erickson
Спецификации SSL/TLS определяют «NULL-шифр», который вы могли бы использовать для этого. Большинство клиентских и серверных программ отключает его по очевидным причинам.
Однако, если вы пишете собственное программное обеспечение, вы можете убедить свою библиотеку договориться об этом.
- 1. PayPal IPN SSL протокол версии
- 2. LifecycleException Неверный сервер SSL-протокол
- 3. nginx - протокол сбоев связи SSL
- 4. SSL процедура: SSL23_GET_SERVER_HELLO: неизвестный протокол
- 5. Протокол SSL по архитектуре AWS?
- 6. python ssl ssl.SSLError: [SSL: UNSUPPORTED_PROTOCOL] неподдерживаемый протокол (_ssl.c: 590)
- 7. Visual Studio 2013: IIS Express, отключить SSL, но протокол SSL
- 8. Ошибка SSL в HTTP POST (Неизвестный протокол)
- 9. Heroku Создать Неизвестный протокол SSL Ошибка
- 10. Пользовательская схема/протокол доступа с SSL?
- 11. запрос Android HTTPS, протокол SSL не удалось
- 12. Протокол SSL может защитить веб-службу?
- 13. Как прокси-сервер и протокол SSL-трафика
- 14. Требуется ли протокол WS-Security SSL
- 15. error: 140770FC: SSL-процедуры: SSL23_GET_SERVER_HELLO: неизвестный протокол
- 16. Исходный FTP-протокол SSL с C#
- 17. Запросы Python дают неизвестный протокол SSL
- 18. Etags и последний-модифицированный протокол https SSL?
- 19. Как протокол FTP протоколирует SSL-соединение?
- 20. Разрешить нешифрованный ответ с сервера с помощью WCF
- 21. Подстановочный SSL-протокол в IIS 7 с предупреждающим сообщением
- 22. Rails Разрабатывает в Ubuntu - ошибка SSL «неизвестный протокол»
- 23. CasperJS и металлист: неопознанная опция `--ssl-протокол = любой»
- 24. Safari не может подключиться к веб-серверу через протокол ssl
- 25. Будет ли протокол SSL запрашивать рукопожатие после первоначального рукопожатия?
- 26. Ошибка MQ SSL, протокол отключен, или номера шифров неуместны
- 27. C++ SSL SMTP-серверный протокол после пуска StartSCL
- 28. Net: HTTP-протокол согласования SSL по Ubuntu 14.04
- 29. SMTPS: OpenSSL - SSL-процедуры: SSL23_GET_SERVER_HELLO: неизвестный протокол s23_clnt.c: 787:
- 30. Android-приложение, понижающее протокол TLS до SSL 3.0
Мне любопытно, как это будет использоваться? Почему бы просто не использовать альтернативный метод аутентификации? Мне кажется, что все, что вам нужно, аутентификация действительного хозяина? * shrug * – Jakub
Вопрос не имеет смысла, так как https является защищенной версией HTTP, запущенной стандартным портом 443. Стандарт диктует, что все шифрование и авторизация/авторизация сертификата применяются к этому протоколу https. И вообще, любое сообщение, отправленное через https, зашифровано. Можете ли вы уточнить, что вы пытаетесь сделать? – t0mm13b
Ах, я действительно не хочу это использовать. Я просто хочу убедиться, что если я использую протокол https, мне не нужно сообщать серверу его шифровать.Таким образом, я могу доверять тому, что данные зашифровываются, если я использую https. – bkritzer