Erstellen eines .p12-Truststores mit OpenSSLJava

Java-Forum
Anonymous
 Erstellen eines .p12-Truststores mit OpenSSL

Post by Anonymous »

Ich schreibe eine Java 8-Anwendung und möchte einen einfachen Keystore und Truststore mithilfe eines selbstsignierten Zertifikats einrichten.

Normalerweise läuft das wie folgt ab:
  • Erstellen Sie ein Schlüsselpaar + Zertifikat mit openSL .
  • Erstellen Sie einen .jks-Keystore + .jks-Truststore mit Keytool
Jetzt möchte ich nur noch openssl verwenden und erstellen .p12-Keystores anstelle von .jks-Keystores.

Das Erstellen eines .p12-Keystores funktioniert hervorragend mit den folgenden Befehlen:

# Create private key and certificate
openssl req -x509 -newkey rsa:"${rsa}" -sha256 \
-keyout "${key}" \
-out "${cert}" \
-days "${days}"

# Create .p12 keystore
openssl pkcs12 -export -in "${cert}" -inkey "${key}" -out "${keystore}"


Dieser Keystore scheint ordnungsgemäß zu funktionieren, da durch die Bereitstellung eines entsprechenden .jks-Trustore in meiner Java-Anwendung die TLS-Verbindung hergestellt wird. Ich kann jedoch keinen .p12-Truststore zum Laufen bringen.

Ich habe versucht, den Truststore wie hier vorgeschlagen zu erstellen:

# Create .p12 truststore
openssl pkcs12 -export -nokeys -in "${cert}" -out "${truststore}"


und dann wie folgt laden:

FileInputStream fis = new FileInputStream(new File(trustorePath));
KeyStore trustStore = KeyStore.getInstance("PKCS12");
trustStore.load(fis, truststorePassword.toCharArray());
fis.close();


aber ich erhalte die folgende Ausnahme in meinem Java-Code:


Unerwarteter Fehler : java.security.InvalidAlgorithmParameterException:
Der Parameter „trustAnchors“ darf nicht leer sein


Irgendwelche Ideen, was ich falsch mache ?

(Ein funktionierendes Snippet mit .p12 Truststore mit Java 8 wäre sehr dankbar.)

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post