Nicht ändern können Sie die keystore-format

Ich versuche, mich einige keystores mit keytool aus der neuesten JRE (version 1.8.0_151). Wenn ich den keystore mit diesem Befehl keytool -genkey -alias serverprivate -keystore server.private -keyalg rsa -storepass apassword -keypass apassword zeigt er mir diese Warnung:

Warning:
The JKS keystore uses a proprietary format. It is recommended to migrate 
to  PKCS12 which is an industry standard format using "keytool 
-importkeystore -srckeystore server.private -destkeystore server.private
-deststoretype pkcs12".

Also habe ich den Befehl eingeben, und es sagt es ist fertig, und die alten keystore gespeichert wurde, im server.private_old. Aber wenn ich keytool -list -keystore server.private und geben Sie das Kennwort ein, es wird noch aufgeführt, wie JKS statt PKCS12. Warum ist das so?

update
Es ist nicht leise geändert, um pkcs12-entweder, weil wenn ich KeyStore store = KeyStore.getInstance("pkcs12"); in java wirft es einen Fehler, während es funktioniert gut, wenn mit getInstance("JKS");

update 2
Und bei der Verwendung von keytool -genkey -alias serverprivate -keystore server.private -storetype PKCS12 -keyalg rsa es nicht zeigen Sie mir eine Warnung, aber immer noch als einen JKS-keystore bei der Verwendung keytool -list server.private.

Könnten Sie versuchen, das speichern unter einem anderen Dateinamen und sehen, was passiert? Wenn Sie auf einem Unix-system sind, könnten Sie auch versuchen file <keystore_name.ext>? Hmm, der Letzte Satz war veraltet, bevor ich kann es mit dem update 🙂
Ich würde empfehlen die Verwendung des .jks und .p12 Dateinamenerweiterungen, die durch die Art und Weise.
immer noch in der Liste als JKS, auch beim Wechsel Erweiterung p12
OK, das beginnt, sieht aus wie ein bug. Beachten Sie, dass Java 9 verwendet .p12 als Standard, so dass es könnte ein Problem sein, Zurückportieren. Aber konnte Sie bewegen, Ihre -deststoretype Argumente für das starten des Befehls, nur um sicher zu sein? Welche Inhalte sind in den keystore, etwas vielleicht, dass Java 8 nicht unterstützt, wie die privaten Schlüssel ohne Zertifikate?
Der neue keystore wirklich ist PKCS12. Der Fehler ist, dass keytool sagt es ist jks. Um dies zu überprüfen, können Sie analysieren es mit openssl: openssl pkcs12 -in server.private

InformationsquelleAutor Conner Dassen | 2017-12-04

Schreibe einen Kommentar