Como verifico uma impressão digital da chave asc?


15

No momento, estou tentando verificar a impressão digital da chave oracle_vbox.asc que baixei de http://www.virtualbox.org/wiki/Linux_Downloads : eles fornecem a chave e a impressão digital, mas não há instruções para revisar essas informações Eu mesmo.

Como mostro a impressão digital da chave que acabei de baixar?

apt-key finger oracle_vbox.asc mostra as impressões digitais de todas as chaves confiáveis, o que não é o que eu quero.

Respostas:


19

Pegue a chave:

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

Imprima a impressão digital da chave com o GPG versão 1:

$ gpg --with-fingerprint oracle_vbox.asc 
pub  1024D/98AB5139 2010-05-18 Oracle Corporation
                      (VirtualBox archive signing key) <info@virtualbox.org>
      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

Observe que a segunda impressão digital é apenas a impressão digital da subchave.

Imprima a impressão digital com o GPG versão 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) <info@virtualbox.org>
sub   elg2048 2010-05-18 [E]

Observe que -né um alias para --dry-run, ou seja, a chave não é realmente importada.

Como alternativa, para exibir apenas as impressões digitais:

$ gpg2 -nq --import --import-options import-show --with-colons oracle_vbox.asc \
     | awk -F: '$1 == "fpr" { print $10 }'
7B0FAB3A13B907435925D9C954422A4B98AB5139
27B097CF82574209C4348D42B6748A65281DDC4B

Existe um comando análogo sem usar gpg? Quero dizer, no SSH, eu posso fazer cat ./id_rsa.pub | awk '{print $2}' | base64 -d | md5sume ele retornará um hash MD5 que é igual ao hash da impressão digital ssh -lf ./id_rsa.pub. Existe uma maneira semelhante de fazer isso com chaves públicas GPG?
user3019105

2
@ user3019105, não, não existe. O formato de uma chave pública PGP é um pouco mais complicado. Consulte RFC 4880 e o código-fonte GPG para obter detalhes.
maxschlepzig

A RFC diz (sobre as impressões digitais descontinuadas do 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.:, não consigo obter o corpo desse MPIs com um arquivo de chave pública ASCII Armor (Radix-64)?
user3019105

@ user3019105, você pode. Você pode duplicar o que já está implementado no GPG. Mas essa linha de comando seria bem mais elaborada do que a que você postou para uma chave pública ssh. Assim, não seria análogo.
maxschlepzig

Ok, obrigado, mas eu ainda preciso descobrir como obter as body of the MPIs that form the key materialconversações RFC sobre
user3019105

5

Passo 1

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

Passo 2

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

etapa 3

$ apt-key list

ou equivalente,

$ apt-key finger

que deve retornar

/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) <info@virtualbox.org>
sub   rsa4096 2016-04-22 [E]

que por sua vez deve ser equivalente a

A impressão digital chave para oracle_vbox_2016.asc é

B9F8 D658 297A F3EF C18D  5CDF A2F6 83C5 2980 AECF
Oracle Corporation (VirtualBox archive signing key) <info@virtualbox.org>

em https://www.virtualbox.org/wiki/Linux_Downloads , por inspeção visual ou por mais linha de comando fu.


Links Relacionados:


esta questão está faltando alguma explicação ...
noz sobre natty

0

Você tem a chave e a impressão digital? Corre:

ssh-keygen -lf key.pub

contra a tecla para obter a impressão digital.

ssh-keygenreferência: http://www.manpagez.com/man/1/ssh-keygen/


3
O ssh-keygen não reconhece "oracle_vbox.asc" como um arquivo de chave público.
Amanda

meu erro, o comando deve ser "ssh-keygen -lf" Você ainda recebe um nerro?
Mvario

4
Isso não funciona.
maxschlepzig

ssh-keygen -lf oracle_vbox_2016.asc oracle_vbox_2016.asc não é um arquivo de chave pública.
Scott Stensland

2
O ssh-keygen não é para chaves PGP.
Geoffrey #

0

Isso funciona com o GPG 2 (pelo menos eu poderia verificar com versões 2.1.18e 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) <info@virtualbox.org>" 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) <info@virtualbox.org>
# sub   elg2048 2010-05-18 [E]
# 

Fonte: /unix//a/468889

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.