2010-02-06 18 views
10

Ich habe gerade mein Code-Signing-Zertifikat von StartSSL erhalten und versuche, unseren Installer zu unterschreiben.So überprüfen Sie, ob der Zeitstempel für den signierten Code korrekt ist

Der Signiervorgang läuft gut und ich bekomme eine Installer-Exe, dass Windows nicht mehr beschwert, von unbekannten Herausgebern zu sein. Das ist toll!

Allerdings habe ich versucht, sicherzustellen, dass das Timestamping auch wie angekündigt funktioniert, also habe ich mein PC-Datum nach 2012 verschoben, nach dem Ablaufdatum meines Codesignaturzertifikats.

Dies sollte angeblich keinen Unterschied machen, aber wenn ich die gleiche Installer exe ausführen, bekomme ich jetzt die gleiche böse "unbekannten Herausgeber" Warnung.

Mit Blick auf die Eigenschaften der Exe in der Registerkarte Digitale Signaturen kann ich definitiv sehen, dass der Zeitstempel heute (2010) zeigt, aber das scheint überhaupt nicht zu helfen.

Googling gab mir nichts anderes als, wenn Sie das Datum im Feld Timestamp sehen, dann ist alles in Ordnung. Ich kann das nicht glauben, mein PC mit fortgeschrittenem Datum beschwert sich, dass es nicht in Ordnung ist.

Weiß jemand, ob dieses Timestamping-Konzept überhaupt funktioniert und wie ich sicherstellen kann, dass ich die ausführbare Datei richtig signiere?

Danke.

+1

"rem" scheint die richtige Antwort zu haben. Sie können mehr über "Lifetime Signing Semantics" unter http://download.microsoft.com/download/9/c/5/9c5b2167-8017-4bae-9fde-d599bac8184a/Authenticode_PE.docx lesen. – user200783

+0

Note Markieren Sie Berrys Kommentar zu Rems Antwort. Es hängt offenbar davon ab, welche Validierungsebene Sie haben, ob StartSSL Timestamping unterstützt. – MZB

Antwort

2

Entschuldigung, ich habe keine Antwort für Sie, aber es sieht so aus, als ob Sie nicht das Verhalten sehen sollten, das Sie sind, gemäß Comodo's Instant SSL FAQ.

Ist timestamped Code gültig nach einer Codesignierungszertifikat abläuft?
Timestamping gewährleistet , dass Code nicht abläuft, wenn Zertifikat abläuft. Wenn Ihr Code Zeitstempel ist, ist die digitale Signatur gültig, obwohl das Zertifikat abgelaufen ist. Ein neues Zertifikat ist nur erforderlich, wenn Sie zusätzlichen Code signieren möchten. Wenn Sie die Zeitstempeloption während der Signatur nicht verwendet haben, müssen Sie Ihren Code erneut signieren und erneut an Ihre Kunden senden.

Comodo scheint zu diesem Thema maßgebend zu sein, also bin ich geneigt zu glauben, was sie sagen.

Ich bin gespannt auf die Antwort auf diese selbst, weil ich gerne ein Code-Signatur-Zertifikat von StartSSL selbst kaufen würde. Ich habe auf ihrer Seite bemerkt, dass die Code-Zertifikate "Beta" sind, also ist das vielleicht etwas, woran sie arbeiten müssen.

+0

Das gleiche gilt für StartSSL - ich denke, das OP sollte mit seiner Kundenbetreuung sprechen und sehen, was sie zu sagen haben. –

0

Es gibt einen Unterschied zwischen der "Signing Time" und dem Timestamp vom "Stamping Signer". Die Signierungszeit ist die Zeit, zu der Sie den Code tatsächlich signiert haben, wenn der Zeitstempel vom "Stamping Signer" (dem Zertifikatsserver) stammt.

Durch die Signierung mit dem Zeitstempel des Zertifikatsausgebers wird sichergestellt, dass Ihre Signatur auch dann gültig ist, wenn Ihr Zertifikat bereits abgelaufen ist.

+0

Gibt Windows an, dass das Zertifikat abgelaufen ist (was für Benutzer schlecht aussieht), oder wird Windows auf die Standardmeldung "unbekannter Herausgeber" zurückgesetzt, die normalerweise angezeigt wird? –

8

Die von StartSSL ausgestellten Codesignaturzertifikate enthalten das EKU-Attribut "Lifetime Signing" (1.3.6.1.4.1.311.10.3.).13), wodurch die Dateisignaturen ablaufen, wenn das Zertifikat abläuft, unabhängig von Zeitstempeln.

+2

Laut [diesem Post] (https://forum.startcom.org/viewtopic.php?f=15&t=2464) im offiziellen StartCom-Forum, das auf diese Vergleichstabelle verweist (https: //www.startssl. com /? app = 40), "die Zeitstempelung wird für Code-Signing-Zertifikate in der Extended Validation-Ebene unterstützt." Es klingt also, wenn Sie ihre höchste Validierung kaufen (die immer noch vergleichsweise billig ist), verschwindet dieses Problem. Kinda macht Sinn, dass sie eine höhere Gültigkeitsstufe für Zertifikate haben möchten, die nicht ablaufen. Vorbehalt: Habe das nicht selbst getestet. –

+2

Beachten Sie auch, dass "[StartSSL ™ Extended Validation-Zertifikate sind derzeit beschränkt auf Unternehmen, Unternehmen, Regierungsbehörden und anderen rechtlich etablierten Organisationen] (https://www.startssl.com/?app=30)" - sie sind nicht verfügbar für einzelne Entwickler. –

+0

Es sieht so aus, als ob startcom/startssl dies kürzlich geändert hat. Ich habe ein altes Zertifikat (jetzt abgelaufen) welches dieses Attribut hat, aber ich habe vor ein paar Tagen ein neues gekauft, welches es nicht hat! Im StartCom-Forum gibt es auch einen Eintrag, der das sagt. –