Не удалось создать экземпляр KeyAgreement в IBM AIX 6.1 - PullRequest
0 голосов
/ 11 января 2019

Нам нужно развернуть автономный jar в IBM AIX 6.1. Этот jar пытается подключиться к SFTP-серверу, используя hierynomus sshj и bouncycastle. При попытке создать экземпляр KeyAgreement во время выполнения выдает следующее:

Exception in thread "main" java.lang.ExceptionInInitializerError
        at java.lang.J9VMInternals.initialize(J9VMInternals.java:222)
        at java.lang.Class.forNameImpl(Native Method)
        at java.lang.Class.forName(Class.java:172)
        at java.security.Provider$Service$1.run(Provider.java:831)
        at java.security.Provider$Service$1.run(Provider.java:823)
        at java.security.AccessController.doPrivileged(AccessController.java:202)
        at java.security.Provider$Service.newInstance(Provider.java:821)
        at java.security.SecureRandom.<init>(SecureRandom.java:114)
        at javax.crypto.b.<clinit>(Unknown Source)
        at java.lang.J9VMInternals.initializeImpl(Native Method)
        at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
        at javax.crypto.KeyAgreement.getInstance(Unknown Source)
        at net.schmizz.sshj.common.SecurityUtils.registerSecurityProvider(SecurityUtils.java:88)
        at net.schmizz.sshj.common.SecurityUtils.register(SecurityUtils.java:267)
        at net.schmizz.sshj.common.SecurityUtils.isBouncyCastleRegistered(SecurityUtils.java:245)
        at net.schmizz.sshj.DefaultConfig.<init>(DefaultConfig.java:78)
        at net.schmizz.sshj.SSHClient.<init>(SSHClient.java:135)
        at com.dxc.seat.eai.EailSftpClient.getConnection(EailSftpClient.java:312)
        at com.dxc.seat.eai.EailSftpClient.startProcess(EailSftpClient.java:200)
        at com.dxc.seat.eai.SFTPFileInput.main(SFTPFileInput.java:17)
Caused by: java.lang.NullPointerException
        at org.bouncycastle.jcajce.provider.drbg.DRBG$NonceAndIV.engineGenerateSeed(Unknown Source)
        at java.security.SecureRandom.generateSeed(SecureRandom.java:343)
        at org.bouncycastle.jcajce.provider.drbg.DRBG$HybridSecureRandom.<init>(Unknown Source)
        at org.bouncycastle.jcajce.provider.drbg.DRBG.createBaseRandom(Unknown Source)
        at org.bouncycastle.jcajce.provider.drbg.DRBG.access$200(Unknown Source)
        at org.bouncycastle.jcajce.provider.drbg.DRBG$Default.<clinit>(Unknown Source)
        at java.lang.J9VMInternals.initializeImpl(Native Method)
        at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
        ... 19 more

JVM, используемая для запуска этой банки:

java version "1.6.0"
Java(TM) SE Runtime Environment (build pap6460sr9fp1ifix-20110511(SR9 P1+IZ97552))
IBM J9 VM (build 2.4, JRE 1.6.0 IBM J9 2.4 AIX ppc64-64 jvmap6460sr9-20110203_74623 (JIT enabled, AOT enabled)
J9VM - 20110203_074623
JIT  - r9_20101028_17488ifx3
GC   - 20101027_AA)
JCL  - 20110203_01

Параметры безопасности JVM были обновлены, добавив нового поставщика безопасности в конец списка поставщиков на java.security и добавив библиотеки: bcpkix-jdk15on-1.60.jar bcprov-jdk15on-1.60.jar в каталог ext.

Автономная банка была создана с использованием плагина maven-assembly-plugin.

Интересно, почему это происходит и как мы могли это исправить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...