Firefox 因 HTTPS 导致 SEC_ERROR_NO_MEMORY 错误?

Firefox 因 HTTPS 导致 SEC_ERROR_NO_MEMORY 错误?

几天以来,每当我尝试在 Firefox 52.0.1 中打开 HTTPS 网页时,都会收到以下错误“Fehler: Gesicherte Verbindung fehlgeschlagen”(“错误:安全连接失败”等)和“连接到 www.blah.com 时发生错误。安全库:内存分配失败。错误代码:SEC_ERROR_NO_MEMORY”。我在运行 Leap 42.2 OpenSuse Linux 的机器上。

我猜这个错误是在我将 Firefox 从 51.x 更新时首先发生的。

迄今采取的无效措施包括:

  • 回到版本 51.X。
  • 卸载并安装版本 52.0.1。
  • 卸载 Firefox 中的所有扩展。
  • 在 about:config 中更改 security.tls.version.min 和 security.tls.version.max
  • 检查 about:config 中所有与“https”有关的条目并切换一些。
  • 删除文件 cert8.db 和 secmod.db
  • 检查 glib-networking 库是否已安装

但这可能是系统的问题,而不是浏览器的问题:Chromium 也阻止了对一些 https 资源的连接,但似乎不像 Firefox 那么严格。

问题第一次出现时,我曾尝试过 gpg 和 KGpg,因此这可能是导致问题的原因。停用系统上的所有密钥并不能解决问题。

我知道,从版本 52 开始,Firefox 会以更严格的方式处理无效的 https 证书,但它不可能那么严格。甚至 www.mozilla.org 也无法使用。肯定还有其他问题。

我在另一台计算机上安装了 Firefox 52.0.1,运行正常,所以这似乎不是网络问题。

有人知道什么可能导致这种奇怪的行为吗?

干杯!

答案1

我在使用 Firefox 时也遇到了这个问题。事实证明(根据ssllabs.com,我的浏览器仅支持以下 EC曲线:x25519,,,,。secp256r1secp384r1secp521r1

我生成的证书(经 OpenSSL 检查)使用不同的曲线:

    Subject Public Key Info:
        Public Key Algorithm: id-ecPublicKey
            Public-Key: (570 bit)
            pub: 
                04:[...]
            ASN1 OID: sect571k1

注意上面的曲线名称:sect571k1

我使用 Java 创建了证书keytool,显然它比我的浏览器支持更多的曲线。Firefox 在导入证书时似乎没有任何抱怨。似乎“不支持曲线”会是一条很容易提供给用户的错误消息。

更改证书以使用浏览器支持的曲线为我解决了问题。

相关内容