Fehler beim Importieren von öffentlichen Zertifikat in einer keystore
Ich habe ein öffentliches Zertifikat von einer ZERTIFIZIERUNGSSTELLE. Ich will erstellen Sie eine Java-SSL-Verbindung mit diesem Zertifikat. Ich bezog mich Wie kann ich verschiedene Zertifikate, die auf bestimmte verbindungen? und Java-SSL-Verbindung mit einem selbst-signierten Zertifikat, ohne kopieren der keystore client. Aus diesem habe ich verstanden, dass ich brauche, um importieren Sie das Zertifikat in einen Schlüsselspeicher. Allerdings habe ich nicht erhalten keystore von der CA. Ich habe einen keystore erstellt und versucht zu importieren Sie das öffentliche Zertifikat, um es. Aber dann bekomme ich die folgende Fehlermeldung:
keytool-Fehler: java.lang.Ausnahme: die Öffentlichen Schlüssel in Antwort und keystore Stimmen nicht überein
Brauche ich eine Schlüsselspeicher von der CA oder mache ich etwas falsch?
Befehl wird zum erstellen des keystore:
keytool -genkey -alias tomcat -keyalg RSA -keystore keystore.jks
Befehl zum importieren der cert:
keytool -import -v -alias tomcat -file signed-cert.pem -keystore keystore.jks
- Können Sie bitte etwas konkreter? Welchen Befehl verwenden Sie zum anlegen der keystore-und wie tun Sie import das cert?
- Befehl zum erstellen des keystore: keytool -genkey -alias tomcat -keyalg RSA-keystore keystore.jks Befehl importieren Sie das Zertifikat: keytool-import -v -alias tomcat -file signed-cert.pem -keystore keystore.jks
- hast du einen Weg finden, diese Arbeit zu machen? ich stehe vor einem ähnlichen Problem und einer Lösung der oben genannten Problem helfen.
- Ich Tat es der falsche Weg. Zunächst erstellen Sie eine keystore. Dann Sie extrahieren des öffentlichen Schlüssels aus diesem keystore. Senden Sie über diesen öffentlichen Schlüssel an die ZERTIFIZIERUNGSSTELLE. wenn Sie zurück zu senden das unterschriebene Bescheinigung, die Sie importieren können, es erfolgreich in den keystore
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich denke, Sie sind nicht korrekt nach certificate signin-Prozesses. Checkout diese Diskussion https://forums.oracle.com/thread/1533940 implementieren Sie richtig, indem Sie die folgenden Schritte unten:
erstellen Sie eine keystore -
keytool -genkey -keyalg RSA -keystore test.keystore -validity 360
(dies generiert eine keystore und key (DC) mit alias von "mykey")
erstellen eines Certificate Signing Request (CSR).
keytool -certreq -keyalg RSA -file test.csr -keystore test.keystore
(dies erzeugt einen text CSR-Datei)
Hatte signiertes Zertifikat generiert: http://www.instantssl.com/ssl-certificate-support/csr_generation/ssl-certificate-index.html
Importierten signierten Zertifikat
(watch out für CRLFs, wenn einfügen signiertes Zertifikat aus Schritt 3)
keytool -import -alias newkey -file <signed cert file> -keystore test.keystore
(?wichtig ist, dass diese einen alias hat, der andere mit Schritt 1 (der Standardwert ist "mykey")?
Exportieren Sie den öffentlichen Schlüssel für den client-Nutzung
keytool -export -alias mykey -file test.publickey -keystore test.keystore
Auf dem Server-system
erstellen Sie eine truststore -
keytool -genkey -keyalg RSA -keystore test.truststore -validity 360
(dies generiert eine keystore und key (DC) mit alias von "mykey")
Import öffentlicher Schlüssel, - für die Prüfung von SSL SOAP-Dienst mit client
keytool -import -file test.publickey -keystore test.truststore
Das problem war die Vermietung der alias in den Schritten 1 und 6 standardmäßig auf "mykey".
Wenn ich geändert, Schritt 6, um:
keytool -genkey -alias testAlias -keyalg RSA -keystore test.truststore -validity 360
können Sie importieren Sie mit Schritt 7 oben (wenn ich ihn hinzufügen "
-alias apublickey
" in Schritt 7).Dieser arbeitete für mich.
Können Sie keyStore explorer gui-tool zu generieren keystore/Zertifikates und zum importieren/exportieren von Zertifikat in keystore.
Ich Stand vor dem gleichen problem beim importieren des SSL-Zertifikats in den keystore. In meinem Fall ist das Zertifikat der Root-CA fehlt in der Kette. Ich exportierte root-Zertifikat in eine Datei und manuell in den keystore importiert.
Bitte ändern Sie den alias aus tomcat zu jeder anderen, wie Sie mit Hilfe der gleichen alias-Keystore -genkey