Security state

The Arm Architecture Reference Manual introduces a Secure state and a Non-secure state for the processor.

  • Secure state can access Secure and Non-secure physical addresses.
  • Non-secure state can only access the Non-secure address space and cannot access certain Secure system registers.

Partitioning memory accesses into Secure state and Non-secure state prevents, for example, a user level application in Non-secure EL0 from accessing encryption keys held by a trusted operating system running in Secure EL1. This partitioning of memory accesses is also important for the implementation of Arm TrustZone technology.


Previous Next