JAR signieren (Verisign)

Wutklumpen

Mitglied
Hallo!

Ich versuche jetzt schon den ganzen Morgen meine jar zu zertifizieren.
Das Zertifikat ist ein Code Signing Certificate von Verisign.

Bekommen habe ich es als *.p7b. Da "keytool" aber nur x.509 kann, habe ich das Zertifikat über die Windows-GUI isntalliert, und anschließend über Details-> In Datei kopieren... *.cer exportiert.

Anschließen ließ sich die *.cer in den Keystore importieren (alias "verisign"), und wird auch bei keytool -list mit angezeigt.

Rufe ich jetzt aber
Code:
jarsigner Test.jar verisign

Bekomme ich folgende Exception:

"jarsigner: Certificate chain not found for: verisign. verisign must reference a
valid KeyStore key entry containing a private key and corresponding public key
certificate chain."

Auf Vertipper hab ich eigentlich schon geprüft, und, mit selbsterstellten Zertifikaten klappt es auf selbem Weg wunderbar... hat jemand sowas schon gesehen? Google hilft nich wirklich weiter, und die ORacle/Sun-Foren sind momentan down.

Danke im vorraus für jeden Hinweis.

Wutklumpen
 
Nun ... wenn du in deinem KeyStore deinen Key und mit diesem ein CSR exportiert hast welches du an VeriSign geschickt hast ... dann sollte die Antwort eigentlich auch wieder in den KeyStore importierbar sein mit
Code:
keytool -import -trustcacerts -file REPLY.cer

Da in der Doc zum keytool von VeriSign die Rede ist gehe ich davon aus das VeriSign eine Java-kompatible Antwort geschickt hat welche sich so importieren lässt. *Natürlich vorrausgesetzt das du auch eine Java-Zertifikat beantragt hast.*

Das solche Zertifikate teuer sind will ich nicht bestreiten ... aber für mich hört es sich danach an das du entweder einen Fehler beim exportieren des CSR oder beim importieren des CER-Reply gemacht hast. Aber laut Doc sollte es gerade mit VeriSign keine Probleme geben.
 
Hi Wutklumpen,

wahrscheinlich hast du es schon gelesen, aber auf der VeriSign-Homepage gibts ne art Anleitung zum signieren von Java-Code.

Gruß

Ja, habe ich! Damit haben die Probleme ja angefangen:

Um Ihr Sun Java Signing Code Signing Digital-ID in Ihren Keystore zu importieren, geben Sie den folgenden Code und Pfad für Ihre Datei für Ihre Code Signing Digital ID ein, (wie z. B. "cert.p7b")

keytool –import –trustcacerts –keystore <keystore_filename> -alias <alias_name> -file cert.p7b

keytool kann, zumindest bei mir, nur x.509 Zertifikate verwalten ->

Keytool-Fehler: java.lang.Exception: Eingabe kein X.509-Zertifikat

Ich versteh es einfach nicht, die Zertifikatkette ist da, also alle Abhängigkeiten sind im KeyStore, nur er findet sie nicht, oder kann sie nicht miteinander verbinden. WEnn der *.p7b import klappen würde, wäre vermutlich alles OK^^
 
Hmm, im Oracle-Forum meinte jemand, dass der benutzte alias exakt dem Alias des Schlüsselpaares entsprechen muss, aus dem der CSR erst generiert wurde. Kann ich momentan nicht prüfen, da ich die Schlüssel nicht kenne, aber könnte das tatsächlich der Grund sein?
 
Wie du kennst die Schlüssel nicht ?
Du musst doch wissen mit welchem Alias du das Key-Pair erzeugt hast. Und genau als dieses Alias importierst du dann das p7b-File *wobei ich glaube das du da was falsch machst bei "aus-Mail-in-Datei-kopieren" ... anonsten würde er nicht sagen das der Input ungültig ist.
 
So, nachdem ich mir den "Mutter"-Keystore und das alias besorgt habe, lässt sich alles wie geplant importieren. Vielen Dank an alle Mitstreiter.
 
Zurück