概要
通俗讲,PKCS1是标准RSA秘钥对标准规范,但是都是裸奔的;
PKCS8是对加密后的秘钥进行了描述,就是说P8格式的秘钥不是裸奔了
PKCS1私钥生成
openssl genrsa -out private.pem 1024
PKCS1格式的private.pem 内容如下
-----BEGIN RSA PRIVATE KEY-----
MIICXAIBAAKBgQC5BW6T9GVaaG/epGDjPpY3wN0DrBt+NojvxkEgpUdOAxgAepqe
...
TbzKH/LEqZN8WVau3bf41yAx2YoaOsIJJtOUTYcfh14=
-----END RSA PRIVATE KEY-----
PKCS1私钥转换为PKCS8(该格式一般Java调用)
openssl pkcs8 -topk8 -inform PEM -in private.pem -outform pem -nocrypt -out pkcs8.pem
pkcs8.pem文件内容
-----BEGIN PRIVATE KEY-----
MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBALkFbpP0ZVpob96k
...
wgkm05RNhx+HXg==
-----END PRIVATE KEY-----