CRC32 Hash Generator — Free Online Tool

Generate a 32-bit cyclic redundancy check - an error-detection code, not a cryptographic hash. Enter your text below and press CRC32.
Accepts HTML, text file
0 Characters0 Words
Hash Generator Online Tool

CRC32 Checksum Generator

Generate a 32-bit cyclic redundancy check - an error-detection code, not a cryptographic hash.

CRC3232-bit1961Not a cryptographic hash

What CRC32 Is

CRC32 is not a cryptographic hash and was never intended to be one. It is an error-detecting code: a 32-bit remainder from polynomial division over GF(2), designed in the early 1960s to catch the kinds of corruption that happen in transmission and storage. It is extremely fast, often hardware-accelerated, and trivially forgeable.

CRC32 specification
AlgorithmCRC32 (Cyclic redundancy check family)
Digest length32 bits — 8 hexadecimal characters
Designed byW. Wesley Peterson, 1961
SpecificationISO 3309 / ITU-T V.42
Status in 2026Not a cryptographic hash

A worked example

Hashing the five characters hello with CRC32 gives:

3610a686

Change a single character of the input and the entire digest changes, with no resemblance to the previous one. That property is called the avalanche effect, and every cryptographic hash is designed to have it.

How CRC32 Got Here

W. Wesley Peterson published the CRC concept in 1961, and the 32-bit polynomial used almost everywhere today was standardised through ISO 3309 and ITU-T V.42. It is embedded in the formats that carry most of the world's data: every Ethernet frame ends with a CRC32 frame check sequence, every ZIP entry and every PNG chunk stores one, and gzip appends one to the compressed stream. Modern x86 and ARM processors implement CRC32 as a single instruction.

Security Status of CRC32

CRC32 offers no security at all. It is linear, which means an attacker who changes your data can compute exactly which additional bytes to append to restore the original checksum - a trivial operation, not a research result. With a 32-bit output, accidental collisions also appear after roughly 65,000 random inputs by the birthday bound. Treat it purely as a corruption detector.

Use CRC32 for

  • Detecting accidental corruption in transmission or storage - its actual job, which it does extremely well.
  • Validating that a file was copied or decompressed intact.
  • Fast bucketing and hash-table indexing where collisions merely cost a comparison.
  • Embedded and real-time contexts where its speed and tiny state matter.

Do not use CRC32 for

  • Any check that is supposed to detect deliberate tampering - forging a CRC32 is arithmetic, not an attack.
  • Password hashing or storage of any secret.
  • Content addressing or deduplication where collisions have consequences.
  • Digital signatures or certificates.

How to Use This CRC32 Generator

  1. Paste or type your text into the input box above, or upload a plain-text file.
  2. Press the CRC32 button.
  3. The digest appears in the output box, ready to copy.

The same input always produces the same output@if($algo['status'] === 'password') — except with bcrypt, where the random salt makes every result different@endif, on this page or in any correct implementation. If a digest from another tool disagrees with this one, the cause is almost always a difference in the input: a trailing newline, a different character encoding, or invisible whitespace.

Frequently Asked Questions About CRC32

Is CRC32 a hash function?

It is a checksum, not a cryptographic hash. Both map arbitrary input to a fixed-length value, but a cryptographic hash is also designed to make it infeasible to find collisions or reverse the output, and CRC32 makes no such guarantee. Calling it a hash is common shorthand and misleading in security contexts.

What is the difference between CRC32 and CRC32B?

They use different bit orderings of essentially the same computation. PHP exposes both: crc32b is the standard reflected variant used by ZIP, PNG and gzip, and is the one that matches other tools. If your CRC does not agree with another implementation, this is almost always why.

Why is CRC32 so much shorter than a SHA digest?

Because it answers a smaller question. Thirty-two bits are ample for catching random burst errors in a network frame, which is what it was designed for. Collision resistance against an adversary needs a much larger output, which is why cryptographic digests are 256 bits or more.

Can two different files have the same CRC32?

Certainly - there are only about 4.3 billion possible values, so collisions are guaranteed for any large collection of files and appear by chance after roughly 65,000 random inputs. That is acceptable for error detection and disqualifying for identity.

Hashing in One Minute

A hash function takes input of any length and returns a fixed-length digest. Three properties define a cryptographic hash: the same input always yields the same digest, it is infeasible to recover the input from the digest, and it is infeasible to find two inputs that produce the same digest. Hashing is one-way and keyless, which is what separates it from encryption — there is nothing to decrypt, because nothing was encrypted.

Where hashes go wrong is almost always a mismatch between the job and the tool. A checksum for detecting a corrupted download and a password hash protecting a leaked database are different problems, and an algorithm that is excellent at one can be disqualifying at the other. For the full treatment — how the algorithms work internally, salting, HMAC, rainbow tables and the rest — see the complete guide to hash generation.

The Other Algorithms in This Tool

The generator above supports every algorithm below. Each has its own page explaining what it is for.