Security 通过https加密初始未加密的密码-优缺点

Security 通过https加密初始未加密的密码-优缺点,security,encryption,https,md5,Security,Encryption,Https,Md5,我有一个受欢迎的应用程序,我继承了该应用程序,其中用户凭据通过无线传输到身份验证端点。现在我有一个任务是“破解”证书以防止中间人攻击等等。因为你现在的HTTPS已经被破坏了,所以任何事情都是可能的,安全性更好。p> 现在,想象一下,如果我使用md5(密码),那么因为这是我无法在验证端点解密的一种方法。这意味着所有当前用户都必须重置密码,以便我可以再次散列它 处理用户密码一开始未加密但现在应该加密的情况的最佳方法是什么?最佳方法是修复TLS设置。如果您不能信任TLS连接,那么您也不能真正信任在浏览

我有一个受欢迎的应用程序,我继承了该应用程序,其中用户凭据通过无线传输到身份验证端点。现在我有一个任务是“破解”证书以防止中间人攻击等等。因为你现在的HTTPS已经被破坏了,所以任何事情都是可能的,安全性更好。p> 现在,想象一下,如果我使用md5(密码),那么因为这是我无法在验证端点解密的一种方法。这意味着所有当前用户都必须重置密码,以便我可以再次散列它


处理用户密码一开始未加密但现在应该加密的情况的最佳方法是什么?

最佳方法是修复TLS设置。如果您不能信任TLS连接,那么您也不能真正信任在浏览器中运行的任何东西


由于您仍然将MD5与加密混淆,因此我郑重建议您不要创建自己的密码散列协议。

您右侧的MD5不是加密,因为它是单向的。这是一个散列函数。我认为最好的方法就是在另一端加密和解密。谢谢您的帮助。如果您加密,请使用非对称加密并发送公钥进行加密。这并不是那么安全,因为攻击者仍然可以用另一个公钥替换它,但至少这是一种主动攻击,而不是被动攻击,攻击者只需查看传输中的字节。不同意“或者,您可以将当前密码哈希方法放入浏览器中,然后在服务器上添加额外级别的密码哈希”——这很容易受到“传递哈希”的攻击“攻击。换句话说,TLS是解决此问题的绝对必要工具。好吧,这很有道理。。。我将删除该选项。感谢GreatContini的警告。哈希绝对不会阻止中间人。如下所述,您需要修复TLS。如果你的应用程序像你说的那样受欢迎,我强烈建议要求每个人都更改密码。你也应该仔细阅读,因为你误解了一些重要的概念。