PDF signing interface and improvments
-------------------------------------
Key: PDFBOX-912
URL: https://issues.apache.org/jira/browse/PDFBOX-912
Project: PDFBox
Issue Type: Improvement
Components: PDFReader, PDModel, PDModel.AcroForm, Writing
Affects Versions: 1.4.0
Reporter: Thomas Chojecki
Priority: Minor
Fix For: 1.4.0
This is a first version of a signing interface for pdfbox. There are some
design issues i could not handle without rewriting too much of the code.
Here we go:
- incremental update support (tested for signatures with pdf/a compatibility),
not compatible with encrypted documents nor with xref-streams
- cos object improvment
-- COSString with ability to force writing hexbin for given string
-- COSBase with ability to write direct into a dictionary (that means if this
is set, no indirect object will be wrote) (sry hard to explain what i mean,
actualy needed for incremental update to lower the rate of indirect objects)
-- COSBase with ability to force writing object (this hook help the COSWriter
write needed objects for inkremental update)
-- COSName added new names
-- COSDocument some getter and setter for handling new signature and
incremental features
- SignatureException with some exceptions for handling the bunch of new
possible errors
-Parser improvments
-- PDFParser saves now the position of the last startxref
-- VisualSignatureParser (hook for parsing visual signature templates) (it's
only for prepared visualisation that should be merged with the document)
-IO improvments
-- COSFilterInput helps to find the proper content that should be hashed /
signed
-- COSStandardOutputStream is tricky, it helps the writer to jump to the
right place in the document
-- COSWriter got some improvments for incremental update
-- COSWriterXRefEntry needed for incremental updates and writing the new Xref
table
- PDDocument
-- got a new method addSignature with the needed implementation (do the whole
signature stuff)
-- cleanup
- Fields and Annotations
-- PDSignature represent the signature dictionary
-- PDSignatureFild / Annotation are the visible & unvisible signature
representations
- Signature Interface and options
-- SignatureInterface the interface that shall be implemented for proper
signing
-- SignatureOptions, some additional options for signing
Patch splited into pieces
sry for spelling, didn't include a spellchecker for english.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.