【问题标题】:Error with pfx certificate "The specified network password is not correct."pfx 证书错误“指定的网络密码不正确。”
【发布时间】:2022-12-17 13:40:29
【问题描述】:

我正在尝试运行一个使用 pfx 证书访问 API 的控制台应用程序,但出现以下错误。

2022-03-21 11:25:22.0244 - 错误:Internal.Cryptography.CryptoThrowHelper+WindowsCryptographicException:指定的网络密码不正确。 在 Internal.Cryptography.Pal.CertificatePal.FilterPFXStore(ReadOnlySpan'1 rawData,SafePasswordHandle 密码,PfxCertStoreFlags pfxCertStoreFlags) 在 Internal.Cryptography.Pal.CertificatePal.FromBlobOrFile(ReadOnlySpan'1 rawData,字符串文件名,SafePasswordHandle 密码,X509KeyStorageFlags keyStorageFlags) 在 System.Security.Cryptography.X509Certificates.X509Certificate..ctor(字符串文件名,字符串密码,X509KeyStorageFlags keyStorageFlags) 在 System.Security.Cryptography.X509Certificates.X509Certificate2..ctor(字符串文件名,字符串密码,X509KeyStorageFlags keyStorageFlags) 在 E:\repos\ADP_API\ADP_API\APICall.cs 中的 ADP_API.APICall.GetHttpClientHandler():第 315 行 在 E:\repos\ADP_API\ADP_API\APICall.cs 中的 ADP_API.APICall.Authenticate():第 79 行

在我的本地机器和我同事的机器上运行该应用程序。 pfx 文件创建时没有密码,因此不需要密码。当我们尝试在运行 Windows Server 2012 的服务器上运行它时,它说特定的网络密码不正确。

我尝试在服务器上安装证书,当我尝试从要求输入密码的窗口继续时,它以“您输入的密码不正确”作为响应。我再次尝试在我的本地机器上安装它,它允许我在没有密码的情况下通过密码窗口。

我尝试将 .key 和 .pem 文件添加到与 pfx 文件相同的文件夹中,但也没有成功。

【问题讨论】:

  • 您是否以真实用户身份运行此程序?还是 IIS/windows 服务?是否安装了ssl加固?
  • 有不同的是从输入的密码和使用的加密算法生成加密密钥。 Windows 2012 已过时,仅支持某些旧算法 (TripleDES_SHA1) 这样做。因此,它将无法打开使用新密钥生成 (AES256_SHA256) 算法的程序生成的 PFX 文件。所以正确的错误是“未知算法”,但 Windows 只显示“您输入的密码不正确”。
  • 我在服务器 2012 上遇到了同样的问题,我最终将 pfx 文件转换为 pem 文件,然后像这样加载它 IssuerSigningKey = new SymmetricSecurityKey(System.IO.File.ReadAllBytes("path_to_some.pem")), 然后添加 Bearers 令牌。

标签: api ssl encryption pfx


【解决方案1】:

我们尝试在我们的一台装有 Windows Server 2019 的服务器上安装该证书,它成功了。在我们尝试过之后,我看到了上面罗伯特的评论,看来他是对的。谢谢罗伯特。

Windows 2012 已过时,不适用于 PFX 文件。解决方案是使用较新的 Windows Server。

【讨论】:

  • 或者使用 openssl 1.1.1(不是 3)
【解决方案2】:

这不是一个真正的答案,但我想强调来自 https://stackoverflow.com/users/2152973/fran%c3%a7ois-breton 的评论,它导致解决了我的问题。

使用最新版本的打开SSL 1.1.1使它工作。

我在使用 .pfx 文件时遇到了这个问题Ubuntu打开SSL 3.0.2这在 Azure 中没有被接受。

【讨论】:

    猜你喜欢
    • 2016-06-12
    • 1970-01-01
    • 2012-01-07
    • 2010-10-28
    • 1970-01-01
    • 2015-09-02
    • 1970-01-01
    • 2022-08-03
    • 2016-08-14
    相关资源
    最近更新 更多