What are potential causes of incorrect hashes during a check?

Starting from restic 0.16.0 the snapshot metadata contain the restic version that originally created it. You can run restic cat snapshot <snapshotID> to take a look.