Windows Forms アプリケーションのセットアップを作成しました。このセットアップをWindows 7にインストールすると、次のように表示されます。
Name: my application.exe
Publisher: unknown publisher
Type: application
From: my application.exe
出版社名を設定したい。出版社名を設定するにはどうすればよいですか?
出力コードにデジタル署名する必要があります。記事Authenticodeを使用したコードの署名とチェックから始めましょう。
これの全体的な目的は、コードが改ざんされていないことを保証することです。認証局の1つから コード署名証明書を購入する の場合、「これを信頼しますか?」ウィンドウがまったく表示されないようにすることができます。
設定するのは簡単な作業ではありませんが、スクリプトを設定して実行すると実行できます。
簡単な解決策は見つかりません。
以下は、最も関連性の高いセクションのカットアンドペーストです。必要なものを正確に取得するには、さらに読む必要がある場合があります。
MakeCertテストプログラムを使用して、テストX.509証明書を生成します。 MakeCertは次のタスクを実行します。
以下は、Microsoft Internet Explorer 3.02 UPDオプションを使用して証明書を作成する例です。
MakeCert -k:c:\KeyStore\MyKey.pvk -n:CN=MySoftwareCompany Cert.cer
この例では、Cert.cerという証明書ファイルが作成されます。 MyKeyと呼ばれるキーペアの公開部分は、発行元にバインドされています、MySoftwareCompany。
証明書を生成した後、Cert2SPCプログラムでソフトウェア公開証明書を作成できます。このプログラムは、複数のX.509証明書をPKCS#7署名にラップします-dataオブジェクト。このプログラムはテスト専用です。有効なソフトウェア公開証明書が認証局から取得されます。次に例を示します。
Cert2SPC MyCert.cer MyCert.spc
これは、X.509証明書、MyCert.cerをPKCS#7ソフトウェア発行証明書がMyCert.spcと呼ばれます。
最後のステップは、SignCodeプログラムを使用して実際にファイルに署名することです。このプログラムは:
ファイルが署名され(有効な証明書があることを前提としています)、タイムスタンプが付けられると、ファイルを顧客に配布できます。テストプログラムMakeCertおよびCert2SPCで生成された証明書は、一般に配布されるコードの署名には無効です。独立系ソフトウェアベンダーは、一般に配布されるコードに署名するために、GTE、VeriSign Inc.、または別の証明機関から証明書を取得する必要があります。
Microsoft Internet Explorer 3.02 UPDオプションを使用してファイルに署名し、タイムスタンプを付ける方法の2つの例を次に示します。 1つ目は秘密鍵名MyKeyを使用し、2つ目は秘密鍵ファイルMy.pvk:
SignCode -prog MyControl.exe -spc Cert.spc -pvk MyKey -timeStamper http://timestamp.verisign.com/scripts/timstamp.dll
SignCode -prog MyControl.exe -spc Cert.spc -pvk My.pvk -timeStamper http://timestamp.verisign.com/scripts/timstamp.dll
注上記のURLでは、timstamp.dllが正しいです。これは誤植ではありません。
どちらの場合も、PKCS#7オブジェクトのCert.spcがファイルMyControl.exeのダイジェストに埋め込まれています。最初の例では、ダイジェストはMyKeyキーペアの秘密キーで署名され、タイムスタンプが追加されます。 2番目の例では、ダイジェストは秘密鍵ファイルMy.pvkで署名され、タイムスタンプが追加されます。