Repolode
Mbed-TLS

Mbed-TLS/mbedtls

A small, portable C library implementing X.509 certificates and the TLS and DTLS protocols, suited to embedded systems.

Stars
7,008
Forks
2,990
Open issues
1,748
Last commit
3 days ago

What is it?

Mbed TLS is a C library for X.509 certificate manipulation and the TLS and DTLS protocols. Its small code footprint makes it suitable for embedded systems where resources are limited.

The project also includes the TF-PSA-Crypto repository, which provides an implementation of the PSA Cryptography API. Configuration is handled through header files that can be edited by hand or through a Python script, and the library ships with alternative configurations for specific use cases.

The build uses CMake and produces separate libraries for the crypto, X.509 and TLS layers. It also includes example programs, a sizable test suite, and documentation that can be generated with Doxygen.

Key features

  • 01Implements TLS and DTLS protocols along with X.509 certificate handling.
  • 02Provides an implementation of the PSA Cryptography API via TF-PSA-Crypto.
  • 03Configurable at compile time through header files or a Python script.
  • 04Built with CMake and offers shared or static library options.
  • 05Includes example programs and a test suite that requires Python.

Use cases

  • Adding TLS encryption to firmware on microcontrollers or other embedded devices.
  • Building C or C++ applications that need certificate parsing and secure network connections.
  • Integrating PSA-compliant cryptography into a product with a constrained footprint.

Topics

FAQ

What is mbedtls?
A small, portable C library implementing X.509 certificates and the TLS and DTLS protocols, suited to embedded systems. Mbed TLS is a C library for X.509 certificate manipulation and the TLS and DTLS protocols. Its small code footprint makes it suitable for embedded systems where resources are limited.
Is mbedtls free to use? What license does it have?
mbedtls is open source under the Other license. Check the license terms before using it in commercial products.
Is mbedtls still maintained?
Actively maintained. The last commit to mbedtls was on Oct 16, 2026.
What can I use mbedtls for?
Adding TLS encryption to firmware on microcontrollers or other embedded devices. Building C or C++ applications that need certificate parsing and secure network connections. Integrating PSA-compliant cryptography into a product with a constrained footprint.
Where can I get mbedtls?
The source code and installation instructions are on GitHub: https://github.com/Mbed-TLS/mbedtls

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects