ソフトウェア発行元証明書の取得
更新 : 2007 年 11 月
ファイルに署名するには、まずソフトウェア発行元証明書 (SPC: Software Publisher Certificate) を取得する必要があります。これを取得するには、証明機関に申請します。この申請手続きでは、1 対のキーを生成し、自分の氏名、住所、公開キーなどの識別情報を証明機関に申告します。また、ウイルスが含まれているソフトウェアやユーザーのコンピュータやコードを破壊するようなソフトウェアを意図的に頒布しないという誓約を行う必要があります。
証明機関は、Version 3 拡張機能付きの業界規格 X.509 認証書式に準拠したソフトウェア発行元証明書を発行します。この証明書は証明書の所有者を特定し、その公開キーを含んでいます。証明書は、参照用として証明機関によって保存され、コピーが電子メールで申請者に返送されます。証明書を受け取ったら、秘密キーで署名したすべての発行予定ソフトウェアにコピーを組み込む必要があります。
Authenticode および電子的に署名された証明書については、次のリソースを参照してください。
詳細については、MSDN ライブラリの「Authenticode」および「Signing and Checking Code with Authenticode」を参照してください。
https://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnauth/html/signfaq.asp の「Frequently Asked Questions About Authenticode」(MSDN)
Authenticode の詳細およびソフトウェア発行元証明書の取得方法については、https://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnsmarttag/html/odc_dcss.asp の技術文書「Digital Code Signing Step-by-Step Guide」を参照してください。
試験的にファイルに署名するためのテスト用証明書の作成については、「テスト用ソフトウェア発行元証明書の作成」を参照してください。
テスト用ソフトウェア発行元証明書の作成
テスト用のソフトウェア発行元証明書を作成するには、MAKECERT と CERT2SPC の 2 つのユーティリティを使用します。このテスト用 SPC は、コード署名のテスト用であり、ソフトウェアの発行には使用できません。
MYKEY.PVK という秘密キーファイルと CERT.CER という会社証明書を作成するには、次のコマンドを入力して MAKECERT ユーティリティを実行します。
C:\MSSDK\BIN\MAKECERT -u:MyKey -n:CN=MySoftwareCompany -k:MYKEY.PVK CERT.CER
MyKey でキーの名前を指定し、MySoftwareCompany で会社名を指定します。MAKECERT ユーティリティはコマンド ライン オプションの大文字と小文字を区別するので、-u、-n、および -k は小文字で入力します。-n オプションの値 CN= は大文字にします。
CERT.SPC というテスト用 SPC を作成するには、次のコマンドを入力して CERT2SPC ユーティリティを実行します。
C:\MSSDK\BIN\CERT2SPC C:\MSSDK\BIN\ROOT.CER CERT.CER CERT.SPC
CERT.SPC ファイルは、MAKECERT で作成した CERT.CER ファイルと Mssdk\Bin フォルダにある ROOT.CER ファイルから作成されます。