Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.10.2014, 23:08   #1
Steh
Пользователь
 
Регистрация: 24.11.2009
Сообщений: 43
По умолчанию Как собрать хеш

Вот из этого кода

Код:
var input = salt + password;

/*Append a 'U' for user login, or a '\x01' for admin login */

input += (document.forms.myform.username.value == 'user') ? 'U' : String.fromCharCode(1);

var hash = hex_md5(input);
var login_hash = salt.concat(hash);
при соли 582ce39c и пустом пароле не могу собрать хэш

7d3a635c0f25dee89ce699302f970837

клею по очереди соль и признаки админа, но никак

подскажите. какой набор символов они конвертят в мд5
Steh вне форума Ответить с цитированием
Старый 04.10.2014, 20:05   #2
Steh
Пользователь
 
Регистрация: 24.11.2009
Сообщений: 43
По умолчанию

Возможно, они как-то обозначают пустые пароли. вот тест с паролем 1

987253764017410a7c5f531edb68f1d5b92 a9522 (полный хеш, вначале соль)

98725376 - соль

Код:
function send_login()

{



var salt = "98725376";
var password = "";


if (graphic_auth == "false") {

password = document.forms.myform.old_password.value.substr(0,16);
document.forms.myform.old_password.value = ""; 

}

else {

password = document.forms.myform.new_password.value.substr(0,16);
document.forms.myform.new_password.value = ""; 
}

for (var i = password.length; i < 16; i++) {
password += String.fromCharCode(1);

}

var input = salt + password;

for (var i = input.length; i < 63; i++) {
input += String.fromCharCode(1);

}


if (graphic_auth == "false") {

input += (document.forms.myform.old_username.value == 'user') ? 'U' : String.fromCharCode(1);

}

else {

input += (document.forms.myform.new_username.value == 'user') ? 'U' : String.fromCharCode(1);

}

var hash = hex_md5(input);
var login_hash = salt.concat(hash);
Steh вне форума Ответить с цитированием
Старый 04.10.2014, 21:27   #3
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,285
По умолчанию

Ну так в коде же всё есть
Сначала берут 16 символов из строки с паролем. Затем дополняют её символами \x01 до длины 16. Затем приписывают в начало соль. Затем опять дополняют символами \x01 до длины 64. Затем дописывают 'U' или \x01. Затем считают хеш.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 04.10.2014, 22:11   #4
Steh
Пользователь
 
Регистрация: 24.11.2009
Сообщений: 43
По умолчанию

так я со скриптами не знаком. я думал. это обычная проверка длины строк, чет затупил что здесь i++.
а вот .эта хрень - \x01 - это 4 символа? там надо чтобы больше 16 было??

вот так что ли??

987253761\x01\x01\x01\x01\x01\x01\x 01\x01\x01\x01\x01\x01\x01\x01\x01

что-тоне то

то есть для админа

переводим в мд5 СольПароль\x01...(до64 символов)\x01 ?

Последний раз редактировалось Steh; 04.10.2014 в 22:28.
Steh вне форума Ответить с цитированием
Старый 04.10.2014, 22:41   #5
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,285
По умолчанию

"\x01" - это обозначение символа с кодом 1.
Да, для админа будет так. Максимальная длина пароля - 16 символов. Длина строки, от которой берется хеш - 65.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )

Последний раз редактировалось BDA; 04.10.2014 в 22:43.
BDA на форуме Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Хеш-таблица и хеш-функция. Проверка на ввод существующих данных F1nt Общие вопросы C/C++ 0 24.01.2014 09:52
Как собрать проект Krasi Общие вопросы C/C++ 2 24.01.2012 15:19
при подсчете хеш-суммы ошибка Integer Overflow. как обойти? Человек_Борща Общие вопросы Delphi 2 09.02.2011 11:20
Как организовать хеш? Utkin Общие вопросы по программированию, компьютерный форум 12 04.01.2011 09:31
Графы. Хранение хранить список смежностей как хеш-таблицу. Чем не идеал? Kn793 Свободное общение 7 08.11.2010 17:55