这种讨论并没有包括像网络服务器和邮件服务器主机自签署最终实体证书。
OpenSSL 的 CA 证书默认配置如下keyUsage
:
- cRLSign
- 密钥证书签名
在联邦公共密钥基础设施(PKI),X.509证书和CRL扩展配置文件有以下keyUsage
:
- cRLSign
- 密钥证书签名
Microsoft 将以下内容用于其根证书(来自How to make a stand-alone certificate authority):
- 证书签名
- 离线 CRL 签名
- CRL 签名
RFC5280定义 CA 或 CRL 颁发者证书密钥使用位,并声明以下可能存在于使用 RSA 的 CA 根:
- 电子签名
- 不可否认性
- 密钥加密
- 数据加密
- 密钥证书签名
- cRLSign
对于RFC5280下的 DSA 密钥,可以设置以下内容:
- 电子签名
- 不可否认性
- 密钥证书签名
- cRLSign
以及RFC5280下的 ECDSA 密钥,可以设置以下内容:
- 电子签名
- 不可否认性
- 关键协议
- 密钥证书签名
- cRL 签名。
然后RFC5280继续谈到 ECDSA:
如果 keyUsage 扩展断言 keyAgreement 那么它可以断言 encipherOnly 和 decipherOnly
为什么 IETF 对密钥的使用如此快速而松散?
为什么 RSA 根证书允许使用 keyEncipherment 和 dataEncipherment?
为什么 ECDSA 证书上允许使用密钥协议?
IETF 的使用是否是为适应现有实践而制定标准的案例?