Native Linux signing options

native callback ABI 把文档签名约束绑定到实际 CMS 输出和生成的外观

摘要与 Unicode 元数据

sign 操作接受 digestMethod 为 SHA256、SHA384 或 SHA512;默认 SHA256,所选值决定实际 CMS 签名者摘要

reason、location、contactInfo、signerName 和 legalAttestation 接受不含内嵌 NUL 字符的 Unicode 字符串

元数据遵循源文档字符串加密策略,包括已认证的 AES-256 输入

legalAttestation 适用于认证签名,并成为 catalog 的 Legal.Attestation 值

必需的种子值约束实际摘要、原因、证书属性、认证权限、法律声明、外观档案、吊销信息和时间戳行为

显式信任字节

trustedCAPEM、timestampTrustedCAPEM 和 timestampTrustedCRLPEM 以 JSON 字符串接受 PEM 字节

对应的旧式路径输入是 trustedCAFile、timestampTrustedCAFile 和 timestampTrustedCRLFile;每个信任源提供字节或路径之一

PEM 输入在操作期间以 0600 权限保存在独占私有文件中,事后删除;响应不暴露这些生成的路径

签名者证书信任只在显式配置时评估,而 CMS 完整性验证仍检查实际签名与签名证书绑定

经验证的签名吊销信息

提供 revocationInfo 对象,含 enabled、certificatesBase64、ocspResponsesBase64、crlsBase64,以及 trustedCAPEM 或 trustedCAFile

enabled 默认 true;禁用的信息不能包含证据数组

数组包含完整 DER 证书、成功 OCSPResponse 对象和 CertificateList 对象的规范 Base64 字符串

clockSkewSeconds 默认 300,必须在 0 到 86400 之间;maxOCSPAgeSeconds 默认 86400,必须为正;requireTimestamp 默认 false

验证针对显式信任检查签名者和所含时间戳证书链、完整非根覆盖、签发者与序列号匹配、CRL 与 OCSP 签名、响应者授权、有效期区间和吊销状态

畸形、过期、不完整、不受信或已吊销的证据会在 PDF 发布前失败

经验证的证据成为签名 CMS 属性 1.2.840.113583.1.1.8,结果报告 revocationInfoEvaluated 和 revocationInfoValid

signatures.verify 接受同一 revocationInfo 对象来验证实际嵌入的签名属性;验证期间调用方的 CRL 与 OCSP 响应不会替换该属性

证据对象数与总字节数共享操作限制,密码学检查使用操作取消令牌

实际命名的appearance预设

提供 appearance 对象,含 caption、可选 fontFamily 和可选 profileName

profileName实际生成的样式
HotPDF.StandardApproval居中蓝色文本 11 磅、矩形边框、白色背景、单行文本
HotPDF.StandardCertification左对齐黑色文本 10 磅、矩形边框、白色背景、多行折行
HotPDF.Compact右对齐黑色文本 8 磅、不绘制背景与边框、单行文本

预设决定其样式与字号;未知 profile 会失败,而不是给任意外观贴标签

必需的 AppearanceFilter 必须匹配当前操作实际生成的 profile;先前加载的外观必须重新生成

不提供 profileName 时 fontSize 默认 12;旧式顶层 caption、fontFamily 和 fontSize 仍受支持

不要把顶层 caption 与 appearance 对象组合使用

应用传输来源

credentialSourceURL 声明提供身份的应用所断言的凭据来源,timestampServerURL 声明其时间戳回调所断言的端点来源

这些值与相应的必需种子约束比较;它们不检索凭据、不访问远程服务器,也不独立认证 HTTPS 端点身份

身份检索与传输认证由应用自己控制

timestampServerURL 要求 hpdf_signing_operation_v1 中存在实际回调,返回的 RFC 3161 响应必须通过签名 imprint、nonce、TSA 证书用途、显式信任和所请求的吊销检查

Signing workflows · Timestamp transport · Seed constraints · Appearance profiles