我正在开发将使用clickonce(在网站foo.com上)部署的软件,然后使用带有加密传输的WCF连接到我的服务器
所以我需要一个SSL证书,它将:
确定我的foo.com网站确实是我的网站
使用clickonce识别我部署的exe是真实的
确定我的应用服务器确实是我的应用服务器.
我还希望我的SSL证书由公众所知的权限签名(即,firefox或windows不会要求用户首先安装权限证书!)
你会买什么SSL证书?
我浏览过Verisign网站,"安全网站EV"证书每年花费1150欧元("Pro"版本似乎只对旧版浏览器的兼容性有用)
听起来你正在寻找两种不同类型的证书:
1 - SSL证书 - 用于验证您的网站/应用程序服务器.
2 - 代码签名证书 - 用于您提供的exe的完整性/身份验证.
通常,这是两个不同的证书,具有两个不同的证书配置文件 至少,您需要一个具有两个不同密钥用法或扩展密钥用法的证书.
一些没有特定顺序的想法:
检查目标浏览器,它们应该都有一组预配置的根证书 - 这些是最广泛认可的公共证书源.我可能会检查Firefox和IE.我认为是大牌的证书供应商是 - Versign,GeoTrust,RSA,Thawte,Entrust.但也有GoDaddy和其他许多人.作为受信任的根证书在交付的浏览器中提供的任何内容都允许您连接到您的用户而无需额外的greif.
我建议谷歌搜索"代码签名证书"和"SSL证书".
如何配置站点将确定您的网站是否经过验证或您的身份验证服务器是否经过验证.如果证书存储在应用服务器上,那么您的用户将一直获得SSL加密到服务器.但许多网站都将SSL证书放得更远 - 就像在防火墙上一样,然后在其后面展示一系列应用服务器.只要仔细配置网络,我就没有看到安全漏洞.对于外部用户来说,两种配置看起来都是一样的 - 他们将获得对其浏览器的锁定以及证明www.foo.com提供其凭据的证书.
我看到SSL证书非常优惠: - GoDaddy - 12.99美元 - Register.com - 14.99美元
但它们不一定是代码签名证书.例如,虽然GoDaddy的SSL证书是12.99美元,但他们的代码签名证书是199.99美元!这是许多证书供应商商业模式的一部分 - 引诱您使用廉价的SSL Certs,并让您支付代码签名费用.可以证明代码签名证书的责任相对较高.但也......他们不得不以某种方式补贴廉价的SSL证书.
从理论上讲,应该可以制作一个同时进行代码签名和SSL的证书,但我不确定你是否想要这样.如果发生了某些事情,那么能够隔离这两个函数会很好.此外,我很确定你必须打电话给证书供应商,并询问他们是否这样做,如果他们不这样做,让他们这样做可能会抬高价格.
对供应商而言,需要考虑的事项:
这项技术几乎都是一样的.这些天,目标是至少128位密钥,我可能会把它提高到256,但我是偏执狂.
除了浏览器可接受性之外,支付更多费用的唯一原因是名称识别.在偏执的安全问题中,我希望RSA,Thawte,Verisign和GeoTrust能够获得很好的声誉.也可能是EnTrust.这可能只对您处理以安全为中心的产品而言才有意义.我认为你的普通用户不会那么清楚.
从安全极客的角度来看 - 您只能像根CA(证书颁发机构)的安全性一样安全.对于真正的偏执狂,要做的事情是深入了解公司如何托管其根并发布CA的背景资料,它们是如何实际安全的?网络安全?人员访问控制?此外 - 他们是否有公共CRL(证书撤销列表),您如何撤销证书?他们是否提供OCSP(在线证书状态协议)?他们如何检查证书申请人以确保他们向合适的人提供正确的证书?......如果你提供必须高度安全的东西,所有这些东西真的很重要.医疗记录,财务管理申请,税务信息等应受到高度保护.大多数网络应用都不是
在最后一个子弹 - 如果你深入了解世界的Verisigns - 非常昂贵的证书 - 你可能会看到价值.他们拥有庞大的基础设施,非常重视CA的安全性.我不太确定超便宜的托管服务.也就是说,如果您的风险很低,那么SSL证书的300美元与12.99美元相比没有多大意义!
因此,对于网站/应用程序服务器,您需要SSL证书.你不会需要一个EV证书.我使用了QuickSSL中的一个,因为与其他一些廉价的证书提供商不同,他们不需要在服务器上安装中间证书 - 这对我来说是没有人的.
对于签署完全不同类型证书的应用程序(其类型,它仍然是X509证书,但您用于网站的证书不是可用于签署应用程序的证书).您需要Verisign或Globalsign之类的authenticode签名证书.这些比普通的旧SSL证书更昂贵,并要求您成为一家注册公司并生产这些文件.