JPedal支持PAdES基线B级签名。
先决条件
要使用JPedal对PDF文件进行数字签名,你必须拥有一个满足以下要求的密钥库:
- 密钥库必须是一个PKCS #12文件,其中包含你的私钥和X.509证书。
- 证书必须是有效的。
- 所使用的证书签名算法必须是带有RSA的SHA256算法。
- 私钥的用途必须包括数字签名。
在Java中对PDF文件进行签名
静态便捷方法
PdfSigner.signPdf(
"inputFile.pdf",
"outputFile.pdf",
"keystorePassword",
"keystoreFile.p12",
"signerName",
"signerLocation",
"signingReason",
ACCESS_PERMISSION.P1);
签名参数:
input
:待签名的PDF文档的文件路径。output
:签名后PDF文档的文件路径。password
:密钥库的密码。keystore
:密钥库的文件路径。name
:对文档进行签名的个人或企业名称。location
:实际进行文档签名的地点。reason
:签名的原因。permissions
:文档的访问权限级别。
文档访问权限级别:
P1
:不允许进行任何更改,否则签名将失效。P2
:除了填写表单、实例化页面模板以及进行签名操作外,不允许进行其他更改。P3
:包括P2
级别所允许的更改操作,同时还允许创建、删除和修改批注。