An implementation of Adler-32, supporting rolling checksum operation

LTS Haskell 16.19:
Stackage Nightly 2020-10-20:
Latest on Hackage:

See all snapshots adler32 appears in

BSD-3-Clause licensed and maintained by Marios Titas <rednebΑΤgmxDΟΤcom>

Module documentation for

This version can be pinned in stack with:adler32-,2113

This package provides an implementation of the Adler-32 checksum algorithm. It supports a rolling checksum mode, i.e. the checksum of a sliding window of the input message can be computed efficiently. It also supports compounding, i.e. the checksum of the concatenation of two messages can be efficiently computed from the checksums of the two parts.

By default, the highly optimized implementation of Adler-32 from zlib will be used. This can be disabled, in which case a pure haskell implementation will be used instead. On my system, the haskell version is 2 to 3 times slower.

Changes 2018-03-15

  • Fix compatibility with base-4.11/GHC 8.4 2016-01-25

  • Introduce the adler32Update' method to the Adler32Src class.
Depends on 2 packages(full list with versions):