Class PDFEncryptionJCE

java.lang.Object
org.apache.fop.pdf.PDFObject
org.apache.fop.pdf.PDFEncryptionJCE
All Implemented Interfaces:
PDFEncryption, PDFWritable

public final class PDFEncryptionJCE extends PDFObject implements PDFEncryption
An implementation of the Standard Security Handler.
  • Method Details

    • make

      public static PDFEncryption make(PDFObjectNumber objectNumber, PDFEncryptionParams params, PDFDocument pdf)
      Creates and returns an encryption object.
      Parameters:
      objectNumber - the object number for the encryption dictionary
      params - the encryption parameters
      pdf - the PDF document to be encrypted
      Returns:
      the newly created encryption object
    • encrypt

      public byte[] encrypt(byte[] data, PDFObject refObj)
      Encrypt an array of bytes using a reference PDFObject for calculating the encryption key.
      Specified by:
      encrypt in interface PDFEncryption
      Parameters:
      data - data to encrypt
      refObj - reference PDFObject
      Returns:
      byte[] the encrypted data
    • applyFilter

      public void applyFilter(AbstractPDFStream stream)
      Adds a PDFFilter to the PDFStream object
      Specified by:
      applyFilter in interface PDFEncryption
      Parameters:
      stream - the stream to add an encryption filter to
    • toPDF

      public byte[] toPDF()
      Prepares the encryption dictionary for output to a PDF file.
      Overrides:
      toPDF in class PDFObject
      Returns:
      the encryption dictionary as a byte array
    • getTrailerEntry

      public String getTrailerEntry()
      Returns the /Encrypt entry in the file trailer dictionary.
      Specified by:
      getTrailerEntry in interface PDFEncryption
      Returns:
      the string "/Encrypt n g R\n" where n and g are the number and generation of the document's encryption dictionary
    • getPDFVersion

      public Version getPDFVersion()
      Returns the PDF version required by the current encryption algorithm.
      Specified by:
      getPDFVersion in interface PDFEncryption
      Returns:
      the PDF Version