1. 公私钥对

1.1. 从私钥生成一个公钥

ssh-keygen -y -f id_rsa > id_rsa.pub

1.2. 生成公私钥对

ssh-keygen -t rsa -b 4096 -C "[email protected]"

-C 备注 -f 文件名 -t 指定生成类型 rsa / rsa1 -b 位数

1.3. OpenSSL 格式 转 pem 格式

ssh-keygen -p -N "" -m pem -f /path/to/key

1.4. 公钥类型

  • BEGIN RSA PUBLIC KEY 是 PKCS#1
  • BEGIN PUBLIC KEY 是 PKCS#8

PKCS#8 to PKCS#1

openssl rsa -pubin -in <filename> -RSAPublicKey_out

PKCS#1 to PKCS#8

openssl rsa -RSAPublicKey_in -in <filename> -pubout

1.5. 转换 OPENSSL 新格式私钥为 PKCS1 格式

ssh-keygen -p -N "" -m pem -f /path/to/key

1.6. ssh-keygen 的 rsa 公钥生成 PKCS1 公钥

ssh-keygen -f key.pub -e -m pem

1.7. 获取 pem

  1. 私钥提取 private.pem

openssl rsa -in xxx.key -out private.pem

  1. private.pem 转 public.pem

openssl rsa -in private.pem -RSAPublicKey_out -out public.pem

BEGIN RSA PUBLIC KEY" is PKCS#1 BEGIN PUBLIC KEY" is PKCS#8

1.7.1. To convert from PKCS#8 to PKCS#1:

openssl rsa -pubin -in <filename> -RSAPublicKey_out

1.7.2. To convert from PKCS#1 to PKCS#8:

openssl rsa -RSAPublicKey_in -in <filename> -pubout

1.7.3. Private to convert from PKCS#1 to PKCS#8

openssl pkcs8 -topk8 -nocrypt -inform PEM -in rsa_private_key.pem -out rsa_private_key_pkcs8.pem

results matching ""

    No results matching ""