Using OpenSSL from the command line in Linux, is there some way to examine a key (either public or private) to determine the key size?
-
1There are many different ways depending on the format of the keypair. Were you looking at a specific format?– ZoredacheOct 27, 2011 at 19:55
-
1As a rule of thumb, the size (in bytes) of a .pem RSA private key is roughly 3/4 of the size of the key length (in bits) - e.g. a 4096-bit key might be roughly 3247 bytes. File sizes do vary though.– mwfearnleyDec 3, 2019 at 11:34
Add a comment
|
2 Answers
openssl rsa -in private.key -text -noout
The top line of the output will display the key size.
For example:
Private-Key: (2048 bit)
To view the key size from a certificate:
openssl x509 -in public.pem -text -noout | grep "Public Key"
RSA Public Key: (2048 bit)
-
1And if he is using DSA, or something else. How about determining the key size from the public key(cert). Oct 27, 2011 at 19:51
-
@Zoredache Yeah - I could have sworn the question said "private key" specifically; either I'm losing it or an edit beat the 5 minute timer. Oct 27, 2011 at 20:13
-
4
The first (2048) is the bit length of the key:
$ ssh-keygen -lf /etc/ssh/rsa_key.pub
2048 91:1c:ae:17:16:...
-
9
-
This would actually work on a private key generated by
openssl genrsa
. You would probably have to point it directly to the private key file though. Mar 19, 2021 at 14:40