@forest For a single tunnel cycle, I can say that the recovery is 100%. It'd take 10s of seconds of tunneling to make it so I cannot see a difference. I can read down to 20fA, that's super small. We are dealing with so few electrons, there's a probability issue with the work function.
I can see single electron changes in current, so you'd really have to tunnel until the probability of the differences falls into noise.
@bdegnan So against someone with your equipment and expertise, things like SED (Self-Encrypted Drive) are useless, and it would be better for hard drives to implement erasure not by destroying a kilobyte of flash, but by overwriting the entire disk?
From what I'm aware, research has shown that there's no way to recover even a single overwrite to a modern hard drive. Is that unlikely to be correct? I know they have extensive ECC for each sector, but the read/write head can use a much more powerful signal than flash (it's non-destructive).
Ah. Well SSDs are worse because of wear leveling (so you'd have to overwrite far more than 10 to truly destroy all sectors). But HDDs often have a tiny amount of flash that store the SED key which transparently encrypts the hard drive, and ATA Secure Erase command is implemented by overwriting the flash-stored SED key. Not sure if it overwrites it multiple times or not...
@bdegnan Yeah. It hasn't been possible to recover since the MFM days.
@bdegnan How much does it vary based on type of device (NAND vs NOR) or things like TLC vs MLC? Is it all within the same order of magnitude in terms of recovery potential?
BTW, there's probably... like 20 labs in the world that can do this. I used to own a semiconductor test equipment company. I designed and sold the equipment that lets me do it. I only sold.. like 30 systems.
TLC? MLC?
Regarding NAND/NOR, it's the same gate-wise, so the physics is the same
SLC, TLC, MLC Single/Three/Multiple layer cells. Where each cell stores more than 1 bit.
So MLC cells have a non-binary threshold. 0% is 00, 20% is 01, 40% is 10, 60% is 11 (that kind of thing). I imagine it makes recovery harder, but probably not by much.
oh, so those are like my analog floating gates. I store up to 16-bits on a gate. I don't know. These were SLC, but I believe that having multiple bits would make it harder because I don't have state information.
Basically, it says why it's hard. I did the layouts for the floating gates. I'm in the acknowledgements. :)
gotta run. If you have any specific questions, let me know and I'll expand the infosec answer. I didn't want to drown anyone with physics. I really don't know much about information security.
@bdegnan I don't at all mind if you write a physics heavy answer and I think it'd be useful, but I don't want to pressure you if it would take too much of your time!
@MaartenBodewes I think the only real solution is full encryption.
Although I'm curious how many KiB of secret material must be overwritten (and how many times) before more than 128 bits are unrecoverable.
Generate some KiB of random data, and transparently encrypt the drive with the SHA-256 of that data, similarly to LUKS' anti-forensic stripes. Erase the data multiple times in order to render the entire drive unrecoverable.
Incineration is probably useful, but a dedicated adversary could probably recover at least some data from an otherwise destroyed chip. After all, you can obliterate an SSD without even touching the wafer.
In todays world of applications, I see a lot of the time a 256bit encryption key is used, but what about an 80 or 128? What makes 256 the one to use. Is a 80 or 128 easily decrypted?
Are comp ciphers better than others with the encryption of these keys?
I was so tempted to replace the last entity with "yo' mother" but I managed to restrain myself. Maybe the user has a very computer literate mother after all :P