首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在powershell中使用certreq在文件中生成私钥

在powershell中使用certreq在文件中生成私钥
EN

Stack Overflow用户
提问于 2020-06-25 13:46:30
回答 1查看 830关注 0票数 0

我正在使用powershell脚本通过certreq创建证书签名请求(CSR)。我需要文件中的私钥,但脚本不会生成私钥。我尝试查看certreq和其他资源的文档,但什么也没有找到。在INF设置中,我设置Exportable = TRUE。以下是设置

代码语言:javascript
复制
$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,但是当我向CA提交CSR时,它抛出以下错误

代码语言:javascript
复制
 "message" : "Invalid Subject DN.  The requested Subject DN is not compatible with the issuing CA.",

我正在使用openssl,如下所示

代码语言:javascript
复制
$subject = "`"/CN=$cn/CN=$cn2/O=$o/DC=$dc/DC=$dc2'"

openssl req -new -key $privateKeyPath -rand $randPath -subj $subject -out $csrPath

证书颁发机构DN如下

代码语言:javascript
复制
"issuer_dn" : "CN=usa,O=SE,DC=abc,DC=com",

使用certreq获取私钥的任何建议,或者使用openssl时CA抛出错误的原因。谢谢

EN

回答 1

Stack Overflow用户

发布于 2020-06-25 23:40:34

我找到了解决方案。也许这会对别人有所帮助。

看起来有些CA需要特定顺序的主题,这是没有文档记录的(超级烦人)。

CA I所连接到的需要$subject的方式如下

代码语言:javascript
复制
$subject = "`"/DC=$dc2/DC=$dc/O=$o/CN=$cn2/CN=$cn'"

CA接受在生成CSR时使用这样的主题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62568642

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档