Jak zweryfikować odcisk palca klucza asc?

15

W tej chwili próbuję sprawdzić odcisk palca klucza oracle_vbox.asc, który pobrałem ze strony http://www.virtualbox.org/wiki/Linux_Downloads : zawierają klucz i odcisk palca, ale nie mają instrukcji do przeglądania tych informacji siebie.

Jak wyświetlić odcisk palca właśnie pobranego klucza?

apt-key finger oracle_vbox.asc pokazuje odciski palców wszystkich zaufanych kluczy, co nie jest tym, czego chcę.

Amanda
źródło

Odpowiedzi:

19

Weź klucz:

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

Wydrukuj klucz linii papilarnych za pomocą GPG w wersji 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

Pamiętaj, że drugi odcisk palca to tylko odcisk palca podklucza.

Wydrukuj odcisk palca za pomocą GPG w wersji 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]

Zauważ, że -njest to alias --dry-run, tzn. Klucz nie jest tak naprawdę importowany.

Alternatywnie, aby wyświetlić tylko odciski palców:

$ gpg2 -nq --import --import-options import-show --with-colons oracle_vbox.asc \
     | awk -F: '$1 == "fpr" { print $10 }'
7B0FAB3A13B907435925D9C954422A4B98AB5139
27B097CF82574209C4348D42B6748A65281DDC4B
maxschlepzig
źródło
Czy istnieje analogiczne polecenie bez użycia gpg? Mam na myśli, że w SSH mogę to zrobić cat ./id_rsa.pub | awk '{print $2}' | base64 -d | md5sumi zwróci mi skrót MD5, który jest równy skrótowi odcisku palca ssh -lf ./id_rsa.pub. Czy istnieje podobny sposób na to w przypadku kluczy publicznych GPG?
user3019105,
2
@ user3019105, nie, nie ma. Format klucza publicznego PGP jest nieco bardziej skomplikowany. Aby uzyskać szczegółowe informacje, zobacz RFC 4880 i kod źródłowy GPG.
maxschlepzig
RFC mówi (o nieaktualnych odciskach palców 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.czy nie mogę dostać ciała tego MPI do pliku klucza publicznego ASCII Armor (Radix-64)?
user3019105,
@ user3019105, możesz. Możesz powielić to, co jest już zaimplementowane w GPG. Ale taka linia poleceń byłaby o wiele bardziej złożona niż ta, którą opublikowałeś dla klucza publicznego ssh. Tak więc nie byłoby analogiczne.
maxschlepzig
Ok, dziękuję, ale wciąż muszę się dowiedzieć, jak uzyskać informacje na body of the MPIs that form the key materialtemat RFC
user3019105,
5

Krok 1

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

Krok 2

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

Krok 3

$ apt-key list

lub równoważnie

$ apt-key finger

które powinny wrócić

/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]

co z kolei powinno być równoważne z

Kluczowy odcisk palca dla oracle_vbox_2016.asc to

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

na https://www.virtualbox.org/wiki/Linux_Downloads , przez kontrolę wzrokową lub dalsze fu wiersza poleceń.


Powiązane linki:

orzechowy o natty
źródło
w tym pytaniu brakuje jakiegoś wyjaśnienia ...
szaleństwo na temat natty
0

Masz zarówno klucz, jak i odcisk palca? Biegać:

ssh-keygen -lf key.pub

przeciwko klawiszowi, aby uzyskać odcisk palca.

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

mvario
źródło
3
ssh-keygen nie rozpoznaje pliku „oracle_vbox.asc” jako pliku klucza publicznego.
Amanda
mój błąd, polecenie powinno brzmieć „ssh-keygen -lf” Czy nadal masz błąd?
mvario,
4
To nie działa.
maxschlepzig
ssh-keygen -lf oracle_vbox_2016.asc oracle_vbox_2016.asc nie jest plikiem klucza publicznego.
Scott Stensland
2
ssh-keygen nie jest przeznaczony dla kluczy PGP.
Geoffrey,
0

Działa to z GPG 2 (przynajmniej mógłbym to sprawdzić w wersjach 2.1.18i 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]
# 

Źródło: /unix//a/468889

ominug
źródło