Git 3.0のSHA-256デフォルト化は高コストな失敗か
मूल शीर्षक: Git 3.0's upcoming SHA-256 default will be a costly mistake
यह क्यों महत्वपूर्ण है
世界中のソフトウェア開発基盤であるGitの破壊的変更は、数千万のリポジトリと開発ツールに連鎖的な影響を与える可能性がある。
GitButlerの共同創設者Scott Chaconが、Git 3.0でSHA-256をデフォルトハッシュアルゴリズムにする計画について批判的見解を発表。SHA-1の「破損」は理論上の問題に過ぎず、移行コストが実益を大幅に上回ると主張している。
GitButlerの共同創設者であるScott Chaconが自社ブログで、Git 3.0においてSHA-256をデフォルトのコンテンツハッシュアルゴリズムとする計画を強く批判した。
Gitは「コンテンツアドレッサブルデータベース」として機能しており、ファイルや木構造、コミットすべてにSHA-1ハッシュが使われてきた。Linus Torvaldsが2005年にGitを開始して以来20年間、このSHA-1が使われてきた。理論上、偶発的なハッシュ衝突が起きるには1つのプロジェクト内に約14京×10億個のファイルが必要とされ、現実的にはほぼ不可能だとChaconは説明する。
問題はSHA-1が暗号学的に「破損」していると判定されている点だ。2017年の「SHAttered」攻撃と2020年の「SHA-1 is a Shambles」研究により、十分なGPUと資金があれば意図的に衝突を生成できることが示された。これを受け、Git開発陣はGit 3.0でSHA-256への移行を計画している。
しかしChaconの主張の核心は、この「破損」が実害をもたらすには現実的にほぼ不可能な条件が重なる必要があるという点だ。Gitのリポジトリで攻撃者が悪意ある衝突ファイルを仕込むシナリオは非常に限定的であり、SHAttered攻撃でさえ実証レベルにとどまっている。一方、世界中の数千万のリポジトリ、CI/CDパイプライン、ツール連携がSHA-1を前提に構築されており、SHA-256への移行は膨大なコストと混乱を引き起こすと警告している。