3 ms·
It's my first time hearing about this "eFuse" functionality in Qualcomm CPUs. Are there non-dystopian uses for this as a manufacturer?
by hypeatei 9mo ago
It's my first time hearing about this "eFuse" functionality in Qualcomm CPUs. Are there non-dystopian uses for this as a manufacturer?
- Retr0id 9mo agoeFuses are in most CPUs, often used for things like disabling hardware debug interfaces in production devices - and rollback prevention.
- hexagonwin 9mo agoSamsung uses this for their Knox security feature. The fuse gets broken in initial bootloader unlock, and all features related to Knox (Samsung Pay, Secure Folder, etc) gets disabled permanently even after reverting to stock firmware.
- thesh4d0w 9mo agoI use them in an esp32 to write a random password to each of my products, so when I sell them they can each have their own secure default wifi password while all using the same firmware.
- josephcsible 9mo agoWhat advantage do you see from using eFuses and not some other way to store the password?
- thesh4d0w 9mo agoThis is the only way I could come up with that would allow an end user to do a full factory reset, and end up back in a known good secure state afterwards. Storing it in the firmware would mean every user has the same key. Storing it in eeprom means a factory reset will clear it. This allows me to ship hardware with the default key on a sticker on the side, and let's a non technical user reset it back to that if they need to. It gives you a 256bit block to work with - https://docs.espressif.com/projects/esp-idf/en/stable/esp32/api-reference/system/efuse.html https://docs.espressif.com/projects/esp-idf/en/stable/esp32/...
- josephcsible 9mo agoBut couldn't you also just set aside a bit of the EEPROM your factory reset skips, and accomplish the same thing?
- josephcsible 9mo agoThere are not. The entire premise of eFuses are that after you buy something, the manufacturer can still make changes that you can't ever undo.
- QuiEgo 9mo agoAlmost every modern SoC has efuse memory. For example, this is used for yield management - the SoC will have extra blocks of RAM and expect some % to be dead. At manufacturing time they will blow fuses to say which RAM cells tested bad.