## adler32 hash generator

This adler32 hash generator support 5000 characters , if the text is more than 5000 characters, the text will be trim to 5000 characters,to use our adler32 hash generator

## The introduction of Adler 32 checksum algorithm

Adler 32 checksum algorithm was invented by Mark Adler in 1995

It is a modification of Fletcher checksum, compare the adler32 checksum algorithm with the crc 32 hash algorithm (cyclic redundancy check ) for the same hash length, the Adler 32 algorithm is more reliable but is more slower than the crc algorithm.

Adler-32 is more reliable than Fletcher-16 algorithm, but it is lightly less reliable than Fletcher-32 algorithm

## The history of Adler 32 algorithm

The Adler 32 checksum algorithm is part of the zlib compression library which is widely used all around the world.

The Adler 32 checksum algorithm and the zlib library are both developed by Mark Adler.

A “rolling checksum” version of Adler 32 algorithm is used in many softwares , one of which is the rsync utility.

## Compare the Adler 32 algorithm with other checksum algorithm

The 1st difference between the Adler 32 algorithm and the Fletcher algorithm is that the Adler 32 checksums are calculated modulo a prime number, but the Fletcher algorithm checksums are calculated modulo 24−1, 28−1, or 216−1 (which depending on the number of bits used), which are all composite numbers . because adler 32 algorithm use a prime number, so it is possible to catch differences in some combinations of bytes which Fletcher algorithm is not able to detect.

The 2nd difference between the Adler 32 is about the speed of the 2 algorithm, because the adler 32 algorithm checksums are computed over 8-bit bytes rather than 16-bit words , make it to run 2 times the number of loop iterations. This make Adler 32 checksum taking about one-and-a-half to two times as long as the Fletcher’s algorithm checksum which is for 16-bit word aligned data. If you use byte-aligned data for both algorithm, then Adler 32 algorithm is faster than the Fletcher’s checksum

## The pros and cons of Adler 32 checksum algorithm

Quite similar to the crc hash algorithm ,The Adler 32 checksum algorithm can be forged so it is unsafe for protecting againstintentional modification.

The Adler 32 checksum algorithm It’s faster than CRC-32 checksum algorithm on many platforms.

The Adler 32 checksum algorithm is weak for short messages with few hundred bytes

## Major Weakness of Adler 32

The Adler 32 algorithm is not strong when using for short messages, the reason is the sum A does not wrap. The maximum sum of a 128-byte message is 32640, which is below the value 65521 used by the modulo operation, which means about half of the output space is wasted, at the same time the distribution within the used part is not uniform. Why this happen , you can find the detailed explanation from the RFC 330, in which it states to force the use of crc 32 hash algorithm instead of the Adler 32 algorithm for the sctp protocol (the Stream Control Transmission Protocol). Adler 32 algorithm is also found that it is weak for small incremental changes and weak for string, which is generated from a usual prefix and consecutive numbers(for example ,the auto-generated label names by typical code generators).