Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Вопросы про crc32
 
 автор: а-я   (20.02.2009 в 02:50)   письмо автору
 
 

1) какой у него диапазон?
Т.е. какие числа он может вернуть мин. макс?

2) насколько он уникален?


Можно ли его использовать вместо md5() для паролей?

Допустим, если создадим 2 поля INT
Храним там
1ом - crc32('пароль')
2ом - crc32(strrev ('пароль'))

Насколько рискованно?

  Ответить  
 
 автор: sim5   (20.02.2009 в 04:57)   письмо автору
 
   для: а-я   (20.02.2009 в 02:50)
 

>Насколько рискованно?

  Ответить  
 
 автор: а-я   (20.02.2009 в 05:13)   письмо автору
 
   для: sim5   (20.02.2009 в 04:57)
 

так на виду же не будет... и можно "солить"...

  Ответить  
 
 автор: sim5   (20.02.2009 в 05:24)   письмо автору
 
   для: а-я   (20.02.2009 в 05:13)
 

Вас что md5 пугает? Чем он вас не устраивает?

  Ответить  
 
 автор: а-я   (20.02.2009 в 06:13)   письмо автору
 
   для: sim5   (20.02.2009 в 05:24)
 

просто интересуюсь.. =)

  Ответить  
 
 автор: POPSuL   (20.02.2009 в 07:19)   письмо автору
 
   для: sim5   (20.02.2009 в 05:24)
 

его можно сломать ;) есть сервисы для этого

  Ответить  
 
 автор: sim5   (20.02.2009 в 08:32)   письмо автору
 
   для: POPSuL   (20.02.2009 в 07:19)
 

А crc32 нет?

  Ответить  
 
 автор: Trianon   (20.02.2009 в 11:42)   письмо автору
 
   для: POPSuL   (20.02.2009 в 07:19)
 

Вопрос звучит дико.
md5 дает 128 бит.
crc32 -лишь 32 бита.
Но даже эти 32 бита ломать не требуется. Они вычисляются безо всякого подбора.

  Ответить  
 
 автор: а-я   (20.02.2009 в 17:31)   письмо автору
 
   для: Trianon   (20.02.2009 в 11:42)
 

Просто я хочу сделать "легкую" таблицу для сессии.
Так как храню сессию в БД.
Юзеры видят СИД в MD5()/
А перед проверкой в БД я 2 раза пропускаю через crc32()
Т.е. пытаюсь заменить один char(32) на 2 int()
Ключ UNIQUE
Записал более 100тыс. записей.
Сделал тест и 2 int выигрывает как в скорости так и в памяти.

  Ответить  
 
 автор: Trianon   (20.02.2009 в 18:27)   письмо автору
 
   для: а-я   (20.02.2009 в 17:31)
 

почему 2 int ?

  Ответить  
 
 автор: а-я   (20.02.2009 в 18:51)   письмо автору
 
   для: Trianon   (20.02.2009 в 18:27)
 

1ом - crc32('СИД')
2ом - crc32(strrev ('СИД'))

пытаюсь добиться большей уникальности...

  Ответить  
 
 автор: Trianon   (20.02.2009 в 20:01)   письмо автору
 
   для: а-я   (20.02.2009 в 18:51)
 

а поиск-то как делаете?
Составной ключ добавили на оба поля?

  Ответить  
 
 автор: а-я   (20.02.2009 в 20:08)   письмо автору
 
   для: Trianon   (20.02.2009 в 20:01)
 


<?
$sid_1 
crc32($SID);
$sid_2 crc32(strrev($SID));

$_SQL '
SELECT DISTINCT
 *
FROM
 `online`
WHERE
 `sid_1`='
.$sid_1.'
 AND
 `sid_2`='
.$sid_2.'
LIMIT 1'
;

// UNIQUE KEY `sid` (`sid_1`,`sid_2`)
?>

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования