Generador de Hash FNV
Función hash no criptográfica Fowler-Noll-Vo
-
-
-
-
Acerca del Hash FNV
¿Qué es el Hash FNV?
FNV (Fowler-Noll-Vo) es una función hash no criptográfica creada por Glenn Fowler, Landon Curt Noll y Kiem-Phong Vo. Fue publicada por primera vez en 1991 y es conocida por su simplicidad, velocidad y buenas propiedades de distribución. FNV se utiliza ampliamente en tablas hash, sumas de verificación y huellas de datos.
Variantes del algoritmo
- FNV-1a: La variante mejorada que primero hace XOR del byte con el hash, luego multiplica. Recomendada para la mayoría de los casos de uso debido a mejores características de avalancha.
- FNV-1: La variante original que primero multiplica, luego hace XOR. Aún útil pero generalmente se prefiere FNV-1a.
Longitudes de bits disponibles
- 32-bit: Salida hexadecimal de 8 caracteres. Rápido y adecuado para tablas hash con tamaños de datos moderados.
- 52-bit: Salida hexadecimal de 13 caracteres. Optimizado para el rango de enteros seguros de 53 bits de JavaScript. Buen equilibrio entre velocidad y resistencia a colisiones.
- 64-bit: Salida hexadecimal de 16 caracteres. Mayor espacio hash para reducir la probabilidad de colisiones en grandes conjuntos de datos.
Casos de uso comunes
- Tablas hash y mapas para búsquedas rápidas de claves
- Deduplicación de datos y huella de contenido
- Verificación de suma de comprobación para integridad de datos
- Filtros Bloom y estructuras de datos probabilísticas
El hash FNV no es criptográficamente seguro. No lo use para contraseñas, firmas digitales o aplicaciones sensibles a la seguridad. Para casos de uso criptográficos, use SHA-256 o BLAKE2.
Herramientas Relacionadas
Generador MurmurHash
Función hash no criptográfica de alto rendimiento para tablas hash, filtros Bloom y particionamiento de datos
Generador xxHash
Hash no criptográfico extremadamente rápido soportando xxHash32, xxHash64, xxHash3 y xxHash128
Calculadora de CRC
Calcular sumas de verificación CRC-8, CRC-16, CRC-32, CRC-64 con soporte para Modbus, CCITT y otros estándares de protocolo
Generador de Hash SHA-3 / Keccak
Genera hashes SHA3-224/256/384/512 y Keccak con aceleración WebAssembly, usado en Ethereum