¿Cómo verifico una huella digital de clave asc?

15

En este momento, estoy tratando de verificar la huella digital de la clave oracle_vbox.asc que descargué de http://www.virtualbox.org/wiki/Linux_Downloads : proporcionan la clave y la huella digital, pero no hay instrucciones para revisar esta información yo mismo.

¿Cómo muestro la huella digital de la clave que acabo de descargar?

apt-key finger oracle_vbox.asc muestra las huellas digitales de todas las claves de confianza, que no es lo que quiero.

Amanda
fuente

Respuestas:

19

Consigue la llave:

$ wget http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc

Imprima la huella digital clave con GPG versión 1:

$ gpg --with-fingerprint oracle_vbox.asc 
pub  1024D/98AB5139 2010-05-18 Oracle Corporation
                      (VirtualBox archive signing key) <[email protected]>
      Key fingerprint = 7B0F AB3A 13B9 0743 5925  D9C9 5442 2A4B 98AB 5139
sub  2048g/281DDC4B 2010-05-18
      Key fingerprint = 27B0 97CF 8257 4209 C434  8D42 B674 8A65 281D DC4B

Tenga en cuenta que la segunda huella digital es solo la huella digital de la subclave.

Imprima la huella digital con GPG versión 2:

$ gpg2 -n -q --import --import-options import-show  oracle_vbox.asc   
pub   dsa1024 2010-05-18 [SC]
      7B0FAB3A13B907435925D9C954422A4B98AB5139
uid   Oracle Corporation (VirtualBox archive signing key) <[email protected]>
sub   elg2048 2010-05-18 [E]

Tenga en cuenta que -nes un alias para --dry-run, es decir, la clave no se importa realmente.

Alternativamente, para mostrar solo las huellas digitales:

$ gpg2 -nq --import --import-options import-show --with-colons oracle_vbox.asc \
     | awk -F: '$1 == "fpr" { print $10 }'
7B0FAB3A13B907435925D9C954422A4B98AB5139
27B097CF82574209C4348D42B6748A65281DDC4B
maxschlepzig
fuente
¿Hay un comando análogo sin usar gpg? Quiero decir, en SSH, puedo hacer cat ./id_rsa.pub | awk '{print $2}' | base64 -d | md5sumy me devolverá un hash MD5 que es igual al hash de huella digital ssh -lf ./id_rsa.pub. ¿Hay una manera similar de hacerlo con las claves públicas GPG?
user3019105
2
@ user3019105, no, no lo hay. El formato de una clave pública PGP es un poco más complicado. Vea RFC 4880 y el código fuente GPG para más detalles.
maxschlepzig
El RFC dice (sobre las huellas dactilares obsoletas de MD5): The fingerprint of a V3 key is formed by hashing the body (but not the two-octet length) of the MPIs that form the key material (public modulus n, followed by exponent e) with MD5.¿no puedo obtener el cuerpo de este MPI dado un archivo de clave pública ASCII Armor (Radix-64)?
user3019105
@ user3019105, puedes. Puede duplicar lo que ya está implementado en GPG. Pero dicha línea de comando sería bastante más elaborada que la que ha publicado para una clave pública ssh. Por lo tanto, no sería análogo.
maxschlepzig
Ok, gracias, pero aún necesito saber cómo obtener body of the MPIs that form the key materialel RFC del que habla
user3019105
5

Paso 1

$ deb http://download.virtualbox.org/virtualbox/debian artful contrib

Paso 2

$ wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -

Paso 3

$ apt-key list

o equivalente,

$ apt-key finger

que debería volver

/etc/apt/trusted.gpg
--------------------
pub   rsa4096 2016-04-22 [SC]
      B9F8 D658 297A F3EF C18D  5CDF A2F6 83C5 2980 AECF
uid           [ unknown] Oracle Corporation (VirtualBox archive signing key) <[email protected]>
sub   rsa4096 2016-04-22 [E]

que a su vez debería ser equivalente a

La huella digital clave para oracle_vbox_2016.asc es

B9F8 D658 297A F3EF C18D  5CDF A2F6 83C5 2980 AECF
Oracle Corporation (VirtualBox archive signing key) <[email protected]>

en https://www.virtualbox.org/wiki/Linux_Downloads , ya sea mediante inspección visual u otra línea de comando fu.


Enlaces relacionados:

loco por natty
fuente
a esta pregunta le falta alguna explicación ...
chiflado sobre natty
0

¿Tienes la clave y la huella digital? Correr:

ssh-keygen -lf key.pub

contra la llave para obtener la huella digital.

ssh-keygenreferencia: http://www.manpagez.com/man/1/ssh-keygen/

mvario
fuente
3
ssh-keygen no reconoce "oracle_vbox.asc" como un archivo de clave pública.
Amanda
mi error, el comando debería ser "ssh-keygen -lf" ¿Todavía obtienes un nerror?
mvario
44
Esto no funciona.
maxschlepzig
ssh-keygen -lf oracle_vbox_2016.asc oracle_vbox_2016.asc no es un archivo de clave pública.
Scott Stensland
2
ssh-keygen no es para claves PGP.
Geoffrey
0

Esto funciona con GPG 2 (al menos podría verificarlo con versiones 2.1.18y 2.2.12):

wget http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc
gpg_home=$(mktemp -d)
gpg --homedir "$gpg_home" --import oracle_vbox.asc
# gpg: keybox '/tmp/tmp.CHoWuJBy7N/pubring.kbx' created
# gpg: /tmp/tmp.CHoWuJBy7N/trustdb.gpg: trustdb created
# gpg: key 54422A4B98AB5139: public key "Oracle Corporation (VirtualBox archive signing key) <[email protected]>" imported
# gpg: Total number processed: 1
# gpg:               imported: 1
gpg --homedir "$gpg_home" --list-keys
# /tmp/tmp.CHoWuJBy7N/pubring.kbx
# -------------------------------
# pub   dsa1024 2010-05-18 [SC]
#       7B0FAB3A13B907435925D9C954422A4B98AB5139
# uid           [ unknown] Oracle Corporation (VirtualBox archive signing key) <[email protected]>
# sub   elg2048 2010-05-18 [E]
# 

Fuente: /unix//a/468889

ominug
fuente