为什么要为SSL证书付费?


62

我从Namecheap购买了SSL证书,我认为它已通过ComodoSSL认证。这花了我7美元,他们花了一个星期才激活它,而我不得不在编辑网站配置文件时通过SSH自己完成。

然后,一个朋友让我意识到让我们加密,他不仅提供免费的SSL证书,而且可以通过运行单个命令来安装它们。

我确定我在这里遗漏了一些东西,但是为什么可以免费安装自动更新并轻松安装SSL证书,为什么还要支付SSL证书的费用呢?


2
这是最近弹出的,基本上是相同的问题:security.stackexchange.com/questions/45491/…以前验证的,最近更新的答案仍然有效。但所有的答案我感到非常难过,看到没有人解释价格和成本,价格与价值之间的差异(关联担保和保险-要相信与否,等等)
帕特里克Mevzek

我看到有人花钱买了一个用于扩展验证的业务案例等,以便将公司名称放在锁图标等旁边。从技术角度来看,没有真正的理由。
ivanivan

整个答案可以用marcelm的答案中这句话来概括: “要使证书有意义,必须由软件供应商信任颁发CA的证书,否则该证书将无用。”所有证书都是经过加密的,并由第三方验证派对。如果您认为“让我们加密”永远不会搞砸,也不会被黑客入侵,那么您将从中获得价值。但是人们付钱的原因是他们更适合其他CA。就那么简单。
JakeGould

“所有证书都是经过第三方验证的加密”毫无意义。证书未加密,首先要对其进行签名。@JakeGould
user207421

令我惊讶的是,目前还没有人说过:“通常在针对以可疑方式对待letencrypt的企业时,将某些东西视为合法”。
Alec Teal

Answers:


82

为什么要为SSL证书付费?

对于大多数用途,没有充分的理由为此付费。
有关异常的摘要,请参见底部。

让我们退后一步,解释证书的用途以及大致的操作方法。

所谓的“证书”通常由两个链接部分组成:

  • 适当证书 ,其中包含一个公共密钥和一些标识(例如域名)。
  • 私有密钥,它允许所述保持器(并且只有保持器),以在它们可以使用上述证书进行验证这样的方式进行数字签名的消息。

如果您想要的证书yourdomain.com,则:

  • 创建一个私有/公共密钥对,并保留私有部分。
  • 要求可信赖的第三方(“ CrediCorp”)yourdomain.com使用您的公共密钥创建证书。
  • 向您控制的CrediCorp证明yourdomain.com
  • 将私钥和获得的证书放在服务器上,然后配置Web服务器以使用它们。

然后,如果Alice访问yourdomain.com,她的浏览器将从您的Web服务器获取证书以及由您的私钥签名的消息。然后,她的浏览器检查了三件事:

  • 签名的消息可以通过您的证书进行验证(证明该消息已由仅yourdomain.com应具有的相应私钥签名)。
  • 证书的域是浏览器试图访问的域(yourdomain.com)。
  • 该证书来自CrediCorp。

这三件事的结合保证了爱丽丝实际上是在yourdomain.com和她说话,而不是冒充其他人... 只要爱丽丝信任CrediCorp

(随后还进行了一些加密伏都教舞,以将这种真实性转变为机密性。)

如何翘信任CrediCorp?

这才是真正的症结所在。简而言之,CrediCorp在某个时候说:“嘿,我们要制作证书”。在遵循许多规则付出了很多努力之后,他们设法说服了某些人说CrediCorp确实是值得信赖的,并且他们只会正确地颁发证书。

特别是,他们设法说服了Firefox等制造商。结果,CrediCorp进入了Firefox的A列表,并且默认情况下Firefox信任它们的证书。所以说真的,爱丽丝(Alice)信任Firefox,Firefox信任CrediCorp,而CrediCorp(在验证后)信任您(声称已控制您)yourdomain.com。几乎就像一条链子

但是,Firefox不仅仅信任CrediCorp为其颁发证书yourdomain.com,它还信任任何域的CrediCorp证书。Firefox 信任任何域的ShabbyCorp。

这有后果。如果有人设法说服ShabbyCorp对其进行控制yourdomain.com(因为ShabbyCorp不够彻底),那么他们可以yourdomain.com使用相应的私钥获取ShabbyCorp证书。有了该证书,他们就可以模拟您的Web服务器。毕竟,他们拥有yourdomain.comFirefox信任的证书(加密钥)!

CrediCorp和ShabbyCorp简称为证书颁发机构(CA)。在现实世界中,ComodoSSL和Let's Encrypt是CA的示例。但是还有更多。截至发稿时,火狐信任的CA 154

哇 但这如何回答我的问题?

我很明白了...

就是这个 我上面概述的机制适用于所有证书。如果您的网站拥有正确的,受信任的证书,它将可以使用。品牌A证书与品牌B证书之间没有什么特别之处。它们都受相同的CA要求和相同的加密数学的约束。

即使您更喜欢CrediCorp(因为您知道,它们听起来更值得信赖),但使用它们并不会真正帮助您。如果攻击者可以说服ShabbyCorp为您的站点提供证书,则无论您从何处获得证书,攻击者都可以使用该证书来模拟您的站点。

只要Firefox信任ShabbyCorp,访问者就不会看到其中的区别。(是的,访问者可以拉出证书,然后从那里进行挖掘,看看是谁颁发的。但是,是谁做的?)就伪造证书而言,这使整个系统与150多个CA中最弱的一个一样脆弱。为什么会这样,这可怕,这可能是人们对整个方案的最大批评。尽管如此,这就是我们所坚持的。

重点是,如果您不信任CA颁发“好”证书,那么将证书移到其他位置不会有太大帮助。

糟糕,一切都注定了。没有警告?

Weeeelllll ...

  1. 让我们从扼杀我在上一节中提出的观点开始。如今,它可以锁定您的域名,只是你选择的CA的使用DNS-CAA。假设您确实信任Comodo,并且不信任其他CA,则可以请求Comodo以外的所有CA不为您的域颁发证书。理论上。(因为浏览器不检查DNS-CAA,而仅通过发布CA进行检查。因此,受感染的CA可以忽略此保护措施。)

    如果您愿意解决这个麻烦,那么问题就变成了:让我们加密实际上不那么值得信赖吗?还是不太安全?诚信是一项艰巨的任务,您如何量化呢?我只能说,在我看来, Let's Encrypt与其他CA一样值得信赖。至于其验证的安全性,它们与商业CA非常相似(无论如何对于DV证书)。另请参阅此问题

    物有所值:该站点所属的StackExchange网络当前使用“让我们加密”证书。大多数人永远不会注意到这一点,如果他们这样做了,我将真心地怀疑这对他们是否有意义。

  2. 为了使证书有意义,颁发证书的CA必须受到软件供应商的信任,否则该证书将无用。我以Firefox为例,但实际上您希望CA至少受Firefox,Chrome,Windows,Mac OS X,iOS和Android的当前版本和较旧版本的信任。以及数十个较小的参与者。所有这些实体都信任值得考虑的CA(包括ComodoSSL和Let's Encrypt)。

  3. 如果CA行为不当或被证明不可信,它将很快从各种信任库中删除,从而足以破坏证书所有者的日子。我知道的两个著名的例子是DigiNotarStartCom / WoSign(查看文章,它们提供了有关信任动态的有趣见解!)。因此,如果您认为Let's Encrypt会搞砸了,或者由于其他原因而被放弃,则不使用它们会阻止您陷入该特定后果。

  4. 证书使用了一些加密数学魔术 ; 问题是哪种 加密数学魔术?如果是弱魔法怎么办?这实际上是一个真正的问题,而且CA也已显示出在升级此问题上的脚步。幸运的是,浏览器供应商通过在此处设置接受证书的下限来弥补这一不足。例如,使用RSA-1024SHA-1的证书现在已被大多数浏览器拒绝,因此在实践中可用的任何证书都不会使用这些已弃用的加密原语。结果是,任何CA(包括Let's Encrypt)都很难在这方面感到失望。

  5. 在此之前,我或多或少说过所有证书都是一样创建的。我撒谎,他们没有。特别是,到目前为止,我所讨论的是“ 域验证(DV)证书”,这是大多数网站使用的证书。它们可以确定您的浏览器实际上正在与它在URL栏中显示的域进行对话。也有“组织验证(OV)”和“ 扩展验证(EV)”证书,它们需要CA进行更为详尽的检查。特别是,somebank.com如果您确实可以证明自己 SomeBank,Inc .,那么您应该只能获得/ SomeBank Inc. 的EV证书。

    EV证书的获取成本要高得多(据估算:每年数百欧元/美元),并且可能会在浏览器中通过绿色URL栏或挂锁来奖励EV证书,并可能显示“ SomeBank,Inc.”。也一样 与DV证书相反,它们还提供了有关网站可能实际属于谁的一些信息。好的方面是,它们看起来更合法。令人失望的是,用户很少关注他们,因此其有效性受到限制。

    拥有伪造的DV证书的攻击者仍然可以假冒该站点,只是没有EV证书可能提供的额外视觉线索,用户通常不会注意到这些区别。相反,可能会获得具有误导性的EV证书,从而使网络钓鱼更加容易。结果,ChromeFirefox都会放弃对EV证书的视觉认可,有些人认为它们将完全消失。

    如果您是银行,现在可能仍需要EV证书。否则,不会那么多。但是,如果您确实需要EV,那么“加密”就不适合您,因为他们根本不提供EV证书。

  6. 证书仅在有限的时间内有效。典型的商业CA证书的有效期通常为一年,但是我看到的时间从三个月到三年不等。让我们加密证书的有效期为90天,处于该范围的短边范围内,因此您需要经常更新它们。对于“让我们加密用户”来说,这通常是自动进行的,因此每60天更换一次证书。

    实际上,能够使用广泛可用的软件进行自动续签实际上比每年的证书到期更令人愉快我在CA的登录名是什么?又如何工作?习惯上,大多数小型站点似乎都以商业CA结尾。

  7. 以前,我称令人恐惧的是,我们所有人都必须信任这么多的CA。但是,从从我们的信任库中删除单个证书颁发机构对用户的影响有限的意义上来说,拥有多个证书颁发机构也是一个优势。特别是,驱逐一个CA仅会影响该CA颁发的证书。如果每个人最终都使用一个单独的CA(有些人担心使用Let's Encrypt可能会发生这种情况),那么我们将所有信任集中在那里,而失去了这种分散的优势。

  8. 最后,付费CA可能还会提供其他好处,例如商业支持或一百万美元的SSL保修。我对这两个方面都不太相信,但是它们是“让我们加密”所不能提供的。

我的头很痛...我有一个问题,我想吗?

使用您认为合适的东西!对于DV证书,几乎没有什么可以真正区分各种CA。我在专业和私下都使用“让我们加密”,对此我感到满意。

实际上,我认为避免“加密”的原因只有四个:

  • 如果您需要EV(或OV)证书。
  • 如果您不能或不想自动执行证书更新,并且三个月的证书有效期对您来说太短了。
  • 如果您不信任“让我们加密”(但也请务必考虑其他措施,例如DNS-CAA,然后您也应该在浏览器中将“让我们加密”列入黑名单)。
  • 如果您认为出于某种原因,Let's Encrypt将被终止或从浏览器中删除。

如果这些都不对您适用,请随时为您的证书付款。


17
请注意,EV证书不再被认为有用,因为用户会忽略它们。浏览器(尤其是Chrome浏览器)和移动设备上的浏览器正在删除或掩埋绿色文字并显示名称。
simpleuser

8
请记住,您不是要求可信赖的第三方为您的私钥创建证书,而是为相应的公钥创建证书。轻微的nitpick,但很重要。您的私钥永远不会离开您的系统。
MechMK1

两者都有好处;我试图管理细节级别,同时仍然以大局正确的方式进行操作,但是我应该在这两件事上更加清楚。我更新了答案,希望能更好地反映这些事实。
marcelm

4
更具体地说,从Chrome v77(当前为v67)开始,Chrome将不再直接显示EV证书。Firefox(目前为68个)计划与v70相同。
knallfrosch

1
并增加约EV证书的第三评论,特洛伊亨特(重)写一篇好文章,解释为什么他们是真的死了:troyhunt.com/...
Neyt

7

“让我们加密”在许多方面都非常出色,包括您提到的方法,例如:

  1. 免费。很难克服。
  2. 它具有自动续订功能(不过,我敢肯定它并不只是让我们进行加密)
  3. 设置起来很容易。
  4. Google将其作为签名的SSL支持,这在SEO和安全性方面意义非凡。

但是,有两个缺点。

  1. 它所使用的验证系统可确保您自己拥有该网站,并且与某些网站托管服务商不兼容。为了让我们在InfinityFree上进行“加密”工作,我颇为头痛,我只是接受了命运我做不到。
  2. 因为它是开源的,所以您不会得到任何说明“如果遇到这种情况,我们会为您提供帮助”的保险,如果Let's Encrypt无法正常工作或以某种方式被破解,您将自己承担责任。

“有效的验证系统”这是IETF和CAB论坛要求所描述的HTTP-01和DNS-01的标准机制。对于DV证书,所有CA都绑定到完全相同的CA。
Patrick Mevzek

10
“因为它是开源的”它是免费的(例如在啤酒中)而不是开源的。该API是标准的(请参阅IETF中的ACME),并且有开源客户端(可能还有服务器)。
Patrick Mevzek

4
“它具有自动更新”不是让我们自己加密。您,作为证书所有者,必须与他们联系以要求更新。他们不会自动将其推送给您。使用自动协议(例如ACME)进行证书颁发是一种副作用。
Patrick Mevzek

“ Google将它作为签名的SSL支持”,而不仅仅是Google,您可能想说它作为“完全受信任的CA”支持它(让我们加密)(“签名的SSL”没有意义)。见letsencrypt.org/2018/08/06/...
帕特里克Mevzek

至于在用于HTTPS通信的X.509证书的保险,也见security.stackexchange.com/questions/179415/...scotthelme.co.uk/...
帕特里克Mevzek

4

LetsEncrypt证书很棒。我自己使用它们,而不是购买证书。有一些缺点:

  • LetsEncrypt证书仅持续3个月。大多数购买的证书有效期为一两年。这意味着您绝对需要一个自动的过程来更新证书,否则将很容易忘记。
  • LetsEncrypt仅提供最低的证书验证类型。域验证(DV)仅验证证书的所有者对域具有控制权。组织验证(OV)证书还会检查请求证书的个人或公司的文档。扩展验证(EV)证书甚至需要进一步检查。证书越好,就越难伪造,因此,您的站点的真实性就越受信任。在实践中,浏览器仅对EV证书进行视觉点头,通常在其地址栏中以绿色显示某些内容。到目前为止,大多数用户都不知道或不在乎不同的验证级别。
  • 从LetsEncrypt很难获得通配符证书。在其他地方,您通常只需支付更多的钱。LetsEncrypt要求对通配符证书进行DNS验证。

从历史上看,安全证书总要花一些钱。提供免费证书的其他公司来了又去了。我曾经使用StartSSL,后者提供单个域免费证书,直到他们做了一些可疑的事情并且浏览器停止信任他们的证书为止。与以前的免费证书供应商相比,LetsEncrypt具有更少的限制,并且自动化程度更高。它还有一些大型支持者,例如EFF,Mozilla,Chrome和Cisco。参见https://letsencrypt.org/sponsors/ 看起来运行良好,我预计它将持续数年。


1
DV和OF / EV之间有什么实际功能上的区别吗?还是从字面上看只是更彻底的检查?
8

4
“ LetsEncrypt证书仅持续3个月。” 它是有目的的,实际上并不是积极的事情。
Patrick Mevzek

1
@八种不同的检查和不同的最终结果:DV证书标识主机名,OV / EV证书标识实体。同样,CAB论坛的要求也设置了不同的约束,例如,您不能拥有EV三年,也不能拥有通配符。
Patrick Mevzek

5
“ LetsEncrypt仅提供最低的证书验证类型。[..]证书越好,您的站点就越受信任。” 这在很大程度上是个人喜好而不是普遍真理。而且,由于当前的Web PKI,大多数情况都没有关系,它是信任存储区中最低安全CA的安全性,它定义了整个生态系统的安全性。验证过程中最少的DNSSEC和多个优势。
Patrick Mevzek

2
“到目前为止,大多数用户都不知道或不在乎不同的验证级别。” -这让他们变得毫无意义。如果用户不区分EV / DV证书,则即使原始站点具有EV证书,获得某个域的有效DV证书的攻击者也可以对该域执行MITM攻击。
marcelm

0

并非所有内容都可以使用自动续订

CertBot使网站易于使用...但是,如果您将证书用于其他用途,该怎么办?

我们有一个用于我们网站认证的LDAP服务器。它通过安全端口运行,但需要签名证书才能运行。我可以使用免费的通配符证书...但这意味着每3个月将证书转换为PKCS12(Web服务器使用PEM),然后导入新证书。哦,我们的网络防火墙也使用PKCS12。这是很多麻烦事。


1
如果您愿意,也可以自动执行该转换。还有已经运行一个cronjob certbot/ acmetool/ whathaveyou续订证书,你可以添加一个调用openssl来完成转换。
marcelm

-1

一个简单的答案是,许多网站管理员只是不想做这些不必要的事情,而这会浪费他们宝贵的时间。如果使用letsencrypt,它易于使用且免费,但您必须记住并每三个月重新安装一次证书。如果您不这样做或只是忘记这样做,那么您的网站将向您的访问者和搜索引擎显示404错误。


10
“您必须记住”不,您需要放置所需的自动化并让它完成工作而无需记住任何东西。您还必须进行监视。
Patrick Mevzek

14
“那么您的站点将显示404错误”当然不是。过期的证书将触发TLS握手失败,并且不会到达HTTP级别。客户将在浏览器中看到一些警告(带有一些文本(他们基本上不会理解))和一个按钮,询问他们是否要浏览。
Patrick Mevzek

许多托管站点只是在不加任何费用的情况下就让letencrypt按钮按下。您只需在网站配置面板中单击一个按钮,说“我想要!”。从那时起,一切都会自动发生,包括续订。
James K Polk

1
作为大约100个域的专业管理员,我可以说,与以前的CA相比,我非常希望让我们通过自动续订来加密“加密”,而不是每年手动续订证书。
marcelm

使用acme.sh安装咱们加密证书也将安装更新。不这样做是更多的工作。
科林·哈特
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.