wolfSSL

from Wikipedia, the free encyclopedia
wolfSSL
Basic data

developer Todd Ouska
Publishing year February 19, 2006
Current  version 4.0.0
(March 21, 2019)
programming language C.
category Cryptographic library
License GNU General Public License or Commercial License
www.wolfssl.com

wolfSSL (formerly CyaSSL or yet another SSL, yaSSL ) is a small, portable, built-in SSL / TLS - program library , which especially for developers of embedded systems is suitable. It is an open source implementation of TLS (SSL 3.0, TLS 1.0, 1.1, 1.2, 1.3, and DTLS 1.0 and 1.2) that was created in the C programming language . It includes SSL / TLS client libraries and SSL / TLS server implementations, as well as support for multiple programming interfaces , including those defined by SSL and TLS. wolfSSL also contains an OpenSSL compatibility interface with the most widely used OpenSSL functions.

As the successor to CyaSSL, wolfSSL is a C ++ based SSL library for embedded environments and real-time operating systems with limited resources.

Platforms

The source code of wolfSSL is portable , which makes it available for a variety of platforms. In 2015, Intel recommended using wolfSSL with Intel Galileo in order to have a secure communication method available in the Arduino environment.

history

The origin of yaSSL, or yet another SSL (which means something like: yet another SSL), dates back to 2004. OpenSSL was available at that time and was licensed twice under the OpenSSL license and the SSLeay license. yaSSL, as an alternative, was also developed and licensed twice - with a commercial license and the GPL. yaSSL offered a more modern API, commercial developer support and was rounded off by OpenSSL compatibility. The first major user of wolfSSL / CyaSSL / yaSSL was MySQL . By bundling with MySQL, yaSSL achieved extremely high distribution numbers in the millions.

Today wolfSSL is used in the open source area as well as for commercial projects. wolfSSL is found in many types of network devices, such as smart devices in cars, IP phones, cell phones, routers, printers, and credit card scanners.

Logs

The lightweight SSL library wolfSSL implements the following protocols:

  • SSL 3.0, TLS 1.0, TLS 1.1, TLS 1.2, TLS 1.3
  • DTLS 1.0, DTLS 1.2

Notes:

SSL 2.0 - wolfSSL does not support SSL 2.0 due to security concerns

SSL 3.0 - wolfSSL has disabled SSL 3.0 during compilation since wolfSSL 3.6.6; however, it can still be activated.

wolfSSL uses the following cryptography libraries:

wolfCrypt

wolfSSL uses the cryptographic services of wolfCrypt by default. wolfCrypt offers RSA , ECC , DSS , Diffie-Hellman , EDH, NTRU , DES , Triple DES , AES ( CBC , CTR , CCM , GCM ), Camellia , IDEA , ARC4 , HC-128 , ChaCha20 , MD2 , MD4 , MD5 , SHA-1 , SHA-2 , BLAKE2 , RIPEMD-160 , Poly1305 , random number generator, extensive integer support and Base64 coding.

wolfCrypt also includes support for the new Curve25519 and Ed25519 algorithms .

wolfCrypt acts as the backend for some popular software packages and libraries, including MIT Kerberos .

wolfCrypt was validated in 2015 by the National Institute of Standards and Technology of the USA as encryption software according to the FIPS 140-2 standard. Version 4.0.0 was revalidated in March 2019.

NTRU

CyaSSL + contains the NTRUEncrypt public key encryption . The addition of NTRU to CyaSSL + resulted from a cooperation between yaSSL and Security Innovation. NTRU is particularly suitable for mobile and embedded environments, as it only requires a reduced bit size to ensure the same security as other public key systems. In addition, it is not known to be susceptible to attacks from quantum computers . Some cipher suites that use NTRU are available with CyaSSL +, including AES-256, RC4, and HC-128.

Licensing

wolfSSL is an open source program which is licensed under the GNU General Public License GPLv2 (alternatively under a commercial license).

See also

Individual evidence

  1. Meet the Team: Todd Ouska , May 22, 2014
  2. wolfSSL ChangeLog
  3. wolfssl.com
  4. A. Johny, JS Jayasudha: Secure Socket Layer Implementations - A Review . In: International Journal of Computer Science & Engineering Technology (IJCSET) . tape 4 , no. 2 , 2013, p. 118-124 ( ijcset.com [PDF]).
  5. Bringing SSL to Arduino on Galileo Through wolfSSL . (PDF) Intel, March 23, 2015
  6. Source, license. OpenSSL
  7. license. wolfSSL
  8. compatibility /
  9. MySQL, Using SSL Connections ( Memento of the original from August 18, 2014 in the Internet Archive ) Info: The archive link was inserted automatically and has not yet been checked. Please check the original and archive link according to the instructions and then remove this notice. @1@ 2Template: Webachiv / IABot / dev.mysql.com
  10. wolfSSL - Community
  11. wolfSSL And Whitewood Come Together For netRandom Integration, To Safeguard IoT . iotleague.com from March 15, 2016
  12. wolfSSL - Docs | CyaSSL Instructions - Chapter 4 (Features)
  13. wolfSSL - Docs | wolfSSL Instructions - Chapter 10 (wolfCrypt Usage Reference)
  14. ^ Kerberos: The Network Authentication Protocol
  15. FIPS 140-2 Consolidated Validation Certificate No. 0056 (PDF) NIST, September 2, 2015
  16. FIPS 140-2 Consolidated Validation Certificate No. 3389 NIST, May 12, 2019
  17. NTRU CryptoLabs ( Memento of the original dated February 2, 2013 in the web archive archive.today ) Info: The archive link was automatically inserted and not yet checked. Please check the original and archive link according to the instructions and then remove this notice.  @1@ 2Template: Webachiv / IABot / securityinnovation.com
  18. GNU License