![GPG 签名和分离签名有什么区别?](https://linux22.com/image/191157/GPG%20%E7%AD%BE%E5%90%8D%E5%92%8C%E5%88%86%E7%A6%BB%E7%AD%BE%E5%90%8D%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB%EF%BC%9F.png)
我们可以使用以下命令签署文件gpgp
:
gpg -s file.pdf
从而生成文件签名file.pdf.gpg
。
也可以制作独立签名:
gpg -b file.pdf
从而生成file.pdf.sig
.
我注意到*.sig
文件总是 566 字节,而 的大小*.gpg
与原始文件的大小成正比。
我的问题是:
- GPG 签名和分离签名有什么区别?
- 为什么
*.gpg
签名更大? - 一个比另一个更安全吗?
答案1
GPG 签名和分离签名有什么区别?
“GPG 签名”是指签名的消息。这是正在签名的数据和签名合并到一个文件中。相反,分离签名与正在签名的文件是分开的。
为什么 *.gpg 签名更大?
因为它包含正在签名的文件的压缩副本以及签名数据,而分离签名仅包含签名数据。
一个比另一个更安全吗?
两种格式的签名计算方式完全相同。
对于小文本文件以外的任何文件,使用独立签名通常更容易。
答案2
使用 -s 时,输出是包括签名的原始文件,换句话说,输出是签名的文档。这就解释了为什么它的大小随文档大小而变化。
使用 -b 时,输出是单独签名。然后您将拥有两个文件:签名和原始未更改的文档。
选择哪一个是工作流程和便利性的问题。例如,如果您不想从.gpg
文件中剥离原始文档,请创建一个分离的签名。但是,您必须确保签名文件和文档文件保存在一起。
在这两种情况下,使用相同的算法来创建签名。因此,我不认为其中一个比另一个更安全。
请参阅手动的:
命令行选项--sign用于进行数字签名。输入要签署的文件,并且输出签署的文件。