Git 3.0がSHA-256をデフォルトにする計画は誤りだ

Judul asli: Git 3.0's upcoming SHA-256 default will be a costly mistake

Mengapa Ini Penting

世界中のGitリポジトリとツールチェーンに影響する非互換変更の是非が問われている

GitButler共同創業者Scott Chaconが、Git 3.0でSHA-256をデフォルトハッシュアルゴリズムにする計画は、実質的メリットなく膨大なコストを伴うと警告した。

Git 3.0は、現行のSHA-1に代わりSHA-256をデフォルトのコンテンツハッシュアルゴリズムとして採用する予定だ。GitButler共同創業者のScott Chaconは自社ブログで、この変更が「理解を超えるコストを伴い、実用的価値はほぼゼロ」と批判した。

Gitはコンテンツアドレス型データベースとして、ファイルのハッシュ値をキーとするキー・バリュー方式で動作する。SHA-1は2005年のLinus Torvaldsによる設計以来20年間使われており、実際の衝突事例は記録されていない。SHA-1の160ビット出力では、誕生日攻撃の境界値として1京4千兆個のファイルがなければ偶発的衝突は起きない計算だ。

SHA-1が「破られた」とされるのは、2017年の「SHAttered」および2020年の「SHA-1 is a Shambles」という攻撃により、意図的な衝突生成が理論上可能になったためだ。ただしChaconは、実際のGitリポジトリへの悪用は現実的でないと指摘する。SHA-256への移行は技術的整合性の問題というより、世界中の既存リポジトリやツール群への大規模な非互換変更を強いるという点で、コストが便益を大幅に上回ると主張している。

Sumber

blog.gitbutler.com — Baca artikel asli →