мы используем md5 в качестве алгоритма хеширования во многих частях нашего кода.
безопасность в этом контексте НЕ является проблемой.мы просто используем md5 как метод генерации уникального идентификатора для хранения различных элементов в apc и т. д.
столкновения - это проблема.хотя маловероятно, что это вызовет некоторые серьезные проблемы.
кто-нибудь хочет предложить что-нибудь более легкое на процессоре?
спасибо.
мы только что провели некоторое тестирование сmd5 против crc32.
с использованием следующего фрагмента:
<?
$start=microtime(true);
for($i=1;$i<=1000000;$i++){
md5(rand(10000000,99999999)); <--- crc32 tested here too.
}
$end=microtime(true);
echo $end-$start."\n";
?>
результаты следующие:
md5:
1.4991459846497
1.7893800735474
1.4672470092773
crc32:
0.97880411148071
0.94331979751587
0.93316197395325
, поэтому кажется, что crc32 примерно на 1/3 быстрее, чем при использовании md5.