如何在没有SSL的情况下保护用户身份验证


How to protect user authentification without SSL?

我正在构建一个Android云应用程序,要求用户在远程PHP/MySql服务器上验证自己。至于现在,我使用一个基本的http post请求来做到这一点。我知道这很危险,因为任何人都可以嗅探通信并窃取凭证。除了使用https/SSL之外,还有其他解决方案吗?

如果我必须使用SSL,是否有一个会话管理库可以使用,以便在每次用户联系服务器时不需要通过SSL重新发送用户凭据?

请记住,即使您获得了安全的身份验证,所有其他东西仍然容易被嗅探。HTML文件以纯文本形式返回,其中可能包含敏感信息。SSL 是专门为这个任务制作的

您不需要重新发送凭据,SSL是相当透明的"即插即用"。

使用PHPSESSID(默认为session_start())来跟踪用户

这个答案应该对你有所帮助。这里有一些很好的答案。简而言之:您有一些选择,但最好还是使用SSL。