Tach!
Ein Hash erfüllt Anforderung 1, gleich bleibt gleich; allerdings nicht 2, unterschiedlich ist unterschiedlich; aber Anforderung 3, schnell.
hm, mist. muss ich austesten inwieweit das meine anwendung beeinflusst.
Hashing hat immer Kollisionen - prinzipbedingt. Die Frage ist nur, wie wahrscheinlich ist es, eine solche zu bekommen. Üblicherweise ist es im Normalbetrieb sehr unwahrscheinlich, dass eine solche auftritt, wenn man es nicht speziell darauf anlegt. Selbst wenn Wege bekannt sind, für ein bestimmtes Verfahren Kollisionen zu erzeugen, muss das noch kein Ausschlusskriterium sein, für das was man vorhat. Je komplexer das Berechungsverfahrten ist, desto mehr belastet es auch den Server. Es ist eine Abwägungssache zwischen "schnell aber unter Umständen unsicher" oder "nicht ganz so schnell, aber bislang als sicher angesehen". Vielleicht reicht in dem Fall sogar ein CRC-Verfahren, das noch ein wenig schneller ist, dafür aber auch anfälliger für bewusst herbeigeführte Kollisionen.
dedlfix.