Commit 6a64e150fd677162dcd62249b8e93242801d5232

Authored by Jay Berkenbilt
1 parent fc74d67f

Update manual for 7.1.0

Showing 1 changed file with 91 additions and 0 deletions
manual/qpdf-manual.xml
@@ -379,6 +379,35 @@ make @@ -379,6 +379,35 @@ make
379 </listitem> 379 </listitem>
380 </varlistentry> 380 </varlistentry>
381 <varlistentry> 381 <varlistentry>
  382 + <term><option>--password-is-hex-key</option></term>
  383 + <listitem>
  384 + <para>
  385 + Overrides the usual computation/retrieval of the PDF file's
  386 + encryption key from user/owner password with an explicit
  387 + specification of the encryption key. When this option is
  388 + specified, the argument to the <option>--password</option>
  389 + option is interpreted as a hexadecimal-encoded key value. This
  390 + only applies to the password used to open the main input file.
  391 + It does not apply to other files opened by
  392 + <option>--pages</option> or other options or to files being
  393 + written.
  394 + </para>
  395 + <para>
  396 + Most users will never have a need for this option, and no
  397 + standard viewers support this mode of operation, but it can be
  398 + useful for forensic or investigatory purposes. For example, if
  399 + a PDF file is encrypted with an unknown password, a
  400 + brute-force attack using the key directly is sometimes more
  401 + efficient than one using the password. Also, if a file is
  402 + heavily damaged, it may be possible to derive the encryption
  403 + key and recover parts of the file using it directly. To expose
  404 + the encryption key used by an encrypted file that you can open
  405 + normally, use the <option>--show-encryption-key</option>
  406 + option.
  407 + </para>
  408 + </listitem>
  409 + </varlistentry>
  410 + <varlistentry>
382 <term><option>--rotate=[+|-]angle:page-range</option></term> 411 <term><option>--rotate=[+|-]angle:page-range</option></term>
383 <listitem> 412 <listitem>
384 <para> 413 <para>
@@ -1285,6 +1314,24 @@ outfile.pdf&lt;/option&gt; @@ -1285,6 +1314,24 @@ outfile.pdf&lt;/option&gt;
1285 </listitem> 1314 </listitem>
1286 </varlistentry> 1315 </varlistentry>
1287 <varlistentry> 1316 <varlistentry>
  1317 + <term><option>--show-encryption-key</option></term>
  1318 + <listitem>
  1319 + <para>
  1320 + When encryption information is being displayed, as when
  1321 + <option>--check</option> or <option>--show-encryption</option>
  1322 + is given, display the computed or retrieved encryption key as
  1323 + a hexadecimal string. This value is not ordinarily useful to
  1324 + users, but it can be used as the argument to
  1325 + <option>--password</option> if the
  1326 + <option>--password-is-hex-key</option> is specified. Note
  1327 + that, when PDF files are encrypted, passwords and other
  1328 + metadata are used only to compute an encryption key, and the
  1329 + encryption key is what is actually used for encryption. This
  1330 + enables retrieval of that key.
  1331 + </para>
  1332 + </listitem>
  1333 + </varlistentry>
  1334 + <varlistentry>
1288 <term><option>--check-linearization</option></term> 1335 <term><option>--check-linearization</option></term>
1289 <listitem> 1336 <listitem>
1290 <para> 1337 <para>
@@ -2936,6 +2983,50 @@ print &quot;\n&quot;; @@ -2936,6 +2983,50 @@ print &quot;\n&quot;;
2936 </para> 2983 </para>
2937 <variablelist> 2984 <variablelist>
2938 <varlistentry> 2985 <varlistentry>
  2986 + <term>7.1.0: January 14, 2018</term>
  2987 + <listitem>
  2988 + <itemizedlist>
  2989 + <listitem>
  2990 + <para>
  2991 + PDF files contain streams that may be compressed with various
  2992 + compression algorithms which, in some cases, may be enhanced
  2993 + by various predictor functions. Previously only the PNG up
  2994 + predictor was supported. In this version, all the PNG
  2995 + predictors as well as the TIFF predictor are supported. This
  2996 + increases the range of files that qpdf is able to handle.
  2997 + </para>
  2998 + </listitem>
  2999 + <listitem>
  3000 + <para>
  3001 + QPDF now allows a raw encryption key to be specified in place
  3002 + of a password when opening encrypted files, and will
  3003 + optionally display the encryption key used by a file. This is
  3004 + a non-standard operation, but it can be useful in certain
  3005 + situations. Please see the discussion of
  3006 + <option>--password-is-hex-key</option> in <xref
  3007 + linkend="ref.basic-options"/> or the comments around
  3008 + <function>QPDF::setPasswordIsHexKey</function> in
  3009 + <filename>QPDF.hh</filename> for additional details.
  3010 + </para>
  3011 + </listitem>
  3012 + <listitem>
  3013 + <para>
  3014 + Bug fix: numbers ending with a trailing decimal point are now
  3015 + properly recognized as numbers.
  3016 + </para>
  3017 + </listitem>
  3018 + <listitem>
  3019 + <para>
  3020 + Bug fix: when building qpdf from source on some platforms
  3021 + (especially MacOS), the build could get confused by older
  3022 + versions of qpdf installed on the system. This has been
  3023 + corrected.
  3024 + </para>
  3025 + </listitem>
  3026 + </itemizedlist>
  3027 + </listitem>
  3028 + </varlistentry>
  3029 + <varlistentry>
2939 <term>7.0.0: September 15, 2017</term> 3030 <term>7.0.0: September 15, 2017</term>
2940 <listitem> 3031 <listitem>
2941 <itemizedlist> 3032 <itemizedlist>