SSL 证书中是否指定了支持的加密强度?

发布于 2024-12-11 05:15:28 字数 996 浏览 0 评论 0 原文

我一整天都在努力寻找这个问题的答案。我用谷歌搜索,询问了知情人士,搜索了 SSL 证书供应商的网站等等。也许我的搜索今天失败了。无论如何......

所有 SSL 证书供应商都声称他们的 SSL 证书“支持最高级别”的加密。他们指的这个高级是 128 位到 256 位,而不是 40、56 等。

现在,据我了解,SSL 加密有两个部分。您通常将非对称公钥设置为 2048 位。很明显,这是在 SSL 证书中,并且其长度是显而易见的。另一部分是初始握手后传递的对称加密密钥。我在任何 SSL 证书中都没有看到任何提及这一点。

使用哪种对称加密算法取决于客户端(浏览器)和服务器的密码套件。如果它们都支持256位加密,那么就会使用它。

据我所知,在 90 年代,出口限制已经到位,出口的浏览器被限制为 40 位。为此,有一些特殊的解决方法,例如 SGC 证书。这在旧浏览器上仍然需要。除此之外,现代浏览器仅支持 256 位。

在我看来,那些声称他们的证书支持“高加密”的供应商只是在撒一个善意的谎言。他们的证书确实支持它,因为它与证书本身无关(现在)。这是正确的还是我对此完全不感兴趣?

如果我确实完全是妄想,并且在证书中指定了对称加密,那么应该可以创建一个具有此功能的自签名证书,对吗?是否有可能创建一个支持强加密的系统?如果我能找到执行此操作的说明,这将有助于我理解。是否可以?我之前创建了许多自签名证书,并使用我自己的 CA 证书签署 CSR,但我从未见过任何指定支持的加密强度的配置。

环顾内网并没有帮助。人们要么在对称密钥(40、56、128、256)的上下文中谈论密钥强度,要么在非对称密钥(512、1024、2048)的上下文中谈论密钥强度,但从不谈论两者并解释其差异。 一个论坛中的某人会说您需要获得 256 位证书,然后在下一个论坛中有人说您需要 2048 位证书,尽管所有 SSL 证书供应商都声称仅支持最高 256 位。

我的印象是,人们对它的工作原理存在很多误解。那个或所有的误解都在我可怜的头脑里。

抱歉,这篇文章太长了,但我想了解这一点。

谢谢,

汤姆...

I have been trying to find the answer to this all day. I have googled, asked people in the know, trawled sites for SSL Cert vendors etc etc etc. Maybe my search-fu is just failing today. Anyway...

All the SSL cert vendors make claims that their SSL certificates 'support the highest level' of encryption. This high level that they refer to is 128bits to 256bits, as opposed to 40, 56 etc.

Now, as I understand it, there are two parts to SSL encryption. There is your asymmetric public key that you would typically set to 2048bits. It is clear that this is in the SSL cert and its length is obvious. The other part is the symmetric encryption keys that get passed after the initial handshake. I don't see any mention of this in any SSL certs.

The decision on which symmetric encryption algorithm is used is based on the cipher suites of the client(browser) and the server. If they both support 256bit encryption, then it will be used.

I do understand that in the 90's, the export restrictions were in place and exported browsers were restricted to 40bits. For this, there were special workarounds such as SGC certs. This is still needed on older browsers. That aside, a modern browser simply just supports 256bits.

It seems to me that the vendors claiming that their certs support 'high encryption' are just telling a white lie. Their certs do indeed support it as it has nothing to do with the cert itself (these days). Is this correct or am I completely off ball on this?

If I am indeed completely delusional and the symmetric encryption is specified in the cert, it should be possible to create a self signed cert that has this, right? Is it possible to create one that does not support strong encryption? It would help me understand if I could find instruction to do this. Is it possible? I have created many self signed certs before and sign CSR's with my own CA cert, yet I have never seen any configuration where you specify supported encryption strengths.

Looking around the intarwebs has not helped. People either talk about key strength in the context of the symmetric keys (40, 56, 128, 256) or they talk in the context of the asymmetric keys (512, 1024, 2048), but never about both and explain the difference.
Someone in one forum will say you need to get a 256bit certificate and then in the next forum along someone says you need a 2048bit cert, even though all the SSL cert vendors claim to only support up to 256bit.

I get the impression there is a lot of misunderstanding out there about how this works. That or all the misunderstanding is in my poor head.

Sorry it was such a long one, but I want to understand this.

Thanks,

Tom...

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

也只是曾经 2024-12-18 05:15:28

好的,所以我找到了答案。谈论回答你自己的问题!周五我的大脑太疲惫了,所以我错过了这个小花絮。

来自http://www.openssl.org/support/faq.html#USER14

  • 什么是“128 位证书”?我可以使用 OpenSSL 创建一个吗?
  • 术语“128 位证书”是一个极具误导性的营销术语。
    不是指的是证书中公钥的大小!
    包含 128 位 RSA 密钥的证书可以忽略不计
    安全。

    还有各种其他名称,例如“魔法证书”、“SGC”
    证书”、“升级证书”等

    您通常无法使用 OpenSSL 创建此类证书,但有
    不再需要了。如今网络浏览器使用无限制
    通常可以使用强加密。

    当强加密的出口受到严格限制时
    来自美国的软件只有弱加密算法可以自由使用
    导出(最初为 40 位,然后为 56 位)。得到了广泛的认可
    认为这是不够的。放宽规则允许使用
    强加密,但仅限于授权服务器。

    开发了两种略有不同的技术来支持这一点,一种是
    Netscape使用的称为“step up”,MSIE使用的另一个是
    称为“服务器门控密码术”(SGC)。当浏览器最初
    连接到服务器,它会检查证书是否
    包含某些扩展并由授权机构发布
    权威。如果这些测试成功,它将使用强重新连接
    加密。

    只有某些(最初是一个)证书颁发机构可以颁发
    证书的价格通常比普通证书要高。

    虽然 OpenSSL 可以创建包含适当的证书
    扩展证书不会来自许可的机构
    因此不会被识别。

    出口法后来进行了修改,允许几乎不受限制地使用
    强加密,因此这些证书现在已过时。

    这证实了我的要求。目前,高强度加密没有“附加支持”,因为它是默认设置。所有供应商网站上的使用仅仅是一种营销行为。不是说谎,而是不必要地引起人们对默认值的关注,就像这是他们的一个功能一样。

    OK, so I found the answer. Talk about answering your own questions! My brain was too frazzled on Friday so I missed this little tidbit.

    From http://www.openssl.org/support/faq.html#USER14

    1. What is a "128 bit certificate"? Can I create one with OpenSSL?

    The term "128 bit certificate" is a highly misleading marketing term.
    It does not refer to the size of the public key in the certificate!
    A certificate containing a 128 bit RSA key would have negligible
    security.

    There were various other names such as "magic certificates", "SGC
    certificates", "step up certificates" etc.

    You can't generally create such a certificate using OpenSSL but there
    is no need to any more. Nowadays web browsers using unrestricted
    strong encryption are generally available.

    When there were tight restrictions on the export of strong encryption
    software from the US only weak encryption algorithms could be freely
    exported (initially 40 bit and then 56 bit). It was widely recognised
    that this was inadequate. A relaxation of the rules allowed the use of
    strong encryption but only to an authorised server.

    Two slighly different techniques were developed to support this, one
    used by Netscape was called "step up", the other used by MSIE was
    called "Server Gated Cryptography" (SGC). When a browser initially
    connected to a server it would check to see if the certificate
    contained certain extensions and was issued by an authorised
    authority. If these test succeeded it would reconnect using strong
    encryption.

    Only certain (initially one) certificate authorities could issue the
    certificates and they generally cost more than ordinary certificates.

    Although OpenSSL can create certificates containing the appropriate
    extensions the certificate would not come from a permitted authority
    and so would not be recognized.

    The export laws were later changed to allow almost unrestricted use of
    strong encryption so these certificates are now obsolete.

    This confirms what I am asking. In current times, there is no 'added support' for high strength encryption as it is the default. The usage on all the vendor websites is merely a marketing thing. Not lying, but needlessly bringing attention to the default values like it's a feature of theirs.

    再浓的妆也掩不了殇 2024-12-18 05:15:28

    我认为你所有的评论都是正确的。当提供“最高级别”的安全强度时,在我看来,这很大程度上是一种营销噱头。否则,安全性的强度确实与 CA 检查/确认您所声称的身份的仔细程度有关。任何像糖果一样发放证书的 CA 实际上提供的安全性都非常有限。尽管如此,这反映了安全的程序因素而不是技术因素。

    我同意你的观点,我不认为有办法指定预期或要求的对称密钥大小。当然,可以指定密钥适用的用途(文件签名、SSL 等),但这也与安全强度不同。

    I think all your commentary is correct. When the "highest level" of security-strength is provided, it seems to me it is largely a marketing gimmick. Otherwise the strength of the security does have something to do with how carefully the CA checks / confirms your claimed identity. Any CA that hands out certificates like candy is effectively offering very little in the way of security. Still, this reflects a procedural element of security rather than technical.

    I agree with you, I don't believe there is a way to specify an expected or demanded symmetric key size. Certainly there is the ability to specify what usage to which the key is applicable (file-signing, SSL, etc.) but that is also not the same thing as security strength.

    ~没有更多了~
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文