コンテンツへスキップ
uencoder

Adler-32

Adler-32 は Mark Adler が設計した 32 ビットチェックサムであり、CRC32 より計算が高速だが検出能力はやや劣り、zlib 圧縮ストリームの検証に用いられる。

目的

CRC32 より高速なチェックサムを提供し、性能感度の高い圧縮ストリームの完全性検証に用いる。

メカニズム

A = 1 + Σd_i(mod 65521)、B = Σ(1 + Σ_{j≤i} d_j)(mod 65521)、出力 B<<16 | A。mod 65521(65536 未満の最大素数)で良好な分布を保証する。

ユースケース

  • zlib/gzip ストリーム検証
  • PNG IDAT チェックサム
  • リアルタイム圧縮の完全性検証
  • 低オーバーヘッドのチェックサム用途

例

  • 入力
    hello
    Output
    0x062c0215

    Slightly weaker than CRC32 but faster

よくあるエラー

Adler-32 error-detection degrades significantly on short inputs
Use CRC32 for short data

関連用語

関連ツール

References