Каково различие между, ДОБИРАЮТСЯ и шифрование POST?

Каково различие, когда шифрование ДОБИРАЕТСЯ и данные POST? Спасибо за ответ

Править: я должен записать это более конкретный.

Когда https-SSL шифрует оба из этого методы, что является различием способом, браузер делает это. Какие части шифруются и которые не являются? Я где-нибудь читал, что целевой URL не шифруется в POST, который верен? Если это верно, и то же в ДОБИРАЕТСЯ, где все параметры?

Edit2: все еще не знайте ответ по моему вопросу. Когда оба метода шифруются с теми же данными взгляд то же при сниффинге? Какие части шифруются и которые не являются?

27
задан Ned Batchelder 11 July 2010 в 20:45
поделиться

5 ответов

Данные GET добавляются к URL-адресу в виде строки запроса:

https://example.com/index.html?user=admin&password=whoops

Поскольку данные добавляются к URL-адресу, существует жесткий ограничение на объем данных, которые вы можете передать . У разных браузеров разные ограничения, но у вас начнутся проблемы с отметкой 1–2 КБ.

Данные POST включены в тело HTTP-запроса и не отображаются в URL-адресе. Таким образом, нет ограничений на объем данных, которые вы можете передать через POST.

Если HTTP-соединение использует SSL / TLS, то параметры GET также зашифрованы , но могут отображаться в других местах, например в журналах веб-сервера, и будут доступны для подключаемых модулей браузера и, возможно, других приложений в качестве хорошо. POST-данные зашифрованы и не допускают утечки никаким другим способом.

Из обсуждения Google :

Данные, содержащиеся в запросе URL на соединение HTTPS зашифровано. Однако это очень плохая практика. включать такие конфиденциальные данные, как пароль в запросе GET. В то время как его невозможно перехватить, данные будет зарегистрирован в виде открытого текста серверные журналы на принимающем HTTPS сервер, а также, вполне возможно, в история браузера. Вероятно, это также доступны для плагинов браузера и возможно, даже другие приложения на клиентский компьютер.

Всегда используйте POST через HTTPS , если вы хотите безопасно передавать информацию.

Если вы используете библиотеку шифрования для шифрования данных, вы можете использовать GET или POST, но это будет дополнительная проблема, и вы можете неправильно настроить шифрование, поэтому я по-прежнему рекомендую использовать POST. через HTTPS, вместо того, чтобы настраивать собственное шифрование. Эта проблема уже решена, не изобретайте велосипед заново.

Другой вариант, который вы можете рассмотреть, - это использовать безопасный файл cookie . Файл cookie с установленным флагом безопасности пересылается только по защищенному каналу, например HTTPS, и его нельзя перехватить. Это хороший способ безопасного хранения информации, например идентификатора сеанса.

53
ответ дан 28 November 2019 в 04:50
поделиться

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

3
ответ дан 28 November 2019 в 04:50
поделиться

POST может отправить больше данных, чем GET

GET легче для злоумышленника манипулировать данными

GET не шифруется

POST не шифруется

0
ответ дан 28 November 2019 в 04:50
поделиться

При выполнении запроса HTTPS GET параметры строки запроса ЗАШИФРОВАНЫ ! Единственное, что не шифруется в запросе HTTPS, - это имя сервера или IP-адрес и порт запроса. Это единственные две части информации, необходимые для направления запроса от вашего браузера на веб-сервер, который затем выполняет расшифровку.

Используйте Fiddler (с отключенным расшифровкой SSL) и просматривайте свой трафик с помощью защищенного сайта. Вы увидите, что вы не можете просматривать незашифрованные данные строки запроса или даже информацию о пути.

3
ответ дан 28 November 2019 в 04:50
поделиться

Это может помочь, если вы представите себе HTTP-запрос:

GET /page.php?get-data-here HTTP/1.1
Host: www.site.com

post-data-here

Все это зашифровано, когда вы используете HTTPS.

0
ответ дан 28 November 2019 в 04:50
поделиться
Другие вопросы по тегам:

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