Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Encrypted Private Key to RSA Private Key

I have an Encrypted Private Key(say,servenc.key) in below format:

-----BEGIN ENCRYPTED PRIVATE KEY-----
MIIC2TBTBgkqhkiG9w0BBQ0wRjAlBgkqhkiG9w0BBQwwGAQSIFFvMaBFyBvqqhY6
yTV2fMVVAgIUczAdBglghkgBZQMEASoEEGRetyFtHhnJ7TZTM2qolWkEggKAFg/h
GERtM1loEd+u8VAtLwTzBiXE5pmRpp/hX/1HrbBnzFjAsNtWlEtzpSuxuCoXtMst
uKRB8qveHlfTQPzopkRZtljfOkD1DhdJz8BXSZrFmVkMrUq6m4Y/rnqTqI5JmtmQ
qAXTBbl7u8TwMnqIaoSInEHnc+aiFT3KJuIq6PZy2rGKWGW2WB/OML2gANvHBI9n
gyOo4VZHNsR6VBbCRJErUFhF5Wk2/YJD9ejnvXH6pJFqZYvnCFjkSlR+4MdCHBSo
Ld0IoFjQ6X1uLLglFf/rQGKEQruLjTKmz6oe8nZIzrOoLmArir0DGTakEt0K6mha
0M5s9zNkdMd7XRns0uvmYHzbpNVWpUP5YUmf1BJLjTHex51Msjoz6v6ixinel852
5lS2wtVwXp8MXG9iofvMEDocmvn60vuksmgwxMccRWX2zAt8ixFefzIjM0KzPRpt
ByJP0B733u+DI0Y5bsiJVAxl7Gr8Io5k6Uk0nZziVK8+vDXLF2BNetp4kRM/XBaM
N/DcosGiAxOeJqSA45ethV8cHGZVuNOsCXSVomVoKIxgWhkyBzXv9sIbRSSGWfJQ
edWEV9t4RTCgIu+622JZFzw1PbWtEu4R38v0JZQN3zxkYPC7nFIfmx9unUWucoup
ZYbvlzjyNZ6VI8jDvvqy+XmaY+FZcSgPTGCz/4KArxJuSvE8gJULUS7Y7JCuDjjL
h04pYsl8WMA3UH2/CxiFv75vXZI0q2HKUnNNawrQG83zPfBiVrDQARifCkPmzsCd
tHd8A/agDAeg9rmat6PRC4d0to6pUg7v5ZR9VZkRWMJiPMtuH4fh/2L/ys/9EihG
CZJe6XTZkgFAp9gzGg==
-----END ENCRYPTED PRIVATE KEY-----

TH above key is in PKCS#8 format.

I want to convert it into a RSA Private Key PKCS#1 format

The command I use is:

openssl rsa -in servenc.key -out serv.key

The output which i get is in the below format:

-----BEGIN RSA PRIVATE KEY-----
MIICXQIBAAKBgQDymMsf+68EERSkXO7lwucBa5Ibw+74z+dL/yYWsHxsl+j9E3ZK
5hQ9riiDxscTd+Jm6aqYF5Dobsk+VWoz7Ma+4iLvHiLevefRxlq7Fpe70vRZeNR5
Z+9cLaak4C4/FYrUoOrMjfHxX0Ihmc5M+Tjy4brxpktCTRRm73CyMxT7twIDAQAB
AoGBAOXc8rJWVqmiyY1HZTEdMKb+1w0p5Leqvr0agGuFRA/dDG0nULF9OfaLm2Xp
Jd4DfOkIRJUh1zL1Lge7BQs4McL529nbKirlstUDvR+dRYoyhCNCnVNqKgU/P+Ed
1wEOhVxOLKfcv847huDzzBU7ZL8E3QEQUd9t3CLj3Ov/c2C5AkEA+ks6fX0GXWht
D6IHW+XBEW4txkfm2WWI64RG8Y0avjg9P1vhw/APlCuZPRmsXQ6S9/wKJt/iy0ah
eJVJ3f1/3QJBAPggpLsU7H/0PKCmC8HUrnWG7ANIiZJYib5LJWAnCzpxNNMNmY5Z
0Ak18/ia4bloNz/g9QXIa7kuG9+lSGF+uqMCQBfcpC7ihIDTO9KJt/ni5Y0r2+FT
aYbAT1Vkvv64XRxVcEFiGRv8/v85SNqyX+RfR1OtC6q5HX4TtcExOmGXkWECQQCd
lW3JexJweRcAGDSjV4WtEpFVzH3CugRRHLySAnn5FeismZiKdbPQBbn6i7ML44oj
QaWblJwFsaj2Mqxzbt7tAkB2dxlU+ABHDJ2wvGzECecYPvDeIIcuN1VyZvnYcPek
uehkYsNKd45pNxZr0ZZN1UlVht7kBZWX/+Ij2ezShYDA
-----END RSA PRIVATE KEY-----

But the output format which I want is:

-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-256-CBC,4D58B420357E8F3A5528539062B3CE0A

hfuamWEa7FijcPBoYuyRxHFGYcaSQeMqGBpGq8YkmJ3sdP9l/emOodhwRRyTONCv
h98rV1KTFOVjNqvNrt43x27VFHlKkSnWyfAOpp+7cg6NAMUnks7f09cR6za8Takt
xzkA73O+hzAnHeYgmvp41dVxG2UsENrfMGZFe1obr34Gc8pMmAeY5YcmXRReLgPk
nCeIfwoyNdzXJI/Q+KrmH7/RnEN9YNBerjw6wVouUSVgPEzxmRVfzWTAyWHnlYJj
8mFhjTNPl7onnj0eAZQMm7UA3W9J4pUD0MWr48AC2sB7Hfax+xpZS41FTTlSblPO
P0tKBPrmvAv7C8uGw+LgYX2t/ai5J1ZhK5zHI5cHK8CGV+LbSvXR1X0I47Qmmip3
FLAp7e8wxp2jzQkjaE09rY2glfuJ0OHPiO3GoLExd1cqu25QZKjCR5g5ZdkXQ35w
LsZ4BprCB778tY5z3g5gbHSX+L4tq+xTHPjSIGTOInbnyH5VhS+D+z5Gq/EmL82W
EO7JPpYtU5R1Uq3i6/qUkhN0fi2Loow1qtSn9dygXaXcIFxEDW7xBZ9eaVPa4mrH
bqd/TZQd/rx8U4x/b5JWh5Qz3XxxoR16uD2WAG1POreXrWSeRepTANofY1T+/VQK
w4WCnpd8fnLHa1c7h+r1hEGC8uC6ZKtSFsf4u0a9bPfeeDMWkC4V8tkMt5Thh70H
SxLjjJx2Irn8RYCuZ4L84aYFoHviNPINcoo5DjmcJBE9p+IQxE4XbJy/KCm8/iaD
Qr4Wqn615a/2VuT/nqi4og3HIAYae6k9z38QSKA54MsxfqApOIQGTkrKGqX09kQ4
o2dt+LELsTmBlNshLV0ysXpNVtU/pM6xefCnM9j4r2s6MMD6Bv+OHz7yCnfuXOx3
rppUxNNIVn8elwTmPBo9E3f3uRQ537Sp7wNSjOUIWcJHi3yYLFpMibG9T80xoTWZ
B0/rOMI33nl/HZCGwmg91KhDpeUGP37ggiw9FfFAz4Kh+y18X1ZMzWsWBzUV41dD
gLI3CALdrUKZJ8BTSJ0CCxzyD8OX6uwWQVvdoYoLzsM+ndczofch3j5y7fNy9px0
PsS2Q3X+Yq2tqJeVqfkGQtseck9DvMo+4OkCQ0jgEvAKNusIkGG5evWHnto1Fl54
rfuSuHhoanSsMdYmxEVQZnszJfaqr/Bb5d9xCMxvvAFwakip9JZrQNuBSlTiUyw0
rKxvovwRhUlemYX9I+UNJeHpUyQAa4Ky1twfrwZ47vAPreCrQrcAAomkx+QLmxjl
coi48GkWKtbr2mQwhjDoiNWW2F7ZzuX0FVheaay9QlyHlFeDcezxcae44k+eD7jc
FmqH05uQrrlBPQLG5brhqZdhq0skwWwIMeA7yW0oEXmoQ5fyRChgXxiXeYcEblhV
PaBJnVM81Rgrvsys3TdgCHgtUIlJDm+gEp6s8X3yhls8aqXN7R65j9jzXLIzYO40
0tLoistWlRQ5G7MCDgazw/hkIiRaEhSuZZs+e6fa4zyxYYq/UenMpAst7+YyXon2
4nSYd88OEvhpAaoCfQomUdIxjcLsZoheJc19RMv/LHy2stL8ZAFyT62HqOCIhH+A
-----END RSA PRIVATE KEY-----

How do I get the below information as well while converting a key from PKCS#8 format to PKCS#1 format?

Proc-Type: 4,ENCRYPTED
DEK-Info: AES-256-CBC,4D58B420357E8F3A5528539062B3CE0A
like image 950
Vivek Kashyap Avatar asked Mar 12 '18 07:03

Vivek Kashyap


People also ask

Can RSA private key be used for encryption?

To clear things up, if you're using RSA, mathematically, yes you can encrypt with your private key, which can only be decrypted by the public key.

How to decrypt a password protected RSA private key?

How to decrypt a password protected RSA private key? You can use the openssl command to decrypt the key: For example, if you have a encrypted key file ssl.key and you want to decrypt it and store it as mykey.key, the command will be

What is RSA encryption and how does it work?

In RSA, either of the keys can encrypt the data, while the other key decrypts it. If for instance the public key is used for encryption, the private key must be used to decrypt the data. This is very applicable especially when sending sensitive data across a network such as the Internet.

What is the difference between public and private keys in RSA?

As their names suggest, a public key is shared publicly, while a private key is secret and known only by the key pair creator (it must not be shared with anyone). In RSA, either of the keys can encrypt the data, while the other key decrypts it. If for instance the public key is used for encryption, the private key must be used to decrypt the data.

How to generate public and private keys?

By default, the private key is generated in PKCS#8 format and the public key is generated in X.509 format. In the first section of this tool, you can generate public or private keys. To do so, select the RSA key size among 515, 1024, 2048 and 4096 bit click on the button.


1 Answers

You just need to add an encryption mechanism, e.g., -des3

openssl pkey -in servenc.key -out serv.key -des3
like image 145
Marek Klein Avatar answered Oct 17 '22 08:10

Marek Klein