有没有办法在运行 openssl 1.0 的服务器上生成密钥,以供使用 openssl 0.9 的客户端读取?
- 客户端正在使用 php_openssl(OpenSSL 库版本 => OpenSSL 0.9.8o)
服务器正在使用 php_openssl (OpenSSL 库版本 => OpenSSL 1.0.1e 2013 年 2 月 11 日)
使用 openssl 1.0 生成的密钥的形式为 '-----BEGIN PRIVATE KEY-----',其中主体部分包含算法(我猜)
- 使用 openssl 0.9 生成的密钥形式为
-----BEGIN RSA PRIVATE KEY-----
我的脚本剥离了服务器上的 ASCII 保护,并将其放回到客户端上,因此我在 1.0 密钥上写入 0.9 保护(RSA),导致密钥无效。
是否有一个选项可以在 openssl 1.0 上生成 0.9 格式的密钥(密钥类型在装甲中,而不是在主体中)?
答案1
正如所述https://superuser.com/questions/606215/openssl-pkcs8-default-format-gives-rsa-private-key,你可以使用以下命令将 openssl 1.0 生成的密钥“转换”为 0.98 兼容的密钥
openssl rsa -in file.pem -text > key.pem