Calculate FNV hashes online for any string. Supports FNV1, FNV1a, and various input formats for data validation and hashing applications.

CRC16 Checksum Calculator
Online CRC16 checksum tool to calculate 16-bit cyclic redundancy check values for text, Hex, and Base64 data to verify data integrity.

Random Password Generator
Customize character types and length to generate strong random passwords and secure your accounts.

Random Number Generator
Generate random integers or decimals within a specified range, featuring duplicate removal, sorting, and formatted output.

Vigenère Cipher Encoder & Decoder
Encrypt or decrypt text using the classic polyalphabetic substitution algorithm. Ideal for cryptography learning and testing.

Caesar Cipher Encoder & Decoder
Easily encrypt and decrypt text using the Caesar cipher (shift cipher) with custom alphabets and shift values online.
When you need to quickly generate a fixed-length, well-distributed identifier for a string to use in hash tables, cache keys, or data integrity checks, the FNV hash is a lightweight solution designed exactly for this purpose. This tool is an online FNV hash calculator that converts your input string (supporting Plain Text, Hex, Base64, or Bytes formats) into a corresponding hash value using specified FNV algorithms (such as FNV1-32 or FNV1A-64), and outputs the result in Hexadecimal, Base64, or byte array formats. The FNV (Fowler-Noll-Vo) hash is a classic non-cryptographic hash function. Its core logic is based on an initial offset basis and an FNV prime, mapping inputs of arbitrary length to fixed-length (e.g., 32-bit or 64-bit) hash values through iterative XOR and multiplication operations.
Q: What is the difference between FNV hash and MD5? Which is faster?
A: FNV is a non-cryptographic hash focused on speed and distribution. It is generally faster than cryptographic hashes like MD5 but lacks security features like collision resistance, making it suitable for performance-sensitive scenarios like hash tables and cache keys. MD5 is a cryptographic hash that is slower but was historically used for security validation.
Q: How should I fill in the input when "Bytes" is selected as the input type?
A: Enter the decimal JSON format of the byte array directly. For example, entering [72, 101, 108, 108, 111] represents the ASCII byte sequence for the string "Hello".
Ensure that the "Input Type" strictly matches the format of the data you entered; otherwise, it will cause calculation errors. When processing non-ASCII characters, be sure to select the correct "Character Encoding" (e.g., UTF-8). Please note that the FNV hash is not designed for cryptographic security; do not use it for password storage or sensitive data encryption. The salt and iterations will completely change the hash result, so configure them carefully and record the relevant parameters in production environments.
For data deduplication or building in-memory hash tables, FNV1A-64 is a common choice due to its excellent distribution characteristics. When you need to serialize complex objects into cache keys, it is recommended to first convert them into a deterministic string (such as JSON) before calculating the FNV hash. A typical example: calculating the input string "user:12345:profile" using the FNV1A-32 algorithm (UTF-8 encoding) yields a hexadecimal hash value like "a3915f0b". This hash value can be directly used as a key name in caches like Redis, which shortens the key length while maintaining uniqueness. Note that FNV implementations (initial offset basis, prime) may vary slightly across different languages or libraries; ensure algorithm consistency when using it across systems.