ハッシュジェネレーター
テキストとファイルのMD5、SHA-1、SHA-256、SHA-512ハッシュを生成。ハッシュの比較やHMACの計算もできます。
このツールについて
このツールの各アルゴリズムは固定サイズのダイジェストを生成しますが、そのサイズは大きく異なります。MD5は128ビット(16進数32文字)、SHA-1は160ビット(40文字)、SHA-256は256ビット(64文字)、SHA-512は512ビット(128文字)です。4つすべてを同時に計算するため、個別にコマンドを実行せずにアルゴリズム間で結果を比較できます。これらのアルゴリズムで構築されるHMACシグネチャはJSON Web Tokenでも使用されています。JWTツールでデコードと検証が可能です。
SHA-1、SHA-256、SHA-512はブラウザ組み込みのWeb Crypto APIで計算され、ハードウェアアクセラレーションによる定時間実装が使われます。MD5はWeb Crypto APIが非対応のため、spark-md5ライブラリで計算されます。一般的なマシンでは、Web CryptoによるSHA-256は数百MB/秒、spark-md5によるMD5はJavaScriptで約200〜400MB/秒の処理速度です。SHA-1は互換性のために含まれていますが、暗号学的に破られているためセキュリティ目的には使用すべきではありません。
ファイルタブではドラッグ&ドロップまたはファイル選択でファイル内容を直接ハッシュできます。ダウンロードの検証に便利です。比較タブでは2つのハッシュ文字列の一致を確認できます(大文字小文字を区別しません)。HMACタブではSHA-1、SHA-256、SHA-512による鍵付きハッシュメッセージ認証コードを生成します。
すべての処理はクライアントサイドで実行されます。テキスト、ファイル、シークレットがブラウザ外に出ることはありません。バイナリハッシュ出力をテキストにエンコードするにはBase64エンコーダーをご利用ください。安全なランダム文字列が必要な場合はパスワードジェネレーターをお試しください。
使い方
- テキストモードでテキストを入力または貼り付けます。4つのハッシュダイジェストが即座に表示されます。
- ファイルモードでファイルをドラッグ&ドロップするか参照をクリックします。ファイルはブラウザ内で完全にハッシュされます。
- 比較モードで2つのハッシュを貼り付けて一致するかを確認します(大文字小文字を区別しない比較)。
- HMACモードでメッセージ、シークレットキー、アルゴリズムを入力します。入力に応じてHMACが更新されます。
- ハッシュの横にあるコピーアイコンをクリックしてクリップボードにコピーします。
このツールについて
よくある質問
データは安全ですか?
はい。SHA-1、SHA-256、SHA-512はWeb Crypto API(SubtleCrypto.digest())で、MD5はspark-md5 JavaScriptライブラリで計算されます。どちらもブラウザ内で完結し、データがサーバーに送信されることはありません。ブラウザのDevToolsのネットワークタブで確認できます。
どのアルゴリズムを使用すべきですか?
セキュリティ目的にはSHA-256またはSHA-512を使用してください。MD5とSHA-1は暗号学的に破られているとされ、チェックサムやレガシー互換性のためにのみ使用すべきです。
HMACとは何ですか?
HMAC(ハッシュベースのメッセージ認証コード)は、暗号学的ハッシュ関数とシークレットキーを組み合わせてメッセージ認証コードを生成します。メッセージの完全性と真正性の両方を検証するために使用されます。
大きなファイルをハッシュできますか?
はい。ファイルはArrayBufferとしてメモリに読み込まれ、ハードウェアアクセラレーションされたWeb Crypto APIを使用してハッシュされます。数百MBまでのファイルは問題なく動作します。非常に大きなファイルはブラウザの利用可能メモリによって制限される場合があります。
MD5が破られているのになぜ含まれているのですか?
MD5はファイルチェックサム、キャッシュキー、重複排除など、セキュリティ以外の目的で今でも広く使用されています。多くのダウンロードページでは依然として検証用にMD5ハッシュが掲載されています。パスワードやデジタル署名には使用すべきではありません。
関連ツール
Base64エンコード/デコード
ドラッグ&ドロップ対応でBase64文字列やファイルをエンコード・デコードします。
UUID生成ツール
v4およびv7形式のUUIDを生成、検証、確認します。
JWTデコーダー
JSON Web Tokenをデコードし、ヘッダー、ペイロード、署名を検証します。
パスワード生成ツール
エントロピーベースの強度分析付きで安全なパスワードとパスフレーズを生成します。
テキスト暗号化/復号化
AES-256-GCMとパスワードでテキストを暗号化・復号化します。すべてブラウザ内で処理。
HMACジェネレーター
MD5、SHA-1、SHA-256、SHA-384、SHA-512を使用してHMAC署名を生成します。16進数またはBase64出力対応。
ROT13 / シーザー暗号
ROT13またはカスタムシーザー暗号の回転でテキストをエンコード・デコードします。
PASETOデコーダー
PASETO v1〜v4トークン(local/public)をデコードし、ヘッダー・ペイロード・フッター・署名を表示します。