我有一个.pem格式的私钥。我希望将其转换为.key格式。有什么方法可以做到吗?
我指的是谷歌如何为SSO生成证书和私钥的to this guide
我使用openssl命令生成了私钥:
openssl genrsa -out rsaprivkey.pem 1024
如何以 .key 格式获取私钥?
答案 0 :(得分:10)
没有.key格式。您可以在PEM或DER编码中使用私有(或公共)密钥。您可以拥有PKCS#1或PKCS#8格式的私钥。扩展名(.der,.pem,.key,.cer等)仅为了方便识别内部内容(我们希望相信内容对应于所使用的扩展名)。
命令openssl genrsa -out rsaprivkey.pem 1024
生成PKCS#1格式的私钥和PEM编码。在您提到的指南中,还有其他步骤:
openssl rsa -in rsaprivkey.pem -pubout -outform DER -out rsapubkey.der
openssl pkcs8 -topk8 -inform PEM -outform DER -in rsaprivkey.pem -out rsaprivkey.der -nocrypt
步骤1从rsaprivkey.pem中提取公钥,并以DER格式对其进行编码。步骤2将私钥从PKCS#1转换为PKCS#8格式(未加密)和DER编码。
该指南还提到某些Java SSO示例需要DSA密钥。您使用openssl genrsa -out rsaprivkey.pem 1024
生成的密钥是RSA密钥。