Troubleshooting
Problem
When the IBMJCEFIPS provider is enabled in the java.security file, an exception might be produced when creating an instance of the AESCipher. This problem affects Java 6 service refresh 2, through to Java 6 service refresh 9 inclusive.
Symptom
The following Java exception might be seen:
java.lang.NullPointerException
at com.ibm.crypto.fips.provider.SelfTest.p(Unknown Source)
at com.ibm.crypto.fips.provider.SelfTest.runSelfTest(Unknown Source)
at com.ibm.crypto.fips.provider.SelfTest.<init>(Unknown Source)
at com.ibm.crypto.fips.provider.IBMJCEFIPS.<init>(Unknown Source)
at java.lang.J9VMInternals.newInstanceImpl(Native Method)
at java.lang.Class.newInstance(Class.java:1345)
at org.apache.harmony.security.fortress.Services$1.run(Services.java:895)
at org.apache.harmony.security.fortress.Services$1.run(Services.java:892)
at java.security.AccessController.doPrivileged(AccessController.java:202)
at org.apache.harmony.security.fortress.Services.newInstance(Services.java:892)
at org.apache.harmony.security.fortress.Services.access$600(Services.java:55)
at org.apache.harmony.security.fortress.Services$NormalServices.createProviderInstance(Services.java:316)
at org.apache.harmony.security.fortress.Services$NormalServices.createExtProviderInstance(Services.java:296)
at org.apache.harmony.security.fortress.Services$NormalServices.loadAllProviders(Services.java:225)
at org.apache.harmony.security.fortress.Services$NormalServices.access$400(Services.java:141)
at org.apache.harmony.security.fortress.Services$NormalServices$2.run(Services.java:207)
at org.apache.harmony.security.fortress.Services$NormalServices$2.run(Services.java:205)
at java.security.AccessController.doPrivileged(AccessController.java:202)
at org.apache.harmony.security.fortress.Services$NormalServices.getProviderList(Services.java:205)
at org.apache.harmony.security.fortress.Services$NormalServices.access$1300(Services.java:141)
at org.apache.harmony.security.fortress.Services.getProvidersList(Services.java:645)
at sun.security.jca.GetInstance.getProvidersList(GetInstance.java:79)
at sun.security.jca.GetInstance.getInstance(GetInstance.java:232)
Resolving The Problem
This problem is addressed by APAR IZ91964, which changes the way providers are initialized in the JVM.
To be able to use the IBMJCEFIPS provider in Java 6, install service refresh 9 fix pack 2 or later to ensure that the IBM JDK has an appropriate build date:
- 20110627_04 or later for AIX platforms
- 20110625_01 or later for Linux and Windows platforms
- 20110608_01 or later for Solaris platforms
- 20110721_03 or later for HP-UX platforms
Was this topic helpful?
Document Information
Modified date:
15 June 2018
UID
swg21504548