The underlying cryptography libraries describe here can be selected when configuring CMake by explicitly setting JWT_SSL_LIBRARY to one of three values. The default is to use OpenSSL.
- OpenSSL
- LibreSSL
- wolfSSL
Here's an example:
cmake . -DJWT_SSL_LIBRARY:STRING=wolfSSL These are the versions which are currently being tested:
| OpenSSL | LibreSSL | wolfSSL |
|---|---|---|
Note
⭐ Indicates LTS (Long-Term Support) versions. OpenSSL versions are supported as follows:
- 3.0.19: Supported until 2026-09-07 (LTS)
- 3.5.5: Supported until 2030-04-08 (LTS)
- 3.6.1: Supported until 2026-11-01
A complete list of versions tested in the past can be found on this branch.
JWT-CPP relies on the OpenSSL API, as a result both LibreSSL and wolfSSL need to include their respective compatibility layers. Most system already have OpenSSL so it's important to make sure when compiling your application it only includes one. Otherwise you may have missing symbols when linking.