ICEpdf
  1. ICEpdf
  2. PDF-123

AES support for general encryption algorithm

    Details

    • Type: New Feature New Feature
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 4.0 - Beta
    • Fix Version/s: 4.3
    • Component/s: Core/Parsing
    • Labels:
      None
    • Environment:
      any.
    • Assignee Priority:
      P3

      Description

      Beginning in PDF 1.6 specification the Advanced Encryption Standard (AES) algorithm was added to the general encryption algorithm for standard encryption. AES is a symmetric block cipher. This new encryption algorithm is document in the specification and is supported by the Java Cryptography extension (JCE).

      We have no examples of this type of encryption being used without crypt filters, http://jira.icefaces.org/browse/PDF-122 but we need to implement the algorithm before we can successfully implement crypt filters. Adobe acrobat 7.0 and later use AES 128 and 256 encryption algorthms.
      1. perf_graphics_v7.0.pdf
        118 kB
        Patrick Corless
      2. perf_graphics_v9.0.pdf
        119 kB
        Patrick Corless

        Issue Links

          Activity

          Hide
          Patrick Corless added a comment -

          Crypt filters 128Bit AES

          Show
          Patrick Corless added a comment - Crypt filters 128Bit AES
          Hide
          Patrick Corless added a comment -

          Crypt filters AES 256.

          Show
          Patrick Corless added a comment - Crypt filters AES 256.
          Hide
          Patrick Corless added a comment -

          Unfortunately no time to fit into 4.2.

          Show
          Patrick Corless added a comment - Unfortunately no time to fit into 4.2.
          Hide
          Patrick Corless added a comment -

          Another sample file posted here, http://www.icefaces.org/JForum/posts/list/0/19715.page
          (menu.pdf)

          Show
          Patrick Corless added a comment - Another sample file posted here, http://www.icefaces.org/JForum/posts/list/0/19715.page (menu.pdf)
          Hide
          Patrick Corless added a comment -

          I've updated our encryption handler to handles the AESV2 cases. From what I can tell and test with we now support 128-bit and 192-bit AES in CBC mode. However there is still more work to get 256-bit AES working which was introduced in the 9.0 specification.

          Show
          Patrick Corless added a comment - I've updated our encryption handler to handles the AESV2 cases. From what I can tell and test with we now support 128-bit and 192-bit AES in CBC mode. However there is still more work to get 256-bit AES working which was introduced in the 9.0 specification.
          Hide
          Patrick Corless added a comment -

          I've addressed basic AES support which I can test at 128 bit. I'm not sure about 192 bit (no example), for know for sure that 256 bit is not working correctly. I'll will create a new bug for 256 bit aes encryption.

          Show
          Patrick Corless added a comment - I've addressed basic AES support which I can test at 128 bit. I'm not sure about 192 bit (no example), for know for sure that 256 bit is not working correctly. I'll will create a new bug for 256 bit aes encryption.

            People

            • Assignee:
              Patrick Corless
              Reporter:
              Patrick Corless
            • Votes:
              3 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: