サード パーティの暗号化サービス プロバイダー (CSP) の Authenticode 署名
カスタム暗号化サービス プロバイダー (CSP) のサード パーティの Authenticode 署名は、Windows Vista 以降で使用できます。
そのため、Microsoft は CSP に署名しなくなり、手動 CSP 署名サービスは廃止されました。 送信 cspsign@microsoft.com または cecspsig@microsoft.com 署名される電子メールおよび CSP は、Microsoft によって処理されなくなります。
代わりに、次の手順に従って、すべてのサードパーティ CSP を自己署名できるようになりました。
- Microsoft もクロス証明書を発行する証明機関 (CA) からコード署名証明書を購入します。 「 カーネル モード コード署名クロス証明書」トピックでは、Microsoft がクロス証明書を提供している CA と対応するクロス証明書のリストが記載されています。 これらは、Microsoft によって発行された "Microsoft コード検証ルート" までチェーンされる唯一のクロス証明書であり、これによって Windows でサード パーティの CSP を実行できる点に注意してください。
- CA からの証明書とそれに一致するクロス証明書を取得したら、SignTool を使用して、すべての CSP バイナリに署名できます。
- SignTool は、Visual Studio の最新バージョンに含まれています。 また、WDK バージョン 7.0 以降のバージョンにも含まれています。 以前のバージョンの WDK に付属する SignTool はクロス証明書と互換性がなく、バイナリの署名には使用できないことに注意してください。
Note
Windows 8 以降では、CSP に署名する必要はなくなりました。
コマンド ラインからバイナリに署名することも、Visual Studio 2012 以降で統合ビルド ステップとして署名することもできます。
SignTool コマンドは、次のとおりです。
signtool.exe sign /ac <cross-certificate_from_ms> /sha1 <sha1_hash> /t <timestamp_server> /d <”optional_description_in_double_quotes”> <binary_file.ext>
- <cross-certificate_from_ca> は、Microsoft からダウンロードしたクロス証明書ファイルです
- <sha1_hash> は、コード署名証明書に対応する SHA1 拇印です。
- <timestamp_server> は、署名操作にタイムスタンプを付けるために使用されるサーバーです。
- <"optional_description_in_double_quotes"> は省略可能なフレンドリ名の説明です
- <binary_file.ext> は署名するファイルです
次に例を示します。
signtool.exe sign /ac certificate.cer /sha1 553e39af9e0ea8c9edcd802abbf103166f81fa50 /t "http://timestamp.digicert.com" /d "My Cryptographic Service Provider" csp.dll
Note
古い CSP 署名では必要でしたが、CSP DLL にリソース ID #666 を含めたり、レジストリに署名を含める必要はありません。
その他のヘルプとサポート
Application Security for Windows Desktop フォーラムで支援を受けることができます。