2009-01-12 11 views
5

Java 1.5 fügte enhancement hinzu, um Signaturzeitstempel zu unterstützen. Soweit ich das beurteilen kann, ist die Idee, dass signierte JAR-Dateien nicht ungültig werden sollten, nur weil das Codesignaturzertifikat abgelaufen ist, solange die Dateien signiert wurden, während das Zertifikat gültig war. Theoretisch bedeutet dies, dass wir unsere Anwendungen nicht jedes Jahr neu signieren und erneut bereitstellen müssen, wenn das Zertifikat abläuft. Leider scheint es Probleme bei der Umsetzung zu sein, auf der Grundlage dieser beiden Themen im Forum:Hat jemand erfolgreich Signatur-Zeitstempel in einem Java-Applet verwendet?

http://forums.sun.com/thread.jspa?threadID=744677
http://forums.sun.com/thread.jspa?threadID=5309004

Ich bin darüber zu beginnen, testen, aber ich habe mich gefragt, ob jemand dies erfolgreich getan hat, ohne das Timestamping-Zertifikat auf dem Client zu importieren (was den gesamten Zweck besiegen würde)?

Antwort

4

Das Thawte TSA-Stammzertifikat wurde der Sun JRE-Cacerts-Datei in 6u10 und 5.0u18 hinzugefügt.

4

Leider scheint diese Funktion zu dieser Zeit völlig wertlos zu sein. Es ist leicht, einen Zeitstempel hinzuzufügen, wenn eine JAR-Datei unterzeichnen, fügen Sie einfach diesen Parameter auf den jarsigner Befehl:

-tsa https://timestamp.geotrust.com/tsa 

Dies ist die URL zu Thawte timestamping Server. Leider ist das Thawte-Timestamping-CA-Zertifikat nicht in der Liste der vertrauenswürdigen CA-Zertifikate der Java-Laufzeitumgebung enthalten, so dass es praktisch bedeutungslos ist. Das heißt, wenn Sie das Applet laden, nachdem das Codesignaturzertifikat abgelaufen ist, erhalten Sie den "nicht vertrauenswürdigen" Warndialog anstelle des "vertrauenswürdigen".

Es gibt einen "Workaround", sortiert, here, aber es funktioniert durch Einbettung der Thawte Zeitstempel CA Cert in das Applet selbst und Ausführen keytool auf dem Client das Zertifikat zu importieren. Ich kann nicht sehen, wie das funktionieren würde, da der Benutzer den signierten Code bereits gesehen hat, bevor dieser Code ausgeführt werden kann.

Ich werde weiter nach einer Lösung suchen, aber ich bin nicht hoffnungsvoll. Ich kann mir nicht vorstellen, warum nach all dieser Zeit kein brauchbares Zeitstempel-CA-Cert in die Java-Laufzeitumgebung aufgenommen wurde.

+0

Jason, Sie sollten eine RFE in BugParade, ähnlich wie http://bugs.sun.com/view_bug.do?bug_id=4212494 Sun dies nicht beheben Datei, wenn Sie dies tun. – Gili

Verwandte Themen