Hallo,
nachdem ich wegen meinem Problem mit der Umsatzanzeige von openjdk version "1.8.0_65" auf openjdk version "1.8.0_77" aktualisiert habe, bin ich auf das hier beschriebene Problem gestossen:
https://www.willuhn.de/bugzilla/show_bug.cgi?id=1576
Das Problem hatte ich bereits beim Update von Java 7 auf Java 8, hatte aber vergessen wie ich es gelöst habe. Hier im Forum habe ich über die Suchfunktion nichts dazu gefunden.
Der Fehler lautet:
Code
[Sat Apr 09 15:50:19 CEST 2016][ERROR][de.willuhn.jameica.hbci.HBCICallbackSWT.log] org.kapott.hbci.exceptions.HBCI_Exception: Fehler beim Senden der HBCI-Nachricht zum Server
at org.kapott.hbci.comm.CommPinTan.ping(CommPinTan.java:160)
at org.kapott.hbci.comm.Comm.pingpong(Comm.java:72)
at org.kapott.hbci.manager.HBCIKernelImpl.rawDoIt(HBCIKernelImpl.java:352)
at org.kapott.hbci.manager.HBCIKernelImpl.rawDoIt(HBCIKernelImpl.java:178)
at org.kapott.hbci.manager.HBCIDialog.doDialogInit(HBCIDialog.java:149)
at org.kapott.hbci.manager.HBCIDialog.doIt(HBCIDialog.java:402)
at org.kapott.hbci.manager.HBCIHandler.execute(HBCIHandler.java:515)
at org.kapott.hbci.manager.HBCIHandler.updateMetaInfo(HBCIHandler.java:188)
at org.kapott.hbci.manager.HBCIHandler.<init>(HBCIHandler.java:151)
at de.willuhn.jameica.hbci.passports.pintan.server.PassportHandleImpl.open(PassportHandleImpl.java:174)
at de.willuhn.jameica.hbci.synchronize.hbci.HBCISynchronizeBackend$HBCIJobGroup$TaskHandleOpen.internalExecute(HBCISynchronizeBackend.java:534)
at de.willuhn.jameica.hbci.synchronize.hbci.HBCISynchronizeBackend$HBCIJobGroup$TaskHandleOpen.internalExecute(HBCISynchronizeBackend.java:506)
at de.willuhn.jameica.hbci.synchronize.hbci.HBCISynchronizeBackend$HBCIJobGroup$AbstractTaskWrapper.run(HBCISynchronizeBackend.java:643)
at org.eclipse.swt.widgets.RunnableLock.run(Unknown Source)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Unknown Source)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Unknown Source)
at org.eclipse.swt.widgets.Display.readAndDispatch(Unknown Source)
at de.willuhn.jameica.gui.GUI.loop(GUI.java:913)
at de.willuhn.jameica.gui.GUI.init(GUI.java:324)
at de.willuhn.jameica.system.Application.init(Application.java:148)
at de.willuhn.jameica.system.Application.newInstance(Application.java:90)
at de.willuhn.jameica.Main.main(Main.java:78)
Caused by: javax.net.ssl.SSLHandshakeException: Could not generate secret
at sun.security.ssl.ECDHCrypt.getAgreedSecret(ECDHCrypt.java:103)
at sun.security.ssl.ClientHandshaker.serverHelloDone(ClientHandshaker.java:1067)
at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:348)
at sun.security.ssl.Handshaker.processLoop(Handshaker.java:979)
at sun.security.ssl.Handshaker.process_record(Handshaker.java:914)
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1062)
at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387)
at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:559)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:153)
at org.kapott.hbci.comm.CommPinTan.ping(CommPinTan.java:150)
... 21 more
Caused by: java.security.InvalidKeyException: EC Key Agreement doPhase requires ECPublicKey
at org.bouncycastle.jce.provider.asymmetric.ec.KeyAgreement.engineDoPhase(Unknown Source)
at javax.crypto.KeyAgreement.doPhase(KeyAgreement.java:567)
at sun.security.ssl.ECDHCrypt.getAgreedSecret(ECDHCrypt.java:100)
... 33 more org.kapott.hbci.manager.HBCIUtils.log(HBCIUtils.java:1120)
Ich konnte das Problem beheben indem ich in der Datei "java.security" ECDHE deaktiviert habe.
Ich habe folgende Zeile ergänzt (alt):
Code
jdk.tls.disabledAlgorithms=SSLv3, RC4, MD5withRSA, DH keySize < 768)
Neu:
Code
jdk.tls.disabledAlgorithms=ECDHE, SSLv3, RC4, MD5withRSA, DH keySize < 768)
Das betrifft Java unter Linux (64 Bit).
Damit funktioniert die Verbindung.
Dies bloß zur Info falls jemand zukünftig das gleiche Problem haben sollte.