怎样保证根证书安全
发布日期:2019-06-27随着新一代数字技术的飞速发展并成功渗入各行各业,信息安全问题已经不再单纯作用于虚拟网络空间,还对于物理世界的企业生产、经营、技术等都产生了巨大的影响.数字经济的全面到来,让信息安全开始成为当代企业发展的第一生命线。根CA不仅对拥有它的组织很重要,对整个生态来说同样至关重要。首先是它有巨大的经济价值,因为很多根证书库已经不再更新了,所以以前那些已经被广泛使用的根CA是不可替代的。再者,如果根CA的私钥被泄露,那么就可以签发任意域名的虚假证书。另外如果根CA会被吊销掉,所有使用这个CA签发出来的证书的网站都会无法访问。
现在仍然还有很多CA直接使用他们的根证书直接签发最终实体证书,这其实是非常危险的。Baseline Requirements限制所有的根证书密钥只能由人手动执行命令(自动化是不允许的),也就是说根证书密钥必须离线保存。虽然还有很多依旧在使用的旧系统有这个漏洞,但是直接由根证书签发最终实体证书是不允许的。
交叉证书
交叉证书是可以让新的CA立即投入运营的唯一方式。因为想要在短期内让新的根证书部署得足够广泛是不可能的,所以新的CA都会找已经进行广泛内置的CA对他们的根密钥进行签名。随着时间的流逝,那些老的设备会逐渐淘汰掉,新的CA才能最终独立使用。
划分
CA在将它的操作分散给很多二级CA的同时有可能会带来更多的风险。例如不同的二级CA用于签发不同的证书类型,或者由不同的业务部门使用。与根证书不同的是,二级CA一般都是在线的,而且使用自动化系统签发证书。
委派
还有一些情况是CA希望给外部其他组织签发一个二级CA。例如一家大的公司可能希望可以自己签发它所拥有的那些域名的证书(这种方式通常比去维护私有CA,并确保所有设备都内置这个CA来说成本更低)。有时候一些组织希望能够完全保管这个二级CA,这时候CA就会从技术上限制这个二级CA只能签发某些域名;其他情况下CA依旧可以控制二级CA签发出来的证书。
服务器一次只能提供一条证书链,而实际上可能存在多条可信路径。以交叉证书为例,一条可信路径可以一直到CA的主要根证书,另外一条则是到可选根证书上。CA有时候会为同样的密钥签发多张证书,例如现在最常使用的签名算法是SHA1,因为安全原因正在逐步迁移到SHA256,CA可以使用同样的密钥签发出不同签名的新证书。如果信赖方恰好有两张这样的证书,那么就可以构建出两条不同的可信路径。
路径的建立让整个事情变复杂了,而且导致了很多问题。服务器必须提供完整并且有效的证书链,但是因为人员的疏忽或者各种各样的配置问题,导致证书链的配置总是有问题(例如需要在不同的地方配置服务器证书和证书链剩余的部分)。根据SSL Pulse的数据,大概有5.9%的服务器配置的证书链是不完整的。
另外,因为标准的模糊、不完整以及相互矛盾,客户端在建立和验证路径上不可避免地出现了很多安全问题。历史上有很多验证库在验证签发CA属于哪个根CA这类简单问题上都出现过问题。如今最常使用的那些库并不是从一开始就安全的,也是经历过各种问题,打上了各种补丁后才慢慢经受住了实践的考验。
内容摘自《HTTPS权威指南》,如有侵权请联系删除。
相关内容
沃通作为国内领先的SSL证书签发CA,早在2014年就已经开始了采用国密算法签发SM2 SSL证书的研究,并取得了可喜的研究成果。我们充分认识到国密SSL证书要达到实用和大量部署使用还需要相关系统的支持,如浏览器和服务器软件。同时,还要考虑到其通用性与全球性,即网站用户可能使用各种不同的浏览器和用户来自世界各地。所以,我们一直在持续研究基于国密算法实现https网站加密的完整解决方案。
国密浏览器需要遵循国密SSL协议规范GM/T 0024-2014。 GM/T 0024-2014没有单独规范 SSL协议的文件,而是在SSL VPN技术规范中定义了国密SSL协议。国密SSL协议(SSL VPN协议)包括握手协议、密码规格变更协议、报警协议、网关到网关协议和记录层协议。