makecert 请求密码

Mic*_*ker 5 powershell certificate makecert

给定以下 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
}
Run Code Online (Sandbox Code Playgroud)

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

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

非常感谢

Jan*_*lka 3

\xe2\x80\x9cMakecert.exe\xe2\x80\x9d 在创建私钥时将始终提示输入密码。

\n\n

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

\n\n

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

\n\n
openssl genrsa -aes128 -passout pass:password -out $certificateName.pvk 2048\n
Run Code Online (Sandbox Code Playgroud)\n\n

生成带有密码的私钥。

\n\n

如果您经常使用证书,我建议完全忘记 \xe2\x80\x9cmakecert.exe\xe2\x80\x9d 并使用 OpenSSL 代替。

\n