我正在编写这个需要几个单独帐户的 Java 桌面应用程序(没有互联网连接),我需要将登录信息存储在一个文件中,该文件可以访问以检查密码。
我不知道应该怎么做,你怎么能在看不到其他人的密码的情况下读取加密文件?
最佳答案
您永远不需要解密密码。您需要保存用户名、消化后的密码和盐。盐很重要,因为如果你不使用它,很容易用彩虹表得到密码。
保存密码时,需要生成随机盐。然后将它与密码连接起来,并对其进行消化。然后存储用户名、消化后的密码和盐。
当你想检查密码时,你将用户写入的密码与为该用户存储的盐值连接起来,消化它并将其与保存的消化后的密码进行比较。
小心您将使用的摘要算法。 SHA-XX 不错,它默认包含在 java 中。
关于java - 将密码存储在加密文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9311124/