Miklix

Tiger-160/4 ハッシュコード計算機

出版された: 2025年2月17日 20:14:00 UTC

Tiger 160 ビット、4 ラウンド (Tiger-160/4) ハッシュ関数を使用して、テキスト入力またはファイルのアップロードに基づいてハッシュ コードを計算するハッシュ コード計算機。

このページは、できるだけ多くの人がアクセスできるように、英語から機械翻訳されたものです。残念ながら、機械翻訳はまだ完全な技術ではないため、エラーが発生する可能性があります。もしよろしければ、こちらでオリジナルの英語版をご覧ください:

Tiger-160/4 Hash Code Calculator

Tiger 160/4(Tiger 160ビット、4ラウンド)は、入力(またはメッセージ)を受け取り、固定サイズの160ビット(20バイト)の出力を生成する暗号ハッシュ関数であり、通常は40文字の16進数で表されます。

Tiger ハッシュ関数は、1995 年に Ross Anderson と Eli Biham によって設計された暗号化ハッシュ関数です。64 ビット プラットフォームでの高速パフォーマンスに特に最適化されており、ファイルの整合性検証、デジタル署名、データのインデックス作成など、高速データ処理を必要とするアプリケーションに最適です。3 ラウンドまたは 4 ラウンドで 192 ビットのハッシュ コードを生成しますが、ストレージの制約や他のアプリケーションとの互換性のために必要に応じて 160 ビットまたは 128 ビットに切り捨てることができます。

これは、現代の暗号化アプリケーションではもはや安全とは見なされていませんが、下位互換性のためにハッシュ コードを計算する必要がある場合に備えてここに含まれています。

完全開示:このページで使われているハッシュ関数の特定の実装を書いたのは私ではない。これはPHPプログラミング言語に含まれる標準関数である。私は便宜上、ウェブ・インターフェースを作成し、ここで一般に利用できるようにしただけである。


新しいハッシュコードを計算する

このフォームを通じて送信されたデータまたはアップロードされたファイルは、要求されたハッシュコードを生成するのに必要な時間のみサーバーに保存されます。結果がお客様のブラウザに返される直前に削除されます。

入力データ:



提出されたテキストはUTF-8でエンコードされている。ハッシュ関数はバイナリデータを操作するため、テキストが別のエンコーディングであった場合とは結果が異なります。特定のエンコーディングのテキストのハッシュを計算する必要がある場合は、代わりにファイルをアップロードしてください。



Tiger-160/4ハッシュアルゴリズムについて

私は数学者でも暗号学者でもありませんが、このハッシュ関数を一般の人にもわかるように例を挙げて説明してみます。科学的に正確で、数学を駆使した詳細な説明がお好みなら、他の多くの Web サイトで見つけられると思います ;-)

さて、秘密のスムージーレシピを作っているところを想像してください。たくさんの果物(データ)を投入し、特別な方法でブレンド(ハッシュ化プロセス)し、最後にユニークなフレーバー(ハッシュ)を作ります。ブルーベリーをもう 1 つ追加するなど、ほんの少し変更しただけでも、フレーバーはまったく異なります。

Tiger では、次の 3 つの手順を実行します。

ステップ 1: 材料の準備 (データのパディング)

  • データの大きさに関係なく、Tiger はブレンダーに適したサイズであることを確認します。すべてが完璧に収まるように、少し余分なフィラー (パディングなど) を追加します。

ステップ 2: スーパー ブレンダー (圧縮機能)

  • このブレンダーには強力なブレードが 3 つ付いています。
  • データはチャンクに切り分けられ、各チャンクは一度に 1 つずつブレンダーを通過します。
  • ブレードはただ回転するだけではなく、特殊なパターンを使用してデータをクレイジーな方法で混ぜたり、粉砕したり、ねじったり、スクランブルしたりします (これらは、すべてが予測できないように混ざることを保証する秘密のブレンダー設定のようなものです)。

ステップ3: 複数のブレンド(パス/ラウンド)

  • ここからが面白いところです。Tiger はデータを一度だけブレンドするのではなく、元の成分が誰にも分からないように複数回ブレンドします。
  • これが 3 ラウンド バージョンと 4 ラウンド バージョンの違いです。追加のブレンド サイクルを追加することで、4 ラウンド バージョンは少しだけ安全になりますが、計算速度も遅くなります。

BlueskyでシェアFacebookでシェアLinkedInでシェアTumblrでシェアXでシェアLinkedInでシェアPinterest にピン留めする

ミッケル・バン・クリステンセン

著者について

ミッケル・バン・クリステンセン
ミッケルはmiklix.comの開発者でありオーナーです。プロのコンピューター・プログラマー/ソフトウェア開発者として20年以上の経験を持ち、現在はヨーロッパの大手IT企業に常勤している。ブログを書いていないときは、さまざまな興味、趣味、活動に余暇を費やしている。