Now Available: CyaSSL for MQX RTCS – Enabling Secure Network Connections for Kinetis MCUs
We are pleased to announce the availability of the popular CyaSSL SSL / TLS software library in a pre-configured commercial-evaluation add-on package for Kinetis SDK v1.1.0 (and later).
In just a few extra steps, you can enable secure network connectivity with CyaSSL in MQX Real-Time TCP/IP Communication Suite (RTCS) examples.
Installers for Windows and Linux are available. CyaSSL version 3.2.0 (or later) included.
Description
The CyaSSL embedded SSL library is a lightweight SSL/TLS library written in ANSI C and targeted for embedded, RTOS, and resource-constrained environments - primarily because of its small size, speed, and feature set. CyaSSL supports industry standards up to the current TLS 1.2 and DTLS 1.2 levels, is up to 20 times smaller than OpenSSL, and offers progressive ciphers such as HC-128, RABBIT, NTRU, and SHA-3. User benchmarking and feedback indicates dramatically better performance when using CyaSSL over OpenSSL.
Key Features
- Support for securing both Client and Server applications
- Compliant to the latest industry standard SSL, TLS, and DTS protocols (SSL 3.0, TLS 1.0/1.1/1.2, DTLS 1.0/1.2)
- Up to 20x smaller than OpenSSL
- Lightweight and configurable memory footprint (FLASH 20-100 kB, RAM 1-36 kB)
- Hashing Functions Supported: MD2, MD4, MD5*, SHA-1*, SHA-2, SHA-256*, SHA-384, SHA-512, BLAKE2b, RIPEMD-160, Poly1305
* - Accelerated throughput available via the Memory-Mapped Cryptographic Acceleration Unit (MMCAU) on select Kinetis MCUs.
- Block, Stream, and Authenticated Ciphers Supported: AES* (CBC, CTR, GCM, CCM), Camellia, DES*, 3DES*, ARC4, RABBIT, HC-128, ChaCha20
* - Accelerated throughput available via the Memory-Mapped Cryptographic Acceleration Unit (MMCAU) on select Kinetis MCUs.
- Public Key Options Supported: RSA, DSS, DH, EDH, NTRU
- Numerous Other Key Features Provided:
Key Derivation (HMAC, PBKDF2, PKCS#5), Key Generation (RSA), Signed Certificate Generation (x509 v3 RSA and ECC), PEM and DER certificates, Private Key Encryption (PKCS #8, #5, #12), Elliptic Curve Cryptography (ECDH-ECDSA, ECDHE-ECDSA, ECDH-RSA, ECDHE-RSA), Online Certificate Status Protocol (OCSP), Certificate Revocation List (CRL), IPv4, IPv6, and more.
More details at CyaSSL Embedded SSL Library Product Details
Licensing
Through our partnership with WolfSSL, Freescale is providing a free commercial evaluation version of CyaSSL for Freescale customers to use for internal development, testing, and evaluation purposes. Customers who wish to incorporate CyaSSL into proprietary appliances must obtain a commercial license from WolfSSL, which is available at a very reasonable cost.
For additional information on licensing, see WolfSLL License Information.
Hardware Supported
Project build files are provided for the following Freescale evaluation boards:
FRDM-K64F
TWR-K64F120M
TWR-K60D100M
Example Projects Provided
HTTP Web Server - Access the board with a web browser using an authenticated and encrypted connection.
How to Get Started
1. Download Kinetis SDK v1.1.0 (or later) at www.freescale.com/ksdk
Click Download.
Choose the appropriate Kinetis SDK installer for your operating system, then download and install it.
2. Now install CyaSSL for Kinetis SDK with MQX RTOS
On the left side of the same download page, click Updates and Patches
3. Choose the appropriate CyaSSL installer for your operating system, download and install it.
CyaSSL source files will be installed within the <Kinetis SDK>\tcpip\rtcs\source\ssl\ folder in the Kinetis SDK directory tree.
On Windows, this path is typically: C:\Freescale\KSDK_1.1.0\tcpip\rtcs\source\ssl
4. Check out the _readme.txt file at <Kinetis SDK>\tcpip\rtcs\source\ssl to see how to run the example projects provided and to see how to add CyaSSL to your projects.
More tutorials to come.
Best of luck with your connected embedded projects!
Mac Lobdell
Freescale Software Technical Marketer