验证 PDF 的数字签名
验证 PDF 签名读取 PDF 中的数字签名,并以 JSON 列表报告 OpenSSL 的检查结果。它不会改动文件;没有信任锚时,无法确认签署者的证书链是否可信。
把文件拖到这里,或点击选择
支持 PDF · 单个文件不超过 500.0 MB · 一次最多 20 个文件
也可以按 Ctrl/Cmd+V 或从剪贴板菜单粘贴文件。
验证 PDF 签名遍历签名字典,并用 OpenSSL(`smime` / `cms` / `dgst` / `verify`)查看 CMS 和 RFC 3161 时间戳。下载是 JSON 数组(`resultKind: json`),不是改过的 PDF。
没有 `certFile` 信任锚时,`chainValidationError` 为 `No trust anchors available`。`revocationChecked` 恒为 false。`notExpired` 是占位的 false,不是算出来的过期标志。
这不是法庭鉴定报告。链信任需要你通过接口提供锚。网站表单没有证书上传。
文档信息的 `IsSigned` 与此无关,且恒为 false。
上传是临时的。我们不会保存你的 PDF 文库。
功能
- 来自 OpenSSL CMS/时间戳检查的 JSON 数组
- 网站没有证书上传;链验证于是报告没有锚
- revocationChecked 和 notExpired 不是真正的检查
- 匿名 API:/api/v1/security/validate-signature
适用场景
- 看 CMS verify 是否接受内嵌签名字节
- 在展平 PDF 前检查 coversEntireDocument
- 你有锚时用接口传 certFile
如何检查 PDF 的数字签名?
- 上传可能含签名字典的 PDF。
- 点击处理,下载 JSON。
- 逐条看 valid、coversEntireDocument 和 errorMessage。
- 除非你用接口传了 certFile,否则不要把 chainValid 当成 true。
限制与边界
- 网站无法提供信任锚
- 没有 OCSP/CRL
- notExpired 不是真正的时钟检查
- 本网站的上传上限:每个文件 500 MB,超过约 95 MB 时分块上传。直接调用 API 时,单个请求体上限为 100 MB。
示例
- 未签名 PDF 得到空 JSON 数组
- 已签名但没有 certFile 的 PDF 仍报告关于锚的 chainValidationError
本工具的隐私说明
文件经 HTTPS 上传,在服务器内存或短期临时目录中处理,结果就绪后即删除。我们不会为日后浏览、训练或广告画像保留副本。留存期限与 AdSense Cookie 说明见隐私政策。
常见问题
- 为什么链验证是错误?
- 网站不发送 certFile。操作于是没有信任锚。
- 会改 PDF 吗?
- 不会。只报告。
- 检查吊销了吗?
- 没有。revocationChecked 恒为 false。
- 能代替 Adobe 的校验器吗?
- 不能。把它当成粗糙的 OpenSSL 导出,再在你信任的、符合法律场景的工具里验证。
最后更新:
用代码调用
本站每个工具都是普通 REST 接口。匿名使用不需要账号或 API Key,给浏览器、开发者和智能体同样可用。
curl -X POST "https://pdf123.xyz/api/v1/security/validate-signature" \
-F "[email protected]"也提供 MCP 工具,供说 Model Context Protocol 的客户端调用(JSON-RPC 2.0,POST /mcp)。 完整 API 文档
在 AI 代理中使用
Skill装上这个 Skill,Claude Code、Codex、Cursor 等 AI 代理就能替你完成「验证 PDF 签名」: /skills/pdf123-validate-signature.md
文件只用于本次处理,完成后自动删除。