WebSphere Application Server & Liberty

WebSphere Application Server & Liberty

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only
  • 1.  javacore "gpf" on Cipher.doFinal

    Posted Tue July 19, 2022 09:58 PM

    Hello.

    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 9.0.5.11 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)

    #Support
    #SupportMigration
    #WebSphereApplicationServer(WAS)


  • 2.  RE: javacore "gpf" on Cipher.doFinal

    Posted Wed July 20, 2022 11:17 PM

    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:

    security.provider.1=com.ibm.jsse2.IBMJSSEProvider2

    security.provider.2=com.ibm.crypto.plus.provider.IBMJCEPlus

    security.provider.3=com.ibm.crypto.provider.IBMJCE

    Based on IBM's comments, I switched IBMJCE and IBMJCEPlus. The above lines now look like this:

    security.provider.1=com.ibm.jsse2.IBMJSSEProvider2

    security.provider.2=com.ibm.crypto.provider.IBMJCE

    security.provider.3=com.ibm.crypto.plus.provider.IBMJCEPlus

    I then tried to start the software, and it started without issue.



    #Support
    #SupportMigration
    #WebSphereApplicationServer(WAS)