Tom*_*m17 6 encryption ssl key certificate x509
我一整天都试图找到答案.我用google搜索,问过知道的人,搜索SSL证书供应商等的网站等等.也许我的搜索功能今天就失败了.无论如何...
所有SSL证书供应商都声称他们的SSL证书支持最高级别的加密.他们提到的这个高级别是128位到256位,而不是40位,56位等.
现在,据我所知,SSL加密有两个部分.您的非对称公钥通常设置为2048位.很明显,这是SSL证书,其长度很明显.另一部分是在初始握手后传递的对称加密密钥.我在任何SSL证书中都没有看到这一点.
使用哪种对称加密算法的决定基于客户端(浏览器)和服务器的密码套件.如果它们都支持256位加密,那么它将被使用.
我知道在90年代,出口限制已经到位,导出的浏览器限制在40位.为此,有一些特殊的解决方法,如SGC证书.旧版浏览器仍然需要这样做.除此之外,现代浏览器只需支持256位.
在我看来,声称他们的证书支持"高加密"的供应商只是在说谎.他们的证书确实支持它,因为它与证书本身无关(现在).这是正确的还是我完全脱离了这个?
如果我真的完全妄想和对称加密是在证书规定的,应该可以创建具有这样的自签名的证书,对不对?是否有可能创建一个不支持强加密的?如果我能找到指令来帮助我理解这一点.可能吗?我之前创建了许多自签名证书,并使用我自己的CA证书签署CSR,但我从未见过您指定支持的加密强度的任何配置.
环顾intarwebs并没有帮助.人们要么在对称密钥(40,56,128,256)的上下文中谈论密钥强度,要么在非对称密钥(512,1024,2048)的上下文中讨论密钥强度,但从不对两者进行说明并解释差异.一个论坛中的某个人会说你需要获得一个256位的证书,然后在下一个论坛上,有人说你需要一个2048位的证书,即使所有SSL证书供应商声称只支持高达256位.
我觉得有很多关于它是如何工作的误解的印象.那个或所有的误会都在我糟糕的脑袋里.
对不起,这是一个很长的,但我想明白这一点.
谢谢,
汤姆·...
好的,所以我找到了答案.谈谈回答你自己的问题!周五我的大脑太疲惫,所以我错过了这个小小的花絮.
来自http://www.openssl.org/support/faq.html#USER14
- 什么是"128位证书"?我可以使用OpenSSL创建一个吗?
术语"128位证书"是一个极具误导性的营销术语.它不是指证书中公钥的大小!包含128位RSA密钥的证书具有可忽略的安全性.
还有各种其他名称,如"魔术证书","SGC证书","升级证书"等.
您通常不能使用OpenSSL创建此类证书,但不再需要.如今,通常可以使用不受限制的强加密的Web浏览器.
当对来自美国的强加密软件的出口实行严格限制时,只能自由导出弱加密算法(最初为40位,然后为56位).人们普遍认为这是不充分的.放宽规则允许使用强加密,但仅限于授权服务器.
开发了两种略有不同的技术来支持这一点,Netscape使用的技术称为"升级",MSIE使用的另一种称为"服务器门控密码术"(SGC).当浏览器最初连接到服务器时,它将检查证书是否包含某些扩展并由授权机构颁发.如果这些测试成功,它将使用强加密重新连接.
只有某些(最初是一个)证书颁发机构才能颁发证书,并且它们的成本通常高于普通证书.
虽然OpenSSL可以创建包含适当扩展的证书,但证书不会来自允许的权限,因此不会被识别.
出口法律后来改为允许几乎不受限制地使用强加密,因此这些证书现在已经过时了.
这证实了我的要求.目前,高强度加密没有"增加支持",因为它是默认值.所有供应商网站上的使用仅仅是营销.不是撒谎,而是不必要地将注意力集中在默认值上,就像它们的特征一样.