Firme digitali
Firme digitali in PDF
Le firme digitali PDF utilizzano certificati crittografici per certificare l’autenticità del documento e rilevare manomissioni. Le firme sono incorporate nei campi firma all’interno del documento.
PdfFileSignature
PdfFileSignature fornisce operazioni per firmare e verificare i campi firma in un documento PDF esistente:
try (PdfFileSignature sig = new PdfFileSignature("input.pdf")) {
sig.sign(1, certificate, privateKey, chain, null, new DocMDPSignature(doc, DocMDPAccessPermissions.FillingInForms));
sig.save("signed.pdf");
}La verifica controlla se la firma copre l’intervallo di byte previsto e se il certificato di firma è valido.
PdfSigner
PdfSigner fornisce il flusso di lavoro di firma ad alto livello che combina la creazione del campo firma, la generazione del contenitore PKCS#7 e il calcolo dell’intervallo di byte.
PKCS7SignedData
PKCS7SignedData.createDetached() crea un contenitore di firma CMS separato per l’incorporamento nel dizionario delle firme PDF. Vedi PKCS#7 per i dettagli.
Validazione della firma
Dopo la firma, le firme possono essere elencate tramite PdfFileSignature.getSignNames() e verificate controllando lo stato di validità della firma.