是否可以使用 OpenSSL 3.0 生成 pvk 文件?

Is it possible to generate pvk files with OpenSSL 3.0?

是否可以使用 OpenSSL 3.0 创建 pvk 文件? 在以前的版本中,可以使用以下命令完成:

OPENSSL genrsa -out test.key -passout pass:blahblah 2048
OPENSSL rsa -in test.key -inform pem -out test.pvk -outform PVK -pvk-strong -passout pass:blahblah

但是,当我在 OpenSSL 3.0 中 运行 这个命令时,第二个命令给我一个错误:

300F0000:error:07880106:common libcrypto routines:ossl_pw_get_passphrase:reason(524550):crypto\passphrase.c:265:No password method specified
300F0000:error:04800068:PEM routines:i2b_PVK:bad password read:..\crypto\pem\pvkfmt.c:1058

我加载了旧版提供程序,但不幸的是,没有效果。 您对此有什么建议或解决方法吗?

错误 'No password method specified' 是指 test.key 有密码而您没有输入

你需要两者之一;

  1. 未在 test.key 上设置密码(在第一个命令中使用 -nodes) 或者
  2. 在第二个命令中使用 -passin pass: ... 等(或 env:,stdin:,等)

3.0 的实现有一个错误。

由这个分支修复:https://github.com/t8m/openssl/tree/fix-pvk-encoder 另见 https://github.com/openssl/openssl/pull/17181