目前,我正在尝试检查我从http://www.virtualbox.org/wiki/Linux_Downloads下载的oracle_vbox.asc密钥的指纹:它们提供了密钥和指纹,但是没有用于查看此信息的说明。我。
如何显示刚刚下载的密钥的指纹?
apt-key finger oracle_vbox.asc
显示所有受信任密钥的指纹,这不是我想要的。
目前,我正在尝试检查我从http://www.virtualbox.org/wiki/Linux_Downloads下载的oracle_vbox.asc密钥的指纹:它们提供了密钥和指纹,但是没有用于查看此信息的说明。我。
如何显示刚刚下载的密钥的指纹?
apt-key finger oracle_vbox.asc
显示所有受信任密钥的指纹,这不是我想要的。
Answers:
获取密钥:
$ 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
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.
给定ASCII Armor(Radix-64)公钥文件的情况下,我不能获得此MPI的主体吗?
body of the MPIs that form the key material
RFC讨论的内容
$ deb http://download.virtualbox.org/virtualbox/debian artful contrib
$ wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -
$ 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进行。
相关链接:
您既有钥匙又有指纹?跑:
ssh-keygen -lf key.pub
拿钥匙来获取指纹。
ssh-keygen
参考:http : //www.manpagez.com/man/1/ssh-keygen/
这适用于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]
#
gpg
吗?我的意思是,在SSH中,我可以这样做cat ./id_rsa.pub | awk '{print $2}' | base64 -d | md5sum
,它将返回一个MD5哈希值,它等于的指纹哈希值ssh -lf ./id_rsa.pub
。使用GPG公钥是否有类似的方法?