Anyway, not sure how exactly ECC relates to security. Is there any specific attack vector where it helps?
Your comparison is inadequate.
It's usually just a single bit but say you are working with images, do you care if a single pixel changes its RGB value because of a memory error? A character in the metadata?
I do.
Unfortunately there is a hardware cartel which deliberately limits ECC to enterprise / server products so that they can inflate the price / their profit margin.
ECC RAM is more expensive to manufacture than non-ECC RAM but the price difference would be fairly minimal if ECC RAM were used everywhere - as it should.
Hypothetically, even with hash checks when transferring files, if the chunk of data read from the source file changes, that data will be used to calculate the hash sum, along with being written to the destination file. Meaning the hash sum would match the destination file anyways. You could even get wrong hash sums and think the transfer was wrong.
Really when memory can just 'change', anything can happen and there's no real good ways to get around it. ECC memory should just be everywhere.
Firefox crashed every now and then, but that's not something which raised any flags with me. Other than that the box seemed just fine. Then one day I couldn't boot anymore as the filesystem had been severely corrupted.
Ran memtest86 and sure enough, a span of addresses invariably generated errors in all tests.
What's changed is higher memory densities, making it even more important.
Literally everything else that holds "data" has been using some form of error correction forever. Hard drives, SSD's, USB flash drives, file systems, databases, even network packets. Even HDMI uses error correction, and how important is momentary pixel corruption on a screen???
It's totally insane that we're not using ECC with such large amounts of RAM built on tiny processes. Its definitely just a cartel artificially maintaining a situation that's bad for everyone not selling server chips.