use*_*013 27 gpg pgp digital-signatures checksum
例如,该项目提供了一个*.asc带有 PGP 签名的文件来验证下载的内容(与校验和相反,您可以看到空列):https : //ossec.github.io/downloads.html
我将如何使用这个文件?我尝试了gpg --verify其他变体,但它似乎将名称与文件匹配,但是下载的文件名并不完全相同......不确定它应该如何工作。
Евг*_*ков 27
wget https://ossec.github.io/files/OSSEC-ARCHIVE-KEY.asc
Run Code Online (Sandbox Code Playgroud)
EE1B0E6B2D8387B7作为其 keyid。gpg --keyid-format long --list-options show-keyring OSSEC-ARCHIVE-KEY.asc
Run Code Online (Sandbox Code Playgroud)
gpg --import OSSEC-ARCHIVE-KEY.asc
Run Code Online (Sandbox Code Playgroud)
wget https://github.com/ossec/ossec-hids/archive/2.9.3.tar.gz
Run Code Online (Sandbox Code Playgroud)
https://github.com/ossec/ossec-hids/releases/download/2.9.3/ossec-hids-2.9.3.tar.gz.asc
Run Code Online (Sandbox Code Playgroud)
gpg --verify ossec-hids-2.9.3.tar.gz.asc 2.9.3.tar.gz
Run Code Online (Sandbox Code Playgroud)
输出
gpg: Signature made Sat Dec 23 16:13:01 2017 UTC
gpg: using RSA key EE1B0E6B2D8387B7
gpg: Good signature from "Scott R. Shinn <scott@atomicorp.com>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: B50F B194 7A0A E311 45D0 5FAD EE1B 0E6B 2D83 87B7
Run Code Online (Sandbox Code Playgroud)
这进一步细化?????????????的回答。它不使用已弃用的 GnuPG 命令并避免使用潜在的可欺骗密钥 ID 进行身份验证:
获取作者用来签发签名的OpenPGP证书:
wget https://ossec.github.io/files/OSSEC-ARCHIVE-KEY.asc
Run Code Online (Sandbox Code Playgroud)
然后获取作者签发的分离签名:
wget https://github.com/ossec/ossec-hids/releases/download/2.9.3/ossec-hids-2.9.3.tar.gz.asc
Run Code Online (Sandbox Code Playgroud)
最后获取您要进行身份验证的文件:
wget https://github.com/ossec/ossec-hids/archive/2.9.3.tar.gz
Run Code Online (Sandbox Code Playgroud)
在导入证书之前,显示完整的 40 个字符长的 OpenPGP 证书指纹,并确保它与作者证书的指纹完全匹配。
注意:您应该通过作者的安全渠道获取指纹。除了亲自与作者会面以交换指纹之外,下一个最好的方法是在作者的网站上显示指纹并通过设计的https:URI访问。作者确实在这里发表了一篇。
注意:如果作者只显示短ID(例如8个字符2D8387B7)或长ID(长16个字符,例如EE1B0E6B2D8387B7)最好持怀疑态度并要求作者发布完整指纹,因为短ID和长ID都有已被证明是可欺骗的(在此处阅读更多信息)
gpg --import --import-options show-only OSSEC-ARCHIVE-KEY.asc
Run Code Online (Sandbox Code Playgroud)
默认情况下,旧版本的 GnuPG 不显示完整指纹。--fingerprint如果未显示该标志,请尝试添加该标志。
输出应该是这样的:
pub rsa4096 2011-03-10 [SC]
B50FB1947A0AE31145D05FADEE1B0E6B2D8387B7
uid Scott R. Shinn <scott@atomicorp.com>
sub rsa4096 2011-03-10 [E]
Run Code Online (Sandbox Code Playgroud)
本例中的 OpenPGP 证书指纹为:
B50FB1947A0AE31145D05FADEE1B0E6B2D8387B7
Run Code Online (Sandbox Code Playgroud)
有时,指纹以 4 个字符为一组显示,每个字符带有空格,以便于人类阅读。在这种情况下,忽略空格进行比较是安全的:
B50F B194 7A0A E311 45D0 5FAD EE1B 0E6B 2D83 87B7
Run Code Online (Sandbox Code Playgroud)
注意:一定不要只比较指纹的各个部分,因为这再次为欺骗攻击打开了空间。
为了简单和彻底的比较,只需在您选择的文本编辑器中复制在后续行中格式相同的两个指纹,并在视觉上匹配它们。
如果完整指纹完全匹配,请将证书导入本地 GnuPG 密钥环:
gpg --import OSSEC-ARCHIVE-KEY.asc
Run Code Online (Sandbox Code Playgroud)
现在,您可以加密验证文件与作者发布和签名的文件完全匹配。
gpg --verify ossec-hids-2.9.3.tar.gz.asc 2.9.3.tar.gz
Run Code Online (Sandbox Code Playgroud)
注意:请务必始终在此处列出分离的签名和要验证的文件。除了分离的签名之外,还有其他类型的签名,如果仅列出签名文件,则没有意识到这可能导致对真实性的错误假设。
输出应该是这样的:
gpg: Signature made Sa 23 Dez 2017 17:13:01 CET
gpg: using RSA key EE1B0E6B2D8387B7
gpg: Good signature from "Scott R. Shinn <scott@atomicorp.com>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: B50F B194 7A0A E311 45D0 5FAD EE1B 0E6B 2D83 87B7
Run Code Online (Sandbox Code Playgroud)
注意:如果文件已被操作,您应该会看到如下内容:
gpg: Signature made Sa 23 Dez 2017 17:13:01 CET
gpg: using RSA key EE1B0E6B2D8387B7
gpg: BAD signature from "Scott R. Shinn <scott@atomicorp.com>" [unknown]
Run Code Online (Sandbox Code Playgroud)
如果发生这种情况,作为预防措施,您不应使用或执行该文件的内容并与作者联系。如果无法联系到作者,那么公开提高认识是次佳的选择。
最后一步中显示的警告提示,在确定其合法后,最好使用您自己的个人 OpenPGP 证书来验证导入的作者的签名证书。
如果您长时间保留和维护您的 GnuPG 密钥库,您就不需要再次验证每个新文件的作者证书,并使整个过程更容易,并且在未来更不容易受到攻击。
注意:为此,个人 OpenPGP 证书是必需的。创建一个的说明不是这个答案的主题。
颁发证书的工作方式如下:
gpg --lsign B50FB1947A0AE31145D05FADEE1B0E6B2D8387B7
Run Code Online (Sandbox Code Playgroud)
它告诉 GnuPG 和您将来您已经彻底验证了该作者的证书。
之后,输出gpg --verify ossec-hids-2.9.3.tar.gz.asc 2.9.3.tar.gz看起来更加干净和可靠,如下所示:
gpg: Signature made Sa 23 Dez 2017 17:13:01 CET
gpg: using RSA key EE1B0E6B2D8387B7
gpg: Good signature from "Scott R. Shinn <scott@atomicorp.com>" [full]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
34760 次 |
| 最近记录: |