如何使用 OpenSSL 命令行复制带有盐的 sha256 哈希?

如何使用 OpenSSL 命令行复制带有盐的 sha256 哈希?

使用如下的 PHP 加密函数,我可以进行带盐和多轮的 sha256 哈希运算。

php -r "echo crypt('foo','\$5\$rounds=5000\$saltsaltsaltsalt');"

生成:

$5$rounds=5000$saltsaltsaltsalt$5RbfsOruKYb8v7hGn29A.I91maopNeJ2nIFH.SIEnSC

如何使用 OpenSSL 命令行程序执行此精确过程(和/或验证哈希)?

答案1

这个密码哈希算法相当复杂 - 请参阅完整描述:http://www.akkadia.org/drepper/SHA-crypt.txt

不幸的是,该openssl passwd命令目前不支持它——仅支持旧的基于 DES 的 crypt()、基于 MD5 的 crypt() 和apr1MD5 加盐哈希的 Apache 变体。Debian 错误报告请求 SHA-256/512 密码哈希支持,但目前还没有任何进展。

相关内容