Re: Git and SHA-1 security (again)
- From
Duy Nguyen <pclouds@gmail.com>
- Date
- Jul 17, 2016, 15:19 UTC
- Message-ID
- <CACsJy8C+2=qv5Vu=tGeDTK_Q+XSAv3qEJw0nrHbEWU7psDf=Cg@mail.gmail.com>
- In-Reply-To
- <20160717142157.GA6644@vauxhall.crustytoothpaste.net>
On Sun, Jul 17, 2016 at 4:21 PM, brian m. carlson <sandals@crustytoothpaste.net> wrote:
Show 10 quoted lines
> On Sun, Jul 17, 2016 at 10:01:38AM +0200, Johannes Schindelin wrote: >> Out of curiosity: have you considered something like padding the SHA-1s >> with, say 0xa1, to the size of the new hash and using that padding to >> distinguish between old vs new hash? > > I'm going to end up having to do something similar because of the issue > of submodules. Submodules may still be SHA-1, while the main repo may > be a newer hash. I was going to zero-pad, however. I was also, at > least at first, going to force a separate .git dir for those, to avoid > having to try to store two separate types of objects in the same repo.
If it's just the external hash representation, can we go with a prefix <algo><colon> to identify the hash algorithm? For example sha256:1234... is SHA-256 while 1235... by default is SHA-1 (but we could switch the default to SHA-256 via config file later SHA-1 is dead and nobody wants to type sha256: every time). It catches incorrect hash algorithm references.
-- Duy