Exploring the Secure Enclave mikeash.com

Mike Ash, with a great explanation of what the function is of the secure enclave in iPhones 5S and newer:

On most systems, if you can get into the OS kernel then you own the entire system. The kernel can do anything. It can read and write every byte of system memory, it can control all of the hardware, and it’s in charge of all of the application code the system runs, which it can subvert at will.

Since the Secure Enclave is a separate CPU mostly cut off from the rest of the system, it isn’t under the kernel’s control. On an older iPhone, owning the kernel means owning everything done by the system, including the passcode verification process. With the Secure Enclave, no matter who is in control of the main CPU, no matter what code is in the OS running on it, the basic security functions remain intact.

Ash gets somewhat speculative, owing largely to Appleā€™s arguably necessary secrecy around the specifics of how the secure enclave functions. Fascinating stuff.