Adler-32チェックサム計算機
テキストとファイルのAdler-32チェックサムを計算、zlib/gzip圧縮で使用される高速チェックサム
プレーンテキストを入力(UTF-8エンコード)
結果 Adler-32
Adler-32について
Adler-32は1995年にMark Adlerが発明したチェックサムアルゴリズムです。zlibライブラリで使用され、広く使われているgzipファイル形式の一部です。Adler-32はCRC-32より高速でありながら、妥当なエラー検出能力を維持するように設計されました。
このアルゴリズムは32ビットのチェックサム(4バイト)を生成し、特に短い入力に対して効率的です。作成者の名前にちなんで名付けられ、彼はgzipとzlibの共同作者でもあります。
アルゴリズム
Adler-32は65521(2^16未満の最大の素数)を法とする2つの累計を維持します。チェックサムは以下のように計算されます:
A = 1 + D1 + D2 + ... + Dn (mod 65521) B = (1 + D1) + (1 + D1 + D2) + ... + (1 + D1 + ... + Dn) (mod 65521) Adler-32 = (B << 16) | A
特性
- 出力:32ビット(4バイト、8文字の16進数)
- 速度:CRC-32より高速、特にソフトウェア実装で
- 法:より良い分布のために素数65521を使用
- 初期値:A=1、B=0(空文字列のチェックサムは1)
一般的な用途
- zlibライブラリ - データ圧縮チェックサム
- gzipファイル形式 - 整合性検証
- PNG画像形式 - チャンク整合性
- 衝突耐性より速度を優先する場合のデータ検証
例
Input: "Hello, World!"
Adler-32: 1f9e046a (Hex) / 530858090 (Decimal)
Input: "" (empty string)
Adler-32: 00000001 (Hex) / 1 (Decimal)
Adler-32 vs CRC-32
| 特性 | Adler-32 | CRC-32 |
|---|---|---|
| 速度 | 高速 | 低速 |
| エラー検出 | 良好 | 優れている |
| 一般的な用途 | zlib, PNG, gzip | Ethernet, ZIP, PNG |