来自OpenSSL食谱的openssl根ca配置示例定义了以下内容(p40):
[req]
...
req_extensions = ca_ext
[ca_ext]
...稍后(p43)生成根ca键,然后生成根ca自签名证书。
openssl req -new \
-config root-ca.conf \
-out root-ca.csr \
-keyout private/root-ca.key
openssl ca -selfsign \
-config root-ca.conf \
-in root-ca.csr \
-out root-ca.crt \
-extensions ca_ext在这个特定的用例中,req_extensions不是多余的吗?什么时候req_extension才是真正需要的?
发布于 2015-07-08 02:21:52
req_extensions用于声明将包含在PKCS #10证书签名请求(CSR)对象中的请求扩展。扩展是CSR中签名数据的一部分。
通常,CA在响应CSR创建和签署X.509证书时,根据证书配置文件,可能会也可能不会注意特定的请求扩展。您将需要使用它来生成CSR,以便与期望以这种方式传递特定信息的CA一起使用。
OpenSSL本身不将任何扩展从PKCS #10请求复制到X.509证书;必须显式声明证书的所有扩展。OpenSSL 手册页提供了一些评论:
证书中的扩展不会传输到证书请求,反之亦然。
因为您使用的是OpenSSL CA,所以req_extensions的使用确实是多余的。
https://stackoverflow.com/questions/31274766
复制相似问题