Closed
Bug 320492
Opened 20 years ago
Closed 20 years ago
Firefox cannot import two certificates with the same distinguished name
Categories
(Core :: Security: PSM, defect)
Tracking
()
RESOLVED
INVALID
People
(Reporter: meiows, Assigned: KaiE)
Details
Attachments
(2 files)
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-GB; rv:1.8) Gecko/20051111 Firefox/1.5
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-GB; rv:1.8) Gecko/20051111 Firefox/1.5
If I create two key/certificate pairs in PKCS#12 format, and attempt to import both in to Firefox 1.5, then the import of the second fails with the error message "PKCS #12 operation failed for unknown reasons".
The attached PKCS #12 files reproduce this problem. OpenSSL sadly insists on a passphrase, so for the RSA certificate the phrase is "foobar", and for the DSA "export".
Reproducible: Always
Steps to Reproduce:
1. Import clientrsa.p12 in to firefox by clicking Tools > Options > Advanced > View Certificates > Import, selecting clientrsa.p12 and typing the passphrase "foobar". This should suceed.
2. Do the same with clientdsa.p12, the passphrase is "export". This will fail.
Actual Results:
Certificate import fails
Expected Results:
Certificate import suceeds, as with Windows/Internet Explorer.
I suspect, but don't know, that the problem is that Firefox uses some or all of the Distinguished Name of the certificate's subject/issuer as a unique key to store the certificate under. It would probably be better to use the key fingerprint and certificate serial number as a really unique key.
Comment 1•20 years ago
|
||
I suspect this is NSS, but I'll start with PSM.
Assignee: nobody → kengert
Component: Security → Security: PSM
Product: Firefox → Core
Version: unspecified → Trunk
| Reporter | ||
Comment 2•20 years ago
|
||
| Reporter | ||
Comment 3•20 years ago
|
||
Comment 4•20 years ago
|
||
Chris, do both certs have the same issuer names and the same serial numbers?
That's the most common cause of this sort of complaint.
Also, what error message do you get?
| Reporter | ||
Comment 5•20 years ago
|
||
(In reply to comment #4)
> Chris, do both certs have the same issuer names and the same serial numbers?
> That's the most common cause of this sort of complaint.
> Also, what error message do you get?
>
Yes, Indeed. Both certificates are issued by the same certificate (hence the issuing DN is exactly the same), and both have the same serial number.
Thats a bug though, obviously if you have multiple accounts with the same site (e.g. two people doing their taxes with the UK inland revenue) you are going to need to import two certificates with the same issuer DN and serial no.
Comment 6•20 years ago
|
||
RFC 3280 says:
The serial number MUST be a positive integer assigned by the CA to
each certificate. It MUST be unique for each certificate issued by a
given CA (i.e., the issuer name and serial number identify a unique
certificate). CAs MUST force the serialNumber to be a non-negative
integer.
Given the uniqueness requirements above, serial numbers can be
expected to contain long integers. Certificate users MUST be able to
handle serialNumber values up to 20 octets. Conformant CAs MUST NOT
use serialNumber values longer than 20 octets.
mozilla will not import a second (different) certificate with the same
issuer name *AND* serial number as another already-imported cert.
That is working as designed, and is standards-conformant.
No issuer should *ever* issue two different certs with the same serial number.
Since your two certs have the same issuer name and same serial number,
that is the cause, and this bug is invalid.
Status: UNCONFIRMED → RESOLVED
Closed: 20 years ago
Resolution: --- → INVALID
| Reporter | ||
Comment 7•20 years ago
|
||
The next paragraph is:
Note: Non-conforming CAs may issue certificates with serial numbers
that are negative, or zero. Certificate users SHOULD be prepared to
gracefully handle such certificates.
It would be extremely helpful if this defect were fixed. Its a showstopper for one of our customers.
For our operating system, we always compare certificates using both key fingerprint and serial number. There are a number of popular CAs and other content issuers who are not compliant, especially in the mobile domain.
Status: RESOLVED → UNCONFIRMED
Resolution: INVALID → ---
Comment 8•20 years ago
|
||
Your certs' problem is not that serial numbers are negative or zero,
but that they are duplicated, non-unique. uniqueness is a requirement
of the RFC. This is a design characteristic, not a defect. The fact
that some cert issuer is not conforming to the rules does not make
this a defect for mozilla. This has been mozilla policy (and before it,
Netscape Communicator policy) for over a decade.
Uniqueness of the (issuer name, serial number) pair is necesssary for
CRLs to to be able to revoke unique certificates. CRLs list revoked
certs only by serial number. The CRL is produced for a single issuer
so all serial numbers in the CRL are implicitly for the same issuer.
Status: UNCONFIRMED → RESOLVED
Closed: 20 years ago → 20 years ago
Resolution: --- → INVALID
You need to log in
before you can comment on or make changes to this bug.
Description
•