PKCS#1 和 PKCS#8 密钥格式间的互转
私钥转换
如果您想了解 PKCS#1 格式私钥和 PKCS#8 私钥间的区别,您可以访问我们之前发布的文档《私钥头 "BEGIN RSA PRIVATE KEY" 和 "BEGIN PRIVATE KEY"的区别》
我们需要借助Openssl命令行工具,完成下列互转:
PKCS8格式私钥再转换为PKCS1格式
openssl rsa -in pkcs8.pem -out pkcs1.pem
PKCS1私钥转换为PKCS8
openssl pkcs8 -topk8 -inform PEM -in private.pem -outform pem -nocrypt -out pkcs8.pem
公钥转换
从pkcs1私钥中生成pkcs8公钥
openssl rsa -in private.pem -pubout -out public.pem
从pkcs8私钥中生成pkcs8公钥
openssl rsa -in pkcs8.pem -pubout -out public_pkcs8.pem
pkcs8公钥转pkcs1公钥
openssl rsa -pubin -in public.pem -RSAPublicKey_out
pkcs1公钥转换为pkcs8公钥
openssl rsa -RSAPublicKey_in -in pub_pkcs1.pem -pubout