Add ChangeLog and documentation for signature dict enhancements

This commit is contained in:
Jay Berkenbilt 2019-10-22 16:44:27 -04:00
parent 5a842792b6
commit 9b76ec154d
2 changed files with 65 additions and 0 deletions

View File

@ -1,3 +1,29 @@
2019-10-22 Jay Berkenbilt <ejb@ql.org>
* Incorporate changes from Masamichi Hosoda <trueroad@trueroad.jp>
to properly handle signature in the following ways:
- Always represent /Contents in a signature dictionary as a hex
string
- Do not compress signature dictionaries when generating object
streams
- Do not encrypt/decrypt the /Contents field of the signature
dictionary when creating or reading encrypted files
* Incorporate changes from Masamichi Hosoda <trueroad@trueroad.jp>
to add additional methods for making it possible to gain deeper
insight into cross reference tables and object renumbering. These
new API calls make it possible for applications to go into PDF
files created by qpdf and make changes to them that go beyond
working with the PDF at the object level. The specific use case
for these changes was to write an external tool to perform digital
signature, but there could be other uses as well. New methods
include the following, all of which are described in their
respective headers:
- QPDF::getXRefTable()
- QPDFObjectHandle::getParsedOffset()
- QPDFWriter::getRenumberedObjGen(QPDFObjGen)
- QPDFWriter::getWrittenXRefTable()
2019-10-12 Jay Berkenbilt <ejb@ql.org>
* 9.0.2: release

View File

@ -4363,6 +4363,45 @@ print "\n";
For a detailed list of changes, please see the file
<filename>ChangeLog</filename> in the source distribution.
</para>
<variablelist>
<varlistentry>
<term>9.1.0: XXX</term>
<listitem>
<itemizedlist>
<listitem>
<para>
Library Enhancements
</para>
<itemizedlist>
<listitem>
<para>
Incorporate contribution from Masamichi Hosoda to
properly handle signature dictionaries by not including
them in object streams, formatting the
<literal>/Contents</literal> key has a hexadecimal
string, and excluding the <literal>/Contents</literal>
key from encryption and decryption.
</para>
</listitem>
<listitem>
<para>
Incorporate contribution from Masamichi Hosoda to provide
new API calls for getting file-level information about
input and output files, enabling certain operations on
the files at the file level rather than the object level.
New methods include
<function>QPDF::getXRefTable()</function>,
<function>QPDFObjectHandle::getParsedOffset()</function>,
<function>QPDFWriter::getRenumberedObjGen(QPDFObjGen)</function>,
and <function>QPDFWriter::getWrittenXRefTable()</function>.
</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>
</variablelist>
<variablelist>
<varlistentry>
<term>9.0.2: October 12, 2019</term>