xxHashジェネレーター
あらゆるテキストのxxHashチェックサムを、XXH32、XXH64、XXH3-64、XXH3-128でまとめて計算できます。バリアントを1つだけ選ぶこともできます。入力をUTF-8でエンコードし、任意の32ビットシードを適用して、xxhsumが出力する標準形式の16進数で各ダイジェストを返します。非常に高速な非暗号学的ハッシュに依存するキャッシュキー、ハッシュテーブルのシード、データパイプラインを検証するのに役立ちます。
よくある質問
xxHashとは何ですか?
xxHashは、Yann Colletが開発した非常に高速な非暗号学的ハッシュ関数のファミリーです。従来のバリアントはXXH32とXXH64で、新しい設計のXXH3は64ビットと128ビットの出力に対応しています。圧縮ツール、データベース、ゲームエンジンなどで使われています。
このツールで計算できるバリアントは何ですか?
XXH32、XXH64、XXH3-64、XXH3-128を計算できます。「すべてのバリアント」を選ぶと4つの結果がまとめて表示され、それ以外では選択したものだけが表示されます。各値は、xxhsumと同じビッグエンディアンの16進数で出力されます。
空の入力とabcの基準値は何ですか?
シードが0の場合、空の入力の値は、XXH32が02cc5d05、XXH64がef46db3751d8e999、XXH3-64が2d06800538d394c2、XXH3-128が99aa06d3014798d86001c324468d497fです。abcの場合は、順に32d153ff、44bc2cf5ad770999、78af5f94892f3950、06b05ab6733a618578af5f94892f3950です。
シードはどのような働きをしますか?
シードは初期状態を変えるため、同じテキストでもシードごとに異なるハッシュになります。既知のシードでハッシュするシステムと結果を一致させる場合に使います。このツールでは0から4294967295までの整数を受け付け、既定値は0です。
xxHashは安全ですか?
いいえ。xxHashは速度と良好な分布を重視しており、攻撃への耐性を目的としていません。誰でも衝突を作成できるため、改ざんに対する整合性を確保するにはSHA-256やBLAKE3を使用してください。
XXH3とXXH64のどちらを使うべきですか?
XXH3は最新のプロセッサーでより高速で、特に入力が短い場合に優れています。新しいコードにはこちらが推奨されます。Zstandardフレームチェックサムなど、既存の形式ではXXH64も引き続き広く使われており、チェックサムにはXXH64の値の一部が使われます。
ライブラリによってバイト順が異なるのはなぜですか?
ライブラリによっては、数値ではなくハッシュの生のリトルエンディアンのバイト列を出力します。このツールはxxHash仕様に準拠した標準的なビッグエンディアン表現を使い、xxhsumと同じ結果になります。リトルエンディアンのダンプと比較するには、バイト順を逆にしてください。
テキストはどのようにエンコードされますか?
入力は、入力されたとおりのUTF-8バイト列としてハッシュされます。改行コードや末尾の空白が異なると、ハッシュも変わります。
このツールでファイルをハッシュできますか?
いいえ。貼り付けたテキストのみをハッシュします。ファイルの場合はxxhsumをインストールし、XXH32、XXH64、XXH3-64、XXH3-128に対応するxxhsum -H0、-H1、-H3、-H2を実行してください。
ハッシュ化できるテキストの量は?
1回のリクエストにつき最大5 MiBのテキストを処理できます。すべてのバリアントはサーバー上のWebAssemblyで計算され、入力は保存されません。