【问题标题】:PBKDF2 not matching between Python and Javascript librariesPBKDF2 在 Python 和 Javascript 库之间不匹配
【发布时间】:2011-08-27 19:52:34
【问题描述】:

使用密码“password”,salt“1234567812345678”100次重复,128位结果

http://bitwiseshiftleft.github.com/sjcl/demo/ 是一个 javascript 实现,给出结果 A374FF6A12280F020162A62A9B3212AA

http://matt.ucc.asn.au/src/pbkdf2.py 是一个 python 实现,结果为 89FBE50AF230BD273076AA9BC9F1142A

如果 PBKDF2 是它们都实施的标准,为什么它们会有所不同?

【问题讨论】:

    标签: password-encryption pbkdf2


    【解决方案1】:

    SJCL 似乎使用 SHA-256,而 Python 实现默认使用 SHA-1。

    这些是可以在 PBKDF#2 中使用的不同哈希值,因此会导致不同的结果。

    PBKDF#2 是一种算法,但没有具体说明其内部结构的确切组成。

    【讨论】:

    • 完全正确。在 python 代码中将 sha1 与 sha256 交换后,结果匹配
    猜你喜欢
    • 2023-03-13
    • 1970-01-01
    • 1970-01-01
    • 2013-04-26
    • 2019-08-26
    • 1970-01-01
    • 1970-01-01
    • 2016-03-11
    • 1970-01-01
    相关资源
    最近更新 更多