ハッシュ生成
テキストのSHA-1・SHA-256・SHA-384・SHA-512ハッシュ値を生成します。テキストファイルをドロップして、その内容(UTF-8テキスト)からハッシュ値を求めることもできます。
ハッシュ生成について
ハッシュ関数は、任意の長さの入力から固定長の値を生成する一方向性の関数で、同じ入力からは常に同じ出力が得られる一方、出力から元の入力を逆算することは計算量的に不可能という性質を持ちます。ファイルの改ざん検知や、パスワードそのものを保存せずに照合するための仕組みなどに使われています。
MD5とSHA-1は計算が高速な反面、意図的に同じハッシュ値を持つ別のデータを作る「衝突攻撃」が実用的なコストで可能になっており、現在ではセキュリティ用途にはSHA-256以上の使用が推奨されています。一方でファイルのダウンロード検証やキャッシュキー生成など、耐衝突性を必要としない用途ではMD5・SHA-1も依然として使われています。なお、このツールはWeb Crypto APIが提供するSHA-1・SHA-256・SHA-384・SHA-512に対応しており、MD5の計算には対応していません。
主な使い方
- 1パスワードのハッシュ値を生成してデータベース保存前に確認する
- 2設定ファイルやテキストのSHA-256ハッシュ値を求め、内容が変わっていないか照合する
- 3APIリクエストの署名検証で使うペイロードのSHA-256ダイジェストを確認する
- 4テキストの一意性確認やキャッシュキーの生成に使用する
よくある質問
Q. どのハッシュアルゴリズムに対応していますか?
A. SHA-1・SHA-256・SHA-384・SHA-512に対応しています(MD5には対応していません)。セキュリティ用途にはSHA-256以上の使用を推奨します。
Q. ファイルのハッシュ値も計算できますか?
A. テキストファイルをドロップすると、その内容をUTF-8テキストとして読み込んでハッシュ値を計算します。画像や実行ファイルなどのバイナリファイルは正しく計算できないため、ダウンロードファイルのチェックサム検証には sha256sum などのコマンドをご利用ください。
Q. 生成したハッシュ値からもとのテキストに戻せますか?
A. いいえ。ハッシュは一方向性の処理であり、ハッシュ値からもとの入力を復元することは計算上不可能です。
Q. 入力テキストはサーバーに送信されますか?
A. いいえ。ハッシュ計算はすべてブラウザのWeb Crypto APIを使用してローカルで行われます。
関連ツール
- パスワード生成大文字・小文字・数字・記号を組み合わせた安全なランダムパスワードを生成します。長さや使う文字種を指定でき、強度メーターで安全性も確認可能。暗号学的に安全な乱数を使い、ブラウザ内で完結します。
- UUID生成UUID v4をワンクリックで生成します。最大20件までの一括生成にも対応し、データベースの主キーやテストデータの作成に便利。暗号学的に安全な乱数(crypto.randomUUID)を使い、ブラウザ内で完結します。
- JWT エンコード・署名ヘッダー・ペイロード・シークレットキーを入力してJWTトークンを生成します。HS256・HS384・HS512のHMAC署名に対応し、APIのテストや認証の動作確認に便利。ブラウザ内で完結し、鍵は送信されません。
- QRコード生成テキストやURLをQRコードに変換し、PNG画像としてダウンロードできます。サイズや誤り訂正レベルを調整でき、名刺・チラシ・Webサイトへの掲載に便利。ブラウザ内で完結し、データは外部に送信されません。
- JSON → TypeScript型JSONデータからTypeScriptのinterface(型定義)を自動生成します。ネストしたオブジェクトや配列にも対応し、APIレスポンスの型付けを手早く行えます。ブラウザ内で完結し、データは外部に送信されません。
- Lorem Ipsum生成Lorem Ipsumのダミーテキストを、段落・文・単語の単位で指定した量だけ生成します。Webデザインのモックアップやレイアウト確認、テストデータの作成に便利。ブラウザ内で完結し、すぐにコピーできます。