Makecert是Visual Studio提供的证书生成工具,Visual Studio自带,不用额外下载
执行
以VS 2015为例,直接从Visual Studio 2015-》Visual Studio Tools -》VS2015开发人员命令提示,打开控制台命令行程序就可以执行了
生成证书
首先,证书是必定包含了一个公钥信息的,同时包含了相关的数字签名。同时数字证书的使用是必须有一个私钥,构成一个密钥对的。因此makecert必定会在生成证书的时候生成密钥,密钥的保存方式有几个不同的命令选项
- -sv 该命令选项指定私钥文件,将证书的私钥存储在该文件中,指定该选项时,生成的证书当中就不会有私钥了
- -sk 该选项将私钥存储在密钥容器中,并在密钥容器中为该私钥指定一个名称,如果该名称不存在,则创建一个。相对于一个键值对,键值就是-sk后指定的,内容就是私钥
- -pe 该选项指定生成的私钥能否被导出。如果选择导出私钥,那么证书导出时,可以导出为pfx格式,该格式的文件包含了证书内容,和一个私钥。这个命令选项在-sv选项存在时,意味着指定的私钥文件中的私钥,在日后是可以被导出的。当-sk存在时,-pe选项无效,私钥还是会被存在密钥容器中。如果一个选项都不存在,证书依旧可以导出私钥(此时私钥存在与证书当中)
- -sr 该选项指定证书存储位置,这个位置是系统固定有几个选项的,就是CurrentUser,LocalMachine
- -ss 该选项也是指定证书存储位置,但这个位置是再CurrentUser,或是LocalMachine之下的