Цифрові підписи
Цифрові підписи в PDF-форматі
Цифрові підписи PDF використовують криптографічні сертифікати для підтвердження автентичності документів та виявлення фальсифікації. Подписи вбудовані у поля підпису всередині документа.
PdfFileSignature (Підпис файлу)
PdfFileSignature забезпечує операції для підписання та перевірки полів підпису в наявний документ PDF:
try (PdfFileSignature sig = new PdfFileSignature("input.pdf")) {
sig.sign(1, certificate, privateKey, chain, null, new DocMDPSignature(doc, DocMDPAccessPermissions.FillingInForms));
sig.save("signed.pdf");
}Перевірка перевіряє, чи охоплює підпис очікуваний діапазон байтів і чи є сертифікат підписання дійсним.
PdfSigner (Підписник)
PdfSigner забезпечує робочий потік підписання на високому рівні, що об’єднує створення полів для підпису;, PKCS#7 генерація контейнерів та розрахунок діапазону байтів.
PKCS7SignedData (ПККС7-Зобігнені дані)
PKCS7SignedData.createDetached() створює окремий контейнер для підпису CMS для: вбудований у словник підписів PDF. Дивіться PKCS#7 для деталей.
Перевірка підпису
Після підписання, підписи можуть бути перераховані через: PdfFileSignature.getSignNames() і перевіряється шляхом перевірки статусу дійсності підпису.