我知道.asc
签名作为文本文件输出,而.sig
&.gpg
是二进制文件。
除此之外:
.sig
和.gpg
同一个文件有不同的扩展名吗?如果不是,为什么要使用一个而不是另一个?- 文本文件和二进制文件之间,相对优势是什么?安全性、效率、兼容性等
我知道.asc
签名作为文本文件输出,而.sig
&.gpg
是二进制文件。
除此之外:
.sig
和.gpg
同一个文件有不同的扩展名吗?如果不是,为什么要使用一个而不是另一个?
.sig
和.gpg
同一个文件有不同的扩展名吗?
不,它们在 GnuPG 的上下文中是不同的文件。
.gpg
- GNU Privacy Guard 公钥环文件,二进制格式。参见4.2 配置文件中的示例.sig
- GPG 签名文档文件,二进制格式。.asc
- 带有或不带有包裹文档的 ASCII 铠装签名,纯文本格式。通常用于明确签署的文件。通常它附有未经修改的原始文档及其签名。在分离签名的使用中,您可以只生成签名,而无需通过原始文档--detach-sig
。如果不是,为什么要使用一个而不是另一个?
好问题!由于 OpenPGP 是一个开放标准(RFC 4880),它的第 6 节提供了详细的解释,我只引用了关键部分:
原则上,任何满足不安全通道要求的可打印编码方案就足够了,因为它不会改变原生 OpenPGP 数据结构的底层二进制比特流。OpenPGP 标准指定了一种这样的可打印编码方案以确保互操作性。
我将使用此答案作为二进制与 ASCII 格式的优缺点的答复。