# Mbed-TLS/mbedtls

An open source, portable, easy to use, readable and flexible TLS library, and reference implementation of the PSA Cryptography API. Releases are on a varying cadence, typically around 3 - 6 months between releases.

Repository: https://github.com/Mbed-TLS/mbedtls
Canonical: https://ross.abutalabs.com/products/mbedtls
Homepage: https://www.trustedfirmware.org/projects/mbed-tls/
Language: C
License: NOASSERTION
License Family: other
Topics: tls, ssl, crypto, cryptography-library, psa
Last push: 2026-08-20T18:55:15+00:00

## Health v2 (maintenance only)
Score: 92/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 98, release rhythm 80, longevity 100
- inputs: {"age_days": 5040, "days_push": 13, "days_rel": 57, "gap_med": 48, "n_releases_24m": 12}
- flags: no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 6918, forks 2957 (observed 2026-08-28T04:09:51.397964+00:00)

## What it is
Mbed TLS is a portable C library implementing TLS, DTLS, and X.509 certificate handling, plus a reference implementation of the PSA Cryptography API via TF-PSA-Crypto. Its small code footprint makes it a popular choice for embedded systems and IoT devices.

## Use cases
- add TLS/SSL encryption to an embedded C application
- implement DTLS for constrained IoT devices
- parse and manipulate X.509 certificates in C
- perform cryptographic operations via the PSA Crypto API
- build a secure firmware bootloader with TLS support
- port a TLS stack to a microcontroller with minimal footprint

## When to choose
- you need a small-footprint TLS stack for embedded or IoT targets
- you want a readable, portable C cryptography library
- you need PSA Cryptography API compliance or cryptoprocessor driver support
- you target Arm platforms or Trusted Firmware ecosystems like TF-M or OP-TEE

## When to avoid
- you need a high-level TLS API in a managed language like Python or Java
- you want hardware-accelerated TLS offload via a system service rather than an in-process library
- your project requires FIPS-validated modules out of the box

## Facets
- artifact type: library
- maturity: stable
- function: cryptography, security, sdk
- domain: security, embedded-systems, developer-tools
- platform: c, cpp, embedded, windows, cross-platform
- tags: tls, ssl, dtls, x509, psa-crypto, embedded, iot, linux, macos

## Member repositories
- Mbed-TLS/mbedtls (main) score 92

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:09:51.397964+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T17:41:26.485745+00:00, confidence not recorded.
  - readme: https://github.com/Mbed-TLS/mbedtls (fetched 2026-08-28T04:09:51.397964+00:00, sha 4f159c3cfcaf)
  - homepage: https://www.trustedfirmware.org/projects/mbed-tls/ (fetched 2026-08-29T08:37:16.460166+00:00, sha 3d07655f303c)
  - site_page: https://www.trustedfirmware.org/about (fetched 2026-08-29T08:37:16.463606+00:00, sha 82d8568dec62)
  - site_page: https://www.trustedfirmware.org/faq (fetched 2026-08-29T08:37:16.467799+00:00, sha bd51b1ab8cef)
  - site_page: https://www.trustedfirmware.org/blog/tf-m-v2-3-0_lts_etc (fetched 2026-08-29T08:37:16.470995+00:00, sha 22e34cf5ddb6)
- Data as of 2026-08-30T08:39:29.467469+00:00.
