windows 签发 pfx 证书

打开Microsoft .NET Framework 的SDK命令提示,按以下步骤操作: 

(所有的工具可在C:\Program Files\Microsoft 
SDKs\Windows\v6.0A\bin\中找到)

------ 第一步 创建 X.509 证书 ------
makecert.exe为证书创建工具。
证书创建工具生成仅用于测试目的的 
X.509 证书。它创建用于数字签名的公钥和私钥对,并将其存储在证书文件中。
此工具还将密钥对与指定发行者的名称相关联,并创建一个 X.509 
证书,该证书将用户指定的名称绑定到密钥对的公共部分。
创建证书时会提示要求证书的私钥密码(Subject 
Key,两个密码输入框),并会在生成cer文件是再次要求输入密码(一个输入框)
参考:http://msdn.microsoft.com/zh-cn/library/bfsktky3(VS.80).aspx
命令行为:
"C:\Program 
Files\Microsoft SDKs\Windows\v6.0A\bin\makecert.exe" -r -n "CN=xxxx软件有限公司" -b 
01/01/2009 -e 12/31/2019 -sv CbipSetupKey.pvk CbipSetupKey.cer

------ 第二步 创建发行者证书 ------
cert2spc.exe发行者证书测试工具
发行者证书测试工具通过一个或多个 X.509 
证书创建发行者证书 (SPC)。Cert2spc.exe 仅用于测试目的。可以从证书颁发机构(如 VeriSign 或 Thawte)获得有效的 
SPC。
参考:http://msdn.microsoft.com/zh-cn/library/f657tk8f(VS.80).aspx
生成发行者证书时,不要求输入私钥密码
命令行为:
"C:\Program 
Files\Microsoft SDKs\Windows\v6.0A\bin\cert2spc.exe" CbipSetupKey.cer 
CbipSetupKey.spc


------ 第三步 导出证书文件------
pvkimprt.exe是证书导出工具。需要从微软网站下载:http://download.microsoft.com/download/vba50/Utility/1.0/NT5/EN-US/pvkimprt.exe
证书导出工具用于将.spc和.pvk文件导出为pfx证书文件。
导出时,会提示创建证书的密码
输入正确的密码后,出现导出向导界面,点击下一步,选择“是,导出密钥”,然后点击下一步,
出现证书类型选择界面,选择“个人信息交换 
- PKCS 
#12(.PFX)(P)”(只有这一种可选,并且其下面的选项均不选择),再点击下一步,
出现私钥保护密码选项,输入密码,然后点击下一步,在文本框中输入要生成的文件名(一般与证书名称一致),点击下一步
显示完成窗口,并显示导出证书的信息。
pvkimprt 
-pfx CbipSetupKey.spc CbipSetupKey.pvk

------ 第四步 
添加到项目中------
在项目属性中,选择“签名”选项卡
勾选“为ClickOnce清单签名”,点击“从文件选择”,然后选择生成的.pfx文件(如果项目中已经存在同名文件,则需要先删除)
选择了.pfx文件后,会提使输入私钥保护密码,输入正确的私钥保护密码后,即可添加到项目中。
需要注意的是证书的有效期,证书有起止有效期,当超出有效期时,将被视为无效证书,无法签名。

用pvkimprt导出pfx证书时,一直弹出对话框提示:Command line option syntax error. Type Command /? for Help.

 用google找了半天终于找到问题所在:

从 微软网站(http://download.microsoft.com/download/vba50/Utility/1.0/NT5/EN-US /pvkimprt.exe)下载的那个pvkimprt.exe是个压缩文件,解压后的文件一个Pvkimprt.exe和一个文本文件,这个 Pvkimprt.exe文件是个安装文件!必须安装后产生的Pvkimprt.exe才是我们需要的命令文件!微软害人不浅啊,O(∩_∩)O哈哈~ 希望像下面的英文作者一样能帮助遇到同样问题的中文开发者。

解决方法原为出处:http://www.jobsforcooks.com/subwordpress/tobyallen/?p=6 

 

生成cer和pfx证书的文章链接:http://www.cnblogs.com/yuxs/archive/2009/06/08/1498592.html

你可能感兴趣的:(windows,ssl,pfx)