A piece of software from a vendor is failing when it tries to encrypt a file. I deploy the software as a WAR file into a WAS ND 188.8.131.52 environment on RHEL 8.4. The javacore file indicates the problem is a "gpf", and the "sanitized" stack trace is shown below.
Is there something I can do to WebSphere to prevent this error? Some parameter I can set?
I appreciate any help or insight you can provide.
3XMTHREADINFO3 Java callstack:
4XESTACKTRACE at com/ibm/crypto/plus/provider/icc/NativeInterface.CIPHER_encryptFinal(Native Method)
4XESTACKTRACE at com/ibm/crypto/plus/provider/icc/SymmetricCipher.doFinal(SymmetricCipher.java:165)
5XESTACKTRACE (entered lock: com/ibm/crypto/plus/provider/icc/SymmetricCipher, entry count: 1)
4XESTACKTRACE at com/ibm/crypto/plus/provider/AESCipher.engineDoFinal(AESCipher.java:216)
4XESTACKTRACE at javax/crypto/Cipher.doFinal(Bytecode PC:35)
I raised a ticket with IBM. They advised that in IBM/WebSphere/AppServer/java/8.0/jre/lib/security/java.security there is a "# List of providers and their preference" orders. In that list, it is important that IBMJCE be listed above IBMJCEPlus.
This is the order I found:
Based on IBM's comments, I switched IBMJCE and IBMJCEPlus. The above lines now look like this:
I then tried to start the software, and it started without issue.