AnsweredAssumed Answered

"java.lang.Error: Problem Loading Module.4" from "com.rsa.crypto.CryptoException: FIPS 140 Module Health Invalid" on JsafeJCE constructor

Question asked by Gregory Smith Employee on Mar 28, 2019
Latest reply on Mar 29, 2019 by Francois Lamoureux

Crypto-J 6.2.4

SLES 12SP2 w/ latest LTSS updates (as of 3/27/2019)

openjdk 1.8.0_191

 

I work on a spring-boot based product that's been using Crypto-J 6.2.4 for awhile now, initializing it via this code early in the spring bean wireup at start:

    Provider jsafeProvider = new JsafeJCE();
    Security.insertProviderAt(jsafeProvider, 1);

This (and all the other code around it) was working great until I updated the base OS to in our ova image.

Now it's failing with a stracktrace like:

 

Caused by: java.lang.ExceptionInInitializerError: null
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:348)
    at com.rsa.cryptoj.o.cp.I(Unknown Source)
    at com.rsa.cryptoj.o.cp.d(Unknown Source)
    at com.rsa.cryptoj.o.cp.N(Unknown Source)
    at com.rsa.cryptoj.o.cp.G(Unknown Source)
    at com.rsa.cryptoj.o.cp.a(Unknown Source)
    at com.rsa.cryptoj.o.cp.M(Unknown Source)
    at com.rsa.cryptoj.o.cp.<clinit>(Unknown Source)
    at com.rsa.cryptoj.o.cg.a(Unknown Source)
    at com.rsa.jsafe.provider.JsafeJCE.<init>(Unknown Source)
    at com.rsa.jsafe.provider.JsafeJCE.<init>(Unknown Source)
    at com.emc.clp.vault.LockboxService.<init>(LockboxService.java:43)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:170)
    ... 86 common frames omitted
Caused by: com.rsa.crypto.CryptoException: java.lang.reflect.InvocationTargetException
    at com.rsa.crypto.jcm.ModuleLoader.<clinit>(Unknown Source)
    ... 104 common frames omitted
Caused by: java.lang.reflect.InvocationTargetException: null
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    ... 105 common frames omitted
Caused by: java.lang.Error: Problem Loading Module.4
    at com.rsa.cryptoj.e.cp.N(Unknown Source)
    at com.rsa.cryptoj.e.cp.G(Unknown Source)
    at com.rsa.cryptoj.e.cp.a(Unknown Source)
    at com.rsa.cryptoj.e.cp.M(Unknown Source)
    at com.rsa.cryptoj.e.cp.<clinit>(Unknown Source)
    at com.rsa.jsafe.b.a(Unknown Source)
    at com.rsa.cryptoj.e.co.b(Unknown Source)
    at com.rsa.cryptoj.jcm.CryptoJModulePropertiesFactory.getModuleProperties(Unknown Source)
    ... 109 common frames omitted
Caused by: java.lang.reflect.InvocationTargetException: null
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    ... 117 common frames omitted
Caused by: com.rsa.crypto.CryptoException: FIPS 140 Module Health Invalid
    at com.rsa.jcm.f.dm.aA(Unknown Source)
    at com.rsa.crypto.jcm.ModuleLoader.ensureSelfTestsPassed(Unknown Source)
    at com.rsa.crypto.jcm.ModuleLoader.load(Unknown Source)
    ... 121 common frames omitted 

 

I can't tell what in our environment would cause this -- the only apparent native rpm update was to the nfs-client between working and not-working systems -- so any help would greatly appreciated.

 

Thanks,

Greg

Outcomes