SHA-1ハッシュ生成
テキストやファイルの40文字のSHA-1ハッシュを、ブラウザーに内蔵された暗号エンジンで端末内で計算します。
入力テキスト
SHA-1ハッシュをオンラインで生成
SHA-1は任意の入力を160ビットの指紋に変換し、16進数40文字で表します。2000年代の標準的なハッシュであり、今でもダウンロードページ、Git、古いAPIやデータベースで目にします。このページは、SHA-1の結果を強調表示した状態でハッシュ生成ツールを開きます。同じ入力に対するMD5、SHA-256、SHA-384、SHA-512も並んで表示されます。
ハッシュはブラウザーに内蔵されたWeb Cryptoエンジンで計算されるため、テキストもファイルも端末から出ません。
SHA-1で問題ない場面、問題がある場面
| 用途 | SHA-1で問題ないか |
|---|---|
| ダウンロードが偶発的に壊れていないかの確認 | 問題なし |
| 変更されたファイルや重複ファイルの検出 | 問題なし |
| SHA-1の値を保存しているレガシーなシステムとの照合 | 問題なし |
| 署名、証明書など、攻撃者を想定するもの全般 | 不可。SHA-256を使う |
| パスワードの保存 | 不可。bcryptのような低速なアルゴリズムを使う |
コマンドラインでSHA-1を計算する
| 環境 | コマンド |
|---|---|
| Linux | sha1sum file.zip |
| macOS | shasum -a 1 file.zip |
| Windows PowerShell | Get-FileHash file.zip -Algorithm SHA1 |
| Windows(コマンドプロンプト) | certutil -hashfile file.zip SHA1 |
文字列の場合、echo "text" | sha1sumは末尾の改行まで含めてハッシュ化します。同じテキストでこのページと同じ値を得るには、echo -nを使ってください。
SHA-1からの移行
両端を自分で管理しているなら、SHA-256に切り替えましょう。計算の手軽さは同じで、どこでも対応しており、実用的な衝突は知られていません。プロジェクトが公開しているアルゴリズムが何であれファイルを照合したいなら、ファイルのチェックサム確認が一致するアルゴリズムを自動で判別します。