]> git.ipfire.org Git - thirdparty/git.git/commit
BreakingChanges: document upcoming change from "sha1" to "sha256"
authorPatrick Steinhardt <ps@pks.im>
Fri, 14 Jun 2024 06:42:39 +0000 (08:42 +0200)
committerJunio C Hamano <gitster@pobox.com>
Fri, 14 Jun 2024 16:08:52 +0000 (09:08 -0700)
commit6ccf041d1d73d69d05118f739c80f83c86caf0d6
tree7d606593b0596ff07c010cea5b41cc989c393b24
parent57ec9254eb996080c757708a7eec8d3657897222
BreakingChanges: document upcoming change from "sha1" to "sha256"

Starting with 8e42eb0e9a (doc: sha256 is no longer experimental,
2023-07-31), the "sha256" object format is no longer considered to be
experimental. Furthermore, the SHA-1 hash function is actively
recommended against by for example NIST and FIPS 140-2, and attacks
against it are becoming more practical both due to new weaknesses
(SHAppening, SHAttered, Shambles) and due to the ever-increasing
computing power. It is only a matter of time before it can be considered
to be broken completely.

Let's plan for this event by being active instead of waiting for it to
happend and announce that the default object format is going to change
from "sha1" to "sha256" with Git 3.0.

All major Git implementations (libgit2, JGit, go-git) support the
"sha256" object format and are thus prepared for this change. The most
important missing piece in the puzzle is support in forges. But while
GitLab recently gained experimental support for the "sha256" object
format though, to the best of my knowledge GitHub doesn't support it
yet. Ideally, announcing this upcoming change will encourage forges to
start building that support.

Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/BreakingChanges.txt