Lebensdauer von Treiber Signatur in x64?
-
Hallo zusammen,
leider ist nun seit den letzten Vista 64 Updates eine Signatur eines x64 Treibers
unter Vista zwingend notwendig, ansonsten wird der Treiber nicht installiert.
Workarounds gibt es nur noch in haarsträubenden Methoden:
http://www.mindfactory.de/forum/windows-vista/41467-treiber-signatur-tricks.htmlNun meine Frage zu Signaturen für Treiber, hoffentlich hat das hier schon jemand mal gemacht und kennt sich da aus

Signaturen sind Zeitbeschränkt, was passiert nach dem Ablauf der Signatur?
1.) ich kann mit der Signatur nicht mehr kompilieren
2.) der Treiber lässt sich nicht mehr installierenBei zweiteren meine ich einen Treiber, den ich mir heute kompiliere, wird dieser nach 2 Jahren noch installierbar sein??
Edit: auf Anraten von asc ist das hier wohl der richtige Platz wenn man Hilfe und Antworten von Treiberprogrammierern sucht.
Grüße
TheNoName
-
Du kannst ab diesem Zeitpunkt nicht mehr signieren.
Siehe z.B. hier.
http://www.verisign.com/code-signing/information-center/certificates-faq/index.htmlHow long does a digital signature last?
Every Code Signing Certificate is purchased with a specific validity period. The digital certificate can be used to sign code as frequently as needed during that validity period. When the digital certificate expires, all digital signatures that depend on that digital certificate expire also unless the signature includes a time stamp. A timestamp option shows when code was signed, allowing customers to verify that the code signing certificate was valid at the time of the digital signature.
Und da ein Treiber mit einem Timestamp versehen ist, ist der Treiber zwar noch gültig, Dein Zertifikat aber nicht mehr...
-
Danke,
dennoch scheine ich es nicht zu kapieren.
Das heisst:
Wenn ich den Treiber signiere, muss ich das innerhalb der angegebenen Gültigkeits-Periode tun. (kann dann jede .sys signieren)
Der Treiber ist aber auch noch nach 10 Jahren über dem Zeitraum für Windows so signiert, das er installiert wird, oder wird er abgewiesen?
Ich könnte mir vorstellen, das nur die "Installation" des Treibers abgewiesen wird.Wenn ich nun meine Uhrzeit am Rechner zurückstelle, dann kann ich eine ausgelaufene Sigantur zum Signieren verwenden? (weiss ja keiner, das der Treiber erst viel später rauskam)
Also muss das Comilierungsdatum innerhalb der Signaturgültigkeit liegen? (Erstellungsdatum der Datei? Wo ist dieser Timestamp?)
Grüße
thenoname
-
thenoname schrieb:
Wenn ich den Treiber signiere, muss ich das innerhalb der angegebenen Gültigkeits-Periode tun. (kann dann jede .sys signieren)
Ja, wenn Du das passende Zertifikat hast, was Treiber signieren kann:
Siehe: Microsoft Cross-Certificates for Windows Vista Kernel Mode Code Signing
http://www.microsoft.com/whdc/winlogo/drvsign/crosscert.mspxthenoname schrieb:
Der Treiber ist aber auch noch nach 10 Jahren über dem Zeitraum für Windows so signiert, das er installiert wird, oder wird er abgewiesen?
Wenn Du das Zertifikat nicht _zurückgezogen_ hast, bleibt der Treiber gültig und lässt sich so lange installieren.
thenoname schrieb:
Ich könnte mir vorstellen, das nur die "Installation" des Treibers abgewiesen wird.
Der Treiber ist und bleibt gültig, wenn der Timestamp im Gültigkeitsdatum liegt!
thenoname schrieb:
Wenn ich nun meine Uhrzeit am Rechner zurückstelle, dann kann ich eine ausgelaufene Sigantur zum Signieren verwenden? (weiss ja keiner, das der Treiber erst viel später rauskam)
Netter Versuch... aber der _Timestamp_ wird nicht auf *Deinem* Rechner erzeugt sondern auf dem Server der Zertifizierungsstelle

z.B. so:SignTool sign /v /ac CrossCertificateFile /s SPCCertificateStore /n SPCSubjectName /t http://timestamp.verisign.com/scripts/timestamp.dll Good.catSiehe: Digital Signatures for Kernel Modules on Systems Running Windows Vista
http://download.microsoft.com/download/9/c/5/9c5b2167-8017-4bae-9fde-d599bac8184a/kmsigning.docKernel-Mode Code Signing Walkthrough
http://download.microsoft.com/download/9/c/5/9c5b2167-8017-4bae-9fde-d599bac8184a/KMCS_Walkthrough.docthenoname schrieb:
Also muss das Comilierungsdatum innerhalb der Signaturgültigkeit liegen? (Erstellungsdatum der Datei? Wo ist dieser Timestamp?)
Das Compiledatum spielt keine Rolle. Es kommt nur auf den _Zeitpunkt_ des _Timestamps_ an. Die Signatur wird in einem speziellen Teil der PE-specifikation untergebracht.
Siehe: Microsoft Portable Executable and Common Object File Format Specification
http://www.microsoft.com/whdc/system/platform/firmware/PECOFF.mspx
http://www.microsoft.com/whdc/winlogo/drvsign/Authenticode_PE.mspx