doc hash-function-transition: pick SHA-256 as NewHash
authorJonathan Nieder <redacted>
Sat, 4 Aug 2018 08:52:47 +0000 (01:52 -0700)
committerJunio C Hamano <redacted>
Tue, 7 Aug 2018 14:40:43 +0000 (07:40 -0700)
commit0ed8d8da374f648764758f13038ca93af87ab800
treedfc6bfc90c19dace8f5d84092a3f06dc14a5f734
parent13f5e0982121ea1f1fc1b94f1e559bfb23aa0a16
doc hash-function-transition: pick SHA-256 as NewHash

From a security perspective, it seems that SHA-256, BLAKE2, SHA3-256,
K12, and so on are all believed to have similar security properties.
All are good options from a security point of view.

SHA-256 has a number of advantages:

* It has been around for a while, is widely used, and is supported by
  just about every single crypto library (OpenSSL, mbedTLS, CryptoNG,
  SecureTransport, etc).

* When you compare against SHA1DC, most vectorized SHA-256
  implementations are indeed faster, even without acceleration.

* If we're doing signatures with OpenPGP (or even, I suppose, CMS),
  we're going to be using SHA-2, so it doesn't make sense to have our
  security depend on two separate algorithms when either one of them
  alone could break the security when we could just depend on one.

So SHA-256 it is.  Update the hash-function-transition design doc to
say so.

After this patch, there are no remaining instances of the string
"NewHash", except for an unrelated use from 2008 as a variable name in
t/t9700/test.pl.

Signed-off-by: Ævar Arnfjörð Bjarmason <redacted>
Acked-by: Linus Torvalds <redacted>
Acked-by: brian m. carlson <redacted>
Acked-by: Johannes Schindelin <redacted>
Acked-by: Dan Shumow <redacted>
Signed-off-by: Jonathan Nieder <redacted>
Signed-off-by: Junio C Hamano <redacted>
Documentation/technical/hash-function-transition.txt
git clone https://git.99rst.org/PROJECT