TLS 1.0 Cracked

It has been widely publicized that TLS (any version less than or equal to 1.0), using AES-CBC mode has been recently cracked.  We have received a number of questions and there has been a flurry of activity in the SSL world around this topic.  Hence, we feel compelled to make a few statements of our own.  Here are our thoughts:

1.  The current crack is specific to TLS, versions less than or equal to 1.0.  We support both TLS 1.1 and TLS 1.2.  

2.  We have supported TLS 1.2 for over 18 months now, and believe that we have the most robust and well tested implementation.

3.  We can also note that we`ve done as much TLS 1.2 interop testing as possible.  

To protect yourself from this attack, we recommend using either TLS 1.1 or TLS 1.2 in your project or application. If you must use an older version of the protocol (SSL 3.0, TLS 1.0), we recommend that you use stream ciphers, as they are not vulnerable to the CBC crack. wolfSSL supports several stream ciphers including ARC4, RABBIT, and HC-128. For a full list of wolfSSL features, please see the product page.

References on the above will follow in further posts on our blog. If you have any questions, please contact us at

wolfSSL supports FreeRTOS

We recently ported the wolfSSL embedded SSL library to FreeRTOS. FreeRTOS is a real-time operating system for embedded devices which is designed to be small and simple. Currently, it officially supports 27 architectures and is downloaded over 77 thousand times every year.

Like wolfSSL, FreeRTOS is portable, open source and royalty free. If you are running your project on FreeRTOS and need SSL/TLS support, give wolfSSL a try and see what you think. The wolfSSL embedded SSL library supports the industry standards up to TLS 1.2 and is optimized for embedded environments.

For a full list of features in FreeRTOS/OpenRTOS, and to learn more about the project in general, visit the FreeRTOS website at

If you have any questions about using wolfSSL with FreeRTOS, please contact us at


yaSSL is a General Member of the Intel Embedded Alliance

yaSSL is strongly committed to fostering both partnerships and community, and as such, we make it a point to go out of our way to support both. We can now report that yaSSL is a General Member of the Intel Embedded Alliance: a community of embedded developers and solution providers. We hope to see new opportunities arise through this membership that will be beneficial to both yaSSL and our users.

You can now find wolfSSL and the yaSSL Embedded Web Server listed in the Intel Embedded Alliance Solutions Directory:

wolfSSL Embedded SSL Library: Directory Link
yaSSL Embedded Web Server: Directory Link

If you are interested in forming a partnership with yaSSL, or have any questions regarding our partnership or community involvement, please contact us

wolfSSL NDK for Android Development

Are you developing for Android? If so, we have recently created an Android NDK package for the wolfSSL Embedded SSL library. Using this package as a guide, you should be able to easily integrate the native wolfSSL library into your Android application for either SSL or cryptography use.

wolfSSL supports the current SSL standards up to TLS 1.2 as well as a long list of ciphers (which can be used individually by your application as well), and is dual licensed under both the GPLv2 as well as a standard commercial license. For a full list of features of the wolfSSL embedded SSL library, please see the product page, here: wolfSSL Product Page.

The wolfSSL NDK contains the wolfSSL library as well as a sample application that runs through tests of the CTaoCrypt crypto library. You can find the NDK package at the following GitHub repository:

Let us know what you think at We welcome your feedback and constructive criticism to make our package better.

– Team yaSSL

TLS 1.2 signature_algorithm Extension

Some of you may be familiar with the TLS 1.2 signature_algorithm extension, and might be curious if wolfSSL supports it. The signature_algorithm extension is found in section RFC5246 (, and is a hello extension of type supported_signature_algorithms. The purpose of this extension is to allow clients to indicate to the server which signature/hash algorithm pairs may be used in digital signatures. If the client supports the default algorithms, the client is not required to send this extension.

wolfSSL supports the default algorithms, and as such, the wolfSSL client does not support this extension. The wolfSSL server will accept this extension if received from a client, but currently doesn’t do anything with the response it receives. This is something that will most likely be added to wolfSSL in the future when more clients and servers start using non-default extension algorithms.

If you have any questions about wolfSSL, or would like more information, please let us know at

Team yaSSL

Are you using wolfSSL in your Project?

Are you currently using wolfSSL in your open source, community, or hobby project? If so, we’d love to hear about what you’ve done so far and what your plans are for the future. yaSSL is dedicated to helping community-based projects who are using the wolfSSL embedded SSL library or the yaSSL Embedded Web Server. Let us know about your project at and we’ll put you up on our Community page.

Technical support for community-based open source projects is free and available either through our support forums, or by emailing us directly at

To access and download our most recent wolfSSL source code, please visit our project page on GitHub, here. As always, please feel free to contact us with any questions you might have regarding our products.

Team yaSSL