将RPM软件包的密钥ID与RPM-GPG-KEY的密钥指纹进行比较

U880D

在使用RPM软件包的过程中,我经常需要根据可用的GPG密钥来验证签名。

使用

rpm -qip --nosignature <package.rpm> | grep Signature

给我一个密钥ID,即:

Signature   : RSA/SHA1, Mon 28. Aug 2019 06:00:00 AM CET, Key ID 1234567890abcdef

从而

gpg --with-fingerprint <RPM-GPG-KEY-package>

给我一个关键指纹:

Key fingerprint = 0987 6543 21FE DCBA 0987 6543 21FE 1234 5678 90AB CDEF

由于比较两个输出并不容易,如何获得提到的密钥ID而不是整个指纹?

U880D

在研究过程中,我发现密钥ID通常是密钥指纹的最后8或16个字节。所以我只想从输出中提取它们。如何实现呢?

我发现以下方法似乎有效:

keyID.sh

#! /bin/bash

KEY_PATH=$1
KEY_FINGERPRINT=$(gpg --with-fingerprint ${KEY_PATH} | grep "Key fingerprint" | cut -d "=" -f 2 | tr -d ' ' | tr '[:upper:]' '[:lower:]')

echo ${KEY_FINGERPRINT} | grep -o '.\{8\}$'
echo ${KEY_FINGERPRINT} | grep -o '.\{16\}$'

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

我如何知道与RPM软件包签署了哪个GPG密钥?

来自分类Dev

我如何知道与RPM软件包签署了哪个GPG密钥?

来自分类Dev

如何为 CentOS 7 软件包 rpm 找到特定的 GPG 密钥?

来自分类Dev

获取GPG公钥的密钥签名/指纹

来自分类Dev

为什么ubuntu开源软件包具有gpg密钥?

来自分类Dev

邮件列表的GPG密钥

来自分类Dev

如何发布GPG密钥?

来自分类Dev

如何强制删除没有指纹的gpg秘密密钥?

来自分类Dev

如何使用gpg获取ASCII装甲的PGP密钥的指纹?

来自分类Dev

将GPG密钥确认为我的密钥

来自分类Dev

密钥环中的Git GPG密码

来自分类Dev

gpg2:无密钥

来自分类Dev

GPG密钥/文件命名混乱

来自分类Dev

列出和导出GPG密钥

来自分类Dev

如何对已安装的rpm软件包进行拓扑排序?

来自分类Dev

无法将密钥添加到gpg

来自分类Dev

GPG密钥为新密钥,但不包含用户ID

来自分类Dev

GPG密钥为新密钥,但不包含用户ID

来自分类Dev

给定公共密钥,GPG如何生成MD5指纹?

来自分类Dev

创建新的GPG子密钥后,我该如何使用其上一个GPG子密钥进行加密?

来自分类Dev

添加Kubernetes存储库时,即使在“ rpm --import”之后,Amazon Linux 2中的Yum仍要求提供GPG密钥

来自分类Dev

gpg:解密失败:错误的会话密钥

来自分类Dev

gpg解密失败,没有密钥错误

来自分类Dev

无法在Linux中生成gpg密钥

来自分类Dev

gpg:签名失败:密钥不可用

来自分类Dev

GitHub的公共GPG密钥是什么?

来自分类Dev

如何清除已撤销的GPG密钥?

来自分类Dev

如何清除已撤销的GPG密钥?

来自分类Dev

如何清除已撤销的GPG密钥?