SPRT789A April 2025 – July 2025
TIFS stands for Texas Instruments Foundational Security for F29x SoCs. TIFS provides device root of trust and foundational security services. The HSM or hardware security module consists of a secure core based secure subsystem. TIFS-MCU serves as an add-on package on top of F29-SDK offering for F29x devices like F29H85x. TIFS-MCU enables a bare metal security stack on secure CPU that can be leveraged by the user too.
TIFS-MCU enables foundational security SW with all the building blocks required for root-of-trust within the device and utilizes various services. TIFS-MCU can be easily integrated by AUTOSAR-HSM stack vendors to develop HSM stacks that adhere to SHE/EVITA standards.
Code Provisioning firmware is TI delivered software (including source) which enables secure provisioning of software into the internal flash of the device. This allows users to program HSM as well as C29 applications securely even in non-secure environment.
| Features of Code Provisioning Flow | Image Integrity | Bank Mode |
|---|---|---|
|
HSM Run Time Firmware Provisioning |
|
All Bank Modes |
|
C29 CPU1 Provisioning |
|
All Bank Modes |
|
Secure Config Provisioning |
|
All Bank Modes |
| List of Software Components | Software Type | OPN | Delivery Location | Source Available in 1.01.00 |
|---|---|---|---|---|
|
UART Flash Kernel |
Example |
F29H85x-SDK |
ti.com |
Yes |
|
Host Programmer |
Tool for:
|
F29H85x-SDK |
ti.com |
Yes |
|
OTP Key Writer Certificate Generation |
Python tool |
F29H85x-TIFS-SDK |
Secure Resources |
Yes |
|
HSM KP firmware |
Encrypted Firmware |
F29H85x-TIFS-SDK |
Secure Resources |
No |
|
HSM CP firmware |
Example |
F29H85x-TIFS-SDK |
Secure Resources |
Yes |
|
Code signing tool |
Python tool |
F29H85x-TIFS-SDK |
Secure Resources |
Yes |
TIFS-MCU SDK offers out-of-box services and example HSM firmware showcasing use cases which execute in HSM subsystem.
Figure 3 Native Services Provided by
TIFS-MCU
Figure 4 Software Architecture Block
Diagram of TIFS-MCU|
TIFS-MCU Software Components |
Description |
|---|---|
|
OS Kernel |
|
|
No RTOS |
Contains modules which implement no-RTOS execution environment consisting of timers, ISR, main thread. Allows software on top to run in bare metal mode. Note - HSM Server is only supported in NORTOS. |
|
Driver Porting Layer (DPL) |
APIs used by drivers to abstract the OS environment. Example, Semaphore, HW interrupts, mutex, clock. |
|
Security Device Drivers and Modules |
|
|
TIFS-MCU Peripheral Drivers |
Device Drivers library and APIs for HSM. List of SOC Peripheral Driver:
|
|
TIFS-MCU Middle-ware |
TIFS-MCU middle-ware that are supported in TIFS-MCU package List of Middle-ware:
|
|
TIFS-MCU Services |
TIFS-MCU middle-ware that are supported in TIFS-MCU package List of HSM Services:
|
|
TIFS-MCU Firmware |
Out of Box Example implementation of TIFS-MCU firmware with all the mentioned services enabled |
|
Examples and Demos |
|
|
Examples and Demos |
List of HSM Examples:
|
|
Tools (used on host machine) |
|
|
Code Composer Studio (CCS) |
IDE used to build projects, debug programs |
|
TI CLANG Compiler Toolchain |
CLANG based ARM compiler from TI for ARM M4F |
|
TI C29-CGT Toolchain |
CLANG based C29 compiler from TI for C29 CPU |
|
SysConfig |
System configuration tool, used to configure peripherals, pinmux, clocks and generate system initialization code |
|
SDK Tools and Utilities |
Additional tools and utilities, like flashing tools, booting tools, CCS loading scripts used with the SDK development flow |
|
OTP Keywriter |
OTP Keywriter is used to fuse customer keys into the device and convert HS-FS to HS-KP to establish customer root-of-trust. |
|
TIFS-MCU tools |
Tools and scripts to leverage the services provided via TIFS-MCU. |
| Services | Description | Examples Available |
|---|---|---|
|
HSM Get Version Service |
HSM GetVersion service is to get the current TIFS-MCU Firmware version |
Yes |
|
HSM Get UID Service |
When TIFS-MCU Firmware receives a request to GetUID from HSM Server, the UID is copied from secure memory to the output memory location requested by the user. |
Yes |
|
HSM Run Time Debug Authentication Service |
To unlock the debug port during the run-time, you need an X509 certificate signed with private keys. This service is used to provide the signed certificate to TIFS-MCU Firmware for processing. |
Yes |
|
HSM Derived KEK Service |
TIFS-MCU provides this service to get a derived KEK based on some input constants.
|
Yes |
|
HSM Random Number Generate Service |
TIFS-MCU provides this service to get a random number from the given input constants. |
Yes |
| HSM Extended OTP Service | TIFS-MCU provides services to program General purpose OTP regions which are an array of otp flash bits that can be defined for user usage models. | Yes |
| HSM Anti Rollback Service | TIFS-MCU provides anti-rollback services that help prevent booting older software images. The device has OTP fields to hold software revision for SBL, HSMRt, SECCFG and Application Images. | Yes |
| HSM Root of Trust Switch Service |
TIFS-MCU provides Secure RoT Switching to switch to backup keys from the secondary keys. There are two Root of Trust Keys that are present in the SoC: Secondary (SMPK/SMEK) and Backup (BMPK/BMEK). If the secondary key is compromised, the attacker can take the control of the entire SoC. |
Yes |
| HSM Firmware Update Service | TIFS-MCU provides secure firmware update service which consists of certificate authentication flow, verification against the root of trust keys and maintain the image integrity of the image throughout the flow. | Yes |
| Crypto Core | Support Available in SW Driver | Examples Available | Specification |
|---|---|---|---|
|
AESEncryption and Decryption |
|
Yes |
|
|
AESMAC Generation and Verification |
|
Yes |
|
|
SHAHasing Algorithm |
|
Yes |
|
|
RSA Encryption and Decryption Signing and Verification |
|
RSA PKCS1_5 with 4K only |
|
|
ECDSA Signing and Verification |
|
Yes |
|
|
EDDSA Signing and Verification |
|
Yes |
|
|
ECDH Diffie Helman Key Exchange |
|
Yes |