首先要下载安装好openssl,下载地址:https://www.openssl.org/source/,安装完成后可以进到命令行运行以下命令:
1. 生成私钥:
openssl genrsa -out rsa_private_key.pem 2048
内容格式:
-----BEGIN RSA PRIVATE KEY-----
123123123123
-----END RSA PRIVATE KEY-----
2. 根据私钥生成公钥:
openssl rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem
3. PKCS#1和PKCS#8格式私钥转换
PKCS#1格式私钥转换为PKCS#8:
openssl pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt -out pkcs8_rsa_private_key.pem
内容格式:
-----BEGIN PRIVATE KEY-----
123123213213132
-----END PRIVATE KEY-----
PKCS8格式私钥转换为PKCS1
openssl pkcs8 -in private_key.pem -nocrypt -out rsa_private_key.pem
内容格式:
-----BEGIN RSA PRIVATE KEY-----
123123123123
-----END RSA PRIVATE KEY-----
第三部生成的私钥格式默认为PKCS#1,java中一般使用格式为PKCS#8的私钥