API и OAuth
Во-первых, как уже говорили другие, вы не должны использовать пароль пользователя для доступа к API, вы должны получить OAuth-токен . Это позволит вам действовать от имени этого пользователя без необходимости ввода его пароля. Это общий подход, используемый многими API.
Обмен ключами
Если вам нужно решить более общую проблему обмена информацией по незащищенным соединениям, существует несколько протоколов обмена ключами, как указано в других ответах.
В целом алгоритмы обмена ключами защищены от перехватчиков, но поскольку они не аутентифицируют личность пользователей, они уязвимы для атак "человек посередине".
Со страницы Википедии на Диффи Хеллман :
В оригинальном описании
Обмен Диффи-Хеллмана сам по себе не обеспечивает аутентификацию
взаимодействующие стороны и, таким образом, уязвимы для
атака "человек посередине". Человек посередине может установить два
различные обмены ключами Диффи-Хеллмана, один с Алисой, а другой
с Бобом, эффективно маскируясь под Алису Бобу, и наоборот,
позволяя злоумышленнику расшифровать (и прочитать или сохранить), а затем повторно шифровать
сообщения, передаваемые между ними. Метод аутентификации
общение сторон друг с другом, как правило, необходимо для предотвращения
этот тип атаки. Варианты Диффи-Хеллмана, такие как STS , могут быть
вместо этого используется, чтобы избежать атак такого типа.
Даже STS небезопасен в некоторых случаях, когда злоумышленник может вставить собственную идентификационную информацию (ключ подписи) вместо отправителя или получателя.
Идентификация и аутентификация
Это именно та проблема, для решения которой предназначен SSL, путем создания иерархии «доверенных» подписывающих органов, которые теоретически проверяли , кто владеет доменным именем и т. Д., Кто-то, подключающийся к веб-сайту, может проверить что они действительно общаются с сервером этого домена, а не с посредником, который поставил себя между ними.
Вы можете создать самозаверяющий сертификат, который обеспечит необходимую конфигурацию для шифрования соединения, но не защитит вас от атак посредников по той же причине, по которой обмен ключами Диффи-Хеллмана без проверки подлинности не будет.
Вы можете получить бесплатные сертификаты SSL, действительные в течение 1 года, с https://www.startssl.com/ - я использую их для своих личных сайтов. Они не так «доверяют», что бы это ни значило, поскольку они выполняют автоматические проверки только тех, кто подает заявку, но это бесплатно. Есть также услуги, которые стоят очень мало (£ 10 / год от 123-Reg в Великобритании).