wolfSSL (ehemals CyaSSL oder yet another SSL, yaSSL) ist eine kleine, portable, integrierte SSL/TLS-Programmbibliothek, welche besonders für Entwickler von Embedded-Systemen geeignet ist. Es ist eine Open-Source-Implementierung von TLS (SSL 3.0, TLS 1.0, 1.1, 1.2, 1.3, und DTLS 1.0 und 1.2), die in der Programmiersprache C erstellt wurde. Sie beinhaltet SSL/TLS Client-Bibliotheken und SSL/TLS Server-Implementierungen sowie Unterstützung multipler Programmierschnittstellen, einschließlich derer, die von SSL und TLS definiert werden. wolfSSL enthält außerdem eine OpenSSL-Kompatibilitätsschnittstelle mit den meist genutzten OpenSSL Funktionen.wolfssl.com
Als Nachfolger von CyaSSL ist wolfSSL eine C basierte SSL-Bibliothek für Embedded-Umgebungen und Echtzeitbetriebssysteme mit beschränkten Ressourcen.
Plattformen Der Quelltext von wolfSSL ist portabel, wodurch es für eine Vielzahl von Plattformen verfügbar ist. Intel empfahl 2015, mit Intel Galileo wolfSSL zu nutzen, um in der Arduino-Umgebung eine sichere Kommunikationsmethode verfügbar zu haben.Bringing SSL to Arduino on Galileo Through wolfSSL. (PDF) Intel, 23. März 2015
Geschichte Der Ursprung von yaSSL, oder yet another SSL (was soviel bedeutet wie: noch ein anderes SSL), liegt im Jahr 2004. OpenSSL war zu dieser Zeit verfügbar und war doppelt lizenziert unter der OpenSSL Lizenz und der SSLeay Lizenz.Quelle, Lizenz. OpenSSL yaSSL, als Alternative, wurde ebenfalls entwickelt und doppelt lizenziert – mit einer gewerblichen Lizenz und der GPL.Lizenz. wolfSSL yaSSL bot eine modernere API, kommerziellen Entwicklersupport und wurde von OpenSSL-Kompatibilität abgerundet.compatibility/ Der erste große Nutzer von wolfSSL/CyaSSL/yaSSL war MySQL. Durch Bündelung mit MySQL erreichte yaSSL extrem hohe Verteilungszahlen in Millionenhöhe.
Heute wird wolfSSL sowohl im Open-Source-Bereich,wolfSSL – Community als auch für kommerzielle Projekte genutzt.wolfSSL And Whitewood Come Together For netRandom Integration, To Safeguard IoT. iotleague.com vom 15. März 2016 wolfSSL ist in vielen Arten von Netzwerkgeräten enthalten, wie etwa Smart Devices in Autos, IP-Telefone, Mobiltelefone, Router, Drucker und Kreditkartenscanner.
Protokolle
Die leichtgewichtige SSL-Bibliothek wolfSSL implementiert die folgenden Protokolle:wolfSSL – Docs | CyaSSL Anleitung – Kapitel 4 (Features)
SSL 3.0, TLS 1.0, TLS 1.1, TLS 1.2, TLS 1.3 DTLS 1.0, DTLS 1.2
Notizen:
SSL 2.0 – wolfSSL unterstützt SSL 2.0 nicht, aufgrund von Sicherheitsbedenken
SSL 3.0 – wolfSSL hat SSL 3.0 während der Kompilierung seit wolfSSL 3.6.6 deaktiviert; es kann jedoch noch immer aktiviert werden.
wolfSSL nutzt die folgenden Kryptographie-Bibliotheken:
wolfCrypt wolfSSL nutzt standardmäßig die kryptographischen Dienste von wolfCrypt.wolfSSL – Docs | wolfSSL Anleitung – Kapitel 10 (wolfCrypt Usage Reference) wolfCrypt bietet 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, Zufallszahlengenerator, weitreichende Integer-Unterstützung und Base64-Codierung.
wolfCrypt beinhaltet außerdem Unterstützung für die neuen Algorithmen Curve25519 und Ed25519.
wolfCrypt agiert als Backend für einige beliebte Softwarepakete und -bibliotheken, unter anderem MIT Kerberos.Kerberos: The Network Authentication Protocol
wolfCrypt wurde 2015 vom National Institute of Standards and Technology der USA als Verschlüsselungssoftware entsprechend dem FIPS 140-2 Standard validiert.FIPS 140-2 Consolidated Validation Certificate No. 0056 (PDF; 325 kB) NIST, 2. September 2015 Im März 2019 erfolgte eine Revalidierung der Version 4.0.0.FIPS 140-2 Consolidated Validation Certificate No. 3389 NIST, 12. Mai 2019
NTRU CyaSSL+ enthält die NTRUEncrypt Public-Key-Verschlüsselung. Das Hinzufügen von NTRU zu CyaSSL+ entstand durch eine Kooperation zwischen yaSSL und Security Innovation. NTRU ist besonders für mobile und Embedded-Umgebungen geeignet, da es nur eine reduzierte Bitgröße benötigt, um die gleiche Sicherheit wie andere Public-Key-Systeme zu gewährleisten. Außerdem ist nicht bekannt, dass es anfällig für Angriffe von Quantencomputern wäre. Einige Cipher Suites, die NTRU verwenden, sind mit CyaSSL+ verfügbar, dazu gehören AES-256, RC4 und HC-128.
Lizenzierung wolfSSL ist ein Open-Source-Programm, welches unter der GNU General Public License GPLv2 (alternativ unter einer kommerziellen Lizenz) lizenziert ist.GNU License
Siehe auch GnuTLS OpenSSL
Einzelnachweise
Kategorie:C-Bibliothek Kategorie:Freie Kryptosoftware Kategorie:Transport Layer Security