Forum: PC-Programmierung Ablauf WHQL Zertifizierung?


von Christian R. (supachris)


Lesenswert?

Hallo,

wie ist der genaue Ablauf einer WHQL Zertifizierung eines Treibers? Wir 
haben hier ein Garät auf Basis des Cypress FX2 entwickelt, und nutzen 
deren Treiber. Wir haben eine eigene USB VID und Inf File und 
Treibernamen entsprechend angepasst. Nun wollen bzw. müssen (wegen x64) 
wir den Treiber WHQL zertifizieren lassen. Wie läuft das ab? Was braucht 
man alles? Bei der 399$ VeriSign ID steht dabei, sie gilt nur ein 
Jahr....ist das für die Treibersignierung relevant? Oder kann man dann 
halt nur innerhalb des Jahres Treiber signieren lassen? Was außer der 
Versign ID und dem WDK brauchen wir noch dazu? Hat das schon mal jemand 
durchgezogen? Was kostet die Zertifizierung bei MS?

von Pieter (Gast)


Lesenswert?

vor 15 Jahren sollte mal die WHQL je Modem und je WinVersion so 30TDM 
kosten...
Schick den ganzen "Krempel" doch einfach zu MS und frage da nach.

von Arc N. (arc)


Lesenswert?

Braucht man "nur" eine neue digitale Signatur geht es u.U. relativ 
einfach und günstig (300 $)
http://www.ftdichip.com/Documents/AppNotes/AN_101_WHQL_Certified_Driver_Process(FT_000063).pdf

Allerdings scheint das bei Cypress nicht so einfach zu gehen...

http://www.cypress.com/?rID=34554

> Last Updated: 02/09/2009

> Question: Where can I find cyusb.cat file?

> Response: The CyUSB.sys driver is WHQL certifiable, but, not certified.
> So, we do not provide *.cat file. We do not have any objections if the
> customer wants to get this driver signed on their own with your their
> VID and PID.  You will be able to receive that file after signing the
> driver from USB organisation.

Braucht das Gerät isochrone Transfers?
Wenn nein, könnte man auch WinUSB benutzen
http://msdn.microsoft.com/en-us/library/aa476426.aspx
FX2 Beispieltreiber
http://msdn.microsoft.com/en-us/library/dd163442.aspx

von Christian R. (supachris)


Lesenswert?

Hm...also müssen wir erst bei der USB.org den Test machen lassen um das 
.cat File zu bekommen. Mit dem cat File uns der VeriSign Signatur dann 
zu MS und bei denen die WHQL Zertifizierung, hab ich das richtig 
verstanden?

Nee, ISO haben wir nicht, aber jetzt zum Ende der Entwicklung auf einen 
neuen, eigenen Treiber umsatteln ist auch nicht besonders clever, zumal 
der aktuelle Cypress Treiber endlich ordentlich funktioniert.

von Arc N. (arc)


Lesenswert?

Christian R. schrieb:
> Hm...also müssen wir erst bei der USB.org den Test machen lassen um das
> .cat File zu bekommen. Mit dem cat File uns der VeriSign Signatur dann
> zu MS und bei denen die WHQL Zertifizierung, hab ich das richtig
> verstanden?

So in etwa http://www.cypress.com/?docID=16776
http://msdn.microsoft.com/en-us/library/aa906341.aspx

Etwas mehr Verwirrung...

http://download.microsoft.com/download/3/2/c/32cb69db-71e3-447e-a91b-4070cdc4548a/WLP22-10_a.doc
"A6.4.2.4 – USB devices comply with their related USB device class 
specifications. A USB peripheral that fits into one of the USB device 
class definitions must comply with the related USB device class 
specification. USB class drivers in the operating system are implemented 
to support compliant devices in each particular class."

Ob der Umkehrschluss gilt und ob das für das aktuelle 
Windows-Logo-Programm genauso gilt, entzieht sich meiner Kenntnis.

Wenn man das Windows-Logo nicht braucht(?) bzw.
"If the Windows Logo Program does not have a compatible test program for 
the device setup class of a PnP driver package, you must use the 
following types of digital signatures to release-sign driver packages on 
Windows Vista and later versions of Windows:
To comply with the kernel-mode code signing policy of 64-bit versions of 
Windows Vista and later versions of Windows, you must use a Software 
Publisher Certificate (SPC) to sign a kernel-mode driver package. For 
non-boot-start drivers, you only need to sign the driver package’s 
catalog file. For a boot-start driver, you must embed an SPC signature 
in a kernel-mode driver file and, optionally, also sign the driver 
package’s catalog file.
To comply with the PnP device installation signing requirements of 
32-bit versions of Windows Vista and later versions of Windows, you can 
use either an SPC or a commercial release certificate to sign a 
kernel-mode driver package’s catalog file. These latter two signature 
types verify the authenticity and integrity of a driver, but unlike a 
WHQL release signature, do not verify the reliability of the driver"

aus http://msdn.microsoft.com/en-us/library/dd419909.aspx
bzw. zum allgemeinen Vorgehen 
http://msdn.microsoft.com/en-us/library/aa906256.aspx
oder das nächste Live-Meeting July 23, 2009 at 6:30 p.m. PDT (01:30 UTC) 
for Office Hours...

von Stefan de Buhr (Gast)


Lesenswert?

Moin,

die Verisign ID dient zum signieren der Treibersoftware, üblicherweise 
.sys und .inf Treiberdateien. Selbst wenn die ID irgendwnan ungültig 
wird, sprich man mit ihr nicht mehr signieren kann, so bleiben die damit 
vorher signierten Dateien gültig.
Alsdann legt man bei Microsoft Winqual ein Konto an um Testresultate 
einreichen zu können. Das Anlegen ist kostenlos. Die Prüfung von 
Testresultaten kostet pro Betriebsystem etwa 400 USD. Die genaue Summe 
ist bei Microsoft zu erfragen.
Man testet also seine Treibersoftware mit dem WLK (Windows Logo Kit) und 
so alles gut läuft, purzelt ein Testreport heraus. Den muß man mit dem 
WST (Winqual Submission Tool) aufbereiten. Das aufbereitete Testresultat 
welches Testreport und Treibersoftware enthält reicht man bei Winqual 
zur Prüfung ein. So Winqual das Ergebnis für gut befindet, bekommt man 
die .cat Datei und hat damit eine zertifizierte Treibersoftware.

Beste Grüße,
Stefan

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.