2026年8月27日

ASiC 关联签名容器:完整指南

Summary · 10 min read

ASiC 容器(.asics/.asice)把签名与已签署文件打包进一个 ZIP。对比 ASiC-S 与 ASiC-E、XAdES/CAdES、验证方法与 eIDAS 合规。

ASiC(Associated Signature Containers,关联签名容器)由 ETSI TS 102 918 标准定义,是一种基于 ZIP 的容器格式,将数字签名与被签署的文件及其支持材料打包进单个 .asics.asice 文件。它存在的意义在于:签名与文档通常分离传输,一份孤立的签名文件在多年存储后很容易丢失、错配或无法验证。使用 ASiC 后,数据、签名,以及扩展形式下的清单、时间戳和证据记录会一起传输,在传递和长期归档过程中始终可验证。欧洲的公共行政部门、电子发票交换平台以及合规要求严格的团队用得最多。单一数据对象选 ASiC-S;多文件或需要更丰富证据链的场景选 ASiC-E。

什么是 ASiC 容器,它为什么存在?

一份分离式数字签名(detached signature)能保护文档的字节内容,但它不会随文档一起走。一份合同和它的 .xml.p7s 签名文件分散在不同的附件里,被重命名后放进不同文件夹,或在系统迁移时彻底分离。多年以后,验证者面对的一边是一堆没有签名的文件,另一边是无人认领的孤立签名,没有可靠的办法证明哪个签名属于哪份文档。关于 ASiC 所包装的签名机制本身,可参见数字签名在实际业务工作流中如何运作

ASiC 解决的就是这个打包问题。它由 ETSI TS 102 918 定义,并在 ETSI EN 319 162 系列标准中延续,把数据对象和签名绑定进一个基于 ZIP 的文件,使两者的关联不会因文件系统的意外而断开。容器不取代签名,而是承载签名,连同清单、时间戳和验证证据一起,确保签名在传输和长期存储之后仍可验证。

ASiC 容器的结构是怎样的

ASiC 文件就是一个普通的 ZIP 压缩包,只是遵循严格的约定。你可以用任何解压工具打开它,但其目录布局是标准化的,以便验证软件确定性地解析:

  • mimetype:压缩包中的第一个条目,以未压缩方式存储,内容为 application/vnd.etsi.asic-s+zipapplication/vnd.etsi.asic-e+zip。它向任何打开该文件的工具声明容器类型。
  • 数据对象:被签署的文件,存放在根目录或 docs 文件夹中,与签署时的字节完全一致。
  • META-INF/:元数据文件夹,存放签名块——XAdES 签名为 signatures.xml,CAdES 签名为 signatures.p7s——以及(如有)manifest.xml(列出每个数据对象及其摘要值)和 timestamp.tst(RFC 3161 时间戳令牌)。

由于每个数据对象的摘要值要么出现在签名中,要么出现在清单里,签署后改动任何一个字节都会导致验证失败——这正是归档所需要的防篡改特性。

ASiC-S 与 ASiC-E:该用哪种容器?

标准定义了两个规格。ASiC-S(simple,简单型)只包装一个数据对象和一份分离式签名;ASiC-E(extended,扩展型)可容纳多个数据对象、多份签名和附加证据。选择依据是你需要把多少文件保护在一起,以及这个文件包必须保持可验证多长时间。

对比维度ASiC-S(简单型)ASiC-E(扩展型)
数据对象恰好一个一个或多个
签名一份 XAdES 或 CAdES 签名多份签名,含会签(counter-signature)
清单 / 时间戳不要求支持 manifest.xml 和时间戳令牌
常见扩展名.asics.asice(也可见 .sce
适用场景一份文件签一次(如单张发票 XML)多文件打包、多人会签、长期归档

经验法则:只要将来可能需要给同一个文件包加第二份文件、第二位签署人或时间戳,就直接从 ASiC-E 开始。事后转换意味着重新打包、重新签署。

ASiC 与 XAdES、CAdES、PAdES 是什么关系?

ASiC 不是一种签名格式,而是承载签名格式的容器。XAdES(XML 高级电子签名)和 CAdES(基于 CMS/PKCS#7 的签名)都可以是分离式的,这正是 ASiC 要解决的场景:签名块存放在容器的 META-INF 文件夹中,通过摘要值引用数据对象。如果你在比较这些签名的证书层面,我们关于什么是 DSC 的解读文章介绍了 XAdES 和 CAdES 签署人所使用的证书凭证。

PAdES 则不同:签名直接嵌入 PDF 文件结构内部,所以一份已签署的 PDF 本身就是自包含的,不需要 ASiC 包装。你仍然可以把 PDF 作为数据对象放进 ASiC-E 容器——例如 PDF 必须与已签署的 XML 附件一起传输时——但 PAdES 签名本身始终留在 PDF 内部。

ASiC 容器的实际应用场景

凡是签名和文件必须经受住传输、审计和多年存储考验的地方,都能见到 ASiC:

  • 电子发票: 欧洲多个电子发票交换平台把发票 XML 与其签名作为一个 .asice 文件包传输,接收平台只需验证单个文件。
  • 政府与跨境申报: 欧盟成员国门户以及海关、税务申报通常接受 ASiC 提交,因为一个容器就把"你签的到底是哪份文件"这类争议降到零。
  • 长期归档: 借助 ASiC-E 的清单和时间戳令牌,即使算法逐渐老化,归档机构也能在多年后重新验证文件包。
  • 法庭证据: 把证物、签名和验证证据打包进一个文件,能简化证据链(chain of custody)的论证。

共同点在于:任何要求签名始终附着在它所保护的确切字节上的流程。负责签发底层证书的团队可查看如何制作数字签名证书,了解签发前提。

如何打开并验证 .asics 或 .asice 文件

打开很简单——如果解压工具不认识扩展名,把文件改名为 .zip 即可查看内容。真正的工作是验证。支持 ASiC 的工具包括欧盟委员会的开源 DSS(Digital Signature Service)库及其演示 Web 应用、各国电子签名验证门户,以及电子发票验证器。一份实用的验证清单:

  1. 确认 mimetype 条目与容器规格一致(asic-s 还是 asic-e)。
  2. 对签名做密码学验证,并检查它引用的数据对象确实存在。
  3. 沿证书链回溯到可信根证书——一份可信证书颁发机构清单有助于确认签发者的资质。
  4. 检查签名声称时间点的吊销状态(CRL/OCSP)。
  5. 对每个数据对象重新计算清单摘要值,必须全部匹配。
  6. 验证时间戳令牌及其自身的签名链。
  7. 把验证报告作为审计证据留存。

浏览器端的检查也覆盖证书这一环;在 Chrome 中验证数字签名展示的证书链检查步骤,同样适用于 ASiC 容器内的证书。

ASiC 如何融入 eIDAS 框架

eIDAS 并不强制使用 ASiC。eIDAS 管的是容器内部的签名等级——标准级(SES)、高级(AES)或合格级(QES)——而 ASiC 属于落实 eIDAS 兼容包装的 ETSI 标准族(EN 319 162)。一个装有合格级 XAdES 签名的 .asice 文件,与该合格签名在任何其他包装形式下具有同等法律效力;容器只是保证它完好无损。这一格式也被欧盟数字身份钱包(EU Digital Identity Wallet)的技术工作引用,始终留在欧洲的技术路线图上。如果你的工作流要求签名等级正确而不仅是包装正确,相关要求见我们的eIDAS 合规电子签名指南。在欧盟之外,ASiC 是技术选型而非法律要求——对欧洲合作方的互操作性有用,在其他地区则保持中立。

Nota Sign:把 ASiC 就绪的签署放进合规工作流

ASiC 容器能把签名和文件装在一起,但修不好容器里那个本身就不牢靠的签名。装进容器里的身份核验、签名等级与证据记录,取决于产生它的签署工作流。Nota Sign 是法大大旗下的全球电子签名平台,从源头把工作流做对:签名等级覆盖 SES、AES 到 QES,身份核验与等级匹配,审计记录经得起长期归档。区域数据中心让记录留在当地规则要求的地方,价格不按席位计费,业务量增长时成本可预期。如果你的文件需要在任何容器里多年后仍可验证,联系 Nota Sign,从第一份签名起就把证据链建进去。

常见问题

Nota Sign 帮助企业构建合规的协议签署流程,所有内容均遵循严格的编辑方针。

发现更便捷的电子签名方式

联系销售
免费试用