git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* how to (integrity) verify a whole git repo
@ 2020-04-21  4:45 Christoph Anton Mitterer
  2020-04-21  6:53 ` Jonathan Nieder
  2020-04-21 19:14 ` Junio C Hamano
  0 siblings, 2 replies; 7+ messages in thread
From: Christoph Anton Mitterer @ 2020-04-21  4:45 UTC (permalink / raw)
  To: git

Hi.

It seems I couldn't really find any definitive answer one the
following:

How to cryptographically verify the integrity of a whole git repo (i.e.
all it's commits/blobs/etc. in the history?

Assume e.g. I have the kernel sources and want to do some bisection.
One has also retrieved Linus' and GregKH's key via some trusted path
and assumes that SHA1 is more or less still safe enough ;-)


1) Of course there is git verify-tag and verify-commit which are signed
with the GPPG, but these alone check, AFAIU, only the respective
tag/commit.

How to check everything else? Is it enough to git fsck --full?

Everything earlier in the history of a verified tag/commit should be
cryptographically safe (assuming SHA1 would be still secure enough),
right?


2) But this of course won't show me anything which is in the repo but
not earlier in the history of the tag/commit I've checked, right?!
Is there a way to e.g. have everything dropped which is not verifiable
via some signed commit/tag?


3) I'd assume that normal operations like checkout/bisect/etc. notice
if some SHA1 sum doesn't match. So once I've verified say kernel v.5.6
tag, I could checkout everything in the history of that and be sure it
wasn't modified, right?
But of course this wouldn't include e.g. other stable versions, like
v5.5.13.


Thanks,
Chris.


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2020-04-23 18:12 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-21  4:45 how to (integrity) verify a whole git repo Christoph Anton Mitterer
2020-04-21  6:53 ` Jonathan Nieder
2020-04-21 14:42   ` Christoph Anton Mitterer
2020-04-21 16:19     ` Konstantin Ryabitsev
2020-04-23 18:12       ` Christoph Anton Mitterer
2020-04-21 19:14 ` Junio C Hamano
2020-04-23  4:02   ` Christoph Anton Mitterer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).