Newer
Older
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.verifyPDF = void 0;
const generalUtils_1 = require("./generalUtils");
const signatureUtils_1 = require("./signatureUtils");
const verify_1 = require("./verify");
const verifyPDF = (pdf) => {
const pdfBuffer = (0, generalUtils_1.preparePDF)(pdf);
try {
(0, generalUtils_1.checkForSubFilter)(pdfBuffer);
}
catch (error) {
console.log("no supported signatures found");
return null;
}
try {
const { signatureStr, signedData, signatureMeta } = (0, signatureUtils_1.extractSignature)(pdfBuffer);
const signatures = signedData.map((_signed, index) => {
return (0, verify_1.verify)(signatureStr[index], signatureMeta[index]);
});
return {
// authenticity: signatures.every((o) => o.authenticity === true),
expired: signatures.some((o) => o.expired === true),
signatures,
};
}
catch (error) {
return { verified: false, message: error.message, error };
}
};
exports.verifyPDF = verifyPDF;