如何解决来自node-argon2的“ TypeError:pchstr必须包含$作为第一个字符”的问题?

阿卜杜拉扎克本布亚

尝试验证密码时出现TypeError错误。哈希函数工作正常,但验证不起作用!这是哈希结果:$argon2i$v=19$m=4096,t=3,p=1$8rKV3QWX0Y8GQ7ChOgVIRw$u+UEaGhG8Rvge4TvG17gnx/6jhdmePh9s7V3aK/asXA我使用的此验证功能:

function comparePassword(candidatePassword){
    try {
        return argon2.verify candidatePassword, user.password
    }
    catch (err) {
        throw err
    }
}

这是哈希函数:

try {
    hash = await argon2.hash(password)
    user.password = hash
    next()
}
catch (err) {
    next(err)
}

我的环境

Archlinux GNOME版本3.34.3
NodeJS
v11.15.0 Argon2 v0.25.0

桃木

错误消息为您提供了提示:pchstr必须包含$作为第一个charargon2生成的哈希的每个编码表示形式的第一部分都是所用Argon2的变体,在您的情况下为argon2i。candidatePassword可能没有以“ $”作为第一个字符,即使有,也将遇到其他问题。这只是一个开始!

如果您更仔细地注意npm包中的代码示例,您会发现它是

argon2.verify("<big long hash>", "password") 并不是

argon2.verify("password","<big long hash>") 正如您所做的。

TLDR:交换参数以匹配的参数argon2.verify

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何从2个单词中提取第一个字符

来自分类Dev

如何在cmd中读取多个文件的2个第一个字符

来自分类Dev

Yii2如何只对第一个字符使用类似查询

来自分类Dev

Select2 4.0.1:如何仅返回第一个字符匹配的结果?

来自分类Dev

如何修剪或截断 DB2 列中的第一个字符

来自分类Dev

在第一个字符上分割字符串会使第一个元素为空。如何解决这个问题?

来自分类Dev

如何将2数组的第一个元素组合成一个字符串数组?

来自分类Dev

在Docker映像中安装argon2(安装gcc时出现问题)

来自分类Dev

如何在Java中使用正则表达式将第一个字符作为分隔符来分离2个值

来自分类Dev

用户在第一个字符中输入2个字符后,如何将焦点放在下一个UITextView上

来自分类Dev

如何添加约束以检查在Oracle 11g中的VARCHAR2列中输入的值的第一个字符?

来自分类Dev

如何使用JavaScript从字符串中获取第一个字符的索引包含数值

来自分类Dev

在JavaScript中,如何防止在表单字段中输入数字作为第一个字符?

来自分类Dev

如何防止用户使用香草javascript输入0作为文本输入的第一个字符?

来自分类Dev

在JavaScript中,如何防止在表单字段中键入数字作为第一个字符?

来自分类Dev

如何禁止“。” (点)作为正则表达式中的第一个字符

来自分类Dev

必须在zend2中返回一个字符串值。如何?

来自分类Dev

Android如何获取字符串的第一个字符?

来自分类Dev

如何在第一个字符后屏蔽字符串

来自分类Dev

如何删除字符串的第一个字符[python]

来自分类Dev

如果仅在多行字符串中仅作为第一个和最后一个字符出现,如何替换双引号?

来自分类Dev

如何弹出QString的第一个字符串?

来自分类Dev

如何打印第一个字符的地址?

来自分类Dev

如何获得变量的第一个字符

来自分类Dev

如何防止第一个字符成为数字

来自分类Dev

如何从List <T>获取FirstName属性的第一个字符

来自分类Dev

如何获取C中多个条目的第一个字符?

来自分类Dev

如何防止在Android中删除编辑文本的第一个字符

来自分类Dev

如何在下拉列表中显示第一个字符

Related 相关文章

  1. 1

    如何从2个单词中提取第一个字符

  2. 2

    如何在cmd中读取多个文件的2个第一个字符

  3. 3

    Yii2如何只对第一个字符使用类似查询

  4. 4

    Select2 4.0.1:如何仅返回第一个字符匹配的结果?

  5. 5

    如何修剪或截断 DB2 列中的第一个字符

  6. 6

    在第一个字符上分割字符串会使第一个元素为空。如何解决这个问题?

  7. 7

    如何将2数组的第一个元素组合成一个字符串数组?

  8. 8

    在Docker映像中安装argon2(安装gcc时出现问题)

  9. 9

    如何在Java中使用正则表达式将第一个字符作为分隔符来分离2个值

  10. 10

    用户在第一个字符中输入2个字符后,如何将焦点放在下一个UITextView上

  11. 11

    如何添加约束以检查在Oracle 11g中的VARCHAR2列中输入的值的第一个字符?

  12. 12

    如何使用JavaScript从字符串中获取第一个字符的索引包含数值

  13. 13

    在JavaScript中,如何防止在表单字段中输入数字作为第一个字符?

  14. 14

    如何防止用户使用香草javascript输入0作为文本输入的第一个字符?

  15. 15

    在JavaScript中,如何防止在表单字段中键入数字作为第一个字符?

  16. 16

    如何禁止“。” (点)作为正则表达式中的第一个字符

  17. 17

    必须在zend2中返回一个字符串值。如何?

  18. 18

    Android如何获取字符串的第一个字符?

  19. 19

    如何在第一个字符后屏蔽字符串

  20. 20

    如何删除字符串的第一个字符[python]

  21. 21

    如果仅在多行字符串中仅作为第一个和最后一个字符出现,如何替换双引号?

  22. 22

    如何弹出QString的第一个字符串?

  23. 23

    如何打印第一个字符的地址?

  24. 24

    如何获得变量的第一个字符

  25. 25

    如何防止第一个字符成为数字

  26. 26

    如何从List <T>获取FirstName属性的第一个字符

  27. 27

    如何获取C中多个条目的第一个字符?

  28. 28

    如何防止在Android中删除编辑文本的第一个字符

  29. 29

    如何在下拉列表中显示第一个字符

热门标签

归档