IoT Demo Series #2: wolfSSL Working with Twilio and mbed

You may be familiar in general with the role of Web APIs in IoT scenarios. This demo shows how CyaSSL can easily secure the communications between IoT devices and cloud services.

Twilio is a cloud-based Voice and SMS service that allows a client PC or smart phone to be used in building intelligent communications. With the compact security protocol for embedded systems like CyaSSL, the service can immediately be extended to smart “things” in the network.

This simple demo program runs on any network-connected mbed with a CyaSSL+HTTPS based web API. It triggers Twilio phone call and text speech through the web API.

To take a look at the project, please visit our mbed site and import the demo.

http://mbed.org/users/wolfSSL/
http://mbed.org/users/wolfSSL/code/CyaSSL-Twilio/
http://mbed.org/users/wolfSSL/code/CyaSSL-Twilio-Dropbox/

For more information:
Twilio: http://twilio.com
mbed: http://mbed.org

mbed HTTPClient class:
http://mbed.org/users/donatien/code/HTTPClient/
http://mbed.org/handbook/TCP-IP-protocols-and-APIs

Using wolfSSL with SmartOS

wolfSSL has been tested with and works on SmartOS! SmartOS is an operating system used specifically for databases and in conjuncture with cloud operations. It inherited features from the well known Solaris and has been extended by Joyent to make it great for cloud operators.

One of the big things added was disk I/O throttling – see the following YouTube link on why that is good to have. (http://www.youtube.com/watch?v=a6AJxAYmP-M) . The OS does provide some measure of security in their file operations but wolfSSL could be used alongside the operating system to allow more options for encrypting stagnant files that are being stored and passed between the OS and the cloud. Another feature that wolfSSL could provide for it, along with continuous updates that are focused on security, is that we would be able to provide support for upcoming suites such as recent ones using AEAD.

Contact us here at wolfSSL if this is something you would like to see happen with your cloud and database operations.

wolfSSL IPv6 Compatibility

For some time now wolfSSL has been compatible with and will continue to support IPv6. While according to Google`s IPv6 adoption statistics only 4% of the Internet has adopted IPv6, that number is more than doubling every year. At the beginning of 2013 the percentage of IPv6 adoption was only 1.06%, and at the end of 2013 it was sitting at 2.84%. And now only halfway through 2014, it has risen to 4.06%.

With IPv6 on the rise, the need for an SSL library that supports it is also on the rise. By using the wolfSSL embedded library you are future proofing yourself against the rise of IPv6 with an embedded library built by individuals that have had years of experience securing both IPv4 and IPv6 connections. By design wolfSSL supports both IPv4 and IPv6 and is considered IP neutral, meaning it should work out of the box on either protocol without any additional configurations.

For more information on IPv6, you can refer to it’s wiki page: http://en.wikipedia.org/wiki/IPv6

Google`s IPv6 Statistics: https://www.google.com/intl/en/ipv6/statistics.html

wolfSSL 3.1.0 Released

CyaSSL 3.1.0 has been released and is now available for download from the wolfSSL website. This release includes bug fixes and new features including:

– Fix for older versions of icc without 128-bit type
– Intel ASM syntax for AES-NI
– Updated NTRU support, keygen benchmark
– FIPS check for minimum required HMAC key length
– Small stack (–enable-smallstack) improvements for PKCS#7, ASN
– TLS extension support for DTLS
– Default I/O callbacks external to user
– Updated example client with bad clock test
– Ability to set optional ECC context info
– Ability to enable/disable DH separate from opensslextra using –enable-dh and –disable-dh
– Additional test key/cert buffers for CA and server, located in certs_test.h
– Updated example certificates

Please see the README and our on-line documentation for more information or feel free to contact us.

wolfSSL and openPicus

openPicus provides hardware for use with IoT, M2M, and the cloud. These hardware modules connect using Wifi and Ethernet connections, and as such, these connections need to be secured when communicating. wolfSSL is curious about the current need of our customer and user base for having secure connections on this hardware.

Do you want to use CyaSSL with openPicus modules? Contact us if SSL/TLS or cryptography support for OpenPicus is something that you would like to see added to CyaSSL and/or wolfCrypt.

meta-wolfssl Layer for Yocto and OpenEmbedded

We have been working within OpenEmbedded and the Yocto Project to develop an Open Source SSL/TLS layer designed for incorporating CyaSSL into custom Linux builds for embedded systems. meta-wolfssl contains three completed recipes including the CyaSSL library as well as the CTaoCrypt (wolfCrypt) test and benchmark executables. You can now test and send information quickly and securely through your embedded device using our portable and lightweight SSL/TLS library.

These recipes can be easily incorporated into any bitbake build, specifically through the use of the OpenEmbedded and Yocto Project utilities. For our original construction, we ran a custom version of core-image-sato (a mobile image platform) on the Minnowboard.

The meta-wolfssl github page includes detailed instructions for installing any of these recipes in your build image. Check back for future updates regarding meta-wolfssl and OpenEmbedded/Yocto. If you have any questions regarding adding wolfSSL to your OpenEmbedded/Yocto projects, feel free to contact us at support@wolfssl.com.

CyaSSL and RakNet

Hi everyone, we’re curious if anyone is interested in using CyaSSL-based RakNet. RakNet is a high-performance network API designed for games or other high-performance network applications. It is intended to provide most all features modern games need, such as a master server, autopatcher, voice chat, and cross-platform capabilities. You can learn more at the following URL:

http://www.jenkinssoftware.com/

If you have any questions, or will like to see CyaSSL working with RakNet, please email us at facts@wolfssl.com.

wolfSSL FIPS 140-2 Certification Status Update

wolfSSL will soon have FIPS 140-2 level one validation for the wolfCrypt crypto engine! We have entered the lab process and will be out of the lab as soon as August 15, 2014. Our application will then be submitted to NIST for final review.

The FIPS certification will support a broad range of wolfSSL customers, specifically those who sell to the US government.

FIPS, Federal Information Processing Standards, consists of public security and communication standardizations developed by the US government. These standardizations are for use by nonmilitary government agencies and contractors.

wolfSSL is on the NIST FIPS 140 in process list, which is here:  https://csrc.nist.gov/Projects/cryptographic-module-validation-program/Modules-In-Process/Modules-In-Process-List (wolfCrypt has since received certificates #2425 and #3389)

We will keep our blog updated on our FIPS certificate progress, but if you would like more information regarding wolfSSL’s FIPS certification, please contact us at facts@wolfssl.com, or call us at +1 425 245 8247.  

wolfSSL Born in the USA!

We receive a lot of questions about the origins of the wolfSSL lightweight SSL library and wolfCrypt software packages.  We get asked where they were developed, and by who?  These questions usually come from US government agencies and their contractors.  Simply stated, mes amis, wolfSSL and wolfCrypt were Born in the USA and written by US citizens

If you have any additional questions about the origins of wolfSSL or wolfCrypt, please contact us at facts@wolfssl.com

Happy 4th of July!