That being said, it is not clear to me how a hash chain guarantees that the data it stores hasn't been modified.
The basic idea is, you have a chain of 'transactions' (like in bitcoin or think git commits) und you store the hash of the content + the hash of the member before as a checksum. This way, if you alter the log file, the hash for the modified entry is suddenly different, and the chain breaks, because the next member used your hash as input to calculate their checksum. So you can not only see that the file was tampered with, you can also say which entry was modified.
Edit: Merkle trees[0] generalize this concept into trees, which are e.g. used in ZFS (the file system), git and in the blockchain.
(Social factors and forks to change our minds on blockchains notwithstanding)
Sure, you have a limited number of participants and some tweaking to do on the quorum (in some cases you might want all parties to sign).
But hey - the blockchain cool-aid gang tried to sell it as a solution for COVID contact tracing. Which is beyond laughable. The entire industry is a shillfest.
In addition, I don't see what prevents an "official" from writing a social credit transaction (disclaimer that I have no idea how China's "social credit" system works or even what it is) to the blockchain. Nodes validate to solve disagreements where one node says a transaction happened that did not. This does not appear to be the same type of dishonesty being referred to here.
The world has functioned up until the magical dawning of the blockchain.
A blockchain doesn't prevent individual parties from lying about things only they would know about -- if that's what's on your chain, you still need trust.