Trusted Firmware is an open source project implementing foundational software components for creating secure devices.
This It currently consists of:
- **Trusted Firmware-A**. This is aA reference implementation of secure world software for Arm A-Profile systems (Armv8-A and Armv7-A), including an Exception Level 3 (EL3) Secure Monitor. ThisIt leverages Arm TrustZone technology,; whichthis is different for A and M profile systems, andwhich is why the project has two separate codebases. [[./tf_a/ | Continue on to the TF-A wiki... ]]
- **Trusted Firmware M**. This is aA reference implementation of secure world software for Arm M-Profile systems (Armv8-M. [[./tf_m/ | Continue on to the TF-M wiki...]]
- **OP-TEE**. This is aA Trusted Execution Environment (TEE) designed as a companion to a non-secure Linux kernel running on Arm A-Profile systems (Armv8-A and Armv7-A) using TrustZone technology. On Armv8-A systems it runs at Secure-EL1. [[https://optee.readthedocs.io/en/latest/ | Continue on the the OP-TEE documentation]]
- **Hafnium**. This is a reference Secure Partition Manager (SPM) for systems that implement the Armv8.4-A Secure-EL2 extension. It enables multiple, isolated Secure Partitions (SPs) to run at Secure-EL1.
- **Mbed TLS**. is a C library implementing cryptographic primitives, X.509 certificate manipulation and the SSL/TLS and DTLS protocols. Its small code footprint makes it suitable for embedded systems. It includes a reference implementation of the PSA Cryptography API (currently a preview for evaluation purposes only).It has many users, It has many usersincluding TF-A, including TF-ATF-M and TF-MOP-TEE. [[./mbed-tls/ | Continue on to the Mbed TLS wiki...]]
See also the [[./resources/ | common resources, including monthly project updates...]] , including [[./resources/board-minutes/ | the public minutes of the Project Governing Board meetings.]]
Here is a list of public [[ ./events/ | events ]] relevant to the Trusted Firmware project.