Windows Signed Revocation Information

Windows sign 操作可以认证 CRL 与 OCSP 证据,把它纳入 Adobe RevocationInfoArchival 签名属性,并在验证实际生成的 CMS 和嵌入证据之后才发布 PDF

签名选项

{"schemaVersion":1,"type":"sign","incremental":true,
 "existingField":true,"fieldName":"ApprovalOne",
 "pfxFile":"C:/keys/signer.pfx","pfxPassword":"password",
 "cades":true,"digestMethod":"SHA384",
 "revocationInfo":{"enabled":true,
   "trustedCAFile":"C:/trust/signing-roots.pem",
   "certificatesBase64":[],"ocspResponsesBase64":[],
   "crlsBase64":["BASE64_DER_CRL"],
   "requireTimestamp":false,"clockSkewSeconds":300,
   "maxOCSPAgeSeconds":86400}}

revocationInfo 可选;提供对象时 enabled 默认 true,禁用的证据不能包含证书、OCSP 响应或 CRL

trustedCAFile 显式指定 PEM 信任根,签名期间保持打开并拒绝写共享;验证不会仅因 PFX 或证据中包含某证书就静默信任它

证据数组包含编码完整 DER 证书、CRL 或 OCSPResponse 值的规范 Base64 字符串;enabled 时至少需要一个 CRL 或 OCSP 响应

标准签名属性包含 DER CRL 和 BasicOCSPResponse 值;完整 OCSPResponse 输入在嵌入前被规范化,证书提供额外的验证链材料

HPDFHeadlessRevocationInfo 中的 HPDFNormalizeHeadlessOCSPResponse 向 Pascal 调用方暴露有界的成功响应转换;它验证 DER 框架并提取 BasicOCSPResponse,而密码学与状态验证仍是签名或 LTV 验证器的职责

经认证的证据

验证认证实际 CMS 签名、签名证书绑定、显式证书信任、证书有效期、CRL 签名与有效期区间,以及 OCSP 签名、响应者授权、签发者标识、响应状态和更新时间

证据必须覆盖完整的非根签名链;已吊销、未知、过期、不完整、未授权、不受信或畸形的证据无法发布 PDF

requireTimestamp 要求真实的签名时间戳,并同样为其 TSA 链认证证据;使用 Windows signing timestamps 描述的应用传输和独立 TSA 信任设置

clockSkewSeconds 接受 0 到 86400,maxOCSPAgeSeconds 必须为正;两者配置证据时间验证,不改变证书信任

种子值与发布

必需的 SV AddRevInfo true 约束要求本经验证的签名证据工作流;必需的 false 值要求省略该属性

该工作流支持既有与新建签名字段、首个认证签名、后续允许的 approval 签名、受支持的加密源,以及未签名文档签名

信任文件与解码证据共享 memoryBytes 八分之一的字节上限;证据对象数在分配前以 objectCount 与 4096 中较小者为限

规范 Base64、DER 框架、预算、取消、CMS 完整性和证据有效性在二进制发布前检查;被拒绝的证据保留原始文档句柄且不发布 PDF 字节,发布回调保留既有回调失败语义

成功结果只在认证实际签名属性之后才报告 revocationInfo: true;禁用或省略证据报告 false

从完整 OCSPResponse 到 BasicOCSPResponse DER 的有界原生转换参见 HPDFNormalizeHeadlessOCSPResponse

源快照、加密权限、先前签名策略、输出预算和回调发布语义参见 incremental PFX signing