Як перевірити відбиток ключа ASC?


15

На даний момент я намагаюся перевірити відбиток ключа oracle_vbox.asc, який я завантажив з http://www.virtualbox.org/wiki/Linux_Downloads : вони надають ключ та відбиток пальців, але ніяких інструкцій щодо перегляду цієї інформації немає. себе.

Як я показую відбиток пальця ключа, який я щойно завантажив?

apt-key finger oracle_vbox.asc показує відбитки всіх надійних клавіш, що не те, що я хочу.

Відповіді:


19

Отримайте ключ:

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

Роздрукуйте відбиток ключа за допомогою GPG версії 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

Зауважте, що другий фініш-відбиток - це лише відбиток пальця під ключа.

Роздрукуйте відбиток пальців за допомогою GPG версії 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]

Зауважте, що -nце псевдонім для --dry-run, тобто ключ фактично не імпортований.

Крім того, щоб просто відобразити відбитки пальців:

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

Чи є аналогічна команда без використання gpg? Я маю на увазі, що в SSH я можу це зробити, cat ./id_rsa.pub | awk '{print $2}' | base64 -d | md5sumі це поверне мені хеш MD5, який дорівнює хешу відбитків пальців ssh -lf ./id_rsa.pub. Чи існує подібний спосіб зробити це за допомогою відкритих ключів GPG?
користувач3019105

2
@ user3019105, ні, немає. Формат відкритого ключа PGP трохи складніше. Докладніше див. RFC 4880 та вихідний код GPG.
maxschlepzig

RFC каже (про застарілі відбитки пальців 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.чи не можу я отримати тіло цього MPI, отримавши файл відкритого ключа ASCII Armor (Radix-64)?
користувач3019105

@ user3019105, ти можеш. Ви можете дублювати те, що вже реалізовано в GPG. Але такий командний рядок був би досить складнішим, ніж той, який ви розмістили для відкритого ключа ssh. Таким чином, це не було б аналогічно.
maxschlepzig

Добре дякую, але мені ще потрібно дізнатися, як домогтися body of the MPIs that form the key materialпереговорів про RFC
user3019105

5

Крок 1

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

Крок 2

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

Крок 3

$ apt-key list

або, що еквівалентно,

$ apt-key finger

які повинні повернутися

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

що в свою чергу має бути рівнозначним

Ключовим відбитком для oracle_vbox_2016.asc є

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

на https://www.virtualbox.org/wiki/Linux_Downloads , або візуальним оглядом, або подальшим командним рядком fu.


Пов’язані посилання:


в цьому питанні відсутнє пояснення ...
горіх про natty

0

У вас є і ключ, і відбиток пальця? Виконати:

ssh-keygen -lf key.pub

проти ключа, щоб отримати відбиток пальця.

ssh-keygenдовідка: http://www.manpagez.com/man/1/ssh-keygen/


3
ssh-keygen не розпізнає "oracle_vbox.asc" як файл відкритого ключа.
Аманда

моя помилка, команда повинна бути "ssh-keygen -lf" Ви все ще отримуєте помилку?
мваріо

4
Це не працює.
maxschlepzig

ssh-keygen -lf oracle_vbox_2016.asc oracle_vbox_2016.asc не є відкритим файлом.
Скотт Стенсленд

2
ssh-keygen не для PGP-ключів.
Джеффрі

0

Це працює з GPG 2 (принаймні, я міг би це перевірити у версіях 2.1.18та 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]
# 

Джерело: /unix//a/468889

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.