讓說我運行此命令:如果未指定-sv,makecert會在哪裏存儲私鑰?
makecert testcert.cer
是私有密鑰產生的?如果是這樣,即使我沒有告訴makecert在任何證書存儲中安裝此證書,它會自動存儲在系統中的哪個位置?
讓說我運行此命令:如果未指定-sv,makecert會在哪裏存儲私鑰?
makecert testcert.cer
是私有密鑰產生的?如果是這樣,即使我沒有告訴makecert在任何證書存儲中安裝此證書,它會自動存儲在系統中的哪個位置?
它看起來像私鑰存儲在文件本身。從http://msdn.microsoft.com/en-us/library/bfsktky3(VS.80).aspx的文檔中可以看到...
注意
您應該使用證書存儲安全地存儲您的證書。該工具使用的.snk文件以不受保護的方式存儲私鑰。當您創建或導入.snk文件時,在使用過程中應小心保護它,並在完成後將其刪除。
由於我在.NET中加載證書時X509Certificate2的HasPrivateKey設置爲false,因此未創建私鑰。
您運行commnand的方式不會創建任何私鑰。 要使用私鑰生成證書,您必須使用選項-pe。 但這並不足夠。只有當您的證書目的地是商店時,私鑰纔會被創建。所以,你必須使用命令如下:
makecert -pe -ss我testcert.cer
「我」對應於「個人」存儲。
是的,這是事實。另外請注意,makecert.exe不會告訴你它不會將私鑰嵌入到證書中。它只是在沒有私鑰的情況下在磁盤上創建它。因此,您可以使用`-pe -ss My`選項創建存儲並將其導出到磁盤。 – 2013-02-19 06:55:53