SHA-1ハッシュジェネレーター
Gitを動かす160ビットダイジェスト関数
SHA-1はNSAが設計した暗号学的ハッシュ関数で、160ビットダイジェスト(16進数40文字)を生成します。2017年に実用的な衝突が実証されましたが、SHA-1は今でもGitでコミット識別に使用されています。
SHA-1とは?
SHA-1はデータを512ビットブロックで80ラウンドのビット単位論理演算、剰余加算、循環シフトで処理します。
✅ 特徴
- • Git VCS: Gitリポジトリの全てのコミットとオブジェクトを識別
- • 160ビット出力: 40桁の16進ダイジェスト
- • 幅広いサポート: 全てのプログラミング言語で普遍的に利用可能
- • 高速: ハードウェアサポートによる高速計算
📊 用途
- • Git: コミット識別、ブランチ、マージ
- • チェックサム: ファイル整合性検証
- • レガシーシステム: 古いSSL/TLS証明書
- • フィンガープリント: コンテンツ識別
⚠️ 非推奨警告
SHA-1は暗号学的に陳腐化しています。 GoogleとCWI Amsterdamが2017年に実用的な衝突を実証(SHAttered攻撃)。SHA-256を使用してください。
🔄 SHA-1の比較
🔵
MD5
128ビット
破られた — 使用しないで
🟢
SHA-1
160ビット
陳腐化 — 衝突が既知
🟡
SHA-256
256ビット
安全 — 推奨
❓ よくある質問
SHA-1はまだ安全?
いいえ。2017年に実用的な衝突が実証されました。SHA-1はもはやデジタル署名に受け入れられていません。
Gitがまだ SHA-1を使っているのはなぜ?
GitはSHA-256への移行を徐々に進めています。SHA-1の速度とGitでの非暗号学的使用が移行を急がせませんでした。
SHA-1の代わりに何を使うべき?
ほとんどのアプリケーションにはSHA-256。