W10 Edge/IE11 是否不支持 SHA-1 客户端证书?

W10 Edge/IE11 是否不支持 SHA-1 客户端证书?

我知道几年前,Windows 10 上的 Edge 和 IE11 就不再支持链接到 Microsoft 可信计划中的根 CA 证书的 SHA-1 服务器证书。

我们有一个 IIS Web Farm 托管我们的 ASP.NET 系统。该服务器使用根证书,虽然该证书是使用 SHA-1 生成的,但它不属于受信任程序,因此在用于安全连接时没有问题;问题是我们的某些应用程序需要智能卡身份验证,一旦提示输入 PIN,Edge/IE11 就会终止连接。

就好像 Edge/IE11 不允许传输基于 SHA-1 的证书。

一个奇怪的警告是,如果我强制 IE11 仅使用弃用的 TLS 版本(即 TLS 1.0),那么它就可以正常工作,因为智能卡证书会被传输并用于身份验证。如果我强制 IE11 使用 TLS 1.2,那么它就会失败。

使用certutil我可以确定智能卡客户端证书是使用 SHA-1 生成的,并且也由服务器上使用的根 CA 证书签名。

IE11 在 Windows 7 上运行良好,所以我认为安全策略只影响 W10 版本。

我是否错过了一个公告,即这也会影响客户端证书?原始公告明确表示情况并非如此:

SHA-1 客户端身份验证证书将受到怎样的影响?

2017 年中更新不会阻止使用 SHA-1 签名证书的客户端用于客户端身份验证。

答案1

使用 SHA1 的客户端证书不再有效,这并不让我感到惊讶。客户端证书是 IIS 中一项从未真正流行起来的功能,微软也不再花太多时间在它上面。Edge 浏览器约占浏览器市场份额的 5%,而 Chrome 从未支持过 PIV。浏览器中的 PIV 身份验证已被 FIDO U2F 和 FIDO2 等较新的技术取代。如果您的应用程序需要高级别的安全性,那么您不应该使用带有 SHA1 证书的智能卡,而应该迁移到较新的技术。如果您想继续使用 PIV 协议,那么我会研究Yubikey 5或者PivKey。如果您使用 Yubikey 5,那么它支持 PIV 和 FIDO2,因此迁移应该很容易,并且不需要新的令牌。如果您不想进行大量编码,Yubikey 还支持 Yubikey 身份验证,您只需 5 行代码即可完成。

PIVKey 的价格约为 20 美元,具体价格取决于其规格。Yubikey 5 的起价为 45 美元。FIDO 令牌的价格约为 20 美元。

如果您想继续使用 PIV,那么您将需要重新签发所有智能卡,但是,根证书应该仍然有效,因为它直接受到计算机信任(如果在根证书存储中),因此哈希版本无关紧要。

答案2

您确定 IE11 不支持 SHA1 证书吗?

我们有带 IIS 的 Win 2012R2(Web 服务器证书为 SHA256,仅限 TLSv1.2)。网页使用用户个人证书进行身份验证。带有 SHA1 签名算法的证书的 IE11 可以正常工作 - 用户可以进行身份​​验证并在应用程序中工作。这也适用于 Firefox。

在 Edge/chrome 中它不起作用,连接已关闭。

也许你应该检查这个设置——防止弱加密算法: https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-R2-and-2012/dn375961(v=ws.11)?redirectedfrom=MSDN

相关内容