.gpg,.sig。和.asc之间有什么有意义的区别?

时间:2019-11-19 08:07:25

标签: gnupg pgp openpgp gpg-signature

我知道.asc签名是作为文本文件输出的,而.sig.gpg是二进制的。

那边:

  1. .sig.gpg是否是具有不同扩展名的相同文件?如果没有,为什么还要使用另一个?
  2. 在文本文件和二进制文件之间,相对的优点是什么?安全性,效率,兼容性等

1 个答案:

答案 0 :(得分:1)

  

Folder folder = context.Web.GetFolderByServerRelativeUrl("/sites/xxx/largeLib1/set2"); var filePath = @"C:\Lee\template.xlsx"; using (FileStream fs = new FileStream(filePath, FileMode.Open)) { FileCreationInformation flciNewFile = new FileCreationInformation(); flciNewFile.ContentStream = fs; flciNewFile.Url = System.IO.Path.GetFileName(filePath); flciNewFile.Overwrite = true; Microsoft.SharePoint.Client.File uploadFile = folder.Files.Add(flciNewFile); context.Load(uploadFile); context.ExecuteQuery(); } .sig是否是具有不同扩展名的相同文件?

不,在GnuPG中它们是不同的文件。

  • .gpg-GNU Privacy Guard公共密钥环文件,二进制格式。查看来自4.2 Configuration files
  • 的示例
  • .gpg-GPG签名的文档文件,二进制格式。
  • .sig-带有或不带有包装文档的纯文本格式的ASCII装甲签名。通常用在clearsigned documents中。通常,它会附加未修改的原始文档及其签名。在使用分离签名时,您只能通过--detach-sig生成没有原始文档的签名。
  

如果没有,为什么还要使用另一个?

好问题!由于OpenPGP是开放标准(RFC 4880),因此它的section 6提供了详细的说明,我只引用关键部分:

  

原则上,任何符合要求的可打印编码方案      不安全通道的数量就足够了,因为它不会改变      本机OpenPGP数据结构的基础二进制位流。      OpenPGP标准指定了一种这样的可打印编码方案来      确保互操作性。

我将使用此answer来回答二进制和ASCII格式的优缺点。