ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

[Web-извращенцам] хеширование
  #1  
Старый 29.02.2008, 05:16
Аватар для .:EnoT:.
.:EnoT:.
Постоянный
Регистрация: 29.05.2007
Сообщений: 852
Провел на форуме:
4832771

Репутация: 1916


По умолчанию [Web-извращенцам] хеширование

В общем темка довольно таки интересная.
Решил в своём движке сделать такой метод хеширования пасов, чтобы даже самый умный ][, имеющий гигабайты словарей до старости брутил хеш))
Предполагается плюс ко всему солько. да и собственно у кого какие мысли по выделению соли? тоже интерсно было бы узнать)

В общем кто на что способен, выкладывайте
Маленький пример:

PHP код:
function super_hash($pass)
{
    
$pass hash_hmac('md5'md5(base64_encode(strrev($pass))), 'bugaga');
    return 
$pass;
}
echo 
super_hash(12345); 
 
Ответить с цитированием

  #2  
Старый 29.02.2008, 06:12
Аватар для bul.666
bul.666
Banned
Регистрация: 06.06.2006
Сообщений: 944
Провел на форуме:
3986705

Репутация: 1403


Отправить сообщение для bul.666 с помощью ICQ
По умолчанию

Тема интересна, если не использовать стандартные алгоритмы типа md5 и base64
 
Ответить с цитированием

  #3  
Старый 29.02.2008, 06:51
Аватар для Hawkins
Hawkins
Участник форума
Регистрация: 24.01.2007
Сообщений: 129
Провел на форуме:
932592

Репутация: 145
Отправить сообщение для Hawkins с помощью ICQ
По умолчанию

$pwd=substr(sha1(md5($password)), 0, 10);
анбрутабл, никаких солей, места в бд занимает немного =)
 
Ответить с цитированием

  #4  
Старый 29.02.2008, 07:06
Аватар для Isis
Isis
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме:
16641028

Репутация: 2371


По умолчанию

Бред....
Способов куча
 
Ответить с цитированием

  #5  
Старый 29.02.2008, 07:09
Аватар для .:EnoT:.
.:EnoT:.
Постоянный
Регистрация: 29.05.2007
Сообщений: 852
Провел на форуме:
4832771

Репутация: 1916


По умолчанию

Цитата:
Сообщение от Isis  
Бред....
Способов куча
дргого ответа от тебя ожидать было бы глупо)
раз куча способов - выкладывай, буду только рад
 
Ответить с цитированием

  #6  
Старый 29.02.2008, 10:22
Аватар для Macro
Macro
Постоянный
Регистрация: 11.11.2006
Сообщений: 595
Провел на форуме:
1845062

Репутация: 1079


По умолчанию

PHP код:
<? 
function macrohash($string

$b=bin2hex($string); 
$str ''
$c=''


for(
$i=0$i<=strlen($b)-2$i+=2

$sm=0
for(
$j=0$j<=strlen($b-2); $j+=2

$sm=$sm+hexdec(substr($b,$j,2)); 

$asdf2=explode(".",$sm/3.1415927); 
$summab=$asdf2[1];
$x=hexdec(substr($b,$i,2)); 
$c.=dechex($x+intval(strlen($string)*$x)+$summab/$x); 



if (
strlen($c)<=32)  

$d=''

for(
$i=0strlen($d)<=32$i+=2
{
$sm=0
for(
$j=0$j<=strlen($b-2); $j+=2

$sm=$sm+hexdec(substr($b,$j,2)); 

$asdf2=explode(".",$sm/3.1415927); 
$summab=$asdf2[1];
$d.=dechex(intval((hexdec(substr($c,$i,2))+strlen($d))*$summab*$x)); 

$str=substr($d,strlen($d)-32,32); 


elseif(
strlen($c)>32

$w=''
$c=substr($c,strlen($c)-5); 
for(
$i=0strlen($w)<=32$i+=2
{
$sm=0
for(
$j=0$j<=strlen($b-2); $j+=2

$sm=$sm+hexdec(substr($b,$j,2)); 

$asdf2=explode(".",$sm/3.1415927); 
$summab=$asdf2[1];
$w.=dechex(intval((hexdec(substr($c,$i,2))+strlen($w))*$summab*$x)); 

$str=substr($w,0,32); 

return 
$str

?>
Моя функция хэширования без использования стандартных функций
 
Ответить с цитированием

  #7  
Старый 29.02.2008, 13:50
Аватар для Noiro
Noiro
Познающий
Регистрация: 01.01.2008
Сообщений: 50
Провел на форуме:
187422

Репутация: 71
По умолчанию

Обычно использую просто двойной sha1 с салтом и "ключем", например так - ключ хранится в исходниках а не в базе, в роли салта - юзернейм :
PHP код:
$key "SomeReeeeeeeeealllyfriggginloooooooongstrrrrrrrrrrrrrinnnnnnng123432432432";
$hash sha1($key.sha1($pass).$username
А вообще соглашусь с Isis, способов безконечно много даже используя комбинации классических алгоритмов хеширования. Пойдет любой, главное чтобы использовались салты и алгоритм небыл включен в известные брутеры.
 
Ответить с цитированием

  #8  
Старый 29.02.2008, 14:10
Аватар для Grey
Grey
AMA - Level 2
Регистрация: 10.06.2006
Сообщений: 1,113
Провел на форуме:
17668503

Репутация: 5826


По умолчанию

Цитата:
Сообщение от Hawkins  
$pwd=substr(sha1(md5($password)), 0, 10);
анбрутабл, никаких солей, места в бд занимает немного =)
Бред, почему не брутабельно?

PHP код:
<?php
$hash 
'';
$file file('slovar.txt');
for(
$i=0;$i<count($file);$i++)
{
if(
$hash == substr(sha1(md5(trim($file[$i]))), 010))
{
echo(
'pass: '.$file[$i]);
break;
}
}
?>
Да кстати алгоритм очень тупой, я уже раньше писал что в теории обрубание хеша напротив только увеличивает колизию, т.к. одному такому урезаному хешу будут соответсвовать n-ое число не урезанных хешей, т.е. к примеру, если для некоторой функции хеш от 1 = aaabb, а от 111 = aaacc, то получится что урезаному хешу aaa будет соответствовать и 1 и 111.

Или говоря про небрутабельность ты имелл ввиду скорость? Если да, то не думаю что будет медлнее чем тот же мд5 юникс.

Последний раз редактировалось Grey; 29.02.2008 в 14:16..
 
Ответить с цитированием

  #9  
Старый 29.02.2008, 14:13
Аватар для $n@ke
$n@ke
Постоянный
Регистрация: 18.09.2006
Сообщений: 867
Провел на форуме:
2805813

Репутация: 1396


По умолчанию

сгласен с тем что это бессмысленно.

на данный момент существует порядком различных типов хеширования.тот же двойной sha1 с салтом при норм.пароле - будешь расшифровывать пол жизни.
 
Ответить с цитированием

  #10  
Старый 29.02.2008, 14:19
Аватар для blackybr
blackybr
♠ ♦ ♣ ♥
Регистрация: 18.05.2006
Сообщений: 1,828
Провел на форуме:
8042357

Репутация: 3742


Отправить сообщение для blackybr с помощью ICQ Отправить сообщение для blackybr с помощью AIM Отправить сообщение для blackybr с помощью Yahoo
По умолчанию

Цитата:
Сообщение от Noiro  
Обычно использую просто двойной sha1 с салтом и "ключем", например так - ключ хранится в исходниках а не в базе, в роли салта - юзернейм :
PHP код:
$key "SomeReeeeeeeeealllyfriggginloooooooongstrrrrrrrrrrrrrinnnnnnng123432432432";
$hash sha1($key.sha1($pass).$username
А вообще соглашусь с Isis, способов безконечно много даже используя комбинации классических алгоритмов хеширования. Пойдет любой, главное чтобы использовались салты и алгоритм небыл включен в известные брутеры.

с тех пор как паспро стал модульным, это не актуально
__________________
Привет! Меня зовут Джордж, и я хотел бы рассказать вам про реинкарнацию (ц) 2x2
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
хеширование в Smf F_taker Расшифровка хешей 3 19.01.2006 22:54



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ