我正在使用 powershell 脚本使用 certreq 创建证书签名请求 (CSR)。我需要文件中的私钥,但脚本没有生成它。我尝试查看 certreq 和其他资源的文档,但一无所获。在 INF 设置中,我设置 Exportable = TRUE。这是设置
$settingsInf = "
[Version]
Signature=`"`$Windows NT`$
[NewRequest]
KeyLength = 2048
Exportable = TRUE
MachineKeySet = TRUE
SMIME = FALSE
RequestType = PKCS10
ProviderName = `"Microsoft RSA SChannel Cryptographic Provider`"
ProviderType = 12
HashAlgorithm = sha256
;Variables
Subject = `"CN={{CN}},CN={{CN2}},O={{O}},DC={{DC}},DC={{DC2}}`"
[Extensions]
{{SAN}}
我尝试的另一个解决方案是使用 openssl 获取私钥和 CSR。在此解决方案中,我同时获得了私钥和 CSR,但是当我将 CSR 提交给 CA 时,它会引发以下错误
"message" : "Invalid Subject DN. The requested Subject DN is not compatible with the issuing CA.",
我正在使用openssl如下
$subject = "`"/CN=$cn/CN=$cn2/O=$o/DC=$dc/DC=$dc2'"
openssl req -new -key $privateKeyPath -rand $randPath -subj $subject -out $csrPath
证书颁发机构 DN 如下
"issuer_dn" : "CN=usa,O=SE,DC=abc,DC=com",
任何使用 certreq 获取私钥的建议,或者为什么 CA 在使用 openssl 时抛出错误。谢谢