Fletcher-32 Hash

Technical details, regex signatures, and cracking commands for the Fletcher-32 algorithm.

Regex Identification Signature:
^[a-f0-9]{8}$
Not supported natively by Hashcat
Not supported natively by John the Ripper
← Back to Hash Identifier

What is Fletcher-32?

The **Fletcher-32** hash algorithm was originally designed in 1982 by James A. Fletcher as a lightweight checksum mechanism for error detection in data transmission protocols, particularly in environments where computational overhead was critical, such as early networking and storage systems. Structurally, it operates as a two-pass, non-cryptographic hash function that combines modular arithmetic with cumulative sums: the first pass computes a running sum of all byte values modulo 2⁸, while the second pass combines this result with a second sum of the intermediate values (also modulo 2⁸) to produce a 32-bit checksum. Unlike cryptographic hashes, Fletcher-32 lacks iterative mixing, avalanche properties, or resistance to adversarial inputs, making it unsuitable for security applications. Its primary use-case remains in legacy systems—such as file integrity verification in embedded systems or simple data validation—where performance and minimal memory usage take precedence over collision resistance.

Fletcher-32 is fundamentally vulnerable to cracking due to its deterministic, non-iterative nature and absence of cryptographic safeguards. The algorithm’s linear arithmetic operations enable **birthday attack**-style collisions with negligible computational effort, as the 32-bit output space (≈4 billion possibilities) is easily exhausted via brute-force or precomputed rainbow tables. Additionally, its lack of salting or keyed variants renders it susceptible to **rainbow table attacks** when used for authentication. Modern hardware optimizations—such as GPU-accelerated brute-force or parallelized collision searches—exacerbate these weaknesses, as the algorithm’s simplicity allows for trivially parallelizable computations. Unlike cryptographic hashes (e.g., SHA-256), Fletcher-32 provides no security guarantees, making it unsuitable for any context requiring integrity or confidentiality.

Identifying Fletcher-32 Hashes

Identifying a hash blindly is often difficult because multiple algorithms can output strings of the exact same length. For example, a standard 32-character hexadecimal string could be MD5, NTLM, MD4, or LM. To definitively identify Fletcher-32, security researchers analyze the hash against a strict regular expression (regex) signature (shown above) to find structural matches.

How to Crack Fletcher-32

If you need to recover the plaintext password for a Fletcher-32 hash during a penetration test or forensics investigation, you must supply the correct module ID to your cracking software. Use the exact commands provided at the top of this page to target the hash successfully.