
13.02.2009, 17:43
|
|
Познающий
Регистрация: 20.08.2008
Сообщений: 35
Провел на форуме: 73525
Репутация:
20
|
|
md5 hmac и русская раскладка
Всем здрасьте. не знал куда пихнуть сей вопрос, поэтому сюда пихну.
Один любимый форум я ломал, где в качестве хеша используется md5 hmac (старый двиг smf 1.0.4)
получил хеши я несколько солей на русской раскладке, и одни на западной.
для проверки совместимости алгоритмов создал на этом форуме своего юзера с паролем и логином (это соль) из латинских символов, извлек хеш и провереил в PasswordsPro все совапло. когда же я создал юзера с логином на родном языке и вытащил хеш оказалось что он не совпадает с хешем созданным в PasswordsPro.
А так как у админов руссие логины, то брут делаю на PHP .... полный пэ 140000 pps. на пхп все работает правельно, хеши совпадают. вот алгоритм для пхп
PHP код:
function md5_hmac($data, $key) {
$key = str_pad(strlen($key) <= 64 ? $key : pack('H*', md5($key)), 64, chr(0x00));
return md5(($key ^ str_repeat(chr(0x5c), 64)) . pack('H*', md5(($key ^ str_repeat(chr(0x36), 64)). $data)));
}
в общем проблема такова - в PasswordsPro алгоритм md5(hmac) неадекватно воспринимает соль на русском языке. (хотя мб это пхп неадекватен)
я думал проблема с кодировками, переводил в разные - нифига(((
оч прошу помочь мне! заранее спасибо. 
|
|
|