我正在尝试了解有关数字签名的更多信息,并且在此过程中想尝试验证签名文件的真实性。我读到 GPO 签署了他们在 gpo.gov 上托管的所有文件,所以这些是我一直在查看的文件。这里有一个特别的:
http://www.gpo.gov/fdsys/search/pagedetails.action?particleId=&packageId=BUDGET-2013-BUD
我在站点链接到的 Authenticity Metadate“PREMIS”文件中找到了公钥,但该节点是空的——我认为这是我可以找到文件签名的地方。
我可以使用以下命令创建文件的 sha-1 摘要:
openssl dgst -sha1 -out digest.txt BUDGET-2013-BUD.pdf
我的理解是,要验证文件的真实性,我需要 1) 文件摘要,2) 签名者的公钥,以及 3)签名,使用这样的命令(我在此处找到):
openssl rsautl -verify -in <signature> -out <digest> \
-inkey <key> -pubin
我知道您可以使用 Adobe Reader 来验证数字签名的 PDF,但也可以从命令行进行吗?除了我应该寻找的签名之外,还有什么其他的东西来完成这个吗?