分类
devops

PKCS#1和PKCS#8


Last Updated on 2022-08-28

PKCS

在密码学中,PKCS代表“公钥加密标准”。
PKCS #1 可以称作pkcs 1号,以此类推,PKCS#1到#12并不是一代代的升级的,而是代表了不同功能,所以不能错误地理解为pkcs8是pkcs1的升级版。

PKCS#1 to PKCS#8

pkcs#1

-----BEGIN RSA PRIVATE KEY-----
...
-----END RSA PRIVATE KEY-----

pkcs#8

-----BEGIN PRIVATE KEY-----
...
-----END PRIVATE KEY-----
# gen PKCS#1

openssl genrsa -out logstash.key 4096

# -----BEGIN RSA PRIVATE KEY-----

# convert PKCS#1 to PKCS#8
# -----BEGIN PRIVATE KEY-----
openssl pkcs8 -topk8 -inform pem -in logstash.key -outform pem -nocrypt -out logstash-pkcs8.key


# 或者
openssl pkcs8 -topk8 -inform pem -in logstash.key -outform pem -out logstash-pkcs8-enc.key

PKCS#8 to PKCS#1

openssl rsa -in logstash-pkcs8.key --out logstash-pkcs1.key

对比发现 logstash-pkcs1.key 和最初的 logstash.key 是一样的

ref