DEK Hash

DEK is a hash function algorithm.



									unsigned int DEKHash(char* str, unsigned int length) {
	unsigned int hash = length;
	unsigned int i = 0;

	for (i = 0; i < length; str++, i++)
	{
		hash = ((hash << 5) ^ (hash >> 27)) ^ (*str);
	}

	return hash;
}
								


Example

									char* data = "jdfgsdhfsdfsd 6445dsfsd7fg/*/+bfjsdgf%$^";
unsigned int value = DEKHash(data, 40);
								


Output

									3354994598