Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Openssl 查看/显示PDF';来自命令行的s数字签名_Openssl_Digital Signature_Sha1 - Fatal编程技术网

Openssl 查看/显示PDF';来自命令行的s数字签名

Openssl 查看/显示PDF';来自命令行的s数字签名,openssl,digital-signature,sha1,Openssl,Digital Signature,Sha1,我试图了解更多关于数字签名的知识,在此过程中,我想尝试验证签名文件的真实性。我读到GPO在GPO.gov上签署了所有的文件,所以这些就是我一直在看的文件。这里有一个特别的例子: 我在站点链接到的Authentity Metadate“PREMIS”文件中找到了公钥,但节点是空的——我假设在那里可以找到文件的签名 我可以使用以下命令创建文件的sha-1摘要: openssl dgst -sha1 -out digest.txt BUDGET-2013-BUD.pdf 我的理解是,为了验证文件的

我试图了解更多关于数字签名的知识,在此过程中,我想尝试验证签名文件的真实性。我读到GPO在GPO.gov上签署了所有的文件,所以这些就是我一直在看的文件。这里有一个特别的例子:

我在站点链接到的Authentity Metadate“PREMIS”文件中找到了公钥,但节点是空的——我假设在那里可以找到文件的签名

我可以使用以下命令创建文件的sha-1摘要:

openssl dgst -sha1 -out digest.txt BUDGET-2013-BUD.pdf
我的理解是,为了验证文件的真实性,我需要1)文件摘要,2)签名者的公钥,以及3)签名,使用这样的命令(我发现):

openssl rsautl-verify-in-out\
-英基-普宾

我知道您可以使用Adobe Reader验证数字签名的PDF,但也可以通过命令行进行验证吗?除了签名之外,我还应该寻找其他东西来实现这一点吗?

PDF格式的数字签名不仅仅是RSA算法对文件哈希的应用,因此您的步骤不适用。例外情况可能是,您特定PDF的发行人没有按照PDF格式对其进行签名,而只是按照您的想法创建了一个签名。有关PDF文件中数字签名的详细信息,请阅读。
openssl rsautl -verify -in <signature> -out <digest> \
     -inkey <key> -pubin