首先,查看本机安装的证书可在“运行”中输入:certmgr.msc
一、win8、8.1、win10系统,使用管理员powershell创建证书:
(1)利用如下命令来创建证书并获取到其指纹
New-SelfSignedCertificate -certstorelocation cert:localmachinemy -dnsname localhost
颁发给localhost(或者改为目标机器的域名),并将其保存到本地计算机中的【个人】证书下,记住产生的Thumbprint字段。
此时可在certmgr中的“中间证书颁发机构”中查看产生的证书,并手动导出,(2)(3)导出的证书再安装将导致密码错误的问题。
(2)需要导出证书时,需要用一个变量来保存密码
$pwd = ConvertTo-SecureString -String "Pa$$w0rd" -Force -AsPlainText
其中的密码字段可自定义
(3)导出pfx,指定第一步获取到的指纹和第二步保存的密码
Export-PfxCertificate -cert cert:localMachinemyCE0976529B02DE058C9CB2C0E64AD79DAFB18CF4 -FilePath d:cert.pfx -Password $pwd
二、也可使用makecert.exe创建证书:
现在点击开始菜单-运行-输入cmd,运行控制台应用程序,定位到makecert目录,在控制台输入:makecert -r -pe -$ individual -n “CN=mailSecurity” -sky exchange -sr currentuser -ss my mailSecurity.cer,即可在当前用户证书存储区下的个人区中生成一个名为mailSecurityr的x509证书,并在当前目录输出了证书文件mailSecurity.cer,以下简单介绍一下各种参数意义,更复杂的参数请参考:证书创建工具帮助
makecert 参数
-r 表示即将生成的证书是自我签署的,自己给自己发奖(这里主要是指颁发机构)
-pe 表示将所生成的私钥标记为可导出。这样可将私钥包括在证书中
-$ 证书是个人用还是商用(individual/commercial)老美就是搞啊,这玩意用美元符号还真是形象得很。
-n 表示证书主题,你就当它是标题吧,不管你取什么名字,必须包含CN=前缀
-sky 指定主题的密钥类型,必须是 signature、exchange 或一个表示提供程序类型的整数。默认情况下,可传入 1 表示交换密钥,传入 2 表示签名密钥
-sr 指定主题的证书存储位置。Location 可以是 currentuser(默认值)或 localmachine(实际是必须是这两个中的一个值)
-ss 指定主题的证书存储名称,输出证书即存储在那里
mailSecurity.cer 证书名称,不必与主题一致,不过建议你还是一致的好。
makecert工具下载地址:http://download.csdn.net/detail/lbhqq159/9831831
方法来自网络