Java, как обезопасить http строку запроса на передачу URL-адреса и получение конфиденциальных данных?

java ssl https httprequest query-string

716 просмотра

1 ответ

Следующий простой Java-код вызывает некоторый API веб-сервиса:

String url = "https://my_web_service/some_function?password=my_password";
InputStream is = new URL(url).openStream();
BufferedReader rd = new BufferedReader(new InputStreamReader(is, Charset.forName("UTF-8")));
String result = readAll(rd);  //result is also sensitive data!

Это безопасный способ передачи и получения конфиденциальных данных? Предполагая, что подобные аргументы не актуальны:

«SSL безопасен, но помните, что любое шифрование может быть нарушено, если у вас достаточно времени ...»

Спасибо,

Автор: michael Источник Размещён: 08.11.2019 11:09

Ответы (1)


2 плюса

Решение

Пока вы используете современные шифры, вы можете считать SSL безопасным. Тем не менее, он по-прежнему уязвим для атак «человек посередине» - закрепление сертификатов и другие методы предназначены для предотвращения этих атак.

Другая проблема в том, что вы передаете пароль в качестве параметра запроса - лучше передать его в теле запроса. В противном случае он будет напечатан в журналах доступа к серверу и клиентских журналах (возможно).

Если это была веб-страница, а не веб-служба, она также будет сохранена в истории браузера, закладках и т. Д.

Автор: bedrin Размещён: 20.08.2016 10:25
Вопросы из категории :
32x32