Releases: wolfSSL/wolfcrypt-jni
wolfCrypt JNI and JCE Provider 1.8.0
To download the release bundle of wolfCrypt JNI/JCE visit the download page at www.wolfssl.com/download/
Release 1.8.0 of wolfCrypt JNI and JCE has bug fixes and new features including:
New JCE Functionality:
- Add Java security property support for mapping JKS/PKCS12 to WKS type (PR 83)
JNI and JCE Changes:
- Run FIPS CASTs once up front to prevent threaded app errors (PR 84, 91)
Example Changes:
- Define
WOLFSSL_CUSTOM_CONFIGin Android Studio project builds (PR 85) - Add basic JCE cryptography benchmark app (PR 88, 89, 93, 94)
Testing Changes:
- Add GitHub Action testing Maven (pom.xml) build on macOS and Linux (PR 82)
The wolfCrypt JNI/JCE Manual is available at:
https://www.wolfssl.com/documentation/manuals/wolfcryptjni/. For build instructions and more details comments, please check the manual.
wolfCrypt JNI and JCE Provider 1.7.0
To download the release bundle of wolfCrypt JNI/JCE visit the download page at www.wolfssl.com/download/
Release 1.7.0 of wolfCrypt JNI and JCE has bug fixes and new features including:
New JCE Functionality:
- New WolfSSLKeyStore (WKS) KeyStore implementation for FIPS 140-2/3 compliance (PR 67)
JNI and JCE Changes:
- Remove call to BigInteger.longValueExact(), not available on some Java versions (PR 76)
- Detect
RSA_MIN_SIZEin tests, addRsa.RSA_MIN_SIZEhelper (PR 77) - Fix pointer use in native
X509CheckPrivateKey()(PR 80)
Example Changes:
- Set keytool path correctly in
system-cacerts-to-wks.sh(PR 78) - Add example Android Studio project (IDE/Android) (PR 79)
Testing Changes:
- Run Facebook Infer on pull requests with GitHub Actions (PR 74)
- Add Android Gradle build with GitHub Actions to run on all pull requests (PR 79)
The wolfCrypt JNI/JCE Manual is available at: https://www.wolfssl.com/documentation/manuals/wolfcryptjni/. For build instructions and more details comments, please check the manual.
wolfCrypt JNI and JCE Provider 1.6.0
Release 1.6.0 of wolfCrypt JNI and JCE has bug fixes and new features including:
New JCE Functionality:
- Add RSA support to
KeyPairGeneratorclass (PR 49) - Add
AES/CBC/PKCS5Paddingsupport toCipherclass (PR 51) - Add
RSAsupport toCipherclass (PR 51) - Add
PKIXimplementation ofCertPathValidatorclass (PR 60, 66) - Add
SHA1alias forMessageDigestSHA-1for interop compatibility (PR 61) - Add
AES/GCM/NoPaddingsupport toCipherclass (PR 62) - Add
SecretKeyFactoryimplementation supportingPBKDF2(PR 70) - Add
DEFAULTsupport toSecureRandomclass (PR 72)
New JNI Wrapped APIs and Functionality:
- Add
AES-GCMsupport tocom.wolfssl.wolfcrypt.AesGcmclass (PR 62)
JNI and JCE Changes:
- Add synchronization to
com.wolfssl.wolfcrypt.Rngclass (PR 44) - Correct preprocessor guards for 3DES with wolfCrypt FIPS (PR 47)
- Correct order of operations in
wc_CreatePKCS8Key()JNI wrapper API (PR 50) - Add synchronization around native structure pointer use (PR 53)
- Remove inclusion of CyaSSL header includes, switch to wolfSSL (PR 56)
- Call
PRIVATE_KEY_LOCK/UNLOCK()for wolfCrypt FIPS 140-3 compatibility (PR 57) - Improve native HMAC feature detection (PR 58)
- Prepend zero byte to DH shared secret if less than prime length (PR 69)
- Add synchronization to protected methods in
WolfCryptSignature(PR 68) - Add synchronization to public methods of
WolfCryptKeyPairGenerator(PR 73) - Only allocate one
Rngobject perWolfCryptSignature, not per sign operation (PR 73) - Reduce extra
WolfCryptRngobject creation inSignatureandKeyPairGenerator(PR 73)
New Platform Support:
- Add Windows support with Visual Studio, see IDE/WIN/README.md (PR 46)
Build System Changes:
- Support custom wolfSSL library prefix and name in
makefile.linux(PR 45) - Standardize JNI library name on OSX to .dylib (PR 54)
- Update Maven build support (PR 55)
Example Changes:
- Print provider of
SecureRandomfromProviderTest.java(PR 43) - Add Windows batch script to run
ProviderTestexample (PR 52)
Testing Changes:
- Add extended threading test for
WolfCryptRandomclass (PR 44) - Add Facebook Infer test script, make fixes (PR 48, 63)
- Add GitHub Actions tests for Oracle/Zulu/Coretto/Temurin/Microsoft JDKs on Linux and OS X (PR 65)
Documentation Changes:
- Remove build instructions from
README.mdfor FIPS historical cert #2425 (PR 56) - Fix Javadoc warnings for Java 21 and 22 (PR 71)
The wolfCrypt JNI/JCE Manual is available at:
https://www.wolfssl.com/documentation/manuals/wolfcryptjni/. For build
instructions and more details comments, please check the manual.
wolfCrypt JNI and JCE Provider 1.5.0
Release 1.5.0 of wolfCrypt JNI has bug fixes and new features including:
Add build compatibility for Java 7 (PR 38)
Add support for "SHA" algorithm string in wolfJCE (PR 39)
Add rpm package support (PR 40)
Add wolfJCE MessageDigest.clone() support (PR 41)
Improve error checking of native Md5 API calls (PR 41)
Add unit tests for com.wolfssl.wolfcrypt.Md5 (PR 41)
wolfCrypt JNI and JCE Provider 1.4.0
Release 1.4.0 of wolfCrypt JNI has bug fixes and new features including:
- Add example directory with one simple ProviderTest example (PR 32)
- Fix double free of ChaCha pointer (PR 34)
- Add test cases for ChaCha.java (PR 34)
- Skip WolfCryptMacTest for HMAC-MD5 when using wolfCrypt FIPS 140-3 (PR 35)
- Use new hash struct names (wc_Md5/wc_Sha/etc) in native code (PR 35)
- Fix potential build error with non-ASCII apostrophes in Fips.java (PR 36)
wolfCrypt JNI and JCE Provider 1.2.0
Release 1.2.0 of wolfCrypt JNI and JCE has bug fixes and new features including:
- Add FIPS 140-3 compatibility when using wolfCrypt FIPS or FIPS Ready
- Increase junit version from 4.12 to 4.13 in pom.xml
- Add local
./libdirectory tojava.library.pathin pom.xml - Fix builds with
WOLFCRYPT_JNI_DEBUG_ONdefined - Fix compatibility with wolfCrypt
NO_OLD_*defines - Fix compatibility with wolfSSL
./configure --enable-alland ECC tests