想象一下具有以下参数的SSL证书-我们将通过做所有可能的错误来炮制最糟糕的可想象证书:
在证书的所有这些错误条件中,用户代理按什么顺序检查它们?
或者换一种说法,如果我要在网站上使用此可怕的证书,我将得到什么错误消息-一旦我修复了该错误消息,下一步将是什么,依此类推。
这些错误对连接的安全性都有不同的含义,因此某些错误在客观上比其他错误更可怕-但是是否在某处定义了一个标准,规定这些问题的“优先级”?(即如果证书是用于错误的网站并使用破损的加密功能,则告诉我证书过期是愚蠢的)
RFC 5246关于ServerHello消息的内容如下:
当服务器能够找到可接受的算法集时,服务器将发送此消息以响应ClientHello消息。如果找不到这样的匹配项,它将以握手失败警报响应。
因此,如果服务器不能接受客户端提议的密码(假设服务器管理员已禁用弱密码,并且客户端仅发送弱密码),服务器将在证书发送给客户端之前终止连接。
如果密码是可接受的,则服务器将其证书发送给客户端。RFC 5280第6节介绍了证书路径验证。但是,它有以下几点要说的:
不需要使用本规范的一致实现来实现该算法,但是必须提供与该过程所导致的外部行为等效的功能。特定实现可以使用任何算法,只要它能得出正确的结果即可。
因此,只要最终结果相同,客户端就可以以其认为合适的任何方式验证路径。鉴于有许多可用的操作系统,有些具有许多可用于处理证书的库,因此很难对您的问题做出明确的答案。
不幸的是,您的选择可能仅限于:
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句