A CLI tool that extracts TLS/SSL certificates from servers and exports them as print output, PEM, DER, or p12/JKS truststores.
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
All-in-one open source intelligence tool that runs on-demand checks on any website, covering DNS, SSL, headers, server info and security configuration.
A Rust CLI and library that detects and decodes encoded or encrypted text without a key or cipher name, including multi-layer chains.
A end-to-end encrypted messaging app and network that uses no user identifiers, with iOS, Android, desktop and terminal clients.
Open-source disk encryption software for creating encrypted volumes and partitions, forked from TrueCrypt 7.1a with security enhancements.
Self-hosted control plane that issues, renews, discovers, inventories and deploys TLS certificates across your infrastructure.