Mbed TLS
# Mbed TLS

mbed TLS ist eine freie Programmbibliothek für Transport Layer Security, welche bis Februar 2015 unter PolarSSL firmierte. Sie ist unter der GNU GPLv2 oder einer proprietären Lizenz doppelt lizenziert. Sie kann ggf. eine Alternative zu OpenSSL darstellen, hat jedoch nur den minimalen Funktionsumfang, um TLS-Verbindungen abzuwickeln.

Mit seinen geringen Anforderungen von 60 KB Speicher und 64 KB RAM kann PolarSSL auch auf eingebetteten Geräten zum Einsatz kommen. Außerdem können einzelne Module, z. B. kryptographische Funktionen, unabhängig vom Rest der Bibliothek benutzt werden. In späteren Versionen (> 1.3.0) sind Abstraktionsebenen für Speicherverwaltung und Threading eingeführt worden.

## Geschichte

Die PolarSSL-Bibliothek ist eine offizielle Abspaltung von der XySSL-Bibliothek, die vom französischen Hacker Christophe Devine programmiert und am 1. November 2006 erstmals unter der GPL- und BSD-Lizenz veröffentlicht wurde. Als Devine 2008 XySSL nicht länger unterstützen konnte, erlaubte er Paul Bakker, einen offiziellen Fork namens PolarSSL zu erstellen.

Die niederländische Regierung hat 2011 eine Integration von OpenVPN und PolarSSL für geschützte Regierungskommunikation genehmigt.

Im November 2014 wurde der Hersteller von PolarSSL – das Unternehmen Offspark – von ARM gekauft. Das Hauptprodukt wurde von PolarSSL in mbed TLS umbenannt.

## Unterstützung

Da PolarSSL in reinem C ohne weitere Abhängigkeiten geschrieben wurde, unterstützt es momentan viele Betriebssysteme (Linux, Windows, macOS, OpenWrt, Android, iOS und FreeRTOS) auf mehreren Prozessorarchitekturen (ARM, x86, PowerPC, MIPS). PolarSSL wird deshalb auch von großen Open-Source-Projekten benutzt, u. a. von den folgenden:

* OpenVPN
* Hiawatha Webserver
* PowerDNS
* Monkey HTTP Server
* umurmur, einem minimalistischen Mumble-Server
