Нужна помощь c шифрованием паролей

Статус
В этой теме нельзя размещать новые ответы.

bucha2004

Гуру форума
Регистрация
9 Фев 2007
Сообщения
309
Реакции
79
Есть функция шифрования расшифровки пароля из базы SQl
Кто то сможет помочь, изменить ее так, чтоб пароль расшифровывался обычным md5 ?
<?
require_once($_SERVER["DOCUMENT_ROOT"]."/_s-p/_function/blowfish_class.php");
function code_password($password) {
while (strlen($password) < 12) {
$password .= "-";
}
$key = md5"V7qM91t0mtlkcI1UD");
$res = base64_encode(encrypt($password, $key));
return $res;
}
function encode_password($password) {
$key = md5("V7qM91t0mtlkcI1UD");
$res = decrypt(base64_decode($password), $key);
$res = trim(str_replace("-", " ", $res));
return $res;
}
function encrypt($data, $secret) {
$cipher = new blowfish;
$encrypt = '';
for ($i = 0; $i < strlen($data); $i+=8) {
$block = substr($data, $i, 8);
if (strlen($block) < 8) {
$block = full_str_pad($block, 8, "", 1);
}
$encrypt .= $cipher->encryptBlock($block, $secret);
}
return $encrypt;
}
function decrypt($data, $secret) {
$cipher = new blowfish;
$decrypt = '';
for ($i = 0; $i < strlen($data); $i+=8) {
$decrypt .= $cipher->decryptBlock(substr($data, $i, 8), $secret);
}
return trim($decrypt);
}
function full_str_pad($input, $pad_length, $pad_string = '', $pad_type = 0) {
$str = '';
$length = $pad_length - strlen($input);
if ($length > 0) { // str_repeat doesn't like negatives
if ($pad_type == STR_PAD_RIGHT) { // STR_PAD_RIGHT == 1
$str = $input.str_repeat($pad_string, $length);
} elseif ($pad_type == STR_PAD_BOTH) { // STR_PAD_BOTH == 2
$str = str_repeat($pad_string, floor($length/2));
$str .= $input;
$str .= str_repeat($pad_string, ceil($length/2));
} else { // defaults to STR_PAD_LEFT == 0
$str = str_repeat($pad_string, $length).$input;
}
} else { // if $length is negative or zero we don't need to do anything
$str = $input;
}
return $str;
}
?>
 
md5 - необратимое шифрование, а значит оно не расшифровывается ;)
 
function encode_password($password) {
$key = md5("V7qM91t0mtlkcI1UD");
$res = decrypt(base64_decode($password), $key);
$res = trim(str_replace("-", " ", $res));
return $res;


В базе я вижу пароль, с виду он зашифрован md5, подставляя туда обычный (admin) 232f297a57a5a743894a0e4a801fc3 то он не подходит.

мне хотелось бы привести эту функцию к стандартному md5, без кеев и base64

Кто то сможет помочь мне это сделать?
 
А просто в функциях code_password и encode_password убрать base64_encode и base64_decode нельзя? новые пароли уже будут писаться без base64, а вот старые придется расшифровать старой функцией и зашифровать новой
 
мне хотелось бы привести эту функцию к стандартному md5, без кеев и base64
PHP:
function encode_password($password) {
return md5($password);
?

Добавлено через 3 минуты
On-line cервисы расшифровки md5
Мгновенная расшифровка
Они не расшифровывают - Для просмотра ссылки Войди или Зарегистрируйся. Они ищут твой хеш в своей базе.
 
На самом деле есть несколько видов сервисов...

1. Ищет по базе хешей
2. Расшифровывает

Вы вдвоем правы.


Всем спасибо за помощь. Проблема решена
 
На самом деле есть несколько видов сервисов...

1. Ищет по базе хешей
2. Расшифровывает

Вы вдвоем правы.


Всем спасибо за помощь. Проблема решена
да нет такого понятия как расшифровка MD5. Эти сервиси либо прогоняют по своей базе хешей либо подбирают хеш(что мало вероятно)
 
Вы сами говорите - "либо подбирают"

Подбор это не метод?
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху