Tiny SSL Library
Why a tiny SSL library?Most other SSL libraries are written for server and PC platforms. They assume that you have loads of RAM available, no limits on disk storage capacity and that you actually have a filesystem. mbed TLS does not! It has been designed to work on any system that can run C code from tiny sytems to powerhouse PCs.
Tiny SSL library
In order to get a small library, all code is written in readable and portable C code. The library is split up into a lot of small modules that each have their own dedicated functionality. This makes it easier to get from small to tiny, as parts can be disabled with ease.
Even our features have been designed to be disabled. mbed TLS can offer a full-fledged, standard-based, extension supporting, 100+ ciphersuite supporting SSL server, or a tiny dedicated SSL server just supporting the bare minimum to allow the client to connect.
Getting it small
This SSL library has been designed to be small out-of-the-box. Compared to other libraries we have less than 10% of their code base to implement the SSL library functionalities. That's why we call it a tiny SSL library.
Disabling modules and features
All the different modules of this tiny SSL library can be disabled from a single configuration file, called config.h. A lot of different optional features can be disabled here as well. We give you the option to tailor your configuration so you allow just a single SSL ciphersuite out of all our supported ciphersuites (e.g. TLS-RSA-PSK-WITH-AES-256-GCM-SHA384) and the respective key exchange method (i.e. RSA-PSK), without needing to include code for other key exchanges.
If tiny is not enough, you can get even smaller! The footprint of our library can get as small as under 30 Kb RAM and ROM footprint for a working SSL server or SSL client. We specifically made an article to help you to reduce the RAM / ROM footprint of your application if you need to get really small.
Additionally we can help you with tailored advice on getting tiny on your specific device environment.
Check out our other Features for more details!