Q: Is it possible to certify a PDF document with Qoppa’s libraries and componentsA: As of version 2013R2, it is possible to add a certifying signature using our libraries jPDFProcess, jPDFSecure, jPDFNotes and jPDFEditor.

What is a certifying signature?

  • A certifying signature is a digital signature.
  • A certifying signature has to be the first applied to a document.
  • A certifying signature allows to specify the changes that are allowed to the document after it is certified.

You can read more about PDF certifying signatures in the PDF 1.7 Reference on page 733.

How to add a certifying signature using Qoppa’s PDF library?

We’ve added 2 new methods in SigningInformation to make it possible to add a certifying signature.  SigningInformation is the object passed on when signing a document.
setCertifyingSignature(true) to specify that this signature is a certifying signature.

setPermissions(int)
 to set the level of permissions on the certified PDF document.There are predefined ints in the class to use for the permission levels:

PERM_NOCHANGES (1): No changes to the document are permitted; any change to the document invalidates the signature.

PERM_FORMFILL_SIGNATURE (2): (Default) Permitted changes are filling in forms, instantiating page templates, and signing; other changes invalidate the signature.

PERM_FORMFILL_SIGNATURE_COMMENTS (3): Permitted changes are the same as for 2, as well as annotation creation, deletion, and modification; other changes invalidate the signature.

Note: Our products currently only support adding a certifying signature. They do not support enforcing the permissions set in the certifying signature when opening a certified PDF document. This is planned for a future release.