но что бы он был без возможности дешифровки
Как это надо понимать?
Все хеш функции являются такими по определению.
Чем меньше хэш по количеству символов тем лучше
Тем больше повторений.
Простейшая хеш-функция для строк. Не бог весть что, зато быстрая.
Это для текста, переделай для диапазона FF - 00
function Hash(const aKey: string; aTableSize: integer): integer;
const M=31;
var i: integer;
begin
Result:=0;
for i:=1 to length(aKey) do
Result := (M*Result+ord(aKey[i])) mod aTableSize;
end;
Легко перевести в asm, но выигрыша большого не будет.