1、申请
1、 从CA获得
如果是商业应用最好从证书的签发机构CA获得证书,比如VeriSign,这样的大的CA签发的证书已经被一些系统默认为可信任的证书签发机构,它所签发的证书也是被信任的。但是这样的证书需要购买。
如果不是商业应用,这里推荐一个可以免费申请证书的CA:www.cacert.org
2、 从windows2003证书服务中获得
在windows2003中安装证书服务器,windows2003服务器即可当做一个小型的CA,可以申请签发证书。
3、 使用makecert工具获得
微软在framework SDK中提供了一个生成X.509数字证书的命令行工具Makecert.exe。
Makecert生成证书被保存到命令中指定的证书存储区。
比如使用下面这个命令生成一个证书:
makecert -sr CurrentUser -ss My -n CN=MyTestCert -sky exchange -pe
参数说明:
-sr CurrentUser -- 指定主题的证书存储位置。Location 可以是 currentuser(默认值)或 localmachine
-ss My -- 指定主题的证书存储名称,输出证书即存储在那里。My表示保存在“个人”
-n CN=MyTestCert -- 指定主题的证书名称。此名称必须符合 X.500 标准。最简单的方法是在双引号中指定此名称,并加上前缀 CN=;例如,"CN=myName"。
-sky exchange -- 指定颁发者的密钥类型,必须是 signature、exchange 或一个表示提供程序类型的整数。默认情况下,可传入 1 表示交换密钥,传入 2 表示签名密钥。
-pe -- 将所生成的私钥标记为可导出。这样可将私钥包括在证书中。
这个命令生成一个名字为MyTestCert的证书,被保存到了当前用户的个人证书存储区内。
2、在WCF中的使用