How is the flash encryption key stored?
Posted: Fri Jun 12, 2020 9:34 pm
Hi,
I am trying to wrap my head around flash encryption reading the documentation. My understanding is that the ESP32 hardware AES engine generates an encryption key (symmetric encryption, I suppose?) which is stored inside the chip on eFuses in an unmodifiable way. Is this correct?
What I don't understand is, the flash memory is encrypted so that it cannot be read off as plain text, but even if so, what prevents an attacker from reading the encryption key from the eFuses by probing etc? What makes it readable only to the encryption/decryption engine but to nobody else?
I don't know if this is a somewhat obvious question but I could not find an answer I could understand anywhere.
Thanks.
I am trying to wrap my head around flash encryption reading the documentation. My understanding is that the ESP32 hardware AES engine generates an encryption key (symmetric encryption, I suppose?) which is stored inside the chip on eFuses in an unmodifiable way. Is this correct?
What I don't understand is, the flash memory is encrypted so that it cannot be read off as plain text, but even if so, what prevents an attacker from reading the encryption key from the eFuses by probing etc? What makes it readable only to the encryption/decryption engine but to nobody else?
I don't know if this is a somewhat obvious question but I could not find an answer I could understand anywhere.
Thanks.