您好,我创建了一个程序来练习,它生成密码并将其存储在文件中,并且有一个函数允许我随后读取它。为了避免以明文形式存储密码,我想在对其进行哈希处理后将其存储在文件中,但我找不到一种方法可以在哈希处理之前将密码恢复为其形式以便随后读取。有没有办法反转哈希或其他方法来安全地存储密码?
我尝试反转哈希但没有成功,否则我想用加盐来加密密码,但问题是你必须存储加盐密钥,因此安全性较低。
您不能反转哈希值。哈希值无法逆转:这就是重点。
您将盐和哈希值存储在数据库中。当您想要验证密码时,您可以检索盐并对盐和密码运行与创建原始哈希相同的哈希算法。
如果结果与原始结果相符,则您的密码有效。
从数据库读取哈希值的攻击者无法对过程进行逆向工程以获取原始密码,因此该方法是安全的。