關鍵命令:
openssl pkcs8 -topk8 -inform PEM -in PKCS1.pem -outform PEM -nocrypt -out PKCS8.pem
PKCS1格式的私鑰
-----BEGIN RSA PRIVATE KEY-----
MIICXQIBAAKBgQDlUT8SqmIOhHUKAZGFRHOafTVV1jbXO7W9LC5OVQWpHgTNdrUo
LlHoMfwGwX77vjKiObkvJitSux1huD6xAEmMYCbD0EGz9GWUqWXvxcc4awk0qdcK
NI1muKgo+m314FbeLEnvRObL12pTkOTgdKEQ2paLIj57uuvGTgtwgbbzSwIDAQAB
AoGAXLCcZ/UKsYeEr0i3A0EJ4TYe6tUtUY5HBXHoPa1MHnGNy2biDp26abpafniT
1Tmpyby/R3mMJWKQm8EXRgAxuZHiyD3Ijsbs+29pESxp7VVy+hGdRmGwZWDh3UAR
kAqvQKaihULydXBzCC5dINh6J0akyK0wsoQFG7yCGm3/RjECQQD6OpOdVEEqkVNn
C99E3Fk8EH7nTaZ+2+i0Qca9N4Q7aM5+qZ5waUp4EH+gD5XGOcEVW757Y5cq7xr5
i6bpjSplAkEA6psz2LJMlPMtIohyNj4Zz70+BFXwMi2CkPX4dRULQt3BOg1xYjTK
HU1pxxJqJrER39MShd49SmPsC0k8Es1z7wJAPe8TrEQ3YO7ZYs74cxXK7Gf00RFS
HWIWxc7l/t1n2ECHo6gd9BrLeM40mIxi+M5AsSWlDutGdjT6Szu6k2ICVQJBAOf0
I0Kwpn7uH0XxWdq/c42tMU/gF+fEjz77sncwIz4tOgpHmD7cqqhmDZtBXap7j4yY
h8vLexW9zXcrJTYB5AkCQQDsOGFbNSJ7pB4UQ7DFlyM2hIZK2EI2x8BM4NMcWUJ5
H/Pre/iZ36wI9nyGq3LKKvyeAk25jYVTbV/t1nUsFi5k
-----END RSA PRIVATE KEY-----
PKCS1格式的私鑰格式是
-----BEGIN RSA PRIVATE KEY----- ....... -----END RSA PRIVATE KEY-----`
將PKCS1轉成PKCS8
-
將PKCS1格式的私鑰粘貼到文本編輯器中,然后存儲為PKCS1.pem文件,如下圖
存儲為PKCS1.pem -
生成的pem文件如下
PKCS1.pem 打開終端
cd
切換到PKCS1.pem所在的路徑,并使用下面的命令將PKCS1.pem轉成PKCS8.pem
openssl pkcs8 -topk8 -inform PEM -in PKCS1.pem -outform PEM -nocrypt -out PKCS8.pem
-
這樣就把PKCS1轉換成啦PKCS8,如下圖
PKCS1.pem和PKCS8.pem 在終端輸入
cat PKCS8.pem
,可以看到PKCS8里面的內容如下
-----BEGIN PRIVATE KEY-----
MIICdwIBADANBgkqhkiG9w0BAQEFAASCAmEwggJdAgEAAoGBAOVRPxKqYg6EdQoB
kYVEc5p9NVXWNtc7tb0sLk5VBakeBM12tSguUegx/AbBfvu+MqI5uS8mK1K7HWG4
PrEASYxgJsPQQbP0ZZSpZe/FxzhrCTSp1wo0jWa4qCj6bfXgVt4sSe9E5svXalOQ
5OB0oRDalosiPnu668ZOC3CBtvNLAgMBAAECgYBcsJxn9Qqxh4SvSLcDQQnhNh7q
1S1RjkcFceg9rUwecY3LZuIOnbppulp+eJPVOanJvL9HeYwlYpCbwRdGADG5keLI
PciOxuz7b2kRLGntVXL6EZ1GYbBlYOHdQBGQCq9ApqKFQvJ1cHMILl0g2HonRqTI
rTCyhAUbvIIabf9GMQJBAPo6k51UQSqRU2cL30TcWTwQfudNpn7b6LRBxr03hDto
zn6pnnBpSngQf6APlcY5wRVbvntjlyrvGvmLpumNKmUCQQDqmzPYskyU8y0iiHI2
PhnPvT4EVfAyLYKQ9fh1FQtC3cE6DXFiNModTWnHEmomsRHf0xKF3j1KY+wLSTwS
zXPvAkA97xOsRDdg7tlizvhzFcrsZ/TREVIdYhbFzuX+3WfYQIejqB30Gst4zjSY
jGL4zkCxJaUO60Z2NPpLO7qTYgJVAkEA5/QjQrCmfu4fRfFZ2r9zja0xT+AX58SP
PvuydzAjPi06CkeYPtyqqGYNm0FdqnuPjJiHy8t7Fb3NdyslNgHkCQJBAOw4YVs1
InukHhRDsMWXIzaEhkrYQjbHwEzg0xxZQnkf8+t7+JnfrAj2fIarcsoq/J4CTbmN
hVNtX+3WdSwWLmQ=
-----END PRIVATE KEY-----
PKCS8格式的私鑰
PKCS8格式的私鑰格式如下
-----BEGIN PRIVATE KEY----- ............ -----END PRIVATE KEY-----
附:openssl
- 生成RSA私鑰
openssl genrsa -out private.pem 1024
生成的是pkcs1格式的長度為1024的私鑰
- 根據私鑰生成對應的公鑰
openssl rsa -in private.pem -pubout -out public.pem
- 生成證書請求文件rsaCertReq.csr
openssl req -new -key private.pem -out rsaCerReq.csr
生成證書求情文件需要根據提示輸入一些信息。只需要跟著提示一步步走就行啦
- 生成證書rsaCert.crt,并設置有效時間為10年
openssl x509 -req -days 3650 -in rsaCerReq.csr -signkey private.pem -out rsaCert.crt
- 生成供iOS使用的公鑰文件public_key.der
openssl x509 -outform der -in rsaCert.crt -out public.der
- 生成供iOS使用的私鑰文件private_key.p12
openssl pkcs12 -export -out private.p12 -inkey private.pem -in rsaCert.crt
生成p12需要設置密碼