HAVAL-192/4 ハッシュコード計算機
出版された: 2025年2月18日 20:35:56 UTC
最終更新日 2026年1月12日 14:11:54 UTC
HAVAL-192/4 Hash Code Calculator
HAVAL(可変長ハッシュ)は、1992年にYuliang Zheng、Josef Pieprzyk、Jennifer Seberryによって設計された暗号ハッシュ関数です。MD(メッセージダイジェスト)ファミリーの拡張版であり、特にMD5に着想を得ていますが、柔軟性とセキュリティが大幅に向上しています。128ビットから256ビットまでの可変長のハッシュコードを生成でき、3、4、または5ラウンドでデータを処理します。
このページに掲載されているバリアントは、4ラウンドで計算された192ビット(24バイト)のハッシュコードを出力します。結果は48桁の16進数として出力されます。
完全開示:このページで使われているハッシュ関数の特定の実装を書いたのは私ではない。これはPHPプログラミング言語に含まれる標準関数である。私は便宜上、ウェブ・インターフェースを作成し、ここで一般に利用できるようにしただけである。
HAVALハッシュアルゴリズムについて
完成したスムージー (ハッシュ) を見ただけでは誰も元のレシピを理解できないほど、材料 (データ) を徹底的に混ぜ合わせるように設計された超強力なブレンダー、HAVAL を想像してみてください。
ステップ1:材料(データ)の準備
HAVALにメッセージ、パスワード、ファイルなどのデータを渡しても、そのままミキサーに放り込むわけではありません。まず、以下の処理を行います。
- データを整理して、きちんとした断片に切り分けます (これをパディングと呼びます)。
- 全体のサイズがブレンダーにぴったり収まることを確認します (スムージーの材料が瓶に均等に満たされるようにするなど)。
ステップ2:ラウンドでブレンドする(ミキシングパス)
HAVALは「ブレンド」ボタンを一度押すだけではありません。スムージーを何度もブレンドしてすべての塊を粉砕するように、3回、4回、または5回に分けてデータをミックスします。
- パス: クイックブレンド (高速ですが、あまり安全ではありません)。
- 5 パス: 非常に徹底したブレンド (遅いですが、はるかに安全です)。
各ラウンドでは、データを予測不可能なクレイジーな方法で切り刻み、反転し、かき混ぜ、マッシュする特別な「ブレード」(数学演算)を使用して、データを異なる方法で混合します。
ステップ3:秘密のソース(圧縮機能)
HAVALはブレンドの合間に、秘伝のソース、つまり特別なレシピを加え、さらに風味を豊かにします。この工程により、データのわずかな変更(パスワードの1文字の変更など)でも、最終的なスムージーは全く異なるものになります。
ステップ4:最後のスムージー(ハッシュ)
すべてのブレンドが終わると、HAVAL が完成した「スムージー」を注ぎ出します。
- これはハッシュ、つまりデータの一意の指紋です。
- 元のデータの大きさに関わらず、ハッシュは常に同じサイズです。どんなサイズの果物をミキサーに入れても、いつも同じスムージーができるようなものです。
2025年現在、暗号化用途ではHAVAL-256/5のみが依然として十分に安全であると考えられていますが、新しいシステムの設計には使用すべきではありません。レガシーシステムでまだ使用している場合は、直ちにリスクにさらされることはありません。しかし、長期的には、例えばSHA3-256への移行を検討してください。
さらに読む
この投稿が気に入った場合は、次の提案も気に入るかもしれません:
