req 命令会使用配置文件中 [ req ] 段落中的内容,如果是使用 req 命令创建 CSR,那么 CSR 中的扩展字段由 req_extension 决定,如果是使用 req -x509 命令,那么 crt 中的扩展字段由 x509_extensions 决定,如下: -reqext 选项用来指定一个覆盖 req_extensions 值的段落,我们看到,它默认的值是来自 v3_req 段落。
openssl x509 -in certificate.crt -text -noout 其中,certificate.crt是证书的文件名。 在输出的信息中,找到X509v3 extensions部分。这里列出了证书上的所有扩展。 要查看特定扩展的详细信息,请使用以下命令: 代码语言:txt 复制 openssl x509 -in certificate.crt -text -noout -purpose purpose ...
使用这个指令签发根证书: openssl x509 -req -days 3650 -sha256 -extensions v3_ca -signkey private/cakey.pem -in private/ca.csr -out certs/ca.cer 根证书加密很强,有效期10年问题不大。证书的过期是指赶在黑客还没来得及破解之前搞出新密码,这样,只要破解密码的时间大于加密有效期时间,它就绝对安全。
STACK_OF(X509_EXTENSION) *extensions; /* [ 3 ] optional in v3 */ ASN1_ENCODING enc; } X509_CINF; 我们想要获取的证书基本项。有些就直接存在于这两个结构体中。 一、版本 通过解码证书文件。得到证书结构体m_pX509之后,能够通过函数X509_get_version()获取证书的版本号。 详细代码例如以下: int ver...
default of v1 */ASN1_INTEGER*serialNumber;X509_ALGOR*signature;X509_NAME*issuer;X509_VAL*validity;X509_NAME*subject;X509_PUBKEY*key;ASN1_BIT_STRING*issuerUID;/* [ 1 ] optional in v2 */ASN1_BIT_STRING*subjectUID;/* [ 2 ] optional in v2 */STACK_OF(X509_EXTENSION)*extensions;/* [ ...
issuer;X509_VAL validity;X509_NAME*subject;X509_PUBKEY*key;ASN1_BIT_STRING*issuerUID;/* [ 1 ] optional in v2 */ASN1_BIT_STRING*subjectUID;/* [ 2 ] optional in v2 */STACK_OF(X509_EXTENSION)*extensions;/* [ 3 ] optional in v3 */ASN1_ENCODING enc;};typedefstructx509_cinf_stX509...
Extensions ::= SEQUENCE SIZE (1..MAX) OF Extension Extension ::=SEQUENCE { extnID OBJECT IDENTIFIER, critical BOOLEAN DEFAULT FALSE, extnValue OCTET STRING } 源代码 这里利用的是python3 的 Openssl 库进行解析, 此库的说明文档如下, https://pyopenssl.org/en/0.15.1/api/crypto.html#x509name-obje...
x509_extensions = usr_cert name_opt = ca_default cert_opt = ca_default default_days = 3650 default_crl_days = 30 default_md = sha256 preserve = no policy = policy_match [policy_match] # The root CA should only sign intermediate certificates that match. ...
tls:failed to parse certificatefromserver:x509:certificate contains duplicate extensions 证书生成命令为: 复制 openssl x509-req-extfile/etc/pki/tls/openssl.cnf-extensions v3_req-inclient-req.csr-outclient-cert.cer-signkey client-key.key-CA root-cert.cer-CAkeyroot-key.key-CAcreateserial-days3...
host2.pub -passin pass:abcd :: 用CA2的私钥签署用户证书:Openssl x509 -req -days 1095 -in host1.csr -CA ca2.cer -CAkey ca2.key -out host1.cer -days 3650 -passin pass:abcd -CAcreateserial -extfile "d:\01.ext" -extensions usr_certOpenssl x509 -req -days 1095 -in host2.csr ...