プログラムの証明書を購入しました。
購入した Web サイトから.cerファイル ( 43-some-really-long-name-9962812767788.cer ) が送られてきました。追加のファイルは送信されませんでしたが、これ以上何も必要ないことはほぼ 100% 確信しています。
その.cerファイルをクリックすると、次のような情報が表示されます。
- for: (私のデータ)
- 提供: Certum Code Signing CA
- 有効期限: 2014-10-24
その情報はすべて問題ないようです。
署名したい.exeファイルがあります(たとえば、ユーザーがWindowsで管理者として実行すると、証明書情報を見ることができます)。
そのためにsigntool.exeを使用できることがわかりましたが、すべての基準を満たす証明書が見つからないというエラーが常に返されます。
では、.cerファイル(およびその.cerファイルから生成できるすべてのファイル)のみを使用してプログラムに署名する( .cerを.exeに追加する) 方法は?
私は証明書、.cer、およびすべての証明書用語の経験がないので、回答する際はそのことを考慮してください (私は単純な人間です... ;)
これまでのところ、 MSDN ブログによると、コンピューター アカウントの信頼されたルート証明機関ストアに.cer をインストールしました (正しい方法で行ったと思います) 。
- スタート -> ファイル名を指定して実行 -> MMC
- ファイル -> Sanp の追加/削除…</li>
- [スナップインの追加と削除] ウィンドウから [証明書] を選択し、[追加 >] をクリックします。「コンピュータ アカウント」を選択し、「次へ」をクリックします。
- 「ローカル コンピューター」を選択し、「完了」をクリックします。
- 左ペインで「Trusted Root Certification Authorities」ストアを開き、「Certificates」をクリックします (図 7 を参照)。次に、右ウィンドウ ペインで右クリックし、「すべてのタスク -> インポート」を選択します。
- 作成した上記の.cerファイルをインポートしてインストールします。
私は確かにMMCで私のcerを見ます:
それでも、signtool.exe を適切に使用する方法がわかりません。コマンド:
Signtool sign /v
/t http://timestamp.verisign.com/scripts/timstamp.dll
/n CER_NAME_HERE FileToSign.exe
証明書の「CER_NAME_HERE」が何であるかがわからないため、失敗します。