Skip to content

Roadmap for bumping Mbed TLS 3.6 to Mbed TLS 4.0/TF-PSA-Crypto 1.0 #102005

@valeriosetti

Description

@valeriosetti

Summary

This is the roadmap to prepare the ground for bumping Mbed TLS version from the current 3.6 revision to 4.0. See corresponding RFC.

1. Remove remaining usage of legacy crypto

In the following I will list all the dependencies on legacy Mbed TLS crypto that need to be transitioned to PSA Crypto API in order to allow this bump to happen smoothly. The list only includes dependencies in Zephyr repo, modules are not checked.

I ran the following command on the main branch at 9334ced in order to find all legacy dependencies:

rg -g '!modules/mbedtls/*' -g '!doc/releases/*' -ie 'mbedtls_(ecp|rsa|cipher|ecdh|ecdsa|aes|gcm|ccm|mpi|des|dhm|sha|entropy|ctr_drbg|hmac_drbg|hmac|hkdf|cmac)_' | grep -v _ROM_TABLES | cut -d: -f1 | sort -u

and I got:

2. Following steps

Describe the solution you'd like

Ideally all the above usages of legacy Mbed TLS crypto should be transitioned to PSA Crypto API.

[1] For the specific case of HostAP we know it relies on some legacy modules (ex: bignum) to implement some algorithm that's not yet supported by PSA Crypto API (ex: WPA3). This lack of support from PSA API means that some sort of support for legacy crypto mechanisms need to stay.
Ideally one could claim that the approach might apply to all other legacy dependencies mentioned above. However it should be noted that all legacy crypto modules are now internal to Mbed TLS so they are not granted to have stable interfaces over minor releases. HostAP is an exception and once the PSA Crypto API will implement all the algorithms that HostAP requires, HostAP will need to drop usage of legacy Mbed TLS APIs and move to PSA API.

Metadata

Metadata

Assignees

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions