fleaTLS Performance

In the following we provide performance measurements of fleaTLS public-key algorithms and a sample TLS handshake on an ARM Cortex-M3 @ 96 MHz.

RSA Performance
RSA key size Encryption or signature verification Decryption or signature generation
RSA 1024 5 ms 184 ms
RSA 1536 9 ms 539 ms
RSA 2048 16 ms 1118 ms


ECDSA Performance

The following measurements are representative for any GF(p) curves such the Brainpool or NIST domain parameters.

ECC key size Key generation Signature verification Signature generation
160 Bit 110 ms 130 ms 114 ms
224 Bit 188 ms 224 ms 194 ms
256 Bit 241 ms 292 ms 244 ms


Real Life TLS Handshake Example

Characteristics of a fleaTLS client and a server demo implementation, each running on an LPC1768 ARM mbed demo board featuring an ARM Cortex-M3 @ 96 with TCP/IP, using a full-fledged TLS 1.2 implementation including X.509 certificate verification. They perform a TLS handshake using RSA 1024 key exchange.

Code size RAM requirement TLS Handshake timing
40 KB < 16 KB 0.51 s

Connecting to the embedded TLS server from a standard PC using the Firefox Browser is considerably faster, namely only takes about 300ms.