搜尋 Mozilla 技術支援網站

防止技術支援詐騙。我們絕對不會要求您撥打電話或發送簡訊,或是提供個人資訊。請用「回報濫用」功能回報可疑的行為。

Learn More

Problem with register certificates on Firefox version 54

  • 1 回覆
  • 3 有這個問題
  • 680 次檢視
  • 最近回覆由 darakeon

more options

I created a program which adds a certificate to Firefox to communicate with a websocket at localhost. To use it with https, I had to add a certificate to certificate stores, including the one Firefox uses. To Firefox, the command used:

certutil.exe -d [cert8.db path] -A -t "TCu,Cuw,Tuw" -n [name] -i [crt path]

Friday I noticed that it stopped working. I add, no issue reported. I use -L, the certificate is there. I even looked at Tools > Options > Advanced > Certificates, and it is there. But Firefox keep saying it's not trustable. Already closed and opened the browser.

I saw there was a update 13th June. Does it changed something about certificates part?

被選擇的解決方法

Discovered the problem. They were two, actually.

First, now you need to add the CA of the certificate into Firefox too. I added the CA as trust "TC,," and the certificate as trust "u,,".

The second point is that the CA certificate need to be marked as CA. Seems obvious, but I didn't knew, and windows store do not care about this. You need to add an extension, basic constraint, with CA=true. At C#, using BouncyCastle:

var generator = new X509V3CertificateGenerator();
(...)
var basicContraint = new BasicConstraints(true);
generator.AddExtension(
    X509Extensions.BasicConstraints, true, basicContraint
);
從原來的回覆中察看解決方案 👍 0

所有回覆 (1)

more options

選擇的解決方法

Discovered the problem. They were two, actually.

First, now you need to add the CA of the certificate into Firefox too. I added the CA as trust "TC,," and the certificate as trust "u,,".

The second point is that the CA certificate need to be marked as CA. Seems obvious, but I didn't knew, and windows store do not care about this. You need to add an extension, basic constraint, with CA=true. At C#, using BouncyCastle:

var generator = new X509V3CertificateGenerator();
(...)
var basicContraint = new BasicConstraints(true);
generator.AddExtension(
    X509Extensions.BasicConstraints, true, basicContraint
);