WolfSSL

wolfSSL
Basisdaten

Entwickler Todd Ouska[1]
Erscheinungsjahr 19. Februar 2006
Aktuelle Version 5.9.2[2]
(25. Juni 2026)
Betriebssystem Plattformunabhängig
Programmier­sprache C
Kategorie Kryptografiebibliothek
Lizenz GNU General Public License oder kommerzielle Lizenz
www.wolfssl.com

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.[3]

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.[4] Intel empfahl 2015, mit Intel Galileo wolfSSL zu nutzen, um in der Arduino-Umgebung eine sichere Kommunikationsmethode verfügbar zu haben.[5]

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.[6] yaSSL, als Alternative, wurde ebenfalls entwickelt und doppelt lizenziert – mit einer gewerblichen Lizenz und der GPL.[7] yaSSL bot eine modernere API, kommerziellen Entwicklersupport und wurde von OpenSSL-Kompatibilität abgerundet.[8] Der erste große Nutzer von wolfSSL/CyaSSL/yaSSL war MySQL.[9] Durch Bündelung mit MySQL erreichte yaSSL extrem hohe Verteilungszahlen in Millionenhöhe.

Heute wird wolfSSL sowohl im Open-Source-Bereich,[10] als auch für kommerzielle Projekte genutzt.[11] 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:[12]

  • 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.[13] 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.[14]

wolfCrypt wurde 2015 vom National Institute of Standards and Technology der USA als Verschlüsselungssoftware entsprechend dem FIPS 140-2 Standard validiert.[15] Im März 2019 erfolgte eine Revalidierung der Version 4.0.0.[16]

NTRU

CyaSSL+ enthält die NTRUEncrypt[17] 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.[18]

Siehe auch

Einzelnachweise

  1. Meet the Team: Todd Ouska, 22. Mai 2014
  2. Release 5.9.2. 25. Juni 2026 (abgerufen am 26. Juni 2026).
  3. wolfssl.com
  4. A. Johny, J.S. Jayasudha: Secure Socket Layer Implementations – A Review. In: International Journal of Computer Science & Engineering Technology (IJCSET). Band 4, Nr. 2, 2013, S. 118–124 (ijcset.com [PDF; 69 kB]).
  5. Bringing SSL to Arduino on Galileo Through wolfSSL. (PDF) Intel, 23. März 2015
  6. Quelle, Lizenz. OpenSSL
  7. Lizenz. wolfSSL
  8. compatibility/
  9. MySQL, Using SSL Connections (Memento vom 18. August 2014 im Internet Archive)
  10. wolfSSL – Community
  11. wolfSSL And Whitewood Come Together For netRandom Integration, To Safeguard IoT. iotleague.com vom 15. März 2016
  12. wolfSSL – Docs | CyaSSL Anleitung – Kapitel 4 (Features)
  13. wolfSSL – Docs | wolfSSL Anleitung – Kapitel 10 (wolfCrypt Usage Reference)
  14. Kerberos: The Network Authentication Protocol
  15. FIPS 140-2 Consolidated Validation Certificate No. 0056 (PDF; 325 kB) NIST, 2. September 2015
  16. FIPS 140-2 Consolidated Validation Certificate No. 3389 NIST, 12. Mai 2019
  17. NTRU CryptoLabs (Memento vom 2. Februar 2013 im Webarchiv archive.today)
  18. GNU License

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.