Tengo un par de llaves. ¿Cómo determino la longitud de la clave?

73

Usando OpenSSL desde la línea de comandos en Linux, ¿hay alguna forma de examinar una clave (ya sea pública o privada) para determinar el tamaño de la clave?

jdw
fuente
1
Hay muchas formas diferentes según el formato del par de claves. ¿Estaba buscando un formato específico?
Zoredache

Respuestas:

94
openssl rsa -in private.key -text -noout

La línea superior de la salida mostrará el tamaño de la clave.

Por ejemplo:

Private-Key: (2048 bit)

Para ver el tamaño de la clave de un certificado:

$ openssl x509 -in public.pem -text -noout | grep "RSA Public Key"
RSA Public Key: (2048 bit)
Shane Madden
fuente
Y si está usando DSA, o alguna otra cosa. ¿Qué tal determinar el tamaño de la clave a partir de la clave pública (cert)?
Zoredache
@ Zoredache Sí, podría haber jurado que la pregunta decía "clave privada" específicamente; o lo estoy perdiendo o una edición venció al temporizador de 5 minutos.
Shane Madden
3
OpenSSL 1.0.1g 7 de abril de 2014 requiere formato| grep "Public-Key"
Vadzim
8

El primero (2048) es la longitud de bits de la clave:

 $ ssh-keygen -lf /etc/ssh/rsa_key.pub 
 2048 91:1c:ae:17:16:...
Adrien P.
fuente
55
Él dijo 'openssl', no 'openssh'.
MikeyB