回答
如果您使用未经SSL加密的HTTP,则所有内容都将以明文传输,其中包括完整URL,HTTP请求/响应标头以及POST请求和响应的正文。
如果您在GET参数中放置密码,它将另外显示在地址栏中,很可能保存在浏览器历史记录,代理服务器日志中,并发送到其他网站的引用标头中。在POST主体或标准Authorization标题中发送密码可以避免这个明显问题,但对于可以嗅探或代理您的流量的观察者来说,它仍然是可见的。
Digest Authentication避免以明文传送密码,并且只有不可重复使用的签名才会暴露给外部观察者。它仍然容易受到中间人攻击;见HTTP Digest Authentication versus SSL。
正确的解决方案是使用SSL证书并专门使用HTTPS。当你这样做的时候,URL字符串,HTTP标题和POST主体都被加密,并且浏览器验证没有第三方在中间运行服务器。在这种情况下,HTTP基本认证是允许的。
由他们自己,不一定。除了查询之外,不应该使用GET,因为它们可以存储在用户的浏览器中。使用库进行POST加密相对容易,因为您不应该实施自己的加密。
此外,如果您获得SSL,这将有所帮助。如果您使用HTTPS(而不是HTTP),那么它会更安全。
你没有给出关于页面是什么的细节(阅读:语言),所以我不能真正推荐一个好的加密库,但只是谷歌它,我相信你会找到一些东西。
** GET更糟糕**它被搜索引擎抓取:) – CodeAngry
如果你不使用https,那么它在技术上是不安全的。如果有人在嗅探您的流量(例如,如果您使用公共WiFi),他们可能会看到数据。您不应该使用GET发送密码。
没有https我通常会说它是安全的,但它取决于许多其他因素。没有保证。
- 1. getPost函数出错
- 2. FTPES:是否加密数据?
- 3. 加密参数
- 4. Nimbuzz是否加密?
- 5. 跨机器加密/解密是否否
- 6. https连接中的参数是否加密?
- 7. ZF2加密参数
- 8. Servlet参数加密
- 9. SSL层中的数据是否被加密(128位加密)?
- 10. 如何yii getPost和分析后期参数?
- 11. HTTPS是否使POST数据加密?
- 12. GET数据是否也以HTTPS加密?
- 13. 加密函数的参数
- 14. config.json文件是否加密?
- 15. 这是否包含加密?
- 16. IndexedDB是否已加密?私人数据是否正确?
- 17. HTTPS加密和GET参数
- 18. 使用openssl加密参数
- 19. SignalR加密QueryString参数
- 20. 加密persistence.xml中的参数
- 21. 加密配置参数
- 22. URL中的加密参数
- 23. MVC WebAPI参数加密
- 24. 春季加密和解密URL参数
- 25. 解密servlet参数,用BasicTextEncryptor加密
- 26. 是否可以解密使用“IonCube”加密加密的文件?
- 27. 我的加密密钥加密方法是否安全?
- 28. 是否可以使用Javascript来加密/解密SQLite数据库?
- 29. getPost的优点超过$ _POST
- 30. getPost()方法和分页
您使用HTTP还是HTTPS? –
GET请求未加密,绝不通过GET参数发送密码。 – c69
@ c69会有什么选择? – ProDraz