Top / Windows / ドライバ署名

ドライバ署名

http://slashdot.jp/comments.pl?sid=242529&cid=700680
[M.D.L] WHQL/HCT について

ドライバ署名は、WHQL(Windows Hardware Quality Labs) がデバイスドライバに対して発行している署名です。Windows は、デバイスドライバのインストール時に署名を参照し、デバイスドライバが改竄されていないかを確認します。

ドライバが改竄されている、もしくはそもそもドライバ署名が発行されていないデバイスドライバをインストールしようとすると、Windows 2000/XP のデフォルト設定の場合、以下の警告ダイアログが表示されます。

ドライバ署名警告ダイアログの例 (LGY-PCI-GT)

ドライバ署名の取得方法

ドライバ署名を取得するには以下の要綱を満たす必要があります。

  • WHQL が満たすハードウェア要綱を全て満たす必要がある
    WHQL では様々なデバイスに対して「デバイスであるならこうあるべき」という要綱を全て満たすことを要求しています。
    例えば USB マウスのカスタムドライバであるならば、ハードウェアは HID Class で動作していることが要求されます。HID Class ではない似非 USB マウスの場合、WHQL 要綱を満たしていないので、このデバイスに対してドライバ署名を発行することはありません。
  • WHQL が公開しているテスト (HCT) を全てクリアする必要がある
    WHQL ではデバイス/デバイスドライバに対し、正しく動作するかどうかテストを行います。このテストを全てクリアしないとデバイス署名が発行されることはありません。
    テスト内容は常に更新されます*1
    デバイスドライバに対してのテストと思われがちですが、半分程度はデバイスそのもののテストです。よってテストをクリアするにあたっては、ソフトウェア以外にもハードウェアの知識も必要となります。
  • デバイス署名に対するコスト
    デバイスドライバ毎にデバイス署名が発行する必要があるため、ちょっとした修正の度にテストをし直して署名手続きを行わなければなりません。場当たり的な出荷を行うと、それなりのコストが毎回生じることになります。

現状、日本企業でデバイス署名を取得し、デバイスドライバを出荷している所は少ないように見受けられます。ドライバ署名を取得するには人的な要素も含めコストが必要なこと、そもそもカスタマー側がデバイス署名の必要性について意識していないことが関係していると考えられます。

今後も何らかのイニシアチブを得られないとするならば、このような状況が少なくとも Vista まで続くように感じています。


*1 新規 OS もしくは Service Pack の公開に合わせて更新するケースが殆どですが

Last-modified: 2005.09.19 (月) 17:19:06 (6786d)