Php

如何使用 OpenSSL 命令行複制帶有鹽的 sha256 雜湊?

  • December 13, 2010

如下使用 PHP 的 crypt 函式,我可以使用鹽和多輪進行 sha256 雜湊。

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

產生:

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

如何使用 OpenSSL 命令行程序執行這個確切的過程(和/或驗證雜湊)?

這種密碼散列算法相當複雜——請參閱完整描述:http ://www.akkadia.org/drepper/SHA-crypt.txt 。

不幸的是,該openssl passwd命令目前不支持它——僅支持舊的基於 DES 的 crypt()、基於 MD5 的 crypt() 和apr1MD5 加鹽雜湊的 Apache 變體。有一個Debian 錯誤報告要求支持 SHA-256/512 密碼雜湊,但目前還沒有做任何事情。

引用自:https://serverfault.com/questions/211978