Releases: wolfSSL/wolfcrypt-jni
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_SIZE
in tests, addRsa.RSA_MIN_SIZE
helper (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
KeyPairGenerator
class (PR 49) - Add
AES/CBC/PKCS5Padding
support toCipher
class (PR 51) - Add
RSA
support toCipher
class (PR 51) - Add
PKIX
implementation ofCertPathValidator
class (PR 60, 66) - Add
SHA1
alias forMessageDigest
SHA-1
for interop compatibility (PR 61) - Add
AES/GCM/NoPadding
support toCipher
class (PR 62) - Add
SecretKeyFactory
implementation supportingPBKDF2
(PR 70) - Add
DEFAULT
support toSecureRandom
class (PR 72)
New JNI Wrapped APIs and Functionality:
- Add
AES-GCM
support tocom.wolfssl.wolfcrypt.AesGcm
class (PR 62)
JNI and JCE Changes:
- Add synchronization to
com.wolfssl.wolfcrypt.Rng
class (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
Rng
object perWolfCryptSignature
, not per sign operation (PR 73) - Reduce extra
WolfCryptRng
object creation inSignature
andKeyPairGenerator
(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
SecureRandom
fromProviderTest.java
(PR 43) - Add Windows batch script to run
ProviderTest
example (PR 52)
Testing Changes:
- Add extended threading test for
WolfCryptRandom
class (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.md
for 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
./lib
directory tojava.library.path
in pom.xml - Fix builds with
WOLFCRYPT_JNI_DEBUG_ON
defined - Fix compatibility with wolfCrypt
NO_OLD_*
defines - Fix compatibility with wolfSSL
./configure --enable-all
and ECC tests