我如何正则表达式验证用户提交的密码,该密码以PBKDF2编码

时间:2018-08-24 14:51:32

标签: java passwords password-hash zul

当管理员创建新的个人资料时,我正在尝试验证用户的密码强度。

当表单提交到后端时,我得到了在PBKDF2中加密的密码。 我必须在Java中进行验证,但无法在zul框架脚本(我的FrontEnd脚本)中进行验证。

有人可以帮助我如何解密PBKDF2 并使用正则表达式验证密码强度。

2 个答案:

答案 0 :(得分:1)

PBKDF2的全部目的是 确保 ,确保所得的哈希不能被解密以恢复原始密码。

简单地说,如果您想对密码进行任何复杂性验证,则必须在加密密码之前即在用户键入密码的前端进行。

使用哈希密码在后端没有解决方案。

答案 1 :(得分:1)

可以反转加密以恢复原始消息,但是PBKDF2不是加密算法。这是一种不可推论的密钥推导算法。

此外,请注意,在前端执行PBKDF2哈希,然后将其提交到后端(将其与存储的副本进行匹配以验证用户身份)是不安全的。这等效于以纯文本存储密码。前端传输的机密绝不应该存储,只能存储其散列。