リリース署名の検証
ドライバー パッケージがリリース署名されると、SignTool ツールを使用して次の署名を確認できます。
ドライバー パッケージ内の個々のファイル。
埋め込み署名済みのカーネル モード バイナリ (ドライバーなど)。
ここでは、Toastpkg サンプルのバイナリ ファイルである toaster.sys の 64 ビット バージョンを使用する例を紹介します。 WDK インストール ディレクトリ内では、このファイルは src\general\toaster\toastpkg\toastcd\amd64 ディレクトリにあります。
次の例では、tstamd64.cat リリース署名付きカタログ ファイル内の toaster.sys の署名を確認します。
Signtool verify /kp /v /c tstamd64.cat amd64\toaster.sys
ここで:
verify コマンドは、指定されたカタログ ファイル (tstamd64.cat) 内の署名を検証するように SignTool を設定します。
/kp オプションは、カーネル ポリシーが満たされていることを確認するために SignTool を設定します。
/v オプションは、実行および警告メッセージを印刷するように SignTool を設定します。
/c オプションは、リリース署名済み (tstamd64.cat) のドライバー パッケージのカタログ ファイルを特定します。 埋め込み署名付きのドライバーのデジタル署名を確認する場合は、このオプションを使用しないでください。
amd64\toaster.sys は、検証するファイルの名前です。
「署名証明書チェーン」というラベルの付いたこのコマンドの出力で、次のことが当てはまることを確認する必要があります。
カーネル ポリシーの証明書チェーンのルートは、Microsoft Code Verification Root との間で交わされます。
クラス 3 の Public Primary Certification Authority 向けに発行されるクロス証明書も、Microsoft コード検証ルートによって発行されます。
署名付きカタログ ファイルの場合、既定の Authenticode 検証ポリシー署名は、ドライバー パッケージ内のどのカーネル モード バイナリ ファイルでも検証できます。 これにより、ファイルがユーザー モードプラグ アンド プレイインストール ダイアログ ボックスと MMC デバイス マネージャー スナップインで署名済みとして表示されます。
注 : この例は、リリース署名付きカタログ ファイルの検証にのみ使用され、埋め込み署名付きカーネル モード バイナリ ファイルには使用されません。
次の例では、tstamd64.cat 署名付きカタログ ファイル内の toaster.sys の既定の Authenticode 検証ポリシーを検証します。
Signtool verify /pa /v /c tstamd64.cat amd64\toaster.sys
ここで:
verify コマンドは、指定されたファイル内の署名を検証するように SignTool を設定します。
/pa オプションは、Authenticode 検証ポリシーが満たされていることを確認するために SignTool を設定します。
/v オプションは、実行および警告メッセージを印刷するように SignTool を設定します。
/c オプションは、リリース署名済み (tstamd64.cat) のドライバー パッケージのカタログ ファイルを特定します。
amd64\toaster.sys は、検証するファイルの名前です。
「署名証明書チェーン」というラベルが付いたこのコマンドの出力では、既定の Authenticode 証明書チェーンが、クラス 3 Public Primary Certification Authority との間で交わされていることを確認する必要があります。
次の手順に従えば、Windows エクスプローラーを使用してカタログ ファイル自体のデジタル署名を確認することもできます。
カタログファイルを右クリックし、 [プロパティ] を選択します。
デジタル署名付きのファイルの場合、ファイルの [プロパティ] ダイアログ ボックスには、ファイルの署名に使用された証明書の署名、タイムスタンプ、および詳細が表示される追加の [デジタル署名] タブがあります。
ドライバー パッケージをリリース署名する方法の詳細については、「ドライバー パッケージのリリース署名」と「カタログ ファイルの SPC 署名の確認」を参照してください。