Welche vertrauenswürdigen Stammzertifikate sind in Java enthalten?

37

Welche vertrauenswürdigen Stammzertifikate sind in Java enthalten, insbesondere Sun Java und IBM Java? Wie kann ich die Liste selbst bekommen? Verwendet Java unter Windows Zertifikate vom Betriebssystem?

Peter Štibraný
quelle

Antworten:

36

Gehen Sie zu "Java Control Panel", "Secure" und klicken Sie auf "Certificates". Gehen Sie zur Registerkarte "System" und wählen Sie "Secure CA" oder "Secure Sites CA" aus der Dropdown-Liste.

In IIRC werden die Zertifikate in einer Java-serialisierten Datei gespeichert jre/lib/security/cacerts. Dies ist ein Standard-Java-Keystore, der mit dem Dienstprogramm keytool bearbeitet werden kann:

keytool -keystore "$JAVA_HOME\jre\lib\security\cacerts" -storepass changeit -list

Ich glaube, Mac OS X verwendet jetzt das Betriebssystem, um Zertifikate zu verarbeiten.

Tom Hawtin - Tackline
quelle
Hat dies etwas mit den Root-Zertifikaten des Systems zu tun? (ZB Windows ' certmgr.msc.)
Pacerier
4
@Pacerier Nein, Java führt eine eigene Liste vertrauenswürdiger Zertifizierungsstellen.
Hexaholic
7

Obwohl Oracle JRE (früher Sun JRE) eine Reihe von Zertifikaten enthält, wie von Tom erwähnt, verwendet JRE unter Windows auch Zertifikate, die dem aktuellen Browser zugeordnet sind, standardmäßig für Applets und Web Start-Apps (sofern Sie diese verwenden). " Internet Explorer 5.0 oder höher oder Mozilla 1.4 oder höher ") .

Es sollte "nur funktionieren", wenn Sie die Signaturüberprüfung, die HTTPS-Serverauthentifizierung oder die HTTPS-Clientauthentifizierung durchführen möchten (z. B. das Signieren von Web Start-Anwendungen mit einem Unternehmenszertifikat, das bereits auf Ihrem Computer installiert ist). Für kompliziertere Anwendungsfälle ist dieses Dokument möglicherweise hilfreicher.

rxg
quelle