Comments (6)
@Lonzak already correctly explained that R=5 encryption is part of an Adobe extension to PDF that never became standard and only is mentioned as deprecated and forbidden to use in ISO 32000-2.
In contrast to his assumption "Maybe it is only extending R=4 with AES256", though, the R=5 algorithm is more related to R=6 than R=4. The differences between R=5 and R=6 mostly are additional variable numbers of hashing rounds in the latter to make breaking the encryption harder for brute force and quantum approaches.
from openpdf.
MKL implemented support for R=6 some time ago (one of the best additions to openPDF imho).
However R=5 is a proprietary adobe extension which has been deprecated and should not be used. (Thats why it wasn't implemented)
You are of course free to implement it - perhaps mkl can give you some pointers. Maybe it is only extending R=4 with AES256?
from openpdf.
In contrast to his assumption "Maybe it is only extending R=4 with AES256", though, the R=5 algorithm is more related to R=6 than R=4.
...was just a (wild) guess ;-)
from openpdf.
Let's pretend that I write a perfect PR adding R = 5 support and it's merged. How long would it take to get a new version out in Maven Central?
from openpdf.
You are of course free to implement it
I'm going to keep getting PDFs with R = 5. So, either I'll have to:
- implement it as you suggest, or
- switch to PDFBox, which would be a pretty significant change to our code base.
from openpdf.
@brettrowberry please submit that perfect PR adding R = 5 support. I am sure the new version would be available within reasonable time in Maven Central. I am also seeing this Unknown encryption type R = 5 error in production, however the percentage is not very large.
from openpdf.
Related Issues (20)
- PdfCopy cannot be used for writing HOT 1
- Streamlining Chunk Addition in ColumnText Without Storing All in JVM HOT 5
- Handling Row Content Splitting in PdfPTable.writeSelectedRows() HOT 3
- font can't display Complete when text length greater than pdf edit box length HOT 2
- Is OpenPDB library is fully supported on Android? HOT 3
- Support for Circular Shaped Images HOT 1
- Does OpenPDF support multiThreadding ? HOT 1
- Opening a file with `PdfReader` (or `RandomAccessFileOrArray`) keeps the file locked after `close()` HOT 1
- Print large text cells that exceed the remaining height of one page of paper starting from the second page rather than from the remaining height of the first page HOT 1
- Prevent leading from affecting the first cell HOT 2
- Unable to insert text in Identity-H encoding using a subset font file HOT 2
- Please provide Android support for GrallVM native-image feature; HOT 1
- Is there html to pdf capability HOT 2
- Japanese symbols are not rendered into PDF file HOT 14
- Rendering Multi lingual Text HOT 1
- Example code for RadioCheckField HOT 1
- VariableBorder cell renders border differently from nonVariableBorder cell
- Non-styled versions of TTF fonts are chosen and artificially styled over available styled versions
- NullPointerException using PdfTextExtractor HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from openpdf.