Secure Communication: Usability & Necessity of SSL/TLS

Network-related applications and devices often use secure communication. Although keeping network communications safe should be a top priority to all developers and engineers, it often gets left behind due to lack of understanding, insufficient funding, or looming deadlines.

Securing a project with SSL shouldn’t have to include a steep learning curve, deep pockets, or an unlimited time frame. By learning a few basics of how things work, where the technology is best used, and what features to look for when trying to choose the right SSL implementation, a developer or engineer can easily, simply, and quickly secure their project – putting both themselves and their employer’s minds at ease.

yaSSL will be giving a presentation at the upcoming Infosecurity Europe conference next week which will address these issues. yaSSL’s presentation will introduce SSL – including why secure communication is important, introductory details about SSL, x509, and the underlying cryptography. It will give an overview of where SSL is used today – including Home Energy, Gaming, Databases, Sensors, VoIP, and more. A description and “shopping list” of important items to look for when trying to choose an SSL implementation will give developers and engineers a solid foundation to begin securing their projects with SSL and will enable them to have more informed discussions with potential vendors on the expo floor at Infosecurity Europe 2012.

Date: April 24, 2012
Time: 12:40pm – 1:05pm
Location: Technical Theater (at Infosecurity Europe, Earl’s Court, London, England)
Speaker: Chris Conlon

Infosecurity Europe: http://www.infosec.co.uk

Secure Communication: Usability & Necessity of SSL/TLS

Network-related applications and devices often use secure communication. Although keeping network communications safe should be a top priority to all developers and engineers, it often gets left behind due to lack of understanding, insufficient funding, or looming deadlines.

Securing a project with SSL shouldn’t have to include a steep learning curve, deep pockets, or an unlimited time frame. By learning a few basics of how things work, where the technology is best used, and what features to look for when trying to choose the right SSL implementation, a developer or engineer can easily, simply, and quickly secure their project – putting both themselves and their employer’s minds at ease.

yaSSL will be giving a presentation at the upcoming Infosecurity Europe conference next week which will address these issues. yaSSL’s presentation will introduce SSL – including why secure communication is important, introductory details about SSL, x509, and the underlying cryptography. It will give an overview of where SSL is used today – including Home Energy, Gaming, Databases, Sensors, VoIP, and more. A description and “shopping list” of important items to look for when trying to choose an SSL implementation will give developers and engineers a solid foundation to begin securing their projects with SSL and will enable them to have more informed discussions with potential vendors on the expo floor at Infosecurity Europe 2012.

Date: April 24, 2012
Time: 12:40pm – 1:05pm
Location: Technical Theater (at Infosecurity Europe, Earl’s Court, London, England)
Speaker: Chris Conlon

Infosecurity Europe: http://www.infosec.co.uk

Great Article on SSL Interception Proxies and Transitive Trust

We recently found a great article on SSL/TLS interception proxies and transitive trust from Jeff Jarmoc at Dell SecureWorks. In his article, Jeff provides a brief introduction, background, and history of the SSL and TLS protocols, then dives into talking about SSL interception proxies.

Reading through the article gives insights into how and why these proxies are used in the real world and explains some of the major risks associated with their use. Although risks can range anywhere from legal exposure to an increased threat surface to a potential for decreased cipher strength, these proxies are a necessary part of many networks.

Jeff introduces a helpful test framework (linked below) for determining which (if any) vulnerabilities an SSL proxy is susceptible to. The framework is designed to be run from behind the proxy, and is as simple as visiting a web page. Following an explanation of some of these vulnerabilities, Jeff lists some of the current vulnerabilities found in existing proxy solutions today.

The wolfSSL embedded SSL library has had the ability to do SSL inspection for quite some time now, as we originally posted about it in September of 2010. If you have any questions about wolfSSL’s SSL inspection, please feel free to contact us at info@yassl.com.

Transitive Trust: SSL/TLS Interception Proxies
Proxy Test Framework: https://ssltest.offenseindepth.com

As of March 22, 2018 at 8:57am CMT, the “Proxy Test Framework” URL does not exist – the data from the table is shown below.

Test Result
Mismatched CN
NOT

VULNERABLE

Unknown CA
NOT

VULNERABLE

Self Signed
NOT

VULNERABLE

Expired
NOT

VULNERABLE

Basic Constraints
NOT

VULNERABLE

Revoked
NOT

VULNERABLE

Null Char (Must Trust CA)
NOT

VULNERABLE

Article on Security Fundamentals for Embedded Software

We recently read a good article from EE Times about security fundamentals for embedded software. This article points out that embedded software and device developers should take security precautions into consideration, as many developers assume that their applications or devices are not vulnerable to attack.

Topics covered in the article include doing a “threat analysis” to determine how attackers could attack an embedded device, things to keep in mind when developing embedded software systems, and common mistakes made by embedded developers which can easily lead to vulnerability.

Article: Security fundamentals for embedded software

GCM Encryption Mode Coming Soon to wolfSSL

A while back, we posted that the wolfSSL embedded SSL library would be getting support for Galois/Counter Mode (GCM) encryption in the near future. This is still true! If everything goes as planned, GCM support should be generally available for wolfSSL in June of this year. Specifically, GCM will be used in wolfSSL with AES and as a cipher suite for SSL.  

One of the benefits of GCM is its efficiency and performance in both hardware and software. Galois/Counter Mode (GCM) for block ciphers incorporates both CTR (counter mode) as well as a message authentication code (MAC), providing both integrity and confidentiality. It is designed for block ciphers with a block size of 128 bits and is able to take full advantage of parallel processing and pipelining. Referencing the Wikipedia article on GCM, “the key feature is that the Galois field multiplication used for authentication can be easily computed in parallel thus permitting higher throughput than the authentication algorithms that use chaining modes, like CBC.”

To learn more about the performance and security details of GCM, you can visit the Wikipedia page listed below. We expect to see GCM more widely adopted in the near future.  If you`re interested in testing AES with GCM or have any question or comments please let us know.

GCM (Wikipedia): http://en.wikipedia.org/wiki/Galois/Counter_Mode
RFC 5288 (AES Galois Counter Mode (GCM) Cipher Suites for TLS): https://tools.ietf.org/html/rfc5288

Feedback Requested on wolfSSL and Qt Integration

Would you like to see the wolfSSL embedded SSL library integrated into the popular Qt framework? We’ve been throwing around the idea of adding wolfSSL support to Qt and want to hear your feedback. If wolfSSL was integrated into Qt, it would be available as a build option and alternative to using Qt with OpenSSL.

wolfSSL could provide the Qt framework with a much smaller footprint when compared to using Qt with OpenSSL. Looking at typical build sizes of both wolfSSL and OpenSSL, it is typical to see a 20X decrease in footprint size.

What do you think? Please let us know your thoughts, comments, and feedback at info@yassl.com, or by posting in our related thread in our forums.

Qt: https://www1.qt.io/product/
Qt (Wikipedia): http://en.wikipedia.org/wiki/Qt_(software)