Greetings,
You're right. There's no use in continuing the discussion. I would
refer the discussion to ISO 15782 to get a better understanding of the
exposures and what the international standards say about it. There is
also a recent ANSI standard that talks to this point developed under X9,
though I don't recall the designation (X9.79 maybe?).
Contact me off-list if you would llike to continue the dscussion.
If you have any quesitons, please don't hesitate to contact me directly.
Bill
Hernath Szabolcs wrote:
HI,
I think there is no point in arguing about details anymore, if we
clearly disagree on the most fundamental point.
If one considers the new encoding of the root cert a 'new
certificate', all you write is true about the separate hierarchies,
the problems etc.
If, however, you know that the modifications do not change anything
about the trust associated with the CA root keypair, then the two
versions of the root cert will function identically *by definition* .
This means, of course, that you are not even interested in
differentiating the two.
Szabolcs
P.S. I guess if we continue the discussion, we should nott OFF the
list anymore, rather, do it in private mail.
On Wed, 16 Nov 2005, silverhairbp wrote:
Hernath Szabolcs wrote:
On Wed, 16 Nov 2005, silverhairbp wrote:
Hernath Szabolcs wrote:
On Wed, 16 Nov 2005, silverhairbp wrote:
Lets review this.
OK
If a new certificate is issued with different information but the
same public key and serial number as the original, then there is
no point in reissuing since the original certificate can't be
CRL'ed and will still be active through its life. That is one of
the reasons why each certificate MUST have a unique serial number.
I think the point of discussion is 'new certificate' here. It is
the same certificate as before. Only the encoding is different,
but their signatures are identical, and therefore trust validation
yields the same with either copies. They have the same
Subject/Issuer DN. The same public key. The same extensions (well,
almost, that is). The same fingerprints. The same validity period.
They provide exactly the same level of trust for the relying
parties. It is not a 'new certificate' by any stretch of the
imagination.
As a point of reference, the new certificate is not the same as
before. It will only copy some of the information from the original
certificate and use the same key pair, but will most certainly be
unique to itself. Since there is no way to CRL the original
certificate (no unique DN / serial number
As said, there is no need to revoke anything...
combination), the original certificate will still be valid. The
signature over the new self-signed root will certainly be different
if the contents of the certificate are changed. Wasn't David's
point that he wanted to change
Well, the signature *over* the root cert itself will actually be
different in the two versions, but
1. These are self-signed anyway, the signature just needs to be valid.
2. What is really important is what kind of signatures these two
versions *produce* on issued certificates & CRLs? They always
produce the same signatures over any request. They will validate
each other's signatures in exactly the same way. They produce the
same result in the validation chain.
That is precisely the problem. Its not a technical problem, its an
operational and trust problem. Its also going to be an inconsistency
in the practice and policies (if their folow standards). Its
impossible to determine which root signed the hierarchy. If one root
certificate is deemed invalid because its contents need to be
changed, how do you get rid of it.
the root to better define its use? If the original root certificate
is still available, it undermines the effort to create a new
certificate.
I'd wager that 'to better declare its use' would be more
appropriate. I guess he already has the best practice to only use
the CA private key for cert & crl signing. This will not change.
Jsut it is now declared in a flag (well, actually not pricesely,
but...), and declared in the policy (to which an actual policy
identifier extension points in all certs, right?). Then again, no
'new certificate' is created.
What happens during chain validation if the PKCS#9 package contains
the entire chain of certificates back to and including the original
root? It certainly won't match the cached root.
Making your clients reload the root cert in their browsers can be a
PITA. Then again, if you have a proper root distribution framework,
it might be manageable.
It will never be managable unless rebuilding the system is considered
manageable.
And, of course, the original "can't be CRL'ed," I said the exact
same thing. There is no point in revoking a self-signed
certificate, if your CA signing keypair has to be changed. In any
case of key changeover, you roll out a new PKI, and destroy the
old keypair. You must have a working, safe root cert distribution
mechanism to the relying parties anyway.
There is a point of revoking a root certificate if the hierarchy is
being retired before its expiration. Otherwise the hierarchy
remains active and must be managed to prevent its compromise and
misuse. It relates back to the certificate policies and practices
created for the PKI being retired and the new one being established.
I already summarized my preferred practice about this scenario. If
you revoke all issued certificates, and destroy the keypair, and use
your out-of-band secure channels to notify your relying parties
about the changes, the hierarchy is not 'active' anymore. And a
self-signed certificate signing its own revocation simply does not
quite make sense.
I think the point is who are the relying parties and the scope of
certificate distribution. If the certificates are used for other
than PIRMA access control against a private system where only a
single root is used, the scheme, dirty as it is, may continue to
function. But as soon as the the hierarchy is used outside of the
closed system, trust fails since more than a single root
certificate exists. It is more than a technical issue, but rather
one also associated with the trust hierarchy.
I have seen the practice in question work virtually flawlessly in a
global, heterogenous, large-scale (about 30000 active certs)
authentication fabric. The only problem seemed to be with some
browsers complaining on reloading the new root cert versions. It
could be solved.
The only way is to generate a new rot and suordinate hierarchy.
Other ways are dirty.
It is NEVER permissible to reissue a certificate reusing a serial
number.
Well, first of all this is generally very true - this is a special
case, however. Secondly, it is not quite 'reissued,' see above.
Not "generally" very true, but absolutely. It is the only way a
PKI using the same DN can maintain certificate differentiation.
Except you do not need to differentiate the root cert from itself.
But reusing keys and serial numbers for the root begs the question of
which cert is being referenced. So there is a need for differentiation.
Each certificate must have a unique serial number.
Yes. Same certificate -> same serial.
The scheme descrived by David REQUIRES the extablishment of a new
certificate hierarchy with a new root certificate.
Well, I don't quite agree. If the level of trust put in signatures
does not change with this technical alteration, I see no reason
for a key changeover. It is only a different version of the same
root cert with notably one single different value for an extension.
It is only bad practice to reuse a key pair.
Again, generally this is very true. But this is not an actual re-use.
When keys are reused, the management of the hierarchy requires the
management of the certificates under it. When a key pair is used
across more than one hierarchy, both must manage the key
integrity. It is reuse of in practice to maintain a key in
multiple hierarchies. The compromise of a single reused key
impacts multiple hierarchies. The reason why reuse is (at the very
least) bad practice is because it requires the synchronization of
the hierarchies containing the shared key in the change of user
access rights or key exposure.
Well, the keypair is the same. There is absolutely no problem with
integrity. The hierarchy is the same. OTOH, 'requiring the
synchronization of the hierarchies containing the shared keys in the
change of user access rights' is not something you should generally
care about if you designed your namespace and signing policy in a
clever way.
That very much depends on how the PKI is being used. For PIRMA SSL
implicit access, it is critical since that is the primary management
control.
Reusing the keys requires that both hierarchies must bear the
responsibility of managing separate CRLs for those keys shared
between the hierarchies. In managing what was at the time, the
largest private PKI hierarchy, we absolutely never allowed reuse of
keys so that we didn't have to concern ourselves with whether there
would be multiple CRL postings for a single set of keys.
Bill
-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc. Get Certified Today
Register for a JBoss Training Course. Free Certification Exam
for All Training Attendees Through End of 2005. For more info visit:
http://ads.osdn.com/?ad_id=7628&alloc_id=16845&op=click
_______________________________________________
Openca-Users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openca-users
-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc. Get Certified Today
Register for a JBoss Training Course. Free Certification Exam
for All Training Attendees Through End of 2005. For more info visit:
http://ads.osdn.com/?ad_id=7628&alloc_id=16845&op=click
_______________________________________________
Openca-Users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openca-users
-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc. Get Certified Today
Register for a JBoss Training Course. Free Certification Exam
for All Training Attendees Through End of 2005. For more info visit:
http://ads.osdn.com/?ad_id=7628&alloc_id=16845&op=click
_______________________________________________
Openca-Users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openca-users