什么是根证书?

最近的一次更新引起了一些争议,该更新悄悄地向 Windows 添加了 17 个新根证书(并删除了 1 个),而没有提醒用户这一事实,导致一些人称整个系统为“破碎的'。

因此,我们认为现在是解释什么是根证书以及读者是否应该担心的好时机......

什么是根证书?

当您访问某个网站时,您如何知道这是您认为正在访问的网站?互联网对此问题的解决方案是 SSL 证书(也称为 HTTPS 证书)。

当您访问 SSL 安全网站 (https://) 时,除了使用以下方式保护连接之外SSL/TSL 加密,该网站将向您的浏览器提供 SSL 证书,表明该证书(或更准确地说是网站公钥的所有权)已由公认的机构进行了身份验证证书颁发机构(加利福尼亚州)。有一些1200此类 CA 已经存在。

如果浏览器提供了有效的证书,那么它将假定该网站是真实的,启动安全连接,并在其 URL 栏中显示锁定的挂锁,以提醒用户它认为该网站是真实且安全的。

该系统是互联网安全的基石,几乎每个处理敏感信息的安全网站(包括银行、网络邮件服务、支付处理器等)都使用该系统,因此依赖于对 CA 的信任。

证书颁发机构基于信任链颁发证书,以证书的形式颁发多个证书树结构到不太权威的 CA。因此,根证书颁发机构是信任锚对所有不太权威的 CA 的信任都是基于此。根证书用于对根证书颁发机构进行身份验证。

那么谁颁发根证书呢?

一般来说,根证书是由微软等操作系统开发商分发的。苹果。大多数第三方应用程序和浏览器(例如 Chrome)使用系统的根证书,但一些开发人员使用自己的根证书,最值得注意的是莫兹拉(火狐),土坯、Opera 和 Oracle,这些都是他们的产品所使用的。

CA系统的问题

因此整个CA系统依赖于信任,那么如何知道这些证书可以信任呢?好吧,最终你必须相信某人,如果您信任您使用的软件的开发人员,那么您就必须信任他们的证书。

至少理论上是这样。作为最近谷歌警告假冒 SSL 证书表明,仅一个“流氓”CA 颁发不可靠的证书就可能造成严重破坏,不幸的是,证书颁发机构可以(并且已经被知道)发出伪造的 证书。通常的罪魁祸首是不择手段的政府给CA公司带来压力,但犯罪分子也可以对CA公司进行强硬手段,黑客也可以破坏他们的系统。

电子前沿基金会 (EFF) 确实启动了SSL天文台该项目的目的是调查用于保护互联网安全的所有证书,邀请公众向其发送证书进行分析。然而,据我们所知,这个项目从未真正启动,并且已经休眠多年。

那么,为什么微软“偷偷地”添加根证书如此大惊小怪呢?

一些评论员对微软在没有提醒用户或征求用户许可的情况下添加新的根证书感到愤怒。然而,我们必须指出,绝大多数用户(包括我们)没有可靠的方法来确定给定的根证书颁发机构是否值得信赖,这使得整个争议在我们看来毫无意义......

如果您不信任 Microsoft,请不要使用 Windows。当然,如果您认真对待安全性,那么无论如何您都不应该信任 Microsoft,而且 Windows 附带的一些根证书很可能允许 NSA 执行中间人如果他们选择对您的计算机进行攻击。理论上,这些网站可能会将您引导至由于虚假 SSL 证书而在您的浏览器看来是真实的虚假网站。

那些认真对待安全性的人应该使用 Linux(最好是一个强化的发行版)。还应该强调的是,没有任何移动操作系统可以被认为有丝毫安全性。

就其价值而言,清单新的证书颁发机构最近添加到Microsoft 证书信任列表看起来对我们来说相当无害(许多只是旧证书的升级),但谁知道呢?

如何删除根证书

如果您确实不喜欢特定的根证书颁发机构,那么您可以删除其根证书。请注意,这样做会使该证书颁发机构颁发的所有证书以及其授权的任何“较小”CA 的所有证书都不受信任。删除这些可能会对您的互联网体验产生非常负面的影响。

在最近谷歌假证书惨败之后,一些人建议删除中国的 CA。但我们强调,这样做的风险完全由您自行承担。

视窗

我们使用的是 Windows 8.1,但所有版本的 Windows 上的过程应该几乎相同。

1. 右键单击​​ Internet Explorer 图标 -> 以管理员身份运行

2. 转到工具(右上角的齿轮图标)-> Internet 选项 -> 内容选项卡 -> 证书 -> 受信任的根证书颁发机构

3. 选择您要删除的证书,然后点击“删除”。请注意,首先“导出”证书进行备份可能是一个非常好的主意,以便您可以在需要时再次“恢复”它。

火狐浏览器(仅限桌面版本)

1. 打开 Firefox 并转到打开菜单 -> 选项 -> 高级 -> 证书 -> 查看证书

2. 在“证书管理器”窗口中,单击“权限”选项卡,您将看到授权的根 CA 列表,以及它们在其下方授权的证书

3. 单击您不喜欢的证书,然后点击“删除或不信任”

如果您确定,请点击“确定”

要完全删除给定的根 CA,您必须“删除或不信任”其授权的所有证书。与删除 Windows 根证书一样,我们强烈建议首先备份删除的证书。

苹果电脑

我不是 Mac 用户,但据我了解,Apple 不允许用户删除根证书,即使使用特权。可以使用钥匙串访问删除非根证书。

安卓(5.1 Lollipop,但所有版本都类似)

1. 转到设置 -> 安全 -> 可信凭据 -> 系统选项卡。触摸您不喜欢的证书旁边的绿色勾号

2. 向下滚动证书详细信息至底部,然后选择“禁用”

iOS系统

iOS 中无法删除根证书(个人证书可以已删除使用 iPhone 配置实用程序)。

乌班图(对于大多数 Linux 版本来说都是类似的)

取消选择 CA 的最简单方法是打开终端并运行:

sudo dpkg-重新配置 ca-证书

按空格取消选择证书。

CA 列表存储在文件 /etc/ca-certificates.conf 中。可以通过输入以下内容手动编辑:

纳米/etc/ca-certificates.conf

如果您手动编辑此文件,则需要运行以下命令来更新 /etc/ssl/certs/ 中的实际证书:

sudo update-ca-证书

(如果您使用 dpkg-reconfigure,这会自动完成)。