このツールが役に立ったら、開発者にコーヒーを奢ってください ☕
文字列のFNVハッシュ値をオンラインで計算します。FNV1、FNV1aなどのアルゴリズムや複数の入力フォーマットに対応し、データ検証やハッシュ用途に最適です。

ヴィジュネル暗号の暗号化・復号ツール
多表式暗号アルゴリズムを使用してテキストを暗号化または復号します。暗号学の学習やテストに最適です。

CRC16チェックサム計算
テキスト、Hex、Base64データの16ビット巡回冗長検査(CRC)コードを計算し、データの完全性を検証するCRC16チェックサムツール。

ランダムパスワード生成ツール
文字の種類と長さをカスタマイズして強力なランダムパスワードを生成し、アカウントのセキュリティを保護します。

シーザー暗号 暗号化・復号ツール
オンラインでシーザー暗号(シフト暗号)の暗号化と復号を実行します。カスタムアルファベットとシフト数(オフセット)に対応しています。

乱数生成ツール
指定した範囲内で整数または小数の乱数を生成します。重複排除、並べ替え、フォーマット出力に対応しています。
ハッシュテーブル、キャッシュキー、またはデータ整合性の検証用に、文字列から固定長で分散性の高い識別子を高速に生成する必要がある場合、FNVハッシュはそのために設計された軽量なソリューションです。本ツールはオンラインのFNVハッシュ計算ツールであり、入力された文字列(プレーンテキスト、Hex、Base64、Bytes形式に対応)を指定されたFNVアルゴリズム(FNV1-32やFNV1A-64など)でハッシュ値に変換し、16進数、Base64、またはバイト配列の形式で結果を出力します。FNV(Fowler-Noll-Vo)ハッシュは、古典的な非暗号学的ハッシュ関数の一種です。そのコアロジックは、初期オフセット(offset basis)とFNV素数(prime)に基づき、反復的なXOR(排他的論理和)と乗算によって、任意の長さの入力を固定長(32ビットや64ビットなど)のハッシュ値にマッピングします。
Q:FNVハッシュとMD5の違いは何ですか?どちらが速いですか?
FNVは速度と分散性に特化した非暗号学的ハッシュであり、通常、MD5などの暗号学的ハッシュよりも高速ですが、衝突攻撃に対する耐性などの安全性は備えていません。ハッシュテーブルやキャッシュキーなど、パフォーマンスが重視される場面に適しています。MD5は暗号学的ハッシュであり、速度は遅いですが、かつてはセキュリティ検証に使用されていました。
Q:入力タイプで「Bytes」を選択した場合、どのように入力すればよいですか?
バイト配列の10進数JSONフォーマットを直接入力してください。例えば、[72, 101, 108, 108, 111] と入力すると、文字列「Hello」のASCIIバイトシーケンスを表します。
「入力タイプ」が入力したデータのフォーマットと厳密に一致していることを確認してください。一致しない場合、計算エラーが発生する可能性があります。日本語などの非ASCII文字を処理する場合は、必ず正しい「文字エンコーディング」(UTF-8など)を選択してください。FNVハッシュは暗号学的な安全性を目的として設計されていないため、パスワードの保存や機密データの暗号化には使用しないでください。ソルト値とハッシュ回数はハッシュ結果を完全に変えるため、本番環境では慎重に設定し、関連するパラメータを記録しておいてください。
データの重複排除やインメモリハッシュテーブルの構築には、優れた分散特性を持つFNV1A-64がよく選択されます。複雑なオブジェクトをシリアライズしてキャッシュキーにする必要がある場合は、まず確定した文字列(JSONなど)に変換してから、FNVハッシュ計算を使用することをお勧めします。典型的な例として、入力文字列「user:12345:profile」をFNV1A-32アルゴリズム(UTF-8エンコーディング)で計算すると、得られる16進数のハッシュ値は通常「a3915f0b」のようになります。このハッシュ値はRedisなどのキャッシュのキー名として直接使用でき、キーの長さを短縮しつつ一意性を保つことができます。なお、言語やライブラリによってFNVの実装(初期オフセット、素数)に微妙な違いがある場合があるため、システム間でまたがって使用する場合は、アルゴリズムの実装が一致していることを確認してください。