CoderTools

FNV Hash Generator

Fowler-Noll-Vo non-cryptographic hash function

About FNV Hash

What is FNV Hash?

FNV (Fowler-Noll-Vo) is a non-cryptographic hash function created by Glenn Fowler, Landon Curt Noll, and Kiem-Phong Vo. It was first published in 1991 and is known for its simplicity, speed, and good distribution properties. FNV is widely used in hash tables, checksums, and data fingerprinting.

Algorithm Variants

  • FNV-1a: The improved variant that XORs the byte with the hash first, then multiplies. Recommended for most use cases due to better avalanche characteristics.
  • FNV-1: The original variant that multiplies first, then XORs. Still useful but FNV-1a is generally preferred.

Available Bit Lengths

  • 32-bit: 8-character hex output. Fast and suitable for hash tables with moderate data sizes.
  • 52-bit: 13-character hex output. Optimized for JavaScript's 53-bit safe integer range. Good balance of speed and collision resistance.
  • 64-bit: 16-character hex output. Larger hash space for reduced collision probability in large datasets.

Common Use Cases

  • Hash tables and hash maps for fast key lookups
  • Data deduplication and content fingerprinting
  • Checksum verification for data integrity
  • Bloom filters and probabilistic data structures

FNV Hash is not cryptographically secure. Do not use it for passwords, digital signatures, or security-sensitive applications. For cryptographic use cases, use SHA-256 or BLAKE2.

Related Tools