我知道.asc
签名是作为文本文件输出的,而.sig
和.gpg
是二进制的。
那边:
.sig
和.gpg
是否是具有不同扩展名的相同文件?如果没有,为什么还要使用另一个?答案 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格式的优缺点。