$number = 15;
function generate_password($num)
{
$arr = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','r','s','t','u','v','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','R','S','T','U','V','X','Y','Z','1','2','3','4','5','6','7','8','9','0');
$pass = "";
for($i = 0; $i < $num; $i++) {$index = rand(0, count($arr) - 1); $pass .= $arr[$index];}
return $pass;
}
$user_pass = generate_password($number);
$user_pass = md5($user_pass);
$user_pass = strrev($user_pass);
$user_pass = $user_pass."eRb3pAbR6f";
далее пароль заноситься в БД , нужно выташить его расшифровать и отправить на мыло ! Знает кто как такое реализовать ?
Спустя 5 минут, 47 секунд (19.01.2010 - 13:15) sergeiss написал(а):
Расшифровать то, что закодировано через md5 - невозможно. Поэтому, если юзер забыл пароль, то надо генерить новый. А про старый можно забыть.
В самом крайнем случае, если очень надо, то можно перебрать все возможные варианты паролей, каждый раз получая от них преобразованный по указанному алгоритму пароль, и сравнивая с тем, что лежит в БД. Но только это очень долго, и может быть использовано только в очень исключительных случаях, а не в массовом порядке.
И также нету никакой гарантии, что результат будет найден за какое-то разумное время.
В самом крайнем случае, если очень надо, то можно перебрать все возможные варианты паролей, каждый раз получая от них преобразованный по указанному алгоритму пароль, и сравнивая с тем, что лежит в БД. Но только это очень долго, и может быть использовано только в очень исключительных случаях, а не в массовом порядке.
И также нету никакой гарантии, что результат будет найден за какое-то разумное время.
Спустя 3 минуты, 5 секунд (19.01.2010 - 13:18) Domin написал(а):
Цитата |
Расшифровать то, что закодировано через md5 - невозможно. |
Расшифровать то можно . надо токо знать как !!!
Как тогда реализовать ? Может сделать так , сначало отправить на мыло потом его зашифровать и добавить в БД ? Но и тут есть проблемы , высылать нужно всю инфу о юзере + ссылку активации !
Спустя 17 минут, 51 секунда (19.01.2010 - 13:36) twin написал(а):
Цитата |
Расшифровать то можно . надо токо знать как !!! |
Расшифровать нельзя. По одной простой причине. MD5 не шифрует, а хэширует данные. А понятия "расхэшировать" не существует.
Подобрать брутфорсом или другими способами можно (словарь, радужные таблицы и пр...), но криптостойкий пароль (состоящий из различных символов, не только букв и цифр, и достаточно длинный) может подбираться несколько сотен лет непрерывной работы компьютера.
При восстановлении пароля можно сгенерировать отправить временный пароль, который юзер сможет поменять на свой любимый в личном кабинете.
Спустя 1 минута, 1 секунда (19.01.2010 - 13:37) Domin написал(а):
twin спс учёл !!!
А шифрование куков кто нить знает как сделать ?
А шифрование куков кто нить знает как сделать ?
Спустя 3 минуты, 19 секунд (19.01.2010 - 13:41) twin написал(а):
Спустя 2 минуты, 26 секунд (19.01.2010 - 13:43) jetistyum написал(а):
Цитата (Domin @ 19.01.2010 - 13:18) |
Расшифровать то можно . надо токо знать как !!! |
нет, нельзя, можно только подобрать.
Спустя 9 минут, 41 секунда (19.01.2010 - 13:53) Domin написал(а):
Цитата |
нет, нельзя, можно только подобрать. |
Своими глазами видео видел на хакерском сайте как пароль хэшированый пароль разхэшели и получили реальный пароль !
Спустя 3 минуты, 49 секунд (19.01.2010 - 13:56) jetistyum написал(а):
ну раз умный такой, так че спрашиваешь.. посмотри еще хакерских видео
Спустя 2 минуты, 2 секунды (19.01.2010 - 13:59) jetistyum написал(а):
если бы не был такой.. твердолобый ленивый.. то посмотрел бы что такое хэш... и что стомиллионов строк текста могут быть сжаты до размеров 32 байт ... и обратно они НЕ МОГУТ БЫТЬ ВОССТАНОВЛЕНЫ!!!
Спустя 12 секунд (19.01.2010 - 13:59) Domin написал(а):
То был взлом , а это зашита разницу ощущаешь ???
Спустя 2 минуты, 34 секунды (19.01.2010 - 14:01) Domin написал(а):
Простой хэш ( $user_pass = md5($user_pass); ) его можно расхэшить а вот такой :
$user_pass = md5($user_pass);Навряд ли расхэшишь !
$user_pass = strrev($user_pass);
$user_pass = $user_pass."eRb3pAbR6f";
Спустя 4 минуты, 13 секунд (19.01.2010 - 14:05) DedMorozzz написал(а):
Ниужели никогда не встречал md5(md5(пасс))+соль...
Вот "то" добавление и есть соль. Не зная её - даже брутфорсом не разгадать.
Вот "то" добавление и есть соль. Не зная её - даже брутфорсом не разгадать.
Спустя 6 минут, 59 секунд (19.01.2010 - 14:12) jetistyum написал(а):
расхэшить нельзя! можно подобрать, если ты с первого раза не понял!
Спустя 2 минуты, 41 секунда (19.01.2010 - 14:15) Gabriel написал(а):
Domin
а пароль какой был? не 123456 случаем? блин отредактировали статью на пыхе... там было русским по белому написано, что там неймоверное количЮствО комбинаций которое как сказал twin и jetistyum только методом научного тыка подбирать мол "авось повезет".
а по теме зачем так напрягаться? разве из фунции нельзя выбить арматурой пароль?
а пароль какой был? не 123456 случаем? блин отредактировали статью на пыхе... там было русским по белому написано, что там неймоверное количЮствО комбинаций которое как сказал twin и jetistyum только методом научного тыка подбирать мол "авось повезет".
а по теме зачем так напрягаться? разве из фунции нельзя выбить арматурой пароль?
Спустя 34 секунды (19.01.2010 - 14:16) twin написал(а):
Цитата |
Своими глазами видео видел на хакерском сайте как пароль хэшированый пароль разхэшели и получили реальный пароль ! |
Ну и как выглядел тот пароль? поди день рождения или имя подруги...
Я же написал - криптостойкий пароль никакой хакер-макер не подберет. Ста жизней не хватит. И соль, это как раз усиление криптостойкости.
А вот конструкция md5(md5(md5... и так далее - чушь.
Спустя 10 минут, 57 секунд (19.01.2010 - 14:27) twin написал(а):
Рекламу видел гдето:
Вам нужен чужой пароль?
Терморектальный криптоанализатор паролей. 100% результат.
Вам нужен чужой пароль?
Терморектальный криптоанализатор паролей. 100% результат.
Спустя 3 минуты, 35 секунд (19.01.2010 - 14:30) Gabriel написал(а):
twin
а каг оно работает с паролями?
а каг оно работает с паролями?
Спустя 3 минуты, 10 секунд (19.01.2010 - 14:33) sergeiss написал(а):
Gabriel - оно не с паролями работает, а "подламывает" сами генераторы паролей
Спустя 5 часов, 31 минута, 44 секунды (19.01.2010 - 20:05) Domin написал(а):
лан не буду с вами спорить ! лучьше подскажите как такое возможно , после регистрации и обработки пароля этим :
я хочу авторизоватся , выдаёт скрипт ошибку логин или пароль не верный , ладно иду дальше , захожу в БД копирую пороль (уже обработаный md5 и т.д ) ввожу логин вставляю скопированый хеш из БД и всё нормально вход выполнен , тут я нечё непойму что как и почему . Подскажите !
Вот код файла авторизации :
$user_pass = md5($user_pass);
$user_pass = strrev($user_pass);
$user_pass = $user_pass."5Rb3p";
я хочу авторизоватся , выдаёт скрипт ошибку логин или пароль не верный , ладно иду дальше , захожу в БД копирую пороль (уже обработаный md5 и т.д ) ввожу логин вставляю скопированый хеш из БД и всё нормально вход выполнен , тут я нечё непойму что как и почему . Подскажите !
Вот код файла авторизации :
<?php
session_start();
if (isset($_POST['user_login'])) { $user_login = $_POST['user_login']; if ($user_login == '') { unset($user_login);} }
if (isset($_POST['user_pass'])) { $user_pass = $_POST['user_pass']; if ($user_pass =='') { unset($user_pass);} }
if (empty($user_pass) or empty($user_pass))
{
exit ("Вы ввели не всю информацию, вернитесь назад и заполните все поля!");
}
$user_login = stripslashes($user_login);
$user_login = htmlspecialchars($user_login);
$user_pass = stripslashes($user_pass);
$user_pass = htmlspecialchars($user_pass);
$user_login = trim($user_login);
$user_pass = trim($user_pass);
include ("block/bd.php");
$result = mysql_query("SELECT * FROM user WHERE login='$user_login' AND pass='$user_pass'",$db);
$myrow = mysql_fetch_array($result);
if (empty($myrow['pass']))
{
exit ("Извините, введённый вами login или пароль неверный.");
}
else {
if ($myrow['pass'] == $user_pass) {
$_SESSION['login'] = $myrow['login'];
$_SESSION['id'] = $myrow['id'];
echo "Вы успешно вошли на сайт! <a href='index.php'>Главная страница</a>";
}
else {
exit ("Извините, введённый вами login или пароль неверный.");
}
}
?>
Спустя 8 минут, 26 секунд (19.01.2010 - 20:14) twin написал(а):
Это что?
ооооой, кашмар то какой на улице вязов... Где то я это уже видел.
Не иначе г-н Попов руку приложил?
Не захотел ты почитать ссылку мою, вот результат: в каждой строчке у тебя ошибка.
if (empty($user_pass) or empty($user_pass))а дальше...
ооооой, кашмар то какой на улице вязов... Где то я это уже видел.
Не иначе г-н Попов руку приложил?
Не захотел ты почитать ссылку мою, вот результат: в каждой строчке у тебя ошибка.
Спустя 10 минут, 52 секунды (19.01.2010 - 20:24) Domin написал(а):
Это проверка что введены логин и пароль !
но я уже сделал . Почему не почитал , всё я почитал буду теперь дописывать или переписывать ))
но я уже сделал . Почему не почитал , всё я почитал буду теперь дописывать или переписывать ))
Спустя 5 минут, 26 секунд (19.01.2010 - 20:30) twin написал(а):
Цитата |
Это проверка что введены логин и пароль ! |
Это проверка, что введены пароль и... пароль.
Спустя 1 минута, 31 секунда (19.01.2010 - 20:31) Domin написал(а):
Да ))) плуганул я реально ))
Аж самому смешно стало ппц ))
Аж самому смешно стало ппц ))