1+ ### wolfCrypt JNI Release 1.10.0 (TBD)
2+
3+ Release 1.10.0 of wolfCrypt JNI and JCE has bug fixes and new features including:
4+
5+ ** New JCE Functionality:**
6+ - Add Cipher ` RSA/ECB/OAEPWithSHA-256AndMGF1Padding ` support (PR 188)
7+ - Add Cipher ` RSA/ECB/OAEPWithSHA-1AndMGF1Padding ` support (PR 191)
8+ - Add Cipher ` WRAP_MODE ` and ` UNWRAP_MODE ` support for RSA-based key wrapping (PR 197)
9+ - Add PKIX CertPathBuilder implementation using native wolfSSL ` X509_STORE ` (PR 190, 192, 198, 200)
10+ - Add ` jdk.certpath.disabledAlgorithms ` enforcement to CertPathBuilder and CertPathValidator (PR 200)
11+ - Register default FIPS error callback in ` WolfCryptProvider ` for FIPS error debugging (PR 207)
12+ - Enrich ` WolfCryptException ` with FIPS module status for ` FIPS_NOT_ALLOWED_E ` errors (PR 207)
13+
14+ ** New JNI Functionality:**
15+ - Add hex string conversion via ` WolfCrypt.toHexString() ` and ` WolfCrypt.hexStringToByteArray() ` (PR 187)
16+ - Add PEM to DER conversion support for keys and certificates (PR 186)
17+ - Add ` setFlags() ` and ` setVerificationTime() ` methods to ` WolfSSLX509StoreCtx ` (PR 192)
18+
19+ ** New Property Support:**
20+ - Add ` wolfssl.skipLibraryLoad ` system property for custom native library loading (PR 189)
21+ - Add ` wolfjce.ioTimeout ` system property for OCSP/CRL IO timeouts (PR 199)
22+
23+ ** JNI and JCE Changes:**
24+ - Fix FIPS error callback lifecycle, deregister native callback in ` JNI_OnUnload ` (PR 203)
25+ - Fix Ed25519 signature verification passing message length instead of signature length (PR 205)
26+ - Fix ` jlong ` to ` word32 ` pointer cast in ` RsaFlattenPublicKey ` and ` RsaExportCrtKey ` (PR 205)
27+ - Fix unsigned return value handling for ` wc_RsaEncryptSize() ` across RSA functions (PR 205, 206)
28+ - Add HMAC offset/length bounds validation for byte array and ByteBuffer variants (PR 205)
29+ - Improve NULL check handling in HMAC, Ed25519, Curve25519, and Pwdbased JNI wrappers (PR 205)
30+ - Add missing ` releaseByteArray() ` calls across ECC, RSA, ChaCha, and AES-GCM JNI functions (PR 205, 206)
31+ - Fix incorrect error code in ` HmacFinal ` hash size check (PR 205)
32+ - Return defensive copy of IV array from ` engineGetIV() ` (PR 205)
33+ - Fix ` wc_ecc_import_private_raw() ` not passing validated ` curveId ` to underlying import function (PR 206)
34+ - Zeroize encoded key byte array in ` WolfCryptPBEKey.destroy() ` (PR 206)
35+ - Use constant-time comparison for GMAC tag verification (PR 206)
36+ - Add missing AES-CTR and AES-OFB cleanup in ` WolfCryptCipher.finalize() ` (PR 206)
37+ - Fix signed integer overflow in JNI offset/length bounds checks (PR 206)
38+ - Add ByteBuffer bounds validation in SHA, MD5, and RNG native functions (PR 206)
39+ - Fix missing return after throw in SHA and MD5 copy NULL checks (PR 206)
40+ - Remove unused ` wc_RsaPSS_VerifyInline ` JNI wrapper that skipped padding check (PR 206)
41+ - Reduce ` WC_RNG ` struct allocations in ` WolfCryptCipher ` and ` WolfCryptDhParameterGenerator ` (PR 208)
42+ - Expand FIPS-compliant SecureRandom sanitization in ` WolfCryptKeyGenerator ` (PR 209)
43+ - Zero intermediate output buffers before free across JNI wrappers (PR 210)
44+ - Fix DH key export return value reset in success paths (PR 210)
45+ - Free internal AES struct in GMAC after use (PR 210)
46+
47+ ** Example Changes:**
48+ - Add ` CertPathBuilder ` and ` CertPathValidator ` example (PR 190)
49+ - Update Android example project CMakeLists.txt file exclusion list (PR 198, 206)
50+ - Add JKS to BKS KeyStore conversion script for Android testing (PR 209)
51+ - Migrate Android example project from ` jcenter() ` to ` mavenCentral() ` and AndroidX (PR 209)
52+ - Add Gradle wrapper ` distributionSha256Sum ` to Android example project (PR 210)
53+
54+ ** Testing Changes:**
55+ - Add Java 24 and 25 tests to GitHub Actions workflows (PR 193)
56+ - Add GitHub Actions workflow for Linux 32-bit testing with Java 17 (PR 194)
57+ - Add GitHub Actions workflow for UBSan undefined behavior testing (PR 195)
58+ - Add ` ant spotbugs ` target and GitHub Actions SpotBugs static analysis workflow (PR 204)
59+ - Add GitHub Actions workflow for Android FIPS Ready testing (PR 209)
60+ - Add GitHub Actions workflow for Java 9+ module (JPMS) testing (PR 196)
61+ - Fix threaded MessageDigest tests hanging on FIPS error (PR 207)
62+ - Improve JUnit test reliability for FIPS mode and CI environments (PR 209)
63+ - Pin Bouncy Castle dependency version with SHA-256 hash verification (PR 209)
64+ - Update Apache Ant CI dependency to 1.10.16 (PR 209)
65+
66+ ** Misc Changes:**
67+ - Add Java 9+ module support (JPMS) for ` jlink ` compatibility (PR 196)
68+ - Fix Javadoc warnings about default constructors in ` WolfCryptUtil ` and ` Asn ` (PR 201)
69+ - Fix code issues and warnings found by SpotBugs static analysis (PR 204)
70+ - Update copyright dates to 2026 (PR 185)
71+
72+ The wolfCrypt JNI/JCE Manual is available at:
73+ https://www.wolfssl.com/documentation/manuals/wolfcryptjni/ . For build
74+ instructions and more details, please check the manual.
75+
176### wolfCrypt JNI Release 1.9.0 (12/31/2025)
277
378Release 1.9.0 of wolfCrypt JNI and JCE has bug fixes and new features including:
@@ -107,7 +182,7 @@ Release 1.9.0 of wolfCrypt JNI and JCE has bug fixes and new features including:
107182
108183The wolfCrypt JNI/JCE Manual is available at:
109184https://www.wolfssl.com/documentation/manuals/wolfcryptjni/ . For build
110- instructions and more details comments , please check the manual.
185+ instructions and more details, please check the manual.
111186
112187### wolfCrypt JNI Release 1.8.0 (01/23/2025)
113188
@@ -128,7 +203,7 @@ Release 1.8.0 of wolfCrypt JNI and JCE has bug fixes and new features including:
128203
129204The wolfCrypt JNI/JCE Manual is available at:
130205https://www.wolfssl.com/documentation/manuals/wolfcryptjni/ . For build
131- instructions and more details comments , please check the manual.
206+ instructions and more details, please check the manual.
132207
133208### wolfCrypt JNI Release 1.7.0 (11/11/2024)
134209
@@ -152,7 +227,7 @@ Release 1.7.0 of wolfCrypt JNI and JCE has bug fixes and new features including:
152227
153228The wolfCrypt JNI/JCE Manual is available at:
154229https://www.wolfssl.com/documentation/manuals/wolfcryptjni/ . For build
155- instructions and more details comments , please check the manual.
230+ instructions and more details, please check the manual.
156231
157232### wolfCrypt JNI Release 1.6.0 (4/17/2024)
158233
@@ -208,7 +283,7 @@ Release 1.6.0 of wolfCrypt JNI and JCE has bug fixes and new features including:
208283
209284The wolfCrypt JNI/JCE Manual is available at:
210285https://www.wolfssl.com/documentation/manuals/wolfcryptjni/ . For build
211- instructions and more details comments , please check the manual.
286+ instructions and more details, please check the manual.
212287
213288### wolfCrypt JNI Release 1.5.0 (11/14/2022)
214289
0 commit comments