This package includes the SharkSSL lite library and header files.

Dependents:   WebSocket-Client-Example SharkMQ-LED-Demo


Description: SharkSSL is an SSL v3.0 TLS v1.0/1.1/1.2 implementation of the TLS and SSL protocol standard. With its array of compile-time options and Raycrypto proprietary cryptographic algorithms, SharkSSL can be fine-tuned to a footprint that occupies less than 20 kB, while maintaining full x.509 authentication. The SharkSSL-Lite download includes a subset of SharkSSL and header files made for use in non-commercial and for evaluation purposes.




SharkSSL-Lite includes a limited set of ciphers. To use SharkSSL-Lite, the peer side must support Elliptic Curve Cryptography (ECC) and you must use ECC certificates. The peer side must also support the new ChaCha20/Poly1305 cipher combination.

ChaCha20 and Poly1305 for TLS is published RFC 7905. The development of this new cipher was a response to many attacks discovered against other widely used TLS cipher suites. ChaCha20 is the cipher and Poly1305 is an authenticated encryption mode.

SharkSSL-Lite occupies less than 20kB, while maintaining full x.509 authentication. The ChaCha20/Poly1305 cipher software implementation is equally as fast as many hardware accelerated AES engines.

Creating ECC Certificates for SharkSSL-Lite

The following video shows how to create an Elliptic Curve Cryptography (ECC) certificate for a server, how to install the certificate in the server, and how to make the mbed clients connecting to the server trust this certificate. The server in this video is installed on a private/personal computer on a private network for test purposes. The video was produced for the article How to run your own secure IoT cloud server.

Mon May 23 13:56:30 2016 +0000
Type conflict fix (U8-U32) for latest mbed release.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
wini 0:e0adec41ad6b 1
wini 0:e0adec41ad6b 2 SharkSSL for mbed is available under two distinct licensing models:
wini 0:e0adec41ad6b 3 Non-Commercial and standard Commercial licensing.
wini 0:e0adec41ad6b 4
wini 0:e0adec41ad6b 5
wini 0:e0adec41ad6b 6 *** Non-Commercial Software License Agreement
wini 0:e0adec41ad6b 7
wini 0:e0adec41ad6b 8 Non-Commercial licensing is provided for use:
wini 0:e0adec41ad6b 9 (i) in an educational institution environment,
wini 0:e0adec41ad6b 10 (ii) in a personal capacity, or
wini 0:e0adec41ad6b 11 (iii) for non-commercial, evaluation purposes in User’s internal business operations
wini 0:e0adec41ad6b 12
wini 0:e0adec41ad6b 13 To obtain and view a copy of the Non-Commercial Software License Agreement, visit
wini 0:e0adec41ad6b 14
wini 0:e0adec41ad6b 15
wini 0:e0adec41ad6b 16 *** Commercial License
wini 0:e0adec41ad6b 17
wini 0:e0adec41ad6b 18 Businesses and enterprises who wish to incorporate SharkSSL into
wini 0:e0adec41ad6b 19 proprietary appliances or other commercial software products for
wini 0:e0adec41ad6b 20 re-distribution must license commercial versions.
wini 0:e0adec41ad6b 21
wini 0:e0adec41ad6b 22 Contact Real Time Logic for commercial source code license:
wini 0:e0adec41ad6b 23