Re: Git and SHA-1 security (again)
- From
Duy Nguyen <pclouds@gmail.com>
- Date
- Jul 18, 2016, 16:05 UTC
- Message-ID
- <CACsJy8Ba=c+-WV2TsY768_fTDO2KesS1b6BK7kdykNY6gkh=UQ@mail.gmail.com>
- In-Reply-To
- <alpine.DEB.2.20.1607181750470.3472@virtualbox>
On Mon, Jul 18, 2016 at 5:57 PM, Johannes Schindelin <Johannes.Schindelin@gmx.de> wrote:
Show 21 quoted lines
> Hi Zsolt, > > On Mon, 18 Jul 2016, Herczeg Zsolt wrote: > >> >> I think converting is a much better option. Use a single-hash >> >> storage, and convert everything to that on import/clone/pull. >> > >> > That ignores two very important issues that I already had mentioned: >> >> That's not true. If you double-check the next part of my message, you I >> just showed that an automatic two-way mapping could solve these >> problems! (I even give briefs explanation how to handle referencing and >> signature verification in those cases.) >> >> My point is not to throw out old hashes and break signatures. My point >> is to convert the data storage, and use mapping to resolve problems >> with those old hashes and signatures. > > If you convert the data storage, then the SHA-1s listed in the commit > objects will have to be rewritten, and then the GPG signature will not > match anymore.
But we can recreate SHA-1 from the same content and verify GPG, right? I know it's super expensive, but it feels safer to not carry SHA-1 around when it's not secure anymore (I recall something about exploiting the weakest link when you have both sha1 and sha256 in the object content). Rehashing would be done locally and is better controlled.
-- Duy