ハッシュ値の計算(SHA-256・SHA-1・SHA-512)

文字列のハッシュ値(SHA-1・SHA-256・SHA-384・SHA-512)を計算します。データの照合や整合性の確認に。

ハッシュ値の計算について

ハッシュ値は、データから一定の長さの文字列を計算した、いわば「指紋」のようなものです。同じデータからは必ず同じ値が得られ、少しでもデータが違えば、まったく別の値になります。ファイルの改ざん検出や、データの照合に使われます。

SHA-1・SHA-256・SHA-384・SHA-512に対応しています。計算は、ブラウザの標準機能で行われ、入力した文字列が外部に送信されることはありません。ハッシュ値から元のデータを復元することはできません。パスワードの保存には、専用の方式(bcrypt・Argon2など)を使ってください。

こんなときに使えます

  • ダウンロードしたファイルの値と、公開されているハッシュ値を比べる
  • データが変更されていないかを確認する
  • プログラミングで、ハッシュ値の期待値を確認する

使うときのポイント

  • SHA-1は、衝突が見つかっており、セキュリティ用途には推奨されない
  • 改行や空白の違いで、ハッシュ値は変わる

計算例

入力欄の初期値のまま計算すると、次の結果になります。条件は、ハッシュ化する文字列がhello、大文字で表示がいいえです。数値を変えると、この結果もそれに合わせて変わります。

SHA-2562cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824
SHA-1aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d
SHA-38459e1748777448c69de6b800d7a33bbfb9ff1b463e44354c3553bcdb9c666fa90125a3c79f90397bdf5f6a13de828684f
SHA-5129b71d224bd62f3785d96d46ad3ea3d73319bfbc2890caadae2dff72519673ca72323c3d99ba5c11d7c7acc6e14b8c5da0c4663475c2e5c3adef46f73bcdec043

使い方

  1. 文字列を入力します。
  2. 各アルゴリズムのハッシュ値が表示されます。

計算方法・仕組み

ブラウザ標準のWeb Crypto APIで計算しています。入力した文字列は外部に送信されません。MD5は標準機能にないため対応していません。

ハッシュ値は一方向の変換で、元の文字列には戻せません。

知っておきたい基礎知識

ハッシュ値は、データから、一定の長さの文字列を計算した値で、元のデータが1文字違うだけで、全く異なる値になります。元のデータに戻すことはできない一方向の変換のため、ファイルが改ざんされていないかの確認や、データの照合に使われます。SHA-256は、256ビット(64桁の16進数)のハッシュ値を作る、広く使われている方式です。

古いMD5やSHA-1は、異なるデータから同じハッシュ値を作る攻撃(衝突)が見つかっており、セキュリティ用途には、推奨されていません。パスワードを保存するときは、SHA-256だけでなく、ソルトを加えて、計算を遅くするbcryptやArgon2などの、専用の方式を使います。このツールは、ブラウザの中で計算するため、入力した文字列が、外部に送信されることはありません。

間違えやすいポイント

  • パスワードの保存に、素のSHA-256を使うのは、安全とはいえない。専用の方式を使う
  • 改行や、末尾の空白の有無で、ハッシュ値が全く変わる
  • ハッシュ値は、暗号化ではない。元のデータに戻すことはできない

よくある質問

パスワードの保存にSHA-256を使ってもいいですか?
いいえ。パスワードの保存には、bcryptやArgon2などのパスワード専用のハッシュ方式を使ってください。
ファイルのハッシュ値は、計算できますか?
このツールは、文字列のハッシュ値の計算です。ファイルのハッシュ値は、OSの標準コマンド(certutil、shasumなど)で、確認できます。
MD5は、使えますか?
ブラウザの標準機能に含まれないため、対応していません。また、セキュリティ用途には、推奨されていません。