Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/18: Рейтинг темы: голосов - 18, средняя оценка - 4.50
 Аватар для allukard
307 / 218 / 70
Регистрация: 08.11.2010
Сообщений: 1,899

md5 хеширование

26.05.2012, 10:02. Показов 3379. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Чтот не могу понять как сделать проверку!
При регистрации двойное хеширование и Соль.
PHP
1
2
3
4
5
6
7
8
9
for($i=0;$i<6;$i++){
      $rand=rand(180,200);
      $salt.=chr($rand);
}
$password=md5(md5($password.$salt));
 
    $design="style";
    $rights_site="user";
    $result5 = mysql_query ("INSERT INTO users (login,password,famil,name,email,date_reg,rights_site,avatar,design,salt) VALUES('$login','$password','$famil','$name','$email','$date_reg','$rights_site','$avatar','$design','$salt')");
Вопрос такой как Сверять при авторизации

PHP
1
2
3
4
5
6
7
8
9
10
11
$result = mysql_query("SELECT * FROM `users` WHERE login='$login'",$db); 
    $myrow = mysql_fetch_array($result);
    
    if (empty($myrow['password']))
    {
        exit ("<p>Извините, введённый вами login или пароль неверный.</p>");
    }
    else 
    {
        if ($myrow['password']==md5(md5($password)).$myrow['salt']) {//session}
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.05.2012, 10:02
Ответы с готовыми решениями:

Перевести код с VB. NET на PHP (хеширование MD5)
Добрый день, товарищи. Возможно, кто-то подскажет. Перед мной стоит задача - перенести код с VB на PHP Код - функция...

Хеширование
Есть хеш - LoYZWYpDC2qqRSxZJiwyrw== Есть расшифровка - fuckyou123 Хочу узнать тип (ключ, соль, или как там) шифровки и как...

Хеширование строки
Добрый день. Есть две строки: $str1 и $str2. Если произвести их конкатенацию, то результирующая строка ($str3) будет у меня уникальной....

9
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
26.05.2012, 10:06
Цитата Сообщение от Макc Посмотреть сообщение
Вопрос такой как Сверять при авторизации
Проверять можно сразу в запросе
MySQL
1
WHERE `login` = 'login' AND `pass` = MD5(MD5(CONCAT('pass', `salt`)))
1
 Аватар для allukard
307 / 218 / 70
Регистрация: 08.11.2010
Сообщений: 1,899
26.05.2012, 10:18  [ТС]
Цитата Сообщение от Vovan-VE Посмотреть сообщение
Проверять можно сразу в запросе
MySQL
1
WHERE `login` = 'login' AND `pass` = MD5(MD5(CONCAT('pass', `salt`)))
нет так помойму не получится, это получается я `salt` Повторно Хэширую(тоесть уже 4-ре раза)

в бд так без Хэширования(пример)
Название: цц.png
Просмотров: 263

Размер: 2.1 Кб
0
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
26.05.2012, 10:23
Макc, Откуда 4? Вы же в БД храните оригинальный salt, а не хешированный.
0
 Аватар для allukard
307 / 218 / 70
Регистрация: 08.11.2010
Сообщений: 1,899
26.05.2012, 10:30  [ТС]
ну вот Регистрация
PHP
1
2
3
4
5
6
for($i=0;$i<6;$i++){
      $rand=rand(180,200);
      $salt.=chr($rand);
}
$password=md5(md5($password.$salt));
 $result5 = mysql_query ("INSERT INTO users (login,password,famil,name,email,date_reg,rights_site,avatar,design,salt) VALUES('$login','$password','$famil','$name','$email','$date_reg','$rights_site','$avatar','$design','$salt')");
0
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
26.05.2012, 10:34
Макc, У Вас на входе был пароль "12345" и соль "foobar". Из них получили некий хеш "329845769" и сохранили в БД хеш и соль.
Code
1
hash = f(real_pass, salt)
В БД вы проворачиваете абсолютно ту же процедуру с тем же salt'ом и с проверяемым паролем.
Code
1
f(check_pass, salt) == hash
1
 Аватар для allukard
307 / 218 / 70
Регистрация: 08.11.2010
Сообщений: 1,899
26.05.2012, 11:27  [ТС]
вот сделал без соли

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    $result = mysql_query("SELECT * FROM `users` WHERE login='$login'",$db); 
    $myrow = mysql_fetch_array($result);
    
    if(md5(md5($password))==$myrow['password'])
    {
        echo "Пароль совпадает";
    }
    else
    {
        echo "Пароль не совпадает";    
    }
    echo "<br>";
    echo "Введёный пароль: ".md5(md5($password))."<br>";
    echo "Пароль с базы Этого логина: ".$myrow['password']."<br>";
    exit();
выдает:
Пароль не совпадает
Введёный пароль: 9db06bcff9248837f86d1a6bcf41c9e7
Пароль с базы Этого логина: 9db06bcff924883
как так?
0
 Аватар для Alex_pac
1302 / 708 / 107
Регистрация: 25.05.2011
Сообщений: 2,158
Записей в блоге: 51
26.05.2012, 11:47
Цитата Сообщение от Макc Посмотреть сообщение
: 9db06bcff924883
как так?
Размер поля у вас не достаточный наверно вот и обрезается хеш.
1
 Аватар для allukard
307 / 218 / 70
Регистрация: 08.11.2010
Сообщений: 1,899
26.05.2012, 12:20  [ТС]
Цитата Сообщение от Alex_pac Посмотреть сообщение
Размер поля у вас не достаточный наверно вот и обрезается хеш.
точно всего 15 символов разрешалось!

Добавлено через 11 минут
сделал всётак так
PHP
1
    if ($myrow['password']==md5(md5($password.$myrow['salt']))) {}
это новерн щитается быдлокод?
0
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
26.05.2012, 13:10
Цитата Сообщение от Макc Посмотреть сообщение
сделал всётак так
PHP
1
if ($myrow['password']==md5(md5($password.$myrow['salt'])))
это новерн щитается
Ага, считается. Запрашивается не то, что нужно. PHP делает работу, которую должна делать СУБД. Если у Вас будет 1мнл пользователей, Вы будете крутить цикл до 1млн итераций.
http://www.cyberguru.ru/web/ph... page5.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.05.2012, 13:10
Помогаю со студенческими работами здесь

Хеширование паролей в бд
Пытаюсь сделать так, чтобы при регистрации пользователя на сайте пароль в бд хешировался, а при входе он должен был бы писать всё равно...

Как убрать хеширование пароля?
Всем привет, нашёл код авторизации на сайте а в нём прописано хеширование пароля и не знаю как убрать, подскажите что убрать а что...

Md5
использую для уникальности записей в базе md5 (32 знака) есть ли что то подобное но с меньшим количеством знаков? учитывая что записей...

fb(md5() ?
Разбираюсь в чужом коде.Увидел fb(md5()) и не могу понять, что такое fb(). Подскажите?

не работает md5()
Доброго времени суток. Пишу сайт и мне предстояло написать админу, все бы ничего, но появилась проблема с хешированием паролей. При записи...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru