Назад | Перейти на главную страницу

Как реплицировать хеш sha256 с солью с помощью командной строки OpenSSL?

Используя функцию шифрования PHP следующим образом, я могу сделать хеш 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 команда в настоящее время не поддерживает его - есть поддержка только для старых crypt () на основе DES, crypt () на основе MD5 и Apache apr1 вариант солёных хэшей MD5. Eсть Отчет об ошибке Debian запрашивает поддержку хэша паролей SHA-256/512, но в настоящее время ничего не сделано.