HBCIBatch und Zertifikatwechsel

 
kanguru
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 3
Dabei seit: 01 / 2012
Betreff:

HBCIBatch und Zertifikatwechsel

 · 
Gepostet: 17.01.2012 - 11:29 Uhr  ·  #1
Hallo,

ich nutzt HBCIBatch um automatisch Kontoumsätze abzurufen. Das funktioniert soweit prima. Nun hat sich aber das SSL-Zertifikat von der fiducia geändert. Nun bekomme ich nur noch eine Fehlermeldung:

Code

<ERR> [2012.01.17 11:05:51.022] [main/main] manager.HBCIUtils: org.kapott.hbci.exceptions.HBCI_Exception: Fehler beim Senden der HBCI-Nachricht zum Server
  at org.kapott.hbci.comm.CommPinTan.ping(CommPinTan.java:147)
  at org.kapott.hbci.comm.Comm.pingpong(Comm.java:66)
  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:456)
  at org.kapott.hbci.tools.HBCIBatch.main(HBCIBatch.java:404)
Caused by: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path validation failed: java.security.cert.CertPathValidatorException: Path does not chain with any of the trust anchors
  at sun.security.ssl.Alerts.getSSLException(Alerts.java:192)
  at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1697)
  at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:258)
  at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:252)
  at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1165)
  at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:154)
  at sun.security.ssl.Handshaker.processLoop(Handshaker.java:610)
  at sun.security.ssl.Handshaker.process_record(Handshaker.java:546)
  at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:945)
  at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1190)
  at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1217)
  at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1201)
  at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:440)
  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:137)
  ... 7 more
Caused by: sun.security.validator.ValidatorException: PKIX path validation failed: java.security.cert.CertPathValidatorException: Path does not chain with any of the trust anchors
  at sun.security.validator.PKIXValidator.doValidate(PKIXValidator.java:288)
  at sun.security.validator.PKIXValidator.doValidate(PKIXValidator.java:271)
  at sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:181)
  at sun.security.validator.Validator.validate(Validator.java:235)
  at sun.security.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.java:147)
  at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:230)
  at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:270)
  at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1144)
  ... 18 more
Caused by: java.security.cert.CertPathValidatorException: Path does not chain with any of the trust anchors
  at sun.security.provider.certpath.PKIXCertPathValidator.engineValidate(PKIXCertPathValidator.java:204)
  at java.security.cert.CertPathValidator.validate(CertPathValidator.java:267)
  at sun.security.validator.PKIXValidator.doValidate(PKIXValidator.java:283)
  ... 25 more


Wo wird das alte Zertifikat gespeichert? Wie kann ich es löschen und durch das neue ersetzen lassen?

Gruß kanguru
hibiscus
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 11370
Dabei seit: 03 / 2005
Betreff:

Re: HBCIBatch und Zertifikatwechsel

 · 
Gepostet: 22.01.2012 - 01:43 Uhr  ·  #2
Zitat
Wo wird das alte Zertifikat gespeichert?


Na dort, wo auch das bisherige gespeichert ist.

Zitat
Wie kann ich es löschen und durch das neue ersetzen lassen?


Ich nehme an, dass das bisherige Zertifikat von einer CA signiert war, die im Stammzertifikatesspeicher von Java enthalten ist. Das neue ist das vermutlich nicht mehr. Also muesstest du das neue Server-Zertifikat (oder das zugehoerige CA-Zertifikat) in den Java-Kestore importieren.

Das ist aber nichts HBCI4Java-spezifisches sondern rein Java-spezifisches. Mit so einer Frage bist du vermutlich in einem Java-Forum besser aufgehoben. Oder google halt mal nach "java import certificate keystore".
David
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 204
Dabei seit: 07 / 2003
Betreff:

Re: HBCIBatch und Zertifikatwechsel

 · 
Gepostet: 25.01.2012 - 12:59 Uhr  ·  #3
Hibiscus zeigt mir an, daß Fiducia einen unbekannten Schlüssel verwendet.

MD5-Fingerabdruck:
13:DA:A0:BF:0E:DE:DC:3F:1D:41:52:D8:F1:A6:52:8E
SHA1-Fingerabdruck:
44:F2:36:4D:49:8A:F8:8C:A8:E2:19:DF:5C:60:74:C6:41:3A:FC:7A

Soweit ich das verstanden habe, sollte man den Fingerabdruck verifizieren - wie macht ihr denn das? Oder einfach auf OK klicken, weil Verisign/Fiducia angezeigt wird und das schon seine Richtigkeit haben wird?

Auf der Fiducia-Website ist der Fingerprint nicht zu finden. Ein Anruf dort stieß auf völliges Unverständnis. Bei der Bank kennt sich damit erst recht keiner aus "gehen Sie auf unsere Website... PIN...TAN... blabla"
hibiscus
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 11370
Dabei seit: 03 / 2005
Betreff:

Re: HBCIBatch und Zertifikatwechsel

 · 
Gepostet: 25.01.2012 - 13:02 Uhr  ·  #4
kanguru
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 3
Dabei seit: 01 / 2012
Betreff:

Re: HBCIBatch und Zertifikatwechsel

 · 
Gepostet: 25.01.2012 - 13:08 Uhr  ·  #5
Zitat geschrieben von hibiscus
Zitat
Wo wird das alte Zertifikat gespeichert?


Na dort, wo auch das bisherige gespeichert ist.

Zitat
Wie kann ich es löschen und durch das neue ersetzen lassen?


Ich nehme an, dass das bisherige Zertifikat von einer CA signiert war, die im Stammzertifikatesspeicher von Java enthalten ist. Das neue ist das vermutlich nicht mehr. Also muesstest du das neue Server-Zertifikat (oder das zugehoerige CA-Zertifikat) in den Java-Kestore importieren.


Ich hatte vorher nichts explizit gespeichert. Hatte einfach gefunzt, daher denke ich, dass es irgendwohin automatisch gespeichert wurde.

Habe nun versucht das CA-Zertifikat zu importieren, bekomme da aber die Meldung, dass sei auf dem System vorhanden. Hab im Keystore geguckt, ist drin. Dann hab ich mir das Bank-Zertifikat in den Keystore (neu angelegt, war nicht vorhanden) für den User gelegt und auch damit gab es leider keine Besserung.

Gruß Kanguru
hibiscus
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 11370
Dabei seit: 03 / 2005
Betreff:

Re: HBCIBatch und Zertifikatwechsel

 · 
Gepostet: 25.01.2012 - 14:25 Uhr  ·  #6
Zitat geschrieben von kanguru
Ich hatte vorher nichts explizit gespeichert. Hatte einfach gefunzt, daher denke ich, dass es irgendwohin automatisch gespeichert wurde.


Dann war das Zertifikate vorher sicher von einer CA signiert, die im Stammspeicher enthalten ist. Das sollte ja eigentlich auch der Normalfall sein.

Zitat geschrieben von kanguru
Habe nun versucht das CA-Zertifikat zu importieren, bekomme da aber die Meldung, dass sei auf dem System vorhanden.


Java speichert die Zertifikate im Keystore unter einem Alias-Namen. Ich meine mich zu erinnern, dass Java den Common-Name verwendet, wenn kein Alias beim Import angegeben ist. Es koennte also entweder sein, dass du vorher erst das bisherige CA-Zertifikat loeschen muesstest, bevor du das neue importieren kannst. Oder aber, das Zertifikat, welches du importieren willst, ist gar nicht das neue sondern das bisherige. Wo hast du das CA-Zertifikat denn her?
kanguru
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 3
Dabei seit: 01 / 2012
Betreff:

Re: HBCIBatch und Zertifikatwechsel

 · 
Gepostet: 25.01.2012 - 15:35 Uhr  ·  #7
https://hbci11.fiducia.de/
Da hab ich mir im Browser die Daten zum Zertifikat angesehen. Das Class 3 CA - G3 ist bei mir in den java/cacerts enthalten. Hatte mir diese bei Verisign (http://www.verisign.com/support/roots.html) runtergeladen und versucht zum importieren, worauf ich die Meldung bekam, es sei schon im System da.
Der User unter dem ich hbci4java aufrufe hat keine .keystore in seinem home-dir.

Inzwischen habe ich auch das hier http://www.certificat-ssl.eu/FAQ/en/600.html importiert, aber dennoch klappts nicht.

Gruß Kanguru
Gewählte Zitate für Mehrfachzitierung:   0