OpenSSL ca 在输入密码后失败,没有错误消息

OpenSSL ca 在输入密码后失败,没有错误消息

我正在尝试使用根 CA 为中级证书签署 CSR,OpenSSL 要求我输入密码,之后什么也没发生。没有错误消息,也没有生成证书。失败的命令是:

openssl ca -config rootca.cnf -extensions v3_intermediate_ca ^
  -days 730 -notext -md sha256 ^
  -in C:/Certificates/IntermediateCA/csr/intermediate.csr.pem ^
  -out C:/Certificates/IntermediateCA/public/intermediate.cert.pem

openssl 响应:

Enter pass phrase for C:/Certificates/RootCA/private/rootca.key.pem:

当我输入密码时,什么也没有发生。

这个问题的一个好的答案应该包括两个部分:

  1. 我究竟做错了什么?
  2. 我如何获取该问题的错误输出?

额外细节

不确定是否需要,但这里有一些我用来生成其余中间 CA 的附加命令:

创建中级 CA 私钥:

openssl genrsa -aes256 -out private/intermediate.key.pem 4096

创建中级 CSR:

openssl req -config intermediateca.cnf -new -sha256 ^
  -key private/intermediate.key.pem ^
  -out csr/intermediate.csr.pem

rootca.cnf(重要部分):

[ CA_default ]
dir = C:/Certificates/RootCA
...
[ policy_strict ]
countryName             = match
stateOrProvinceName     = match
localityName            = match
organizationName        = match
organizationalUnitName  = optional
commonName              = supplied
emailAddress            = optional
...
[ req_distinguished_name ]
0.organizationName_default = org1
1.organizationName_default = org1.1
...
[ v3_intermediate_ca ]
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid:always,issuer
basicConstraints = critical, CA:true, pathlen:0
keyUsage = critical, digitalSignature, cRLSign, keyCertSign

答案1

openssl 可能认为您的文件已“损坏”。当我在编写一些脚本时index.txt使用重置文件时也发生了同样的情况。只需删除文件并使用重新创建它就足以让 openssl 再次正常运行。echo '' > index.txtindex.txttouch index.txt

相关内容