Search   Recent Topics     Member Listing   Register /  Login 
JCAPI v1.2.0 released
Forum Index -> News & Announcements
Author Message
Pheox Support

Joined: May 30, 2005
Messages: 148

JCAPI version 1.2.0 has been released today.

New main features are:
  • JCAPI is now supported on Java 6.
  • JCAPI is now supported on Windows Vista.
  • New MS CAPI based SecureRandom provider implemented.
  • You can now configure what system store registry location to use. Please read chapter 5 Advanced Topics in the JCAPI User's Guide for more information.
  • New method setExclusiveMSCertStore(KeyStore, String) in class JCAPIProperties to be used when you want a JCAPI KeyStore instance to operate on a specific MS CAPI certificate store regardless of other JCAPI KeyStore instances. Can, for example, be used for assigning a MS CAPI based trust store in SSL. Please read chapter 5 Advanced Topics in the JCAPI User's Guide for more information.
  • The JCAPI SSL plugin now uses the new JCAPI SecureRandom provider as its default provider.
  • JCAPI now automatically extracts the JCAPI.dll from inside the JCAPI.jar file and replaces an existing JCAPI.dll if they are not identical, meaning that you do not have to call JCAPIDLL.getInstance().setAlwaysOverwrite(true) any more. You can override this behaviour by calling JCAPIDLL.getInstance().setAlwaysOverwrite(false).
  • More JCAPI example programs and extended SSL examples available.

Bug fixes made:
  • The methods Signature.sign() and Cipher.doFinal() did not throw a JCAPIJNIInvalidPINCodeException instance when an incorrect PIN code was given during access to a private key through PKCS#11. Instead, the PIN callback was invoked again.
  • JCAPI did hang when a user-defined PIN callback instance accessed the PKCS#11 token inside the getPINCode(...) method. The second access did cause the token to finalize prematurely and thus closing all resources for the JCAPI PKCS#11 layer thread invoking the callback method.
  • A PKCS#11 DLL could not be found/loaded when its file name, or directory path, contained non-ASCII characters (locale support).
  • Method JCAPIUtil.getPKCS11TokenInfo(String) threw a JCAPIJNIRuntimeException saying "JCAPIUtil_getPKCS11TokenInfo() - Could not get info about the PKCS#11 hardware token. Error code: 20" when a certificate stored on a PKCS#11 token had been copied into a MS CAPI system store, but the token itself was later removed/detached. Now the method returns null instead.
  • Method JCAPIUtil.setCertificateFriendlyName(String,String) stored the friendly name in MS CAPI without proper Unicode EOS character.
  • Patched the JCAPI SSL plugin for Java v1.3 since JSSE did create incorrect issuer distinguished names for some certificates.
  • JCAPI, just like MS CAPI, now handles the system store names in a case insensitive manner to avoid problems when accessing stores such as ADDRESSBOOK/addressbook.

For a complete list of enhancements and bug fixes made, please read the version history.

The JCAPI.dll file used in the evaluation version of JCAPI has now grown a bit in size due to applied protection mechanisms since JCAPI has been exposed for software piracy actions. The commercial version do not contain these measures and is now actually smaller than ever before since we have now compressed the sections in the DLL file.

Our customers can download the commercial (unrestricted) version from the customers download page. Others are welcome to download the evaluation version from our public download page.

Hello, Tommy!

New jar file is quite bigger than the other one. Since I'll need it onan applet, and I'll use only part of its features, it will be possible to reduce a copy of the JAR to the smallest one?

Thank you very much
Pheox Support

Joined: May 30, 2005
Messages: 148

Hi MN,

Sorry, that's not possible.
But don't you worry about the size of the JAR. It's only applicable for the evaluation version of JCAPI. The commercial variant is actually smaller than v1.1 since it doesn't contain the same protection mechanisms.

  Forum Index -> News & Announcements
Go to: