我想为我的签名 PDF 创建 DSS 字典,以将 OCSP 和证书添加到其中,从而启用 PDF LTV。 哪个开源节点模块可以更好地实现这一点? 任何参考代码都会有帮助。
我将 pdf-lib 库视为我们可以实现上述目标的建议之一。
以下是正确的做法吗?
const { PDFDocument, PDFName } = require('pdf-lib');
const addOcspResponsesToDss = async () => {
const pdfDoc = await PDFDocument.load(existingPdfBytes);
let dssDict = pdfDoc.catalog.lookup(PDFName.of('DSS'));
if (!dssDict) {
dssDict = pdfDoc.context.obj({
Type: 'DSS',
V: 1,
OCSPs: pdfDoc.context.obj([]),
});
pdfDoc.catalog.set(PDFName.of('DSS'), dssDict);
}
for (const ocspResponse of ocps) {
dssDict.OCSps.push(pdfDoc.context.obj(new Uint8Array(ocspResponse)));
}
const modifiedPdfBytes = await pdfDoc.save();
fs.writeFileSync('path/to/output.pdf', modifiedPdfBytes);
};
我已经使用 pdfbox 在 JAVA 中实现了支持 LTV 的签名。我不知道节点模块。 任何帮助将不胜感激,谢谢。
你在这方面有进展吗?