wolfSSL
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
- ↑ Meet the Team: Todd Ouska , May 22, 2014
- ↑ wolfSSL ChangeLog
- ↑ wolfssl.com
- ↑ 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]).
- ↑ Bringing SSL to Arduino on Galileo Through wolfSSL . (PDF) Intel, March 23, 2015
- ↑ Source, license. OpenSSL
- ↑ license. wolfSSL
- ↑ compatibility /
- ↑ 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.
- ↑ wolfSSL - Community
- ↑ wolfSSL And Whitewood Come Together For netRandom Integration, To Safeguard IoT . iotleague.com from March 15, 2016
- ↑ wolfSSL - Docs | CyaSSL Instructions - Chapter 4 (Features)
- ↑ wolfSSL - Docs | wolfSSL Instructions - Chapter 10 (wolfCrypt Usage Reference)
- ^ Kerberos: The Network Authentication Protocol
- ↑ FIPS 140-2 Consolidated Validation Certificate No. 0056 (PDF) NIST, September 2, 2015
- ↑ FIPS 140-2 Consolidated Validation Certificate No. 3389 NIST, May 12, 2019
- ↑ 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.
- ↑ GNU License