Skip to content

wolfCrypt JNI and JCE Provider 1.6.0

Latest
Compare
Choose a tag to compare
@cconlon cconlon released this 19 Apr 22:25
· 19 commits to master since this release
e25d43d

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 to Cipher class (PR 51)
  • Add RSA support to Cipher class (PR 51)
  • Add PKIX implementation of CertPathValidator class (PR 60, 66)
  • Add SHA1 alias for MessageDigest SHA-1 for interop compatibility (PR 61)
  • Add AES/GCM/NoPadding support to Cipher class (PR 62)
  • Add SecretKeyFactory implementation supporting PBKDF2 (PR 70)
  • Add DEFAULT support to SecureRandom class (PR 72)

New JNI Wrapped APIs and Functionality:

  • Add AES-GCM support to com.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 per WolfCryptSignature, not per sign operation (PR 73)
  • Reduce extra WolfCryptRng object creation in Signature and KeyPairGenerator (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 from ProviderTest.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.