4 ms·
>QFUSE: Microscopic hardware fuse that is integrated into the SoC - Once physically blown, impossible to reset or replace I understand that once set, it can't
by DoctorOetker 8y ago
>QFUSE: Microscopic hardware fuse that is integrated into the SoC - Once physically blown, impossible to reset or replace
I understand that once set, it can't be restored.
My question: could some of the earliest priviliged states decide to burn unburnt fuses of the public key? or is there an extra special root fuse which only allows burning the key fuses if it isn't yet burnt, and which is burnt as soon as the root public key is burnt?
This may seem irrelevant if we don't have access to the privileged states, but perhaps with hardware vulnerabilities as we have been seeing more and more, it may conceivably be possible to force it to run code to burn an unburnt fuse of the key. I.e. perhaps we can set bits in the public key such that the new key is easier to factor? (in case of say RSA)
EDIT: if this is possible we could sign our own root bootloader
- Ristovski 8y agoThere is a fuse-antifuse pair most likely. Think of it this way: You burn the bits "0001" into some fuse bank, which is mirrored in an anti-fuse bank that now equals "1110". You can burn the unburned fuses in the normal bank, but can't unburn them in the antifuse bank.
- DoctorOetker 8y agothanks, I actually thought of that, but it seems rather inefficient compared to a single fuse, unblown before writing a key, blown after written key is verified as correctly written, once blown no fuses for this key can be blown... But I don't know if they actually use such a system, or perhaps they simply assume the attackers never get fuseblowing privilege, and perhaps they assume that a key in a blown set of fuses is no longer rewritable...