Skip to content
DemoAPI 参考文档FAQ

PDF 生成模板编辑器

开源可视化 PDF 生成引擎,支持自定义模板,并提供面向开发者的 API,灵活构建文档生成流程。

查看 GitHub
React Native Guides Verify digital signatures

读取与验证数字签名 ​

使用 getDigitalSignatures() 读取签名,再将返回对象的 signatureIndex 传给 verifyDigitalSignature()。该索引为原生签名索引,不能用过滤或排序后的数组位置代替。

读取与验证 ​

ts
import { CPDFReaderView } from '@compdfkit_pdf_sdk/react_native';

async function verifySignatures(reader: CPDFReaderView) {
  const document = reader._pdfDocument;
  const signatures = await document.getDigitalSignatures();
  for (const signature of signatures) {
    const result = await document.verifyDigitalSignature(signature.signatureIndex);
    console.log(signature.fieldName, result.signatureValid,
      result.documentUnmodified, result.certificateTrusted);
  }
}

请在阅读器文档加载完成后调用。getDigitalSignatures() 返回 CPDFDigitalSignature[],没有签名时为空数组。签名信息包括字段名、所在页面、位置、签署者、日期、原因、地点和权限。signers 包含签署者验证状态及证书列表。

解释验证结果 ​

字段说明
signatureValid密码学签名是否有效
documentUnmodified签署后文档是否未被修改
certificateTrusted签署证书是否受当前验证环境信任
certificateExpired签署证书是否过期
timestampTrusted时间戳是否受信任
timestampSource时间来源,参见时间戳章节
embeddedTimestampValid内嵌时间戳是否有效,可选
ltvEnabled文档级长期验证材料状态,可选

这些结果应分别展示和判断。例如签名有效但证书不受信任时,仍需检查证书链及信任配置。可选字段缺失表示当前结果未提供该信息,不能当作通过。

iOS 可通过 modifications 返回签署后的修改信息,Android 当前返回空数组;不能将空数组作为“文档未修改”的判断依据,应读取验证结果。

验证接口失败时 Promise 会拒绝,不应将调用失败显示为验证通过。长期验证材料与证书信任的区别,参见时间戳与长期验证。