windows - https 与 ECDHE-ECDSA-AES256-GCM-SHA384 在 Windows 2012

标签 windows security ssl ssl-certificate ecdsa

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

我目前在 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 证书。目前获得一个的唯一方法是自签名,因为证书卡特尔尚未为椭圆曲线证书提出适当的交叉许可协议(protocol)和费用结构。

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

不幸的是,因为所有 AES Galois Counter Mode 套件也是 ECDSA,这暂时排除了这些。

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

最佳答案

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};

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

关于windows - https 与 ECDHE-ECDSA-AES256-GCM-SHA384 在 Windows 2012,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17893579/

相关文章:

javascript - 帮助反混淆此 JS 攻击

php curl - 允许使用过期证书进行调用

windows - 如何删除 Anaconda 的键盘快捷键

windows - 如何将长参数粘贴到 Windows 中的调试器中?

mysql - 连接 mySQL 和 Nodejs

linux - 允许容器的非 root 用户执行需要功能的二进制文件

c - recv() 函数标志,用于在一个字符串中获取 while 缓冲区 [windows C]

security - 使用无效 IP 的无法检测到的 DoS 攻击

.htaccess - 修改当前重写规则以强制使用 SSL

ssl - phpmailer、requre() 和 include_path 合并