15
13
I want to set up a chain of certificates, with a self signed 'root' CA at the top that signs sub CAs, which can then sign client and server certificates. When setting up openssl.cnf
, I noticed a keyUsage
parameter, which apparently needs to be set to whatever the key is supposed to be used for. While the parameter values are documented, I can't find any information about which ones to use in certain circumstances.
What do the keyUsage
values mean, and what should I use in the following situations?
- Self signed root CA
- Intermediate CA (that can sign other CAs)
- Intermediate CA (that cannot sign other CAs)
- Non-CA certificates
Also, do other extensions need to be specified with certain values, such as nsCertType
?
@Xenopathic
nc-cert-type
really should no longer be used in OpenVPN, as the "ns" stands for NetScape, as in the now defunct NetScape Browser. The optionremote-cert-eku "TLS Web Server Authentication"
should be used, provided the server cert was generated with EKUserverAuth
and the client cert(s) generated with EKUclientAuth
. One can also specifyremote-cert-ku <hex value>
, where <hex value> is the hex value of KUs assigned. – JW0914 – 2017-09-07T01:04:18.2131OpenVPN has the
ns-cert-type
option, set by default in Arch's exampleclient.conf
, which looks fornsCertType
. Interesting how it is still used in some places. – Xenopathic – 2014-04-07T12:48:15.983Also, how would keyUsage apply for non-CA certs? I edited the question to include it. – Xenopathic – 2014-04-07T12:54:14.667