Jean-Marc Desperrier wrote:
> This is quite a generic question about SSL, but it might have an impact 
> on NSS.
> 
> Let's imagine you have a strict policy of separating signature and 
> encryption certificates and want to apply it to your SSL server certificate.

Today, NSS's libSSL only lets you have a single certificate for any key
type.  So, you can have at most one RSA cert, one DSA cert, and one ECC
cert.  If that one cert is limited to being only a signing cert or only
a key encipherment cert, then you can only safely enable those cipher
suites that use that type of cert.  IOW, having a cert that only allows
one of the two common usages limits you to using only about half of the
cipher suites that use that type of key.

We hope to lift libSSL's limitation of one cert per key type in some
future release, but I can't say when.

> If you restrict your SSL server to only use to EDH protocols, you don't 
> need the keyEncipherment key usage and it seems to be OK.
> 
> My question is do you need the keyAgreement key usage, then ?
> 
> The trouble is that mozilla doc says you do :
> http://www.mozilla.org/projects/security/pki/nss/tech-notes/tn3.html
> SSLServer: KEY_AGREEMENT OR KEY_ENCIPHERMENT

That document also says:

    Note:  When the required key usage is KEY_AGREEMENT OR KEY_ENCIPHERMENT,
    the actual key usage required depends on the key's algorithm.  For
    RSA keys, the required usage is KEY_ENCIPHERMENT. For other types of
    keys, it is KEY_AGREEMENT.

That's how NSS is working today.  It's wrong for DHE cipher suites and for
the old "export" RSA cipher suites, both of which use RSA public keys for
signing ephemeral public keys.  Fixing it will be decidedly non-trivial.

> So theorically should it be required or not ?
> And does NSS required it ?
> 
> I think the answer might be "no" to the first and "yes" to the second, 
> which would then be a bug in NSS.

https://bugzilla.mozilla.org/show_bug.cgi?id=237877

-- 
Nelson B
_______________________________________________
dev-tech-crypto mailing list
dev-tech-crypto@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-tech-crypto

Reply via email to