Xen*_*hic 29 certificate ssl openssl
我想建立一个证书链,在顶部有一个自签名的“根”CA,用于签署子 CA,然后可以签署客户端和服务器证书。设置时openssl.cnf
,我注意到一个keyUsage
参数,显然需要将其设置为应该使用的任何密钥。虽然记录了参数值,但我找不到有关在某些情况下使用哪些参数值的任何信息。
这些keyUsage
值是什么意思,在以下情况下我应该使用什么?
此外,是否需要使用某些值指定其他扩展名,例如nsCertType
?
JW0*_*914 74
openssl.cnf
和如何使用的示例
密钥用法: cRLSign
,digitalSignature
,keyCertSign
V3简介:
[ v3_ca ]
basicConstraints = critical, CA:TRUE
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid:always, issuer:always
keyUsage = critical, cRLSign, digitalSignature, keyCertSign
subjectAltName = @alt_ca
Run Code Online (Sandbox Code Playgroud)
密钥用法: cRLSign
,digitalSignature
,keyCertSign
V3简介:
[ v3_ica ]
basicConstraints = critical, CA:TRUE, pathlen:1
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid:always, issuer:always
keyUsage = critical, cRLSign, digitalSignature, keyCertSign
subjectAltName = @alt_ica
Run Code Online (Sandbox Code Playgroud)
pathlen:
等于它可以签署的 CA/ICA 的数量pathlen:
设置为 0,则不能签署其他 CA/ICA密钥用法: nonRepudiation
,digitalSignature
,keyEncipherment
,keyAgreement
V3简介:
[ v3_vpn_server ]
basicConstraints = critical, CA:FALSE
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid:always, issuer:always
keyUsage = critical, nonRepudiation, digitalSignature, keyEncipherment, keyAgreement
extendedKeyUsage = critical, serverAuth
subjectAltName = @alt_vpn_server
Run Code Online (Sandbox Code Playgroud)
密钥用法: nonRepudiation
,digitalSignature
,keyEncipherment
V3简介:
[ v3_vpn_client ]
basicConstraints = critical, CA:FALSE
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid:always, issuer:always
keyUsage = critical, nonRepudiation, digitalSignature, keyEncipherment
extendedKeyUsage = critical, clientAuth
subjectAltName = @alt_vpn_client
Run Code Online (Sandbox Code Playgroud)
keyCertSign
cRLSign
digitalSignature
nonRepudiation
keyEncipherment
dataEncipherment
keyAgreement
encipherOnly
keyAgreement
decipherOnly
keyAgreement
id-ce-keyUsage OBJECT IDENTIFIER ::= { id-ce 15 }
位串是十六进制
KeyUsage ::= BIT STRING {
digitalSignature (0),
nonRepudiation (1),
keyEncipherment (2),
dataEncipherment (3),
keyAgreement (4),
keyCertSign (5),
cRLSign (6),
encipherOnly (7),
decipherOnly (8)
}
Run Code Online (Sandbox Code Playgroud)
serverAuth
nscertype
选项(ns innscertype
代表 NetScape [浏览器])digitalSignature
,keyEncipherment
或keyAgreement
clientAuth
digitalSignature
和/或keyAgreement
codeSigning
digitalSignature
, nonRepudiation
, 和/keyEncipherment
或keyAgreement
emailProtection
digitalSignature
,keyEncipherment
或keyAgreement
timeStamping
digitalSignature
,nonRepudiation
OCSPSigning
digitalSignature
,nonRepudiation
msCodeInd
digitalSignature
,keyEncipherment
或keyAgreement
msCodeCom
digitalSignature
,keyEncipherment
或keyAgreement
mcCTLSign
digitalSignature
,nonRepudiation
msEFS
digitalSignature
,keyEncipherment
或keyAgreement
ipsecEndSystem
, ipsecTunnel
, &ipsecUser
ipsecIKE
clientAuth
可以在 IPSec VPN 客户端证书中使用anyExtendedKeyUsage OBJECT IDENTIFIER ::= { id-ce-extKeyUsage 0 }
id-kp OBJECT IDENTIFIER ::= { id-pkix 3 }
id-kp-serverAuth OBJECT IDENTIFIER ::= { id-kp 1 }
digitalSignature
,keyEncipherment
或keyAgreement
id-kp-clientAuth OBJECT IDENTIFIER ::= { id-kp 2 }
digitalSignature
和/或keyAgreement
id-kp-codeSigning OBJECT IDENTIFIER ::= { id-kp 3 }
digitalSignature
id-kp-emailProtection OBJECT IDENTIFIER ::= { id-kp 4 }
digitalSignature
, nonRepudiation
, 和/或keyEncipherment
或keyAgreement
id-kp-timeStamping OBJECT IDENTIFIER ::= { id-kp 8 }
digitalSignature
和/或nonRepudiation
id-kp-OCSPSigning OBJECT IDENTIFIER ::= { id-kp 9 }
digitalSignature
和/或nonRepudiation
mat*_*mat 21
任何 CA 证书,无论是根证书还是中间证书,都必须具有keyCertSign
扩展名。如果您还想使用 CA 证书签署吊销列表 (CRL)(您通常需要这样做),那么您还必须添加cRLSign
。对于 CA 证书,可以并且应该避免任何其他 keyUsages。
openssl 接受的值列表记录在此处。
对于最终实体证书,您可以使用 openssl 记录的任何其他 keyUsages,只需确保不包含上述 CA 扩展。从安全的角度来看,您不应该使用更多的 keyUsages(特别是建议使用单独的证书进行签名和加密),但这不是一个严格的要求。
请注意,除了经典的 keyUsages,还有extendedKeyUsage
(EKU) 扩展,它不仅限于 RFC 中的预定义值,而且理论上可以容纳您喜欢的任何 OID。已知值例如用于签署时间戳或 OCSP 响应的证书。
您不需要使用nsCertType
. 那些,连同所有其他 ns* 扩展,由 Netscape 很久以前定义,不应再使用。您可能找不到任何仍在使用它们的软件。
对于其他扩展,唯一绝对需要的是basicConstraints
具有布尔CA
标志的扩展,您必须相应地设置该标志。强烈建议使用 authorityKeyIdentifier 和 subjectkeyIdentifier 扩展。
归档时间: |
|
查看次数: |
82379 次 |
最近记录: |