ハッシュジェネレーター
ダウンロードの検証、2つの文字列のバイト単位の比較、署名ワークフローのためのフィンガープリント作成は、いずれも暗号学的ハッシュに依存します。このツールは一般的なファミリー(MD5、SHA-1、SHA-2(256/384/512)、CRC32)を計算し、それぞれコピーできるダイジェストを表示します。入力したテキストはダイジェストの計算のために当サーバーに送信されます。
ハッシュを生成する方法
-
1
入力を貼り付けまたは入力
ハッシュ化したいテキストを入力します。このジェネレーターはテキストのみに対応しており、ファイルのアップロードはありません。
-
2
ハッシュアルゴリズムを選ぶ
用途に応じてMD5、SHA-1、SHA-256、SHA-384、SHA-512、CRC32を選びます。
-
3
ハッシュを生成する
「ハッシュを生成」をクリックします。選択したアルゴリズムのダイジェストが表示され、下の一覧にはすべてのアルゴリズムが一度に並びます。
-
4
ダイジェストをコピー
得られた固定長のダイジェストは、チェックサムファイル、署名ヘッダー、比較ダイアログに貼り付けられます。
どのハッシュアルゴリズムを選ぶべきか?
すべてのハッシュがすべての用途に適するわけではありません。MD5とSHA-1は一意性チェックには問題ありませんが、セキュリティ関連には壊れています。SHA-2は新規プロジェクトの堅実な既定であり続けています。
アルゴリズム早見表
| アルゴリズム | 出力サイズ | セキュリティ状況 | 主な用途 |
|---|---|---|---|
| MD5 | 128 ビット | 破られている、2004年以降、実用的な衝突が可能 | セキュリティ用途以外のチェックサム、ETag、キャッシュキー |
| SHA-1 | 160 ビット | 非推奨、2017年のSHAttered衝突 | 旧来のGitオブジェクトID、古いTLSチェーン |
| SHA-256 | 256 ビット | 安全、推奨される既定値 | TLS、署名、ファイル整合性、ブロックチェーン |
| SHA-384 | 384 ビット | 安全 | TLS 1.3のSuite B、より強力な整合性 |
| SHA-512 | 512 ビット | 安全 | 非常に大きなデータセット、HMACの構築 |
| CRC32 | 32 ビット | 暗号学的ではない、衝突は容易 | エラー検出(ZIP、PNG)、高速な整合性チェック |
ハッシュは暗号化ではない
ハッシュは一方向です。ダイジェストから入力を復元することはできません。重要な性質は2つあります。
- 衝突耐性、同じハッシュになる2つの入力が存在しないこと。MD5とSHA-1では破られています。
- 原像耐性、ダイジェストが与えられても、それを生む入力を見つけられないこと。MD5とSHA-1でもまだ成り立つので、チェックサムは偶発的な破損を今も検出できます。
パスワードに素のSHA-256を使わないこと
パスワードには、遅くソルト付きの関数が必要です。bcrypt、scrypt、Argon2id、または少なくとも600,000回反復したPBKDF2です。SHA-256のような高速なハッシュは、最新のGPUで毎秒数十億回の推測で総当たりされ得ます。
テキストのエンコーディングが重要
文字列をハッシュ化するとは、そのバイト表現をハッシュ化することです。"café"をUTF-8で表すと、同じ語をLatin-1で符号化した場合と異なるダイジェストになります。このツールは既定でUTF-8のバイトをハッシュ化します。
よくある質問
ほぼ常にエンコーディングか末尾の空白の違いです。もう一方のツールがUTF-8かLatin-1のどちらを使っているか、ハッシュ化前に入力へ改行を付け足していないかを確認してください。
ダウンロードの偶発的な破損の検出になら、MD5で問題ありません。攻撃者が偽造しようとし得るもの(証明書、コード署名、パスワード保管)には、MD5は壊れており、使ってはいけません。
いいえ。このジェネレーターが処理するのはテキストのみです。ファイルを確認するには、OS標準のチェックサムコマンド(Linux・macOSではsha256sum、WindowsではGet-FileHash)を使ってください。
入力したテキストはダイジェストの計算のために当サーバーに送信されますが、計算後は保存されません。
SHA-2はアルゴリズムのファミリーで、SHA-224、SHA-256、SHA-384、SHA-512がそのメンバーです。サイズを指定せずに「SHA-2」と言う場合、たいていSHA-256を指します。
関連ツール
CSRジェネレーター
PEMエンコードされた証明書署名要求と対応するRSA秘密鍵を生成します。コモンネーム、組織の項目、鍵のサイズ(2048、3072、4096ビット)を指定できます。
Base64ファイルエンコーダー
あらゆるファイル(PDF、ZIP、画像、実行ファイル)をBase64テキストにエンコードし、JSON、メール、YAML、data URIへ埋め込めます。ブラウザ内でローカルに動作し、アップロードはありません。
Atbash暗号エンコーダー
A-ZをZ-Aに対応させるヘブライ系の換字式暗号、Atbashでテキストをエンコードまたはデコードできます。同じ操作で暗号化と復号ができます。
SSL証明書ジェネレーター
自己署名のSSL/TLS証明書とRSA秘密鍵をすべてブラウザ内で生成します。Common Name、SAN、有効期間をカスタマイズし、PEM形式で書き出します。
チェックサム検証
任意のテキストの MD5、SHA-1、SHA-256、SHA-384、SHA-512、CRC32 チェックサムを計算し、期待値と比較して一致・不一致を明確に判定します。
暗号化識別子
暗号文またはハッシュ値を貼り付けると、識別子からMD5、SHA、bcrypt、AES、RSA、Base64などの推定されるアルゴリズムや符号化方式が示されます。
このツールは他の言語でも利用できます
- Hash-Generator [DE]
- ตัวสร้างแฮช (Hash Generator) [TH]
- Generator skrótów [PL]
- Gerador de Hash [PT]
- Hashgeneratör [SV]
- Trình tạo mã băm (Hash) [VI]
- Generator Hash [ID]
- Generador de Hash [ES]
- 해시 생성기 [KO]
- Générateur de hachage [FR]
- مولد هاش [AR]
- Hashgenerator [NL]
- Hash Generator [EN]
- Generatore di Hash [IT]
- Генератор хешей [RU]
- Hash Oluşturucu [TR]
- 哈希生成器 [ZH]