【问题标题】:makecert requesting passwordmakecert 请求密码
【发布时间】:2014-02-11 05:06:16
【问题描述】:

给定以下 powershell 函数:

function CreateRootCertificate($certificateName, $path, $certificatePassword){
    makecert -r -pe -n "CN=$certificateName" -sky exchange $path\$certificateName.cer -sv $path\$certificateName.pvk
    pvk2pfx.exe -pvk $path\$certificateName.pvk -spc $path\$certificateName.cer -pfx $path\$certificateName.pfx -po $certificatePassword
}

makecert 提示我输入证书密码。据我了解,如果 *.pvk 文件已经存在并且设置了密码,它不会这样做。

所以我的问题是,如何将我的单个 makecert 命令拆分为两个单独的命令,一个用于创建 *.pvk,另一个用于创建 *.cer?

非常感谢

【问题讨论】:

  • “makecert.exe”在创建私钥时总是会提示输入密码。解决此问题的一种方法是编写代码,找到密码输入窗口并在其中输入您的密码。 (丑)另一种是使用OpenSSL。 (首选)在 OpenSSL 中,使用“openssl genrsa -aes128 -passout pass:password -out $certificateName.pvk 2048”生成带有密码的私钥。或者,如果您经常使用证书,请完全忘记“makecert.exe”,然后使用 OpenSSL。

标签: powershell certificate makecert


【解决方案1】:

“Makecert.exe”在创建私钥时总是会提示输入密码。

绕过此提示的一种方法可能是编写代码/宏,找到密码输入窗口并在其中输入您的密码。

另一种是使用OpenSSL。在 OpenSSL 中使用

openssl genrsa -aes128 -passout pass:password -out $certificateName.pvk 2048

生成带有密码的私钥。

如果您经常使用证书,我建议您完全忘记“makecert.exe”并改用 OpenSSL。

【讨论】:

  • 你拯救了我的一天。你知道是否可以用ssh-keygen 而不是openssl 做同样的事情?
  • 不客气。在 ssh-keygen 中,您应该能够使用 -N new_passphrase 标志。 stackoverflow.com/questions/43235179/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-11-25
  • 1970-01-01
  • 1970-01-01
  • 2012-10-04
  • 2017-10-05
  • 1970-01-01
  • 2020-02-10
相关资源
最近更新 更多