Итак , у меня есть веб-сайт, который считывает/проверяет (и записывает) хэши паролей из базы данных, и у меня есть что-то, что делает для этого хэши паролей в стиле SHA-512, которые выглядят так:
$6$GloHensinmyampOc$AxvlkxxXk36oDOyu8phBzbCfLn8hyWgoYNEuqNS.3dHf4JJrwlYCqha/g6pA7HJ1WwsADjWU4Qz8MfSWM2w6F.
Веб-сайт основан на Java, поэтому я написал для него хэш SHA-512. Проблема в том, что существует множество заданий perl cron, которые такжедолжны время от времени проверять хэши паролей в базе данных, и, поскольку они выполняются на компьютере Solaris, его крипт не поддерживает формат $6$. .
Итак, когда я это делаю:
printf("crypt => '%s'\n",crypt("Hello",'$1$CygnieHyitJoconf$'));
Я разумно отвечаю:
crypt => '$1$CygnieHy$n9MlDleP0qmGCfpbnVYy11'
Тогда как, если я это делаю
printf("crypt => '%s'\n",crypt("Hello",'$6$CygnieHyitJoconf$'));
Я получаю бесполезный
crypt => ''
Есть ли способ получить хэши паролей SHA-512 в Perl на коробка, которая не использует glibc? (Это то, что мне чаще всего говорят, когда я выполняю поиск («использовать крипту»).
Я действительно не хотел бы повторно реализовывать хэши паролей SHA-512 в perl.
Спасибо!