【发布时间】:2015-09-15 13:58:32
【问题描述】:
您好,我正在使用 GWT 开发 Java 项目。我想使用加密和解密来保存密码。在java中使用加密和解密保存密码的最佳方法是什么?我应该使用任何 API 吗?有什么帮助吗?
提前致谢
【问题讨论】:
-
您永远不应该加密您的用户密码。您需要使用散列代替一些强大的散列,例如 PBKDF2、bcrypt 和 scrypt。由于散列函数是单向函数,因此您将无法“解密”散列。为了验证您的用户,您可以再次通过哈希函数运行密码,以便与存储在数据库中的哈希进行比较。
-
不要忘记在散列之前将salt 添加到您的密码中以防止字典攻击。此外,使用安全的哈希算法,例如来自 SHA-2 family 的算法,尤其是不广泛使用但非常不安全的 MD5。
标签: java gwt encryption