DevTools Japan トップへ

ハッシュ生成ツール

テキストからMD5・SHA-1・SHA-256・SHA-512ハッシュを生成

ハッシュ生成ツールの使い方

テキストのハッシュ値(MD5・SHA-1・SHA-256・SHA-512)を生成する無料ツールです。ファイルの整合性チェック、パスワードのハッシュ化確認、データの一意性検証などに使います。

ハッシュアルゴリズムの選び方

MD5は高速ですが衝突耐性が低く、セキュリティ用途には推奨されません。SHA-256は現在最も広く使われており、ブロックチェーンやSSL証明書にも使用されています。SHA-512はより長いハッシュ値を生成し、高いセキュリティが求められる場面に適しています。

活用場面

ダウンロードしたファイルが改ざんされていないかをチェックサムで検証する、APIのリクエスト署名を生成する、パスワードをハッシュ化して保存する(※本番環境ではbcrypt等の専用ライブラリを推奨)などの場面で使われています。

ハッシュ関数とは

ハッシュ関数とは、任意の長さの入力データから、決まった長さの値(ハッシュ値)を生成する一方向の計算処理です。たとえば1文字のテキストでも、数百万文字の文書でも、SHA-256なら必ず256ビット(16進数64文字)の値に変換されます。この性質により、データの大小にかかわらず一定の形式で「指紋」のように扱えます。

ハッシュ関数には重要な性質が3つあります。第一に、同じ入力からは何度計算しても常に同じハッシュ値が得られる「決定性」です。第二に、入力がわずか1文字でも違えば、出力されるハッシュ値は規則性なく全く異なるものになる「雪崩効果」です。第三に、ハッシュ値から元の入力データを計算して復元することはできない「不可逆性(一方向性)」です。このため、暗号化のように元に戻すことを前提とした処理とは根本的に異なります。

この不可逆性こそがハッシュ関数の核心です。元データに戻せないからこそ、パスワードの保存や改ざん検知に利用されます。手元のデータと相手のデータのハッシュ値が一致すれば、両者が同一であると高い確度で判断でき、一致しなければどこかが書き換えられたと分かります。

主なハッシュアルゴリズムの比較

アルゴリズム出力ビット長16進文字数主な用途安全性
MD5128 bit32文字簡易チェックサム・旧来の照合衝突が発見済み・暗号用途は非推奨
SHA-1160 bit40文字旧来の署名・Git内部識別衝突が実証済み・新規利用は非推奨
SHA-256256 bit64文字SSL証明書・ブロックチェーン・改ざん検知現在の標準として推奨
SHA-512512 bit128文字高セキュリティ用途・長いダイジェスト推奨(SHA-2系列)

本ツールでは、SHA-1・SHA-256・SHA-512はブラウザ標準のWeb Crypto API(crypto.subtle.digest)を用いて正確に計算しています。MD5・SHA-1は理論的・実証的に衝突(異なる入力が同じハッシュ値になる現象)が見つかっているため、署名や改ざん検知などのセキュリティ用途ではSHA-256以上の利用を推奨します。

よくある質問

ハッシュとは何ですか?
入力データから固定長の値を生成する一方向の計算結果がハッシュ(ハッシュ値)です。同じ入力からは常に同じ値が得られ、わずかな違いでも全く異なる値になり、ハッシュ値から元データを復元することはできません。データの照合や改ざん検知に使われます。
MD5とSHA-256のどちらを使うべきですか?
セキュリティ用途ではSHA-256を推奨します。MD5は計算が高速ですが衝突が発見されており、暗号・署名・改ざん検知には適しません。SHA-256は現在広く使われる標準で、SSL証明書やブロックチェーンにも採用されています。
ハッシュから元のデータに戻せますか?
戻せません。ハッシュ関数は不可逆(一方向)で、ハッシュ値から元の入力を計算して復元することは設計上できません。元に戻したい場合は暗号化を使う必要があり、ハッシュ化とは目的が異なります。
入力したテキストはサーバーに送られますか?
送られません。ハッシュの計算はすべてお使いのブラウザ内で完結し、入力したテキストが外部のサーバーへ送信されることはありません。パスワードなど機密性の高い文字列も手元で安全に試せます。
ファイルのハッシュも取れますか?
本ツールはテキスト入力欄に入力された文字列のハッシュを生成する仕様です。ファイルを直接アップロードしてハッシュ化する機能はありません。ファイルの内容を貼り付ければそのテキストのハッシュは計算できます。

関連ツール

パスワード生成ツール Base64変換ツール UUID生成ツール
コピーしました