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:
      PDF document with crypt filter definitions
    • Assignee Priority:
      P3

      Description

      Crypt filters are a relatively new addition to PDF encryption. We are starting to see more and more documents using crypt filters as Adobe users upgrade to version 8 or 9 of Acrobat. The bug is a place holder for implementing a crypt filter manager and hooking it up to our stream chaining read and write capabilities.
      1. PDF-45.pdf
        522 kB
        Patrick Corless
      2. perf_graphics_v6.0.pdf
        116 kB
        Patrick Corless
      3. perf_graphics_v7.0.pdf
        118 kB
        Patrick Corless

        Issue Links

          Activity

          Patrick Corless created issue -
          Patrick Corless made changes -
          Field Original Value New Value
          Salesforce Case []
          Fix Version/s 4.0 [ 10222 ]
          Hide
          Patrick Corless added a comment -

          Just to clarify this enhancement is to cover the addition of a crypt filter manager and filter chaining support and not AES encryption support. I'll attache some sample files.

          Show
          Patrick Corless added a comment - Just to clarify this enhancement is to cover the addition of a crypt filter manager and filter chaining support and not AES encryption support. I'll attache some sample files.
          Hide
          Patrick Corless added a comment -

          Crypt filters using 128-bit RC4 .

          Show
          Patrick Corless added a comment - Crypt filters using 128-bit RC4 .
          Patrick Corless made changes -
          Attachment perf_graphics_v6.0.pdf [ 12134 ]
          Hide
          Patrick Corless added a comment -

          Crypt filters with 128-bit AES.

          Show
          Patrick Corless added a comment - Crypt filters with 128-bit AES.
          Patrick Corless made changes -
          Attachment perf_graphics_v7.0.pdf [ 12135 ]
          Hide
          Patrick Corless added a comment -

          Crypt filters with 128-bit RC4.

          Show
          Patrick Corless added a comment - Crypt filters with 128-bit RC4.
          Patrick Corless made changes -
          Attachment PDF-45.pdf [ 12136 ]
          Patrick Corless made changes -
          Salesforce Case [5007000000A6DPn]
          Ken Fyten made changes -
          Link This issue blocks PDF-116 [ PDF-116 ]
          Ken Fyten made changes -
          Fix Version/s 4.0 [ 10222 ]
          Patrick Corless made changes -
          Fix Version/s 4.1 [ 10227 ]
          Hide
          Patrick Corless added a comment -

          We need to support AES 128 and 256 bit encryption before we can do crypt filters.

          Show
          Patrick Corless added a comment - We need to support AES 128 and 256 bit encryption before we can do crypt filters.
          Patrick Corless made changes -
          Link This issue depends on PDF-123 [ PDF-123 ]
          Patrick Corless made changes -
          Fix Version/s 4.2 [ 10243 ]
          Fix Version/s 4.1 [ 10227 ]
          Patrick Corless made changes -
          Assignee Priority P3
          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.
          Patrick Corless made changes -
          Fix Version/s 4.2 [ 10243 ]
          Patrick Corless made changes -
          Fix Version/s 4.3 [ 10266 ]
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #25873 Fri Oct 07 05:34:35 MDT 2011 patrick.corless PDF-122 addition of support for crypt filters using V2 and AESV2 methods. No support for AES 256 yet but everything else appears to be working.
          Files Changed
          Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/security/SecurityHandlerInterface.java
          Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/security/StandardEncryption.java
          Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/security/Permissions.java
          Commit graph ADD /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/security/CryptFilterEntry.java
          Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/security/SecurityManager.java
          Commit graph ADD /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/security/CryptFilter.java
          Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/security/SecurityHandler.java
          Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/security/EncryptionDictionary.java
          Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/Stream.java
          Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/security/StandardSecurityHandler.java
          Hide
          Patrick Corless added a comment -

          I've added basic support for crypt filers and AES encryption support. This allows ICEpdf to open our limited number of crypt filter examples. Hopefully more examples can be found so that this new features can be hardened.

          ICEpdf can now open encrypted documents up to PDF v 7.0. Further work is needed to get to version 9.0 as 256 bit AES encryption support has yet to be implemented.

          Show
          Patrick Corless added a comment - I've added basic support for crypt filers and AES encryption support. This allows ICEpdf to open our limited number of crypt filter examples. Hopefully more examples can be found so that this new features can be hardened. ICEpdf can now open encrypted documents up to PDF v 7.0. Further work is needed to get to version 9.0 as 256 bit AES encryption support has yet to be implemented.
          Patrick Corless made changes -
          Status Open [ 1 ] Resolved [ 5 ]
          Resolution Fixed [ 1 ]
          Patrick Corless made changes -
          Fix Version/s 4.2.3 [ 10293 ]
          Fix Version/s 4.3 [ 10266 ]
          Patrick Corless made changes -
          Fix Version/s 4.3 [ 10266 ]
          Fix Version/s 4.2.3 [ 10293 ]
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #26411 Thu Nov 17 06:31:08 MST 2011 patrick.corless PDF-122 fixed a bug where inline strings where not correctly being decrypted. Also added basic detection and logging of aesv3 but still no implementation.
          Files Changed
          Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/security/StandardEncryption.java
          Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/security/Permissions.java
          Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/security/SecurityManager.java
          Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/security/EncryptionDictionary.java
          Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/security/StandardSecurityHandler.java
          Ken Fyten made changes -
          Status Resolved [ 5 ] Closed [ 6 ]

            People

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

              Dates

              • Created:
                Updated:
                Resolved: