Commit 7855e18ae2f535f7e1b6fa396e298511e66e6f94

Authored by Jay Berkenbilt
1 parent 1bd2a2e7

Add detail about Unicode passwords

Showing 1 changed file with 13 additions and 3 deletions
... ... @@ -190,9 +190,19 @@ I find it useful to make reference to them in this list
190 190 came from Adobe's example site.
191 191  
192 192 * Consider the possibility of doing something locale-aware to support
193   - non-ASCII passwords. Update documentation if this is done.
194   - Consider implementing full Unicode password algorithms from newer
195   - encryption formats.
  193 + non-ASCII passwords. Update documentation if this is done. Consider
  194 + implementing full Unicode password algorithms from newer encryption
  195 + formats. See ../misc/unicode-password*. If code is added to
  196 + properly encode Unicode passwords, figure out how to deal with
  197 + backward compatibility. Either require some additional flag to
  198 + decode the password or provide a `--raw-password` flag to suppress
  199 + decoding. While automatically encoding breaks backward
  200 + compatibility, it's probably the right behavior because the current
  201 + behavior is arguably a bug. Alternatively, if the password doesn't
  202 + work as a raw password and contains characters outside US-ASCII,
  203 + try various encoding methods to see if any work. See section
  204 + 7.6.3.3, algorithms 2 and 2A, in the ISO spec for details. (This is
  205 + tracked in https://github.com/qpdf/qpdf/issues/215.)
196 206  
197 207 * See if we can avoid preserving unreferenced objects in object
198 208 streams even when preserving the object streams.
... ...