On October 28, 2009 12:10:16 pm Mourad Cherfaoui (mcherfao) wrote:
> Thanks Steve,
>
> Yes, the keyUsage is present but the sign bit is not set. As a background
> on this, the user does not want his CA to set the sign bit for non-root
> certificates.
>
If the keyUsage is present and the certSign bit is NOT set in a CA certificate 
(even an intermediate cert), then that cert may NOT be used to sign 
certificates. 

From RFC5280:

The digitalSignature bit is asserted when the subject public key
      is used for verifying digital signatures, *other than signatures on
      certificates (bit 5) and CRLs (bit 6)*, such as those used in an
      entity authentication service, a data origin authentication
      service, and/or an integrity service.

The keyCertSign bit is asserted when the subject public key is
      used for verifying signatures on public key certificates.  If the
      keyCertSign bit is asserted, then the cA bit in the basic
      constraints extension (Section 4.2.1.9) MUST also be asserted.


(Emphasis mine).

> I am not sure I understand why the client is broken? Did you mean that the
> sign bit can be omitted if the client sends the entire chain of
> certificates (except maybe the root) AND the server has the certificates
> chain as well? Thanks.
>
The Intermediate CA Certificate is broken, not the client. The client software 
is 100% right in rejecting the chain. I would strongly suggest to go back and 
re-issue the intermediate CA following RFC5280. If you do not, your PKI will 
keep failing in new and interesting ways.

Have fun.

-- 
Patrick Patterson
President and Chief PKI Architect,
Carillon Information Security Inc.
http://www.carillon.ca
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           majord...@openssl.org

Reply via email to