[cabfpub] Name Constraints, Auditing and EKU
Rob Stradling
rob.stradling at comodo.com
Mon Apr 22 10:12:28 UTC 2013
On 27/03/13 13:49, Steve Roylance wrote:
<snip>
> I'm looking for a couple of volunteers to whip this into shape. Any takers?
Hi Steve. As requested, here are some comments on your proposal...
1. Section 9.3.2a:
"Note:- If NameConstraints are used within the Subordinate CA this
field MUST be duplicated into at least one
nameConstraints:directoryName:orgaizationName"
s/orgaizationName/organizationName
You need to explicitly state that the "at least one" entry needs to go
into permittedSubtrees rather than excludedSubtrees! (This comment
applies to various other paragraphs in section 9.3.* as well).
2. Section 9.5.2:
"Subordinate CA Certificates issued after the Effective Date MUST
not exceed the Validity Period of the Certificate from which they
were issued"
This doesn't make sense to me. Certificates are issued by CAs, not by
Certificates. Each CA can be the Subject of an unlimited number of CA
Certificates, each cert potentially having a different Validity Period.
Furthermore, some of the CA Certificates might be issued more recently
than some of the Certificates that the CA has issued!
(Steve, I know you know this already, because GlobalSign have issued 2
certificates with different expiry dates for the "GlobalSign Root CA" ;-) ).
3. Section 9.5.2:
"and by a rule of thumb should not exceed 50% of duration of the
Certificate from which they were issued"
Why?
4. Section 9.8:
I just spotted a gaping hole in the language. As written, the Name
Constraints extension could include dNSName=foo.com in excludedSubtrees
and this would be regarded as "technically constrained", even though it
wouldn't prevent certs being issued to bar.com, google.com, etc!
One way to fix this would be to extend the final paragraph of this
section to something like...
"If the subordinate CA is not allowed to issue certificates with
dNSNames, then the subordinate CA certificate MUST include a
zero-length dNSName in excludedSubtrees. Otherwise, the
subordinate CA certificate MUST include at least one
dNSName in permittedSubtrees."
A similar "MUST include at least one...in permittedSubtrees" fix is
required for iPAddress too.
5. Section 9.8:
"If the Subordinate CA certificate includes the id-kp-serverAuth
extended key usage..."
When wouldn't this be the case? The scope of the BRs is still...
"This version of the Requirements only addresses Certificates
intended to be used for authenticating servers accessible through
the Internet."
6. Section 9.8(a):
"...according to the Public Suffix List algorithm."
I think this language should be redrafted so that it is consistent with
Section 11.1.3. (i.e. the PSL is current best practice but it might be
superseded by an RFC at some point, etc, etc).
(Maybe there needs to be a new section in the BRs that just deals with
determining what is a registered/registrable domain, which other
sections can then refer to).
7. Section 11.1.1:
"FQDNs may be listed in...Subordinate CA certificate via dNSNames
in Name Constraints"
That statement is true, but IMHO it's misleading. A dNSName constraint
for foo.com affects foo.com, www.foo.com and
unlimited.levels.of.subdomain.foo.com. By definition, you don't add
sub-domains to an "FQ"DN.
Also, I presume you're talking about dNSNames in permittedSubtrees
(rather than excludedSubtrees), but I think you should so say explicitly.
8. Section 11.1.2:
"IPAddresses may be listed...in Subordinate CA certificate via
IPAddress in Name Constraints"
s/certificate/Certificates
Again, state explicitly that you mean permittedSubtrees.
9. Section 17:
"...or unconstrained and audited in line with all requirements from
section 17."
I don't understand the "unconstrained" requirement. Why should a CA
that is audited by WebTrust/ETSI be _banned_ from having Name
Constraints in their CA Certificate(s)?!?
10. Section 17.4:
There are 3 references to Section 0. Where's that?
11. Appendix B(2)G:
"For Subordinate CA Certificates with Name Constraints then either
the value id-kp-serverAuth [RFC5280] or id-kp-clientAuth [RFC5280]"
Given the scope of the BRs (see my comment 5 above), when would
id-kp-serverAuth ever be omittable?
12. Appendix B(2)G:
"id-kp-OCSPSigning MUST be present"
Disagree. The OCSP Signing trust purpose is not supposed to be passed
down from the Root, and AFAIK there is no way to prevent a Subordinate
CA from issuing delegated OCSP Signing Certificates! (If you have
evidence to the contrary, please say).
13. Appendix B(2)G:
"** Extended Key Usage within Subordinate CAs is an exception to
RFC 5280 that MAY be used to further protect relying parties until
the Name Constraints extension is supported by Application
Software Suppliers whose software is used by a substantial portion
of Relying Parties worldwide."
I agree that we should note that this is "an exception to RFC 5280".
However, I don't think Mozilla have any plans to stop requiring EKU once
Name Constraints are supported more widely, since EKU and Name
Constraints achieve different things.
--
Rob Stradling
Senior Research & Development Scientist
COMODO - Creating Trust Online
More information about the Public
mailing list