ADR-0076:离线 PDF 认证签名
状态:已采纳。
决策
PdfSigner.certify 使用第一份签名声明 ISO 32000 DocMDP 的三档权限:禁止修改、表单填写及追加签名、再允许注释。catalog 的 Perms/DocMDP 与签名字段引用同一签名字典;SigRef 通过 DocMDP/TransformParams 明确权限,Data 指向文档 catalog。
已有签名、已有 catalog 权限及加密输入不能再认证。普通 sign 遇到禁止修改、畸形或未知 catalog 权限时拒绝;已识别的第二/三档允许增量追加批准签名。检查结构与声明不等于验证原签名、审计已有改动或建立证书信任。
沿用完整 DER CMS 回调、准确 ByteRange、显式签名时间与预留字节上限。库不捆绑私钥、证书或网络服务。流输出借用且失败须丢弃;路径重载在同目录临时文件完成并关闭后原子替换,失败清理并保留旧目标,允许源与目标相同。
不把 DocMDP 当作加密、编辑锁或阅读器实际权限执行保证。不由 adbe.pkcs7.detached、自签证书和独立完整性验签推断 PAdES、可信时间戳、撤销资料、LTV 或长期信任。