On 1/13/23 16:56, rsbecker@xxxxxxxxxxxxx wrote:
git is using SHA1/SHA256 (which happen to be coincidentally cryptographic) as message digests with a very low probability of collisions when the hashes are computed. There is never a situation, implied by cryptography, where there is a decode of a git hash. In order to make git a blockchain, you would need to implement central signing authorities, which would require a fork if the signature mechanism changes. The signature mechanism (SSH, GPG) is distinct from hash computation in git's trees, but depends on hash integrity.
I see.
But at the same time any unique enough hash, identifies a specific piece
of code or checkout, even though it is not under a specific signing
authority. And that is the problem, that authorities may distribute
allowed-only-hashes for their hardware ...
--HPS