¿Hay cualquier algoritmo de suma de comprobación de 32 bits, ya sea con:Algoritmo de suma de comprobación de 32 bits de mejor calidad que CRC32?
- Menor probabilidad de colisión de hash de los datos de entrada de tamaño de 1 KB <?
- La colisión golpea con una distribución más uniforme.
Estas relativas a CRC32. Prácticamente no estoy contando con la primera propiedad, debido a la limitación del espacio de almacenamiento de 32 bits. Pero por el segundo ... parece que podría ser mejoras.
¿Alguna idea? Gracias. (Necesito una implementación concreta, mejor en C, pero C++/C# o cualquier cosa para empezar también está bien).
¿Lo está usando como una suma de comprobación en un sistema de corrección de errores, o lo está utilizando como una función hash para probablemente detectar que las dos entradas son diferentes al comparar sus valores hash? Los códigos de corrección de errores y las funciones hash tienen diferentes propiedades deseables. En el caso de CRC32, está específicamente diseñado para detectar errores del tipo esperado en una línea ruidosa (diferencia de un bit o unos pocos bits, no estoy seguro de cuál). –
Lo estoy usando como función hash para comparar dos paces de datos pequeños. (<1KB) Pero estoy obligado a hash de 32 bits. –