I come from a software background, but feel this is a hardware/electronics question.
Looking for a way to hardware-write-protect on flash media, I bought an SDHC card (with a tiny switch labelled "lock") and a cheap USB card reader. I wanted to create a 'read-only' device that I can be certain will not be modified - without having to consider the software on the hosts to which I connect it.
Inserted directly into my Dell laptop, the card can only be written when unlocked... I assumed this meant that the write protect is implemented by the SD card... When I put the SD card into the USB reader, however, the same laptop allows me to write to the locked card. I've now read this question, and this confirmation that I was wrong to assume that the 'lock' switch would provide hardware write protect. I now know that the 'lock' is not a feature of the card in isolation - and that standard 'locked' depends upon OS drivers (which I don't want to be forced to trust.)
I would like to know: What would be a straightforward, simple, reliable, neat and cheap way to implement a hardware write protect switch for flash media? Ideally, I would like to access this media over USB. I assume that I will need a device that can intercept the blocks of data exchanged over the serial interface to either USB or the SD card?