How to load the Bouncy Castle security app into an 11.2.0.3 database (Doc ID 1498899.1)

Last updated on APRIL 28, 2017

Applies to:

Oracle Database - Enterprise Edition - Version 11.2.0.3 to 11.2.0.3 [Release 11.2]
Information in this document applies to any platform.

Goal

The Bouncy Castle app is dependent on 3 security interfaces from JDK 1.5 rt.jar that are missing from the Oracle 11.2.0.3 JVM and attempting to load will receive an error such as:

ORA-29552: verification warning: java.lang.NoClassDefFoundError: java/security/interfaces/ECPrivateKey

This is known bug 14572113 which is resolved in Oracle 12c and since included in the 11.2.0.4 patchset. Typically this would mean that you would not be able to load the app into 11.2.0.3 since you can not modify the Oracle JServer / Oracle JVM that is built into the database and JVM bugs are not "backportable". However, the JVM team has provided a workaround in bug:14572113 and this note is provided to document the steps needed to load these missing classes into an 11.2.0.3 Oracle Database which has a JDK 1.5 based JVM.

Note: These classes are installed in the next release of Oracle RDBMS Server so this workaround is only applicable to 11.2.0.3. Also, this workaround is only known to allow Bouncy Castle to be loaded and may not work for other applications. Additionally, it was only tested on Linux and Solaris. Support has confirmed that the rt.jar file has been broken out into separate jar files on IBM AIX so these classes are in security.jar file on IBM platforms. Also, although we expect this to work, we do not support it. If you encounter issues, we suggest you work through them in the forums rather than a Service Request with Oracle Support.

Solution

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms