Это займет немного работы. Пароль WP хранится как соленый хеш MD5, который не может совпадать с SHA1, который вы отправляете. Кроме того, поскольку «открытый текст» пароля не сохраняется, у вас нет его для автоматической генерации дополнительного значения SHA1.
Вот несколько советов о том, как решить эту проблему:
- Подключите приложение по протоколу HTTPS, а затем отправьте открытый текст пароля. Это наиболее безопасный и требует наименьшей переработки кода WP, но он может быть вам недоступен.
- Пусть приложение отправит пароль, зашифрованный симметричным шифром, причем и приложение, и WP знают секретный ключ. Управление секретным ключом в нескольких местах рискованно. Вы в значительной степени должны предположить, что это в конечном счете протечет, и тогда любая безопасность выходит из окна.
- Когда пользователь успешно входит в WP (или когда он создается, или когда он меняет свой пароль), создайте мета-значение пользователя, которое является SHA1 пароля. Затем он доступен для будущей аутентификации с приложением.
В зависимости от особенностей сайта, пункты № 2 и № 3 на самом деле не защищены. № 2 просто ожидает взлома, и если № 3 не происходит по зашифрованному соединению, он эффективно отправляет пароль открытого текста (в форме SHA1) по сети.
Если вы не можете заставить разработчика приложения сделать # 1, тогда я предлагаю вам воспользоваться # 3 и надеяться, что никто не будет заинтересован в информации, которой управляет сайт.