次のコマンドを実行するとします。
makecert testcert.cer
秘密鍵は作成されていますか? その場合、makecert にこの証明書を証明書ストアにインストールするように指示していませんが、この証明書はシステムのどこに自動的に保存されますか?
次のコマンドを実行するとします。
makecert testcert.cer
秘密鍵は作成されていますか? その場合、makecert にこの証明書を証明書ストアにインストールするように指示していませんが、この証明書はシステムのどこに自動的に保存されますか?
コマンドを実行する方法では、秘密鍵は作成されません。秘密鍵で証明書を生成するには、オプション -pe を使用する必要があります。しかし、これでは十分ではありません。秘密鍵は、証明書の送信先がストアの場合にのみ作成されます。したがって、次のようなコマンドを使用する必要があります。
makecert -pe -ss 私の testcert.cer
「my」は「個人」ストアに対応します。
秘密鍵はファイル自体に保存されているようです。http://msdn.microsoft.com/en-us/library/bfsktky3(VS.80).aspxのドキュメントから、それは述べています...
注意
証明書を安全に保管するには、証明書ストアを使用する必要があります。このツールで使用される .snk ファイルは、保護されていない方法で秘密鍵を格納します。.snk ファイルを作成またはインポートするときは、使用中は安全に保護し、作業が終了したら削除するように注意する必要があります。
.NET で証明書をロードすると、X509Certificate2 の HasPrivateKey が false に設定されるため、秘密キーは作成されません。