WolfSSL
lightweight software library implementing Transport Layer Security

wolfSSL is a small, portable, embedded SSL/TLS library targeted for use by embedded systems developers. It is an open source implementation of TLS (SSL 3.0, TLS 1.0, 1.1, 1.2, 1.3, and DTLS 1.0, 1.2, and 1.3) written in the C programming language. It includes SSL/TLS client libraries and an SSL/TLS server implementation as well as support for multiple APIs, including those defined by SSL and TLS. wolfSSL also includes an OpenSSL compatibility interface with the most commonly used OpenSSL functions.
Platforms
wolfSSL is currently available for Microsoft Windows, Linux, macOS, Solaris, ESP32, ESP8266, ThreadX, VxWorks, FreeBSD, NetBSD, OpenBSD, embedded Linux, Yocto Project, OpenEmbedded, WinCE, Haiku, OpenWrt, iPhone, Android, Wii, and GameCube through DevKitPro support, QNX, MontaVista, Tron variants, NonStop OS, OpenCL, Micrium's MicroC/OS-II, FreeRTOS, SafeRTOS, Freescale MQX, Nucleus, TinyOS, TI-RTOS, HP-UX, uTasker, uT-kernel, embOS, INtime, mbed, RIOT, CMSIS-RTOS, FROSTED, Green Hills INTEGRITY, Keil RTX, TOPPERS, PetaLinux, Apache Mynewt, and PikeOS, Deos, Azure Sphere OS, Zephyr, AIX, and Cesium.
History
The genesis of wolfSSL dates to 2004. OpenSSL was available at the time, and was dual licensed under the OpenSSL License and the SSLeay license. yaSSL, alternatively, was developed and dual-licensed under both a commercial license and the GPL. yaSSL offered a more modern API, commercial style developer support and was complete with an OpenSSL compatibility layer. The first major user of wolfSSL/CyaSSL/yaSSL was MySQL. Through bundling with MySQL, yaSSL has achieved extremely high distribution volumes in the millions.
In February 2019, Daniel Stenberg, the creator of cURL, was hired by the wolfSSL project to work on cURL.
Protocols
The wolfSSL lightweight SSL library 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, DTLS 1.3
Extensions: Server Name Indication (SNI), Maximum Fragment Length, Truncated HMAC, Application Layer Protocol Negotiation (ALPN), Extended Master Secret, Supported Elliptic Curves
Ciphersuites: TLS Secure Remote Password, TLS Pre-Shared Key
Post-quantum cryptography: ML-DSA added to sigAlgs, ML-KEM added to Supported Groups, QSH (deprecated and removed), Dual Algorithm Certificate, and TLS 1.3 Dual Algorithm Authentication Support
Hybrid TLS Key Establishment Schemes:
ECDHE P-256 with Kyber Level 1
ECDHE P-384 with Kyber Level 3
ECDHE P-521 with Kyber Level 5
Public Key Cryptography Standards:
PKCS #1 - RSA Cryptography
PKCS #3 - Diffie-Hellman Key Agreement
PKCS #5 - Password-Based Encryption
PKCS #7 - Cryptographic Message Syntax (CMS)
PKCS #8 - Private-Key Information Syntax
PKCS #9 - Selected Attribute Types
PKCS #10 - Certificate signing request (CSR)
PKCS #11 - Cryptographic Token Interface
PKCS #12 - Certificate/Personal Information Exchange Syntax Standard
QUIC support
OCSP, OCSP Stapling, CRL
HPKE (Hybrid Public Key Encryption)
ECH (Encryption Client Hello)
x.509v3 Certificates
Mutual authentication
Protocol Notes:
SSL 2.0 – SSL 2.0 was deprecated (prohibited) in 2011 by RFC 6176. wolfSSL does not support it.
Begin with the source’s own compact description: “WolfSSL” is lightweight software library implementing Transport Layer Security. The dossier treats that line as a proposition to test through WolfSSL, lightweight and software, not as a finished interpretation.
Why this record matters
The phrase “lightweight software library implementing Transport Layer Security” supplies a clear boundary for inquiry. It also exposes the unanswered questions: who defined that boundary, when it became stable and which sources sit outside it.
Place names and jurisdictional language are key evidence: both can reveal earlier catalogue descriptions and overlooked record series. The source revision retrieved here is dated Nov 18, 2025. The linked authority identifier is Q5197351. 1 of 3 selected statements include explicit references; 1 carry qualifiers and 0 use preferred rank. The first chronological checks are 2004, 2019 and 2011.
Architectural summaries often privilege surviving fabric and can understate demolished phases, contested use or displaced communities. The lead is largely declarative, so disagreement and counter-evidence require a deliberate search beyond the opening account. Authority statements aid reconciliation but still require their own references, qualifiers and ranks to be checked.
How to read it
Treat names, boundaries and functions as historically changeable. Maps, plans, inventories and administrative records can clarify what the place meant at different dates.
- Historic place names
- Jurisdictional context
- Routes into maps and plans
Contemporary maps, plans, listed-building records, estate papers and the responsible local or national archive.
Three-step research path
- Establish the record: confirm the title “WolfSSL”, its source revision and the description used here.
- Expand the search: follow WolfSSL primary sources, WolfSSL archive and WolfSSL research across catalogues and specialist indexes.
- Test the account: compare the strongest cited source with the responsible institution’s current record and note any disagreement.
Questions for further research
- Which source most directly establishes the central claim about “WolfSSL”?
- What physical evidence or contemporary plan supports the description?
- Which authority defined the place, boundary or structure at the relevant date?
Search terms from this dossier
This entry incorporates text from “WolfSSL” on English Wikipedia. Contributors are listed in the page history. Text is available under the Creative Commons Attribution-ShareAlike 4.0 License. Selected authority identifiers and statements are retrieved from Wikidata under CC0; their references and qualifiers remain part of the verification path.