Может ли mcrypt выполнять те же алгоритмы, которые поддерживаются crypt ()? - PullRequest
1 голос
/ 03 декабря 2010

У меня есть приложение, работающее на PHP 5.3, которое хранит хэши паролей с помощью функции PHP crypt().Однако используемый тип хэширования (SHA 512) по умолчанию недоступен ни на одном из серверов, которые я сейчас использую, на котором работает PHP 5.2.Я видел, что с mcrypt вы получаете гораздо больше гибкости, но и более сложным в использовании.

Возможно ли использовать PHP-функции mcrypt для получения тех же результатов, что и с crypt (используя соль SHA512)?

Поэтому, если я введу «test» с солью SHA512, зашифрованные данные должны быть такими же при использовании crypt (), а также при использовании mcrypt ().

Если это невозможно, могуКто-нибудь дать мне совет, что еще делать?К сожалению, обновление до PHP 5.3 не вариант (это облачный сервер, и у меня нет времени писать сценарии для этого).

Ответы [ 2 ]

2 голосов
/ 26 августа 2015

Может кто-нибудь сказать мне, возможно ли использовать функцию mcrypt в php5 для получения тех же результатов, что и с crypt

Нет.Mcrypt предоставляет функции для шифрования и дешифрования .crypt, несмотря на его обманчивое имя, предоставляет функции для хеширования .Это не одна и та же задача.Mcrypt не предоставляет никаких функций хеширования, а алгоритм, который вы хотите использовать (SHA-512), является алгоритмом хеширования.

Вы не можете хэшировать пароли с Mcrypt.Это не его работа.Его роль и crypt различны и не пересекаются.

0 голосов
/ 03 декабря 2010

К сожалению, у MCrypt нет шифра SHA512 - список шифров можно посмотреть здесь:

http://www.php.net/manual/en/mcrypt.ciphers.php

...