8

我是一个很长一段时间的读者,但这是我第一篇关于我找不到解决方案的主题的真正帖子。

我目前在 Windows 2012 上托管一个网站,我希望在该网站上运行最新的 TLS 1.2 密码套件。

我知道如何在 Windows 中启用 TLS 1.1 和 TLS 1.2 并且已经这样做了(通过注册表编辑)。我还将密码顺序更改为我想要的。

我的问题是:在这一步之后,我如何真正完成并设置密码套件的 ECDHE / ECDSA 部分?

当我在最新的 chrome beta 中查看该站点时(如果您使用支持的曲线,它支持 TLS 1.2 中的 ECDHE 和 ECDSA),它似乎跳过了所有 ECHDE 密码套件。

我还需要做些什么来正确启用 ECDHE/ECDSA 吗?

我在网上阅读过试图自己解决这个问题,他们提到复制你的根证书,然后修改它们以某种方式支持 ECDHE。我在吠叫错误的树吗?

预先感谢您对此问题的任何和所有支持。

编辑:添加说明/进展

经过更多的研究,我发现为了让 ECDSA 工作,你需要一个 ECDSA 证书。目前获得证书的唯一方法是自行签名,因为证书卡特尔尚未为椭圆曲线证书制定适当的交叉许可协议和费用结构。

由于自签名不是此站点的选项,因此我已从密码顺序中删除了所有 ECDSA 套件。

不幸的是,因为所有的 AES 伽罗瓦计数器模式套件也是 ECDSA,所以暂时排除了这些。

这给我留下了最强大的 ECDHE_RSA_WITH_AES_256_CBC_SHA384_P521 密码套件,我相信最新版本的 Chrome beta 支持正确吗?我似乎无法让 Chrome 获取除 SHA-1 之外的任何内容。没有 SHA-2 支持吗?即使在最新的测试版中?

4

2 回答 2

5

AES-GCM 是关于如何加密连接中的数据,EC-DSA 或 RSA 是关于服务器如何向客户端识别自身的。因此,没有理由不能使用 RSA 身份验证进行 AES-GCM 加密。

RFC 5289 确实为此定义了所需的套件: https ://www.rfc-editor.org/rfc/rfc5289#section-3.2

CipherSuite TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256    = {0xC0,0x2F};
CipherSuite TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384    = {0xC0,0x30};
CipherSuite TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256     = {0xC0,0x31};
CipherSuite TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384     = {0xC0,0x32};

然而,找到支持它们的客户端和服务器并不一定容易。

于 2013-08-12T15:30:24.833 回答
3

我在 Win2008 R2 上也有过类似的经历。根据证书,GCM 密码是否由服务器提供。

使用自签名 ECDSA 证书,我可以让 GCM 工作,但旧版浏览器或 Windows XP 无法连接到这样的 https 站点。

Windows 不支持任何 TLS_ECDHE_RSA...GCM... 密码: http: //msdn.microsoft.com/en-us/library/aa374757 (v=vs.85).aspx 因此普通的 RSA 证书不适用Windows 下的 GCM。

浏览器兼容性: http ://www.g-sec.lu/sslharden/SSL_comp_report2011.pdf

于 2013-08-18T20:25:04.550 回答