gpt4 book ai didi

java - 使用 Java 库 jasypt 摘要加密密码

转载 作者:行者123 更新时间:2023-12-02 12:09:34 25 4
gpt4 key购买 nike

我正在开发一个将拥有用户帐户的小组项目。现在我正在尝试弄清楚如何加密、存储和检查密码。我们已经实现了存储密码,但尚未加密然后存储它们。我正在使用 Java 库 Jasypt,更具体地说,我正在使用他们的 StandardStringDigester 类。

我的问题是,每当我消化相同的字符串时,它都会得到不同的结果。我能找到准确检查字符串是否与摘要字符串匹配的唯一方法是使用 Digesters Match 方法。此方法需要两个参数:未加密的密码字符串和摘要的密码字符串。然而,据我所知,验证永远不应该在客户端进行,并且服务器端永远不应该看到未消化的密码。那么我如何消化密码,将其发送到服务器,然后检查它是否与该用户存储的(也消化的)密码匹配?

最佳答案

为了安全地存储密码,您应该了解如何以及为什么,您可以稍微搜索一下论坛,有很多关于此主题的资源。

这是更全面的之一:https://crackstation.net/hashing-security.htm

My problem is that whenever I digest the same string it comes out differently.

据我所知,StandardStringDigester 使用盐来哈希输入。这意味着摘要每次都是随机生成的。事情就应该如此。

So how do I digest a password, send it to the server,

您将密码明文发送到服务器,TLS (HTTPS) 应注意完整性和 secret 性

then check if it matches the stored (also digested) password for that user?

我相信您正在寻找matches方法: matches(String message, String digest) Jasyp 应该获取盐,用相同的盐创建新的消化物。如有错误,请指正/评论

关于java - 使用 Java 库 jasypt 摘要加密密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46641533/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com