Mat*_*att 38 passwords command-line openssl
我想从.key和.pem生成P12证书.我正在运行此命令并提示输入导出密码:
pkcs12 -export -inkey private-key.key -in developer_identity.pem -out iphone_dev.p12
Run Code Online (Sandbox Code Playgroud)

此时我无法输入密码,似乎无法识别键盘输入.
我错过了什么?(我是命令行工具和openSSL的新手)
jar*_*riq 87
输入密码时,OpenSSL命令行应用程序不显示任何字符.只需输入它然后按回车键即可看到它正常工作.
您还可以使用从命令行openssl pkcs12 -export -inkey mykey.key -in developer_identity.pem -out iphone_dev.p12 -password pass:YourPassword传递密码YourPassword.有关详细信息,请参阅OpenSSL手册中的Pass Phrase Options部分.
小智 10
我知道这个帖子已经闲置了一段时间,但我只是想加上我的两分钱来补充jariq的评论......
根据手册,您不必使用"-password"选项.
假设mykey.key有一个密码,你想用另一个密码保护iphone-dev.p12,这就是你要用的:
pkcs12 -export -inkey mykey.key -in developer_identity.pem -out iphone_dev.p12 -passin pass:password_for_mykey -passout pass:password_for_iphone_dev
玩得开心!
所选答案显然在 2019 年不再适用(至少对我而言)。
我试图使用 openssl(版本 1.1.0)导出证书,但该参数-password不起作用。
根据原始答案中的链接(相同的信息在 中man openssl),openssl 有两个密码参数,它们分别-passin用于输入部分和-passout输出文件。
对于-export命令,我使用-passin了我的密钥文件的-passout密码并为我的 P12 文件创建了一个新密码。
所以没有任何提示的完整命令如下所示:
openssl pkcs12 -export -in /tmp/MyCert.crt -inkey /tmp/MyKey.key -out /tmp/MyP12.p12 -name alias -passin pass:keypassphrase -passout pass:certificatepassword
Run Code Online (Sandbox Code Playgroud)
如果您不想要密码,可以使用pass:如下:
openssl pkcs12 -export -in /tmp/MyCert.crt -inkey /tmp/MyKey.key -out /tmp/MyP12.p12 -name alias -passin pass: -passout pass:
Run Code Online (Sandbox Code Playgroud)
它可以使用没有密码的密钥正常工作,并且输出证书也将在没有密码的情况下创建。