короткий хэш

Alkinoy

Начинающий
короткий хэш

Народ, подскажите - есть функция построения хэша для строки, значение которого есть 32-битная переменная? не больше.
 

Alkinoy

Начинающий
мд5 - выдает 128 битное число. а надо 32 битное (не разрядное!!!)... срс - не обеспечивает должного уровня уникальности, коллизий много
 

tony2001

TeaM PHPClub
ну, дорогой..
либо большой хэш, либо много коллизий - выберите из двух вариантов один.
 

Alkinoy

Начинающий
Автор оригинала: tony2001
ну, дорогой..
либо большой хэш, либо много коллизий - выберите из двух вариантов один.
а нет функции с переменной длиной результата? ;(
 

hemper

Новичок
PHP:
/**
 * Function to compute the unsigned crc32 value
 */
function computeUnsignedCRC32($str)
{
	sscanf(crc32($str), "%u", $var); 
	return $var; 
}
 

Kelkos

Сам себе программер
32 бита на хэш? Запросто..
ты сам подумай, тебе надо просто первые 4 байта (8 символов т.е.) от md5 преобразовать в int
:)
вот тебе короткий хэш в формате int..
Кстати, в некотрых местах штука полезная очень... а коллизии? Ну, надо с умом подходить к этому делу.
 

AnToXa

prodigy-одаренный ребенок
посмотри вот хорошенькая, на пхп реализуешь и всех дел :) http://burtleburtle.net/bob/hash/doobs.html

-~{}~ 16.05.07 13:49:

хотя зависит от того какая задача у этой функции, криптография или просто для hash table.
 
Сверху