Post release updates
[gnupg.git] / NEWS
1 Noteworthy changes in version 2.1.19 (unreleased)
2 -------------------------------------------------
3
4
5 Noteworthy changes in version 2.1.18 (2017-01-23)
6 -------------------------------------------------
7
8   * gpg: Remove bogus subkey signature while cleaning a key (with
9     export-clean, import-clean, or --edit-key's sub-command clean)
10
11   * gpg: Allow freezing the clock with --faked-system-time.
12
13   * gpg: New --export-option flag "backup", new --import-option flag
14     "restore".
15
16   * gpg-agent: Fixed long delay due to a regression in the progress
17     callback code.
18
19   * scd: Lots of code cleanup and internal changes.
20
21   * scd: Improved the internal CCID driver.
22
23   * dirmngr: Fixed problem with the DNS glue code (removal of the
24     trailing dot in domain names).
25
26   * dirmngr: Make sure that Tor is actually enabled after changing the
27     conf file and sending SIGHUP or "gpgconf --reload dirmngr".
28
29   * dirmngr: Fixed Tor access to IPv6 addresses.  Note that current
30     versions of Tor may require that the flag "IPv6Traffic" is used
31     with the option "SocksPort" in torrc to actually allow IPv6
32     traffic.
33
34   * dirmngr: Fixed HKP for literally given IPv6 addresses.
35
36   * dirmngr: Enabled reverse DNS lookups via Tor.
37
38   * dirmngr: Added experimental SRV record lookup for WKD.
39     See commit 88dc3af3d4ae1afe1d5e136bc4c38bc4e7d4cd10 for details.
40
41   * dirmngr: For HKP use "pgpkey-hkps" and "pgpkey-hkp" in SRV record
42     lookups.  Avoid SRV record lookup when a port is explicitly
43     specified.  This fixes a regression from the 1.4 and 2.0 behavior.
44
45   * dirmngr: Gracefully handle a missing /etc/nsswitch.conf.  Ignore
46     negation terms (e.g. "[!UNAVAIL=return]" instead of bailing out.
47
48   * dirmngr: Better debug output for flags "dns" and "network".
49
50   * dirmngr: On reload mark all known HKP servers alive.
51
52   * gpgconf: Allow keyword "all" for --launch, --kill, and --reload.
53
54   * tools: gpg-wks-client now ignores a missing policy file on the
55     server.
56
57   * Avoid unnecessary ambiguity error message in the option parsing.
58
59   * Further improvements of the regression test suite.
60
61   * Fixed building with --disable-libdns configure option.
62
63   * Fixed a crash running the tests on 32 bit architectures.
64
65   * Fixed spurious failures on BSD system in the spawn functions.
66     This affected for example gpg-wks-client and gpgconf.
67
68
69 Noteworthy changes in version 2.1.17 (2016-12-20)
70 -------------------------------------------------
71
72  * gpg: By default new keys expire after 2 years.
73
74  * gpg: New command --quick-set-expire to conveniently change the
75    expiration date of keys.
76
77  * gpg: Option and command names have been changed for easier
78    comprehension.  The old names are still available as aliases.
79
80  * gpg: Improved the TOFU trust model.
81
82  * gpg: New option --default-new-key-algo.
83
84  * scd: Support OpenPGP card V3 for RSA.
85
86  * dirmngr: Support for the ADNS library has been removed.  Instead
87    William Ahern's Libdns is now source included and used on all
88    platforms.  This enables Tor support on all platforms.  The new
89    option --standard-resolver can be used to disable this code at
90    runtime.  In case of build problems the new configure option
91    --disable-libdns can be used to build without Libdns.
92
93  * dirmngr: Lazily launch ldap reaper thread.
94
95  * tools: New options --check and --status-fd for gpg-wks-client.
96
97  * The UTF-8 byte order mark is now skipped when reading conf files.
98
99  * Fixed many bugs and regressions.
100
101  * Major improvements to the test suite.  For example it is possible
102    to run the external test suite of GPGME.
103
104  See-also: gnupg-announce/2016q4/000400.html
105
106
107 Noteworthy changes in version 2.1.16 (2016-11-18)
108 -------------------------------------------------
109
110  * gpg: New algorithm for selecting the best ranked public key when
111    using a mail address with -r, -R, or --locate-key.
112
113  * gpg: New option --with-tofu-info to print a new "tfs" record in
114    colon formatted key listings.
115
116  * gpg: New option --compliance as an alternative way to specify
117    options like --rfc2440, --rfc4880, et al.
118
119  * gpg: Many changes to the TOFU implementation.
120
121  * gpg: Improve usability of --quick-gen-key.
122
123  * gpg: In --verbose mode print a diagnostic when a pinentry is
124    launched.
125
126  * gpg: Remove code which warns for old versions of gnome-keyring.
127
128  * gpg: New option --override-session-key-fd.
129
130  * gpg: Option --output does now work with --verify.
131
132  * gpgv: New option --output to allow saving the verified data.
133
134  * gpgv: New option --enable-special-filenames.
135
136  * agent, dirmngr: New --supervised mode for use by systemd and alike.
137
138  * agent: By default listen on all available sockets using standard
139    names.
140
141  * agent: Invoke scdaemon with --homedir.
142
143  * dirmngr: On Linux now detects the removal of its own socket and
144    terminates.
145
146  * scd: Support ECC key generation.
147
148  * scd: Support more card readers.
149
150  * dirmngr: New option --allow-version-check to download a software
151    version database in the background.
152
153  * dirmngr: Use system provided CAs if no --hkp-cacert is given.
154
155  * dirmngr: Use a default keyserver if none is explicitly set
156
157  * gpgconf: New command --query-swdb to check software versions
158    against an copy of an online database.
159
160  * gpgconf: Print the socket directory with --list-dirs.
161
162  * tools: The WKS tools now support draft version -02.
163
164  * tools: Always build gpg-wks-client and install under libexec.
165
166  * tools: New option --supported for gpg-wks-client.
167
168  * The log-file option now accepts a value "socket://" to log to the
169    socket named "S.log" in the standard socket directory.
170
171  * Provide fake pinentries for use by tests cases of downstream
172    developers.
173
174  * Fixed many bugs and regressions.
175
176  * Many changes and improvements for the test suite.
177
178  See-also: gnupg-announce/2016q4/000398.html
179
180
181 Noteworthy changes in version 2.1.15 (2016-08-18)
182 -------------------------------------------------
183
184  * gpg: Remove the --tofu-db-format option and support for the split
185    TOFU database.
186
187  * gpg: Add option --sender to prepare for coming features.
188
189  * gpg: Add option --input-size-hint to help progress indicators.
190
191  * gpg: Extend the PROGRESS status line with the counted unit.
192
193  * gpg: Avoid publishing the GnuPG version by default with --armor.
194
195  * gpg: Properly ignore legacy keys in the keyring cache.
196
197  * gpg: Always print fingerprint records in --with-colons mode.
198
199  * gpg: Make sure that keygrips are printed for each subkey in
200    --with-colons mode.
201
202  * gpg: New import filter "drop-sig".
203
204  * gpgsm: Fix a bug in the machine-readable key listing.
205
206  * gpg,gpgsm: Block signals during keyring updates to limits the
207    effects of a Ctrl-C at the wrong time.
208
209  * g13: Add command --umount and other fixes for dm-crypt.
210
211  * agent: Fix regression in SIGTERM handling.
212
213  * agent: Cleanup of the ssh-agent code.
214
215  * agent: Allow import of overly long keys.
216
217  * scd: Fix problems with card removal.
218
219  * dirmngr: Remove all code for running as a system service.
220
221  * tools: Make gpg-wks-client conforming to the specs.
222
223  * tests: Improve the output of the new regression test tool.
224
225  * tests: Distribute the standalone test runner.
226
227  * tests: Run each test in a clean environment.
228
229  * Spelling and grammar fixes.
230
231  See-also: gnupg-announce/2016q3/000396.html
232
233
234 Noteworthy changes in version 2.1.14 (2016-07-14)
235 -------------------------------------------------
236
237  * gpg: Removed options --print-dane-records and --print-pka-records.
238    The new export options "export-pka" and "export-dane" can instead
239    be used with the export command.
240
241  * gpg: New options --import-filter and --export-filter.
242
243  * gpg: New import options "import-show" and "import-export".
244
245  * gpg: New option --no-keyring.
246
247  * gpg: New command --quick-revuid.
248
249  * gpg: New options -f/--recipient-file and -F/--hidden-recipient-file
250    to directly specify encryption keys.
251
252  * gpg: New option --mimemode to indicate that the content is a MIME
253    part.  Does only enable --textmode right now.
254
255  * gpg: New option --rfc4880bis to allow experiments with proposed
256    changes to the current OpenPGP specs.
257
258  * gpg: Fix regression in the "fetch" sub-command of --card-edit.
259
260  * gpg: Fix regression since 2.1 in option --try-all-secrets.
261
262  * gpgv: Change default options for extra security.
263
264  * gpgsm: No more root certificates are installed by default.
265
266  * agent: "updatestartuptty" does now affect more environment
267    variables.
268
269  * scd: The option --homedir does now work with scdaemon.
270
271  * scd: Support some more GEMPlus card readers.
272
273  * gpgtar: Fix handling of '-' as file name.
274
275  * gpgtar: New commands --create and --extract.
276
277  * gpgconf: Tweak for --list-dirs to better support shell scripts.
278
279  * tools: Add programs gpg-wks-client and gpg-wks-server to implement
280    a Web Key Service.  The configure option --enable-wks-tools is
281    required to build them; they should be considered Beta software.
282
283  * tests: Complete rework of the openpgp part of the test suite.  The
284    test scripts have been changed from Bourne shell scripts to Scheme
285    programs.  A customized scheme interpreter (gpgscm) is included.
286    This change was triggered by the need to run the test suite on
287    non-Unix platforms.
288
289  * The rendering of the man pages has been improved.
290
291  See-also: gnupg-announce/2016q3/000393.html
292
293
294 Noteworthy changes in version 2.1.13 (2016-06-16)
295 -------------------------------------------------
296
297  * gpg: New command --quick-addkey.  Extend the --quick-gen-key
298    command.
299
300  * gpg: New --keyid-format "none" which is now also the default.
301
302  * gpg: New option --with-subkey-fingerprint.
303
304  * gpg: Include Signer's UID subpacket in signatures if the secret key
305    has been specified using a mail address and the new option
306    --disable-signer-uid is not used.
307
308  * gpg: Allow unattended deletion of a secret key.
309
310  * gpg: Allow export of non-passphrase protected secret keys.
311
312  * gpg: New status lines KEY_CONSIDERED and NOTATION_FLAGS.
313
314  * gpg: Change status line TOFU_STATS_LONG to use '~' as
315    a non-breaking-space character.
316
317  * gpg: Speedup key listings in Tofu mode.
318
319  * gpg: Make sure that the current and total values of a PROGRESS
320    status line are small enough.
321
322  * gpgsm: Allow the use of AES192 and SERPENT ciphers.
323
324  * dirmngr: Adjust WKD lookup to current specs.
325
326  * dirmngr: Fallback to LDAP v3 if v2 is is not supported.
327
328  * gpgconf: New commands --create-socketdir and --remove-socketdir,
329    new option --homedir.
330
331  * If a /run/user/$UID directory exists, that directory is now used
332    for IPC sockets instead of the GNUPGHOME directory.  This fixes
333    problems with NFS and too long socket names and thus avoids the
334    need for redirection files.
335
336  * The Speedo build systems now uses the new versions.gnupg.org server
337    to retrieve the default package versions.
338
339  * Fix detection of libusb on FreeBSD.
340
341  * Speedup fd closing after a fork.
342
343  See-also: gnupg-announce/2016q2/000390.html
344
345
346 Noteworthy changes in version 2.1.12 (2016-05-04)
347 -------------------------------------------------
348
349  * gpg: New --edit-key sub-command "change-usage" for testing
350    purposes.
351
352  * gpg: Out of order key-signatures are now systematically detected
353    and fixed by --edit-key.
354
355  * gpg: Improved detection of non-armored messages.
356
357  * gpg: Removed the extra prompt needed to create Curve25519 keys.
358
359  * gpg: Improved user ID selection for --quick-sign-key.
360
361  * gpg: Use the root CAs provided by the system with --fetch-key.
362
363  * gpg: Add support for the experimental Web Key Directory key
364    location service.
365
366  * gpg: Improve formatting of Tofu messages and emit new Tofu specific
367    status lines.
368
369  * gpgsm: Add option --pinentry-mode to support a loopback pinentry.
370
371  * gpgsm: A new pubring.kbx is now created with the header blob so
372    that gpg can detect that the keybox format needs to be used.
373
374  * agent: Add read support for the new private key protection format
375    openpgp-s2k-ocb-aes.
376
377  * agent: Add read support for the new extended private key format.
378
379  * agent: Default to --allow-loopback-pinentry and add option
380    --no-allow-loopback-pinentry.
381
382  * scd: Changed to use the new libusb 1.0 API for the internal CCID
383    driver.
384
385  * dirmngr: The dirmngr-client does now auto-detect the PEM format.
386
387  * g13: Add experimental support for dm-crypt.
388
389  * w32: Tofu support is now available with the Speedo build method.
390
391  * w32: Removed the need for libiconv.dll.
392
393  * The man pages for gpg and gpgv are now installed under the correct
394    name (gpg2 or gpg - depending on a configure option).
395
396  * Lots of internal cleanups and bug fixes.
397
398  See-also: gnupg-announce/2016q2/000387.html
399
400
401 Noteworthy changes in version 2.1.11 (2016-01-26)
402 -------------------------------------------------
403
404  * gpg: New command --export-ssh-key to replace the gpgkey2ssh tool.
405
406  * gpg: Allow to generate mail address only keys with --gen-key.
407
408  * gpg: "--list-options show-usage" is now the default.
409
410  * gpg: Make lookup of DNS CERT records holding an URL work.
411
412  * gpg: Emit PROGRESS status lines during key generation.
413
414  * gpg: Don't check for ambigious or non-matching key specification in
415    the config file or given to --encrypt-to.  This feature will return
416    in 2.3.x.
417
418  * gpg: Lock keybox files while updating them.
419
420  * gpg: Solve rare error on Windows during keyring and Keybox updates.
421
422  * gpg: Fix possible keyring corruption. (bug#2193)
423
424  * gpg: Fix regression of "bkuptocard" sub-command in --edit-key and
425    remove "checkbkupkey" sub-command introduced with 2.1.  (bug#2169)
426
427  * gpg: Fix internal error in gpgv when using default keyid-format.
428
429  * gpg: Fix --auto-key-retrieve to work with dirmngr.conf configured
430    keyservers. (bug#2147).
431
432  * agent: New option --pinentry-timeout.
433
434  * scd: Improve unplugging of USB readers under Windows.
435
436  * scd: Fix regression for generating RSA keys on card.
437
438  * dirmmgr: All configured keyservers are now searched.
439
440  * dirmngr: Install CA certificate for hkps.pool.sks-keyservers.net.
441    Use this certiticate even if --hkp-cacert is not used.
442
443  * gpgtar: Add actual encryption code.  gpgtar does now fully replace
444    gpg-zip.
445
446  * gpgtar: Fix filename encoding problem on Windows.
447
448  * Print a warning if a GnuPG component is using an older version of
449    gpg-agent, dirmngr, or scdaemon.
450
451  See-also: gnupg-announce/2016q1/000383.html
452
453
454 Noteworthy changes in version 2.1.10 (2015-12-04)
455 -------------------------------------------------
456
457  * gpg: New trust models "tofu" and "tofu+pgp".
458
459  * gpg: New command --tofu-policy.  New options --tofu-default-policy
460    and --tofu-db-format.
461
462  * gpg: New option --weak-digest to specify hash algorithms which
463    should be considered weak.
464
465  * gpg: Allow the use of multiple --default-key options; take the last
466    available key.
467
468  * gpg: New option --encrypt-to-default-key.
469
470  * gpg: New option --unwrap to only strip the encryption layer.
471
472  * gpg: New option --only-sign-text-ids to exclude photo IDs from key
473    signing.
474
475  * gpg: Check for ambigious or non-matching key specification in the
476    config file or given to --encrypt-to.
477
478  * gpg: Show the used card reader with --card-status.
479
480  * gpg: Print export statistics and an EXPORTED status line.
481
482  * gpg: Allow selecting subkeys by keyid in --edit-key.
483
484  * gpg: Allow updating the expiration time of multiple subkeys at
485    once.
486
487  * dirmngr: New option --use-tor.  For full support this requires
488    libassuan version 2.4.2 and a patched version of libadns
489    (e.g. adns-1.4-g10-7 as used by the standard Windows installer).
490
491  * dirmngr: New option --nameserver to specify the nameserver used in
492    Tor mode.
493
494  * dirmngr: Keyservers may again be specified by IP address.
495
496  * dirmngr: Fixed problems in resolving keyserver pools.
497
498  * dirmngr: Fixed handling of premature termination of TLS streams so
499    that large numbers of keys can be refreshed via hkps.
500
501  * gpg: Fixed a regression in --locate-key [since 2.1.9].
502
503  * gpg: Fixed another bug for keyrings with legacy keys.
504
505  * gpgsm: Allow combinations of usage flags in --gen-key.
506
507  * Make tilde expansion work with most options.
508
509  * Many other cleanups and bug fixes.
510
511  See-also: gnupg-announce/2015q4/000381.html
512
513
514 Noteworthy changes in version 2.1.9 (2015-10-09)
515 ------------------------------------------------
516
517  * gpg: Allow fetching keys via OpenPGP DANE (--auto-key-locate).  New
518    option --print-dane-records.  [Update: --print-dane-records replaced
519    in 2.1.4.]
520
521  * gpg: Fix for a problem with PGP-2 keys in a keyring.
522
523  * gpg: Fail with an error instead of a warning if a modern cipher
524    algorithm is used without a MDC.
525
526  * agent: New option --pinentry-invisible-char.
527
528  * agent: Always do a RSA signature verification after creation.
529
530  * agent: Fix a regression in ssh-add-ing Ed25519 keys.
531
532  * agent: Fix ssh fingerprint computation for nistp384 and EdDSA.
533
534  * agent: Fix crash during passphrase entry on some platforms.
535
536  * scd: Change timeout to fix problems with some 2.1 cards.
537
538  * dirmngr: Displayed name is now Key Acquirer.
539
540  * dirmngr: Add option --keyserver.  Deprecate that option for gpg.
541    Install a dirmngr.conf file from a skeleton for new installations.
542
543  See-also: gnupg-announce/2015q4/000380.html
544
545
546 Noteworthy changes in version 2.1.8 (2015-09-10)
547 ------------------------------------------------
548
549  * gpg: Sending very large keys to the keyservers works again.
550
551  * gpg: Validity strings in key listings are now again translatable.
552
553  * gpg: Emit FAILURE status lines to help GPGME.
554
555  * gpg: Does not anymore link to Libksba to reduce dependencies.
556
557  * gpgsm: Export of secret keys via Assuan is now possible.
558
559  * agent: Raise the maximum passphrase length from 100 to 255 bytes.
560
561  * agent: Fix regression using EdDSA keys with ssh.
562
563  * Does not anymore use a build timestamp by default.
564
565  * The fallback encoding for broken locale settings changed
566    from Latin-1 to UTF-8.
567
568  * Many code cleanups and improved internal documentation.
569
570  * Various minor bug fixes.
571
572  See-also: gnupg-announce/2015q3/000379.html
573
574
575 Noteworthy changes in version 2.1.7 (2015-08-11)
576 ------------------------------------------------
577
578  * gpg: Support encryption with Curve25519 if Libgcrypt 1.7 is used.
579
580  * gpg: In the --edit-key menu: Removed the need for "toggle", changed
581    how secret keys are indicated, new commands "fpr *" and "grip".
582
583  * gpg: More fixes related to legacy keys in a keyring.
584
585  * gpgv: Does now also work with a "trustedkeys.kbx" file.
586
587  * scd: Support some feature from the OpenPGP card 3.0 specs.
588
589  * scd: Improved ECC support
590
591  * agent: New option --force for the DELETE_KEY command.
592
593  * w32: Look for the Pinentry at more places.
594
595  * Dropped deprecated gpgsm-gencert.sh
596
597  * Various other bug fixes.
598
599  See-also: gnupg-announce/2015q3/000371.html
600
601
602 Noteworthy changes in version 2.1.6 (2015-07-01)
603 ------------------------------------------------
604
605  * agent: New option --verify for the PASSWD command.
606
607  * gpgsm: Add command option "offline" as an alternative to
608    --disable-dirmngr.
609
610  * gpg: Do not prompt multiple times for a password in pinentry
611    loopback mode.
612
613  * Allow the use of debug category names with --debug.
614
615  * Using gpg-agent and gpg/gpgsm with different locales will now show
616    the correct translations in Pinentry.
617
618  * gpg: Improve speed of --list-sigs and --check-sigs.
619
620  * gpg: Make --list-options show-sig-subpackets work again.
621
622  * gpg: Fix an export problem for old keyrings with PGP-2 keys.
623
624  * scd: Support PIN-pads on more readers.
625
626  * dirmngr: Properly cleanup zombie LDAP helper processes and avoid
627    hangs on dirmngr shutdown.
628
629  * Various other bug fixes.
630
631  See-also: gnupg-announce/2015q3/000370.html
632
633
634 Noteworthy changes in version 2.1.5 (2015-06-11)
635 ------------------------------------------------
636
637  * Support for an external passphrase cache.
638
639  * Support for the forthcoming version 3 OpenPGP smartcard.
640
641  * Manuals now show the actual used file names.
642
643  * Prepared for improved integration with Emacs.
644
645  * Code cleanups and minor bug fixes.
646
647  See-also: gnupg-announce/2015q2/000369.html
648
649
650 Noteworthy changes in version 2.1.4 (2015-05-12)
651 ------------------------------------------------
652
653  * gpg: Add command --quick-adduid to non-interactively add a new user
654    id to an existing key.
655
656  * gpg: Do no enable honor-keyserver-url by default.  Make it work if
657    enabled.
658
659  * gpg: Display the serial number in the --card-status output again.
660
661  * agent: Support for external password managers.
662    Add option --no-allow-external-cache.
663
664  * scdaemon: Improved handling of extended APDUs.
665
666  * Make HTTP proxies work again.
667
668  * All network access including DNS as been moved to Dirmngr.
669
670  * Allow building without LDAP support.
671
672  * Fixed lots of smaller bugs.
673
674  See-also: gnupg-announce/2015q2/000366.html
675
676
677 Noteworthy changes in version 2.1.3 (2015-04-11)
678 ------------------------------------------------
679
680  * gpg: LDAP keyservers are now supported by 2.1.
681
682  * gpg: New option --with-icao-spelling.
683
684  * gpg: New option --print-pka-records.  Changed the PKA method to use
685    CERT records and hashed names.  [Update: --print-pka-records
686    replaced in 2.1.14.]
687
688  * gpg: New command --list-gcrypt-config.  New parameter "curve"
689    for --list-config.
690
691  * gpg: Print a NEWSIG status line like gpgsm always did.
692
693  * gpg: Print MPI values with --list-packets and --verbose.
694
695  * gpg: Write correct MPI lengths with ECC keys.
696
697  * gpg: Skip legacy PGP-2 keys while searching.
698
699  * gpg: Improved searching for mail addresses when using a keybox.
700
701  * gpgsm: Changed default algos to AES-128 and SHA-256.
702
703  * gpgtar: Fixed extracting files with sizes of a multiple of 512.
704
705  * dirmngr: Fixed SNI handling for hkps pools.
706
707  * dirmngr: extra-certs and trusted-certs are now always loaded from
708    the sysconfig dir instead of the homedir.
709
710  * Fixed possible problems due to compiler optimization, two minor
711    regressions, and other bugs.
712
713  See-also: gnupg-announce/2015q2/000365.html
714
715
716 Noteworthy changes in version 2.1.2 (2015-02-11)
717 ------------------------------------------------
718
719  * gpg: The parameter 'Passphrase' for batch key generation works
720    again.
721
722  * gpg: Using a passphrase option in batch mode now has the expected
723    effect on --quick-gen-key.
724
725  * gpg: Improved reporting of unsupported PGP-2 keys.
726
727  * gpg: Added support for algo names when generating keys using
728    --command-fd.
729
730  * gpg: Fixed DoS based on bogus and overlong key packets.
731
732  * agent: When setting --default-cache-ttl the value
733    for --max-cache-ttl is adjusted to be not lower than the former.
734
735  * agent: Fixed problems with the new --extra-socket.
736
737  * agent: Made --allow-loopback-pinentry changeable with gpgconf.
738
739  * agent: Fixed importing of unprotected openpgp keys.
740
741  * agent: Now tries to use a fallback pinentry if the standard
742    pinentry is not installed.
743
744  * scd: Added support for ECDH.
745
746  * Fixed several bugs related to bogus keyrings and improved some
747    other code.
748
749  See-also: gnupg-announce/2015q1/000361.html
750
751
752 Noteworthy changes in version 2.1.1 (2014-12-16)
753 ------------------------------------------------
754
755  * gpg: Detect faulty use of --verify on detached signatures.
756
757  * gpg: New import option "keep-ownertrust".
758
759  * gpg: New sub-command "factory-reset" for --card-edit.
760
761  * gpg: A stub key for smartcards is now created by --card-status.
762
763  * gpg: Fixed regression in --refresh-keys.
764
765  * gpg: Fixed regresion in %g and %p codes for --sig-notation.
766
767  * gpg: Fixed best matching hash algo detection for ECDSA and EdDSA.
768
769  * gpg: Improved perceived speed of secret key listisngs.
770
771  * gpg: Print number of skipped PGP-2 keys on import.
772
773  * gpg: Removed the option aliases --throw-keyid and --notation-data;
774    use --throw-keyids and --set-notation instead.
775
776  * gpg: New import option "keep-ownertrust".
777
778  * gpg: Skip too large keys during import.
779
780  * gpg,gpgsm: New option --no-autostart to avoid starting gpg-agent or
781    dirmngr.
782
783  * gpg-agent: New option --extra-socket to provide a restricted
784    command set for use with remote clients.
785
786  * gpgconf --kill does not anymore start a service only to kill it.
787
788  * gpg-pconnect-agent: Add convenience option --uiserver.
789
790  * Fixed keyserver access for Windows.
791
792  * Fixed build problems on Mac OS X
793
794  * The Windows installer does now install development files
795
796  * More translations (but most of them are not complete).
797
798  * To support remotely mounted home directories, the IPC sockets may
799    now be redirected.  This feature requires Libassuan 2.2.0.
800
801  * Improved portability and the usual bunch of bug fixes.
802
803  See-also: gnupg-announce/2014q4/000360.html
804
805
806 Noteworthy changes in version 2.1.0 (2014-11-06)
807 ------------------------------------------------
808
809  This release introduces a lot of changes.  Most of them are internal
810  and thus not user visible.  However, some long standing behavior has
811  slightly changed and it is strongly suggested that an existing
812  "~/.gnupg" directory is backed up before this version is used.
813
814  A verbose description of the major new features and changes can be
815  found in the file doc/whats-new-in-2.1.txt.
816
817  * gpg: All support for v3 (PGP 2) keys has been dropped.  All
818    signatures are now created as v4 signatures.  v3 keys will be
819    removed from the keyring.
820
821  * gpg: With pinentry-0.9.0 the passphrase "enter again" prompt shows
822    up in the same window as the "new passphrase" prompt.
823
824  * gpg: Allow importing keys with duplicated long key ids.
825
826  * dirmngr: May now be build without support for LDAP.
827
828  * For a complete list of changes see the lists of changes for the
829    2.1.0 beta versions below.  Note that all relevant fixes from
830    versions 2.0.14 to 2.0.26 are also applied to this version.
831
832
833  [Noteworthy changes in version 2.1.0-beta864 (2014-10-03)]
834
835  * gpg: Removed the GPG_AGENT_INFO related code.  GnuPG does now
836    always use a fixed socket name in its home directory.
837
838  * gpg: Renamed --gen-key to --full-gen-key and re-added a --gen-key
839    command with less choices.
840
841  * gpg: Use SHA-256 for all signature types also on RSA keys.
842
843  * gpg: Default keyring is now created with a .kbx suffix.
844
845  * gpg: Add a shortcut to the key capabilies menu (e.g. "=e" sets the
846    encryption capabilities).
847
848  * gpg: Fixed obsolete options parsing.
849
850  * Further improvements for the alternative speedo build system.
851
852
853  [Noteworthy changes in version 2.1.0-beta834 (2014-09-18)]
854
855  * gpg: Improved passphrase caching.
856
857  * gpg: Switched to algorithm number 22 for EdDSA.
858
859  * gpg: Removed CAST5 from the default preferences.
860
861  * gpg: Order SHA-1 last in the hash preferences.
862
863  * gpg: Changed default cipher for --symmetric to AES-128.
864
865  * gpg: Fixed export of ECC keys and import of EdDSA keys.
866
867  * dirmngr: Fixed the KS_FETCH command.
868
869  * The speedo build system now downloads related packages and works
870    for non-Windows platforms.
871
872
873  [Noteworthy changes in version 2.1.0-beta783 (2014-08-14)]
874
875  * gpg: Add command --quick-gen-key.
876
877  * gpg: Make --quick-sign-key promote local key signatures.
878
879  * gpg: Added "show-usage" sub-option to --list-options.
880
881  * gpg: Screen keyserver responses to avoid importing unwanted keys
882    from rogue servers.
883
884  * gpg: Removed the option --pgp2 and --rfc1991 and the ability to
885    create PGP-2 compatible messages.
886
887  * gpg: Removed options --compress-keys and --compress-sigs.
888
889  * gpg: Cap attribute packets at 16MB.
890
891  * gpg: Improved output of --list-packets.
892
893  * gpg: Make with-colons output of --search-keys work again.
894
895  * gpgsm: Auto-create the ".gnupg" directory like gpg does.
896
897  * agent: Fold new passphrase warning prompts into one.
898
899  * scdaemon: Add support for the Smartcard-HSM card.
900
901  * scdaemon: Remove the use of the pcsc-wrapper.
902
903
904  [Noteworthy changes in version 2.1.0-beta751 (2014-07-03)]
905
906  * gpg: Create revocation certificates during key generation.
907
908  * gpg: Create exported secret keys and revocation certifciates with
909    mode 0700
910
911  * gpg: The validity of user ids is now shown by default.  To revert
912    this add "list-options no-show-uid-validity" to gpg.conf.
913
914  * gpg: Make export of secret keys work again.
915
916  * gpg: The output of --list-packets does now print the offset of the
917    packet and information about the packet header.
918
919  * gpg: Avoid DoS due to garbled compressed data packets. [CVE-2014-4617]
920
921  * gpg: Print more specific reason codes with the INV_RECP status.
922
923  * gpg: Cap RSA and Elgamal keysize at 4096 bit also for unattended
924    key generation.
925
926  * scdaemon: Support reader Gemalto IDBridge CT30 and pinpad of SCT
927    cyberJack go.
928
929  * The speedo build system has been improved.  It is now also possible
930    to build a partly working installer for Windows.
931
932
933  [Noteworthy changes in version 2.1.0-beta442 (2014-06-05)]
934
935  * gpg: Changed the format of key listings.  To revert to the old
936    format the option --legacy-list-mode is available.
937
938  * gpg: Add experimental signature support using curve Ed25519 and
939    with a patched Libgcrypt also encryption support with Curve25519.
940    [Update: this encryption support has been removed from 2.1.0 until
941    we have agreed on a suitable format.]
942
943  * gpg: Allow use of Brainpool curves.
944
945  * gpg: Accepts a space separated fingerprint as user ID.  This
946    allows to copy and paste the fingerprint from the key listing.
947
948  * gpg: The hash algorithm is now printed for signature records in key
949    listings.
950
951  * gpg: Reject signatures made using the MD5 hash algorithm unless the
952    new option --allow-weak-digest-algos or --pgp2 are given.
953
954  * gpg: Print a warning if the Gnome-Keyring-Daemon intercepts the
955    communication with the gpg-agent.
956
957  * gpg: New option --pinentry-mode.
958
959  * gpg: Fixed decryption using an OpenPGP card.
960
961  * gpg: Fixed bug with deeply nested compressed packets.
962
963  * gpg: Only the major version number is by default included in the
964    armored output.
965
966  * gpg: Do not create a trustdb file if --trust-model=always is used.
967
968  * gpg: Protect against rogue keyservers sending secret keys.
969
970  * gpg: The format of the fallback key listing ("gpg KEYFILE") is now
971    more aligned to the regular key listing ("gpg -k").
972
973  * gpg: The option--show-session-key prints its output now before the
974    decryption of the bulk message starts.
975
976  * gpg: New %U expando for the photo viewer.
977
978  * gpg,gpgsm: New option --with-secret.
979
980  * gpgsm: By default the users are now asked via the Pinentry whether
981    they trust an X.509 root key.  To prohibit interactive marking of
982    such keys, the new option --no-allow-mark-trusted may be used.
983
984  * gpgsm: New commands to export a secret RSA key in PKCS#1 or PKCS#8
985    format.
986
987  * gpgsm: Improved handling of re-issued CA certificates.
988
989  * agent: The included ssh agent does now support ECDSA keys.
990
991  * agent: New option --enable-putty-support to allow gpg-agent on
992    Windows to act as a Pageant replacement with full smartcard support.
993
994  * scdaemon: New option --enable-pinpad-varlen.
995
996  * scdaemon: Various fixes for pinpad equipped card readers.
997
998  * scdaemon: Rename option --disable-pinpad (was --disable-keypad).
999
1000  * scdaemon: Better support fo CCID readers.  Now, internal CCID
1001    driver supports readers with no auto configuration feature.
1002
1003  * dirmngr: Removed support for the original HKP keyserver which is
1004    not anymore used by any site.
1005
1006  * dirmngr: Improved support for keyserver pools.
1007
1008  * tools: New option --dirmngr for gpg-connect-agent.
1009
1010  * The GNU Pth library has been replaced by the new nPth library.
1011
1012  * Support installation as portable application under Windows.
1013
1014  * All kind of other improvements - see the git log.
1015
1016
1017  [Noteworthy changes in version 2.1.0beta3 (2011-12-20)]
1018
1019  * gpg: Fixed regression in the secret key export function.
1020
1021  * gpg: Allow generation of card keys up to 4096 bit.
1022
1023  * gpgsm: Preliminary support for the validation model "steed".
1024
1025  * gpgsm: Improved certificate creation.
1026
1027  * agent: Support the SSH confirm flag.
1028
1029  * agent: New option to select a passphrase mode.  The loopback
1030    mode may be used to bypass Pinentry.
1031
1032  * agent: The Assuan commands KILLAGENT and KILLSCD are working again.
1033
1034  * scdaemon: Does not anymore block after changing a card (regression
1035    fix).
1036
1037  * tools: gpg-connect-agent does now proberly display the help output
1038    for "SCD HELP" commands.
1039
1040
1041  [Noteworthy changes in version 2.1.0beta2 (2011-03-08)]
1042
1043  * gpg: ECC support as described by draft-jivsov-openpgp-ecc-06.txt
1044    [Update: now known as RFC-6637].
1045
1046  * gpg: Print "AES128" instead of "AES".  This change introduces a
1047    little incompatibility for tools using "gpg --list-config".  We
1048    hope that these tools are written robust enough to accept this new
1049    algorithm name as well.
1050
1051  * gpgsm: New feature to create certificates from a parameter file.
1052    Add prompt to the --gen-key UI to create self-signed certificates.
1053
1054  * agent: TMPDIR is now also honored when creating a socket using
1055    the --no-standard-socket option and with symcryptrun's temp files.
1056
1057  * scdaemon: Fixed a bug where scdaemon sends a signal to gpg-agent
1058    running in non-daemon mode.
1059
1060  * dirmngr: Fixed CRL loading under W32 (bug#1010).
1061
1062  * Dirmngr has taken over the function of the keyserver helpers.  Thus
1063    we now have a specified direct interface to keyservers via Dirmngr.
1064    LDAP, DNS and mail backends are not yet implemented.
1065
1066  * Fixed TTY management for pinentries and session variable update
1067    problem.
1068
1069
1070  [Noteworthy changes in version 2.1.0beta1 (2010-10-26)]
1071
1072  * gpg: secring.gpg is not anymore used but all secret key operations
1073    are delegated to gpg-agent.  The import command moves secret keys
1074    to the agent.
1075
1076  * gpg: The OpenPGP import command is now able to merge secret keys.
1077
1078  * gpg: Encrypted OpenPGP messages with trailing data (e.g. other
1079    OpenPGP packets) are now correctly parsed.
1080
1081  * gpg: Given sufficient permissions Dirmngr is started automagically.
1082
1083  * gpg: Fixed output of "gpgconf --check-options".
1084
1085  * gpg: Removed options --export-options(export-secret-subkey-passwd)
1086    and --simple-sk-checksum.
1087
1088  * gpg: New options --try-secret-key.
1089
1090  * gpg: Support DNS lookups for SRV, PKA and CERT on W32.
1091
1092  * gpgsm: The --audit-log feature is now more complete.
1093
1094  * gpgsm: The default for --include-cert is now to include all
1095    certificates in the chain except for the root certificate.
1096
1097  * gpgsm: New option --ignore-cert-extension.
1098
1099  * g13: The G13 tool for disk encryption key management has been
1100    added.
1101
1102  * agent: If the agent's --use-standard-socket option is active, all
1103    tools try to start and daemonize the agent on the fly.  In the past
1104    this was only supported on W32; on non-W32 systems the new
1105    configure option --disable-standard-socket may now be used to
1106    disable this new default.
1107
1108  * agent: New and changed passphrases are now created with an
1109    iteration count requiring about 100ms of CPU work.
1110
1111  * dirmngr: Dirmngr is now a part of this package.  It is now also
1112    expected to run as a system service and the configuration
1113    directories are changed to the GnuPG name space. [Update: 2.1.0
1114    starts dirmngr on demand as user daemon.]
1115
1116  * Support for Windows CE. [Update: This has not been tested for the
1117    2.1.0 release]
1118
1119  * Numerical values may now be used as an alternative to the
1120    debug-level keywords.
1121
1122  See-also: gnupg-announce/2014q4/000358.html
1123
1124
1125 Version 2.0.28 (2015-06-02)
1126 Version 2.0.27 (2015-02-18)
1127 Version 2.0.26 (2014-08-12)
1128 Version 2.0.25 (2014-06-30)
1129 Version 2.0.24 (2014-06-24)
1130 Version 2.0.23 (2014-06-03)
1131 Version 2.0.22 (2013-10-04)
1132 Version 2.0.21 (2013-08-19)
1133 Version 2.0.20 (2013-05-10)
1134 Version 2.0.19 (2012-03-27)
1135 Version 2.0.18 (2011-08-04)
1136 Version 2.0.17 (2011-01-13)
1137 Version 2.0.16 (2010-07-19)
1138 Version 2.0.15 (2010-03-09)
1139 Version 2.0.14 (2009-12-21)
1140
1141
1142 Noteworthy changes in version 2.0.13 (2009-09-04)
1143 -------------------------------------------------
1144
1145  * GPG now generates 2048 bit RSA keys by default.  The default hash
1146    algorithm preferences has changed to prefer SHA-256 over SHA-1.
1147    2048 bit DSA keys are now generated to use a 256 bit hash algorithm
1148
1149  * The envvars XMODIFIERS, GTK_IM_MODULE and QT_IM_MODULE are now
1150    passed to the Pinentry to make SCIM work.
1151
1152  * The GPGSM command --gen-key features a --batch mode and implements
1153    all features of gpgsm-gencert.sh in standard mode.
1154
1155  * New option --re-import for GPGSM's IMPORT server command.
1156
1157  * Enhanced writing of existing keys to OpenPGP v2 cards.
1158
1159  * Add hack to the internal CCID driver to allow the use of some
1160    Omnikey based card readers with 2048 bit keys.
1161
1162  * GPG now repeatly asks the user to insert the requested OpenPGP
1163    card.  This can be disabled with --limit-card-insert-tries=1.
1164
1165  * Minor bug fixes.
1166
1167  See-also: gnupg-announce/2009q3/000294.html
1168
1169
1170 Noteworthy changes in version 2.0.12 (2009-06-17)
1171 -------------------------------------------------
1172
1173  * GPGSM now always lists ephemeral certificates if specified by
1174    fingerprint or keygrip.
1175
1176  * New command "KEYINFO" for GPG_AGENT.  GPGSM now also returns
1177    information about smartcards.
1178
1179  * Made sure not to leak file descriptors if running gpg-agent with a
1180    command.  Restore the signal mask to solve a problem in Mono.
1181
1182  * Changed order of the confirmation questions for root certificates
1183    and store negative answers in trustlist.txt.
1184
1185  * Better synchronization of concurrent smartcard sessions.
1186
1187  * Support 2048 bit OpenPGP cards.
1188
1189  * Support Telesec Netkey 3 cards.
1190
1191  * The gpg-protect-tool now uses gpg-agent via libassuan.  Under
1192    Windows the Pinentry will now be put into the foreground.
1193
1194  * Changed code to avoid a possible Mac OS X system freeze.
1195
1196  See-also: gnupg-announce/2009q2/000288.html
1197
1198
1199 Noteworthy changes in version 2.0.11 (2009-03-03)
1200 -------------------------------------------------
1201
1202  * Fixed a problem in SCDAEMON which caused unexpected card resets.
1203
1204  * SCDAEMON is now aware of the Geldkarte.
1205
1206  * The SCDAEMON option --allow-admin is now used by default.
1207
1208  * GPGCONF now restarts SCdaemon if necessary.
1209
1210  * The default cipher algorithm in GPGSM is now again 3DES.  This is
1211    due to interoperability problems with Outlook 2003 which still
1212    can't cope with AES.
1213
1214  See-also: gnupg-announce/2009q1/000287.html
1215
1216
1217 Noteworthy changes in version 2.0.10 (2009-01-12)
1218 -------------------------------------------------
1219
1220  * [gpg] New keyserver helper gpg2keys_kdns as generic DNS CERT
1221    lookup.  Run with --help for a short description.  Requires the
1222    ADNS library.
1223
1224  * [gpg] New mechanisms "local" and "nodefault" for --auto-key-locate.
1225    Fixed a few problems with this option.
1226
1227  * [gpg] New command --locate-keys.
1228
1229  * [gpg] New options --with-sig-list and --with-sig-check.
1230
1231  * [gpg] The option "-sat" is no longer an alias for --clearsign.
1232
1233  * [gpg] The option --fixed-list-mode is now implicitly used and obsolete.
1234
1235  * [gpg] New control statement %ask-passphrase for the unattended key
1236    generation.
1237
1238  * [gpg] The algorithm to compute the SIG_ID status has been changed.
1239
1240  * [gpgsm] Now uses AES by default.
1241
1242  * [gpgsm] Made --output option work with --export-secret-key-p12.
1243
1244  * [gpg-agent] Terminate process if the own listening socket is not
1245    anymore served by ourself.
1246
1247  * [scdaemon] Made it more robust on W32.
1248
1249  * [gpg-connect-agent] Accept commands given as command line arguments.
1250
1251  * [w32] Initialized the socket subsystem for all keyserver helpers.
1252
1253  * [w32] The sysconf directory has been moved from a subdirectory of
1254    the installation directory to %CSIDL_COMMON_APPDATA%/GNU/etc/gnupg.
1255
1256  * [w32] The gnupg2.nls directory is not anymore used.  The standard
1257    locale directory is now used.
1258
1259  * [w32] Fixed a race condition between gpg and gpgsm in the use of
1260    temporary file names.
1261
1262  * The gpg-preset-passphrase mechanism works again.  An arbitrary
1263    string may now be used for a custom cache ID.
1264
1265  * Admin PINs are cached again (bug in 2.0.9).
1266
1267  * Support for version 2 OpenPGP cards.
1268
1269  * Libgcrypt 1.4 is now required.
1270
1271  See-also: gnupg-announce/2009q1/000284.html
1272
1273
1274 Noteworthy changes in version 2.0.9 (2008-03-26)
1275 ------------------------------------------------
1276
1277  * Gpgsm always tries to locate missing certificates from a running
1278    Dirmngr's cache.
1279
1280  * Tweaks for Windows.
1281
1282  * The Admin PIN for OpenPGP cards may now be entered with the pinpad.
1283
1284  * Improved certificate chain construction.
1285
1286  * Extended the PKITS framework.
1287
1288  * Fixed a bug in the ambigious name detection.
1289
1290  * Fixed possible memory corruption while importing OpenPGP keys (bug
1291    introduced with 2.0.8). [CVE-2008-1530]
1292
1293  * Minor bug fixes.
1294
1295
1296
1297 Noteworthy changes in version 2.0.8 (2007-12-20)
1298 ------------------------------------------------
1299
1300  * Enhanced gpg-connect-agent with a small scripting language.
1301
1302  * New option --list-config for gpgconf.
1303
1304  * Fixed a crash in gpgconf.
1305
1306  * Gpg-agent now supports the passphrase quality bar of the latest
1307    Pinentry.
1308
1309  * The envvars XAUTHORITY and PINENTRY_USER_DATA are now passed to the
1310    Pinentry.
1311
1312  * Fixed the auto creation of the key stub for smartcards.
1313
1314  * Fixed a rare bug in decryption using the OpenPGP card.
1315
1316  * Creating DSA2 keys is now possible.
1317
1318  * New option --extra-digest-algo for gpgsm to allow verification of
1319    broken signatures.
1320
1321  * Allow encryption with legacy Elgamal sign+encrypt keys with option
1322    --rfc2440.
1323
1324  * Windows is now a supported platform.
1325
1326  * Made sure that under Windows the file permissions of the socket are
1327    taken into account.  This required a change of our socket emulation
1328    code and changed the IPC protocol under Windows.
1329
1330  See-also: gnupg-announce/2007q4/000267.html
1331
1332
1333 Noteworthy changes in version 2.0.7 (2007-09-10)
1334 ------------------------------------------------
1335
1336  * Fixed encryption problem if duplicate certificates are in the
1337    keybox.
1338
1339  * Made it work on Windows Vista.  Note that the entire Windows port
1340    is still considered Beta.
1341
1342  * Add new options min-passphrase-nonalpha, check-passphrase-pattern,
1343    enforce-passphrase-constraints and max-passphrase-days to
1344    gpg-agent.
1345
1346  * Add command --check-components to gpgconf.  Gpgconf now uses the
1347    installed versions of the programs and does not anymore search via
1348    PATH for them.
1349
1350  See-also: gnupg-announce/2007q3/000259.html
1351
1352
1353 Noteworthy changes in version 2.0.6 (2007-08-16)
1354 ------------------------------------------------
1355
1356  * GPGSM does now grok --default-key.
1357
1358  * GPGCONF is now aware of --default-key and --encrypt-to.
1359
1360  * GPGSM does again correctly print the serial number as well the the
1361    various keyids.  This was broken since 2.0.4.
1362
1363  * New option --validation-model and support for the chain-model.
1364
1365  * Improved Windows support.
1366
1367  See-also: gnupg-announce/2007q3/000258.html
1368
1369
1370 Noteworthy changes in version 2.0.5 (2007-07-05)
1371 ------------------------------------------------
1372
1373  * Switched license to GPLv3.
1374
1375  * Basic support for Windows.  Run "./autogen.sh --build-w32" to build
1376    it.  As usual the mingw cross compiling toolchain is required.
1377
1378  * Fixed bug when using the --p12-charset without --armor.
1379
1380  * The command --gen-key may now be used instead of the
1381    gpgsm-gencert.sh script.
1382
1383  * Changed key generation to reveal less information about the
1384    machine.  Bug fixes for gpg2's card key generation.
1385
1386  See-also: gnupg-announce/2007q3/000255.html
1387
1388
1389 Noteworthy changes in version 2.0.4 (2007-05-09)
1390 ------------------------------------------------
1391
1392  * The server mode key listing commands are now also working for
1393    systems without the funopen/fopencookie API.
1394
1395  * PKCS#12 import now tries several encodings in case the passphrase
1396    was not utf-8 encoded.  New option --p12-charset for gpgsm.
1397
1398  * Improved the libgcrypt logging support in all modules.
1399
1400  See-also: gnupg-announce/2007q2/000254.html
1401
1402
1403 Noteworthy changes in version 2.0.3 (2007-03-08)
1404 ------------------------------------------------
1405
1406  * By default, do not allow processing multiple plaintexts in a single
1407    stream.  Many programs that called GnuPG were assuming that GnuPG
1408    did not permit this, and were thus not using the plaintext boundary
1409    status tags that GnuPG provides.  This change makes GnuPG reject
1410    such messages by default which makes those programs safe again.
1411    --allow-multiple-messages returns to the old behavior. [CVE-2007-1263].
1412
1413  * New --verify-option show-primary-uid-only.
1414
1415  * gpgconf may now reads a global configuration file to select which
1416    options are changeable by a frontend.  The new applygnupgdefaults
1417    tool may be used by an admin to set default options for all users.
1418
1419  * The PIN pad of the Cherry XX44 keyboard is now supported.  The
1420    DINSIG and the NKS applications are now also aware of PIN pads.
1421
1422  See-also: gnupg-announce/2007q1/000252.html
1423
1424
1425 Noteworthy changes in version 2.0.2 (2007-01-31)
1426 ------------------------------------------------
1427
1428  * Fixed a serious and exploitable bug in processing encrypted
1429    packages. [CVE-2006-6235].
1430
1431  * Added --passphrase-repeat to set the number of times GPG will
1432    prompt for a new passphrase to be repeated.  This is useful to help
1433    memorize a new passphrase.  The default is 1 repetition.
1434
1435  * Using a PIN pad does now also work for the signing key.
1436
1437  * A warning is displayed by gpg-agent if a new passphrase is too
1438    short.  New option --min-passphrase-len defaults to 8.
1439
1440  * The status code BEGIN_SIGNING now shows the used hash algorithms.
1441
1442  See-also: gnupg-announce/2007q1/000249.html
1443
1444
1445 Noteworthy changes in version 2.0.1 (2006-11-28)
1446 ------------------------------------------------
1447
1448  * Experimental support for the PIN pads of the SPR 532 and the Kaan
1449    Advanced card readers.  Add "disable-keypad" scdaemon.conf if you
1450    don't want it.  Does currently only work for the OpenPGP card and
1451    its authentication and decrypt keys.
1452
1453  * Fixed build problems on some some platforms and crashes on amd64.
1454
1455  * Fixed a buffer overflow in gpg2. [bug#728,CVE-2006-6169]
1456
1457  See-also: gnupg-announce/2006q4/000242.html
1458
1459
1460 Noteworthy changes in version 2.0.0 (2006-11-11)
1461 ------------------------------------------------
1462
1463  * First stable version of a GnuPG integrating OpenPGP and S/MIME.
1464
1465  See-also: gnupg-announce/2006q4/000239.html
1466
1467
1468 Noteworthy changes in version 1.9.95 (2006-11-06)
1469 -------------------------------------------------
1470
1471  * Minor bug fixes.
1472
1473
1474 Noteworthy changes in version 1.9.94 (2006-10-24)
1475 -------------------------------------------------
1476
1477  * Keys for gpgsm may now be specified using a keygrip.  A keygrip is
1478    indicated by a prefixing it with an ampersand.
1479
1480  * gpgconf now supports switching the CMS cipher algo (e.g. to AES).
1481
1482  * New command --gpgconf-test for all major tools. This may be used to
1483    check whether the configuration file is sane.
1484
1485
1486 Noteworthy changes in version 1.9.93 (2006-10-18)
1487 -------------------------------------------------
1488
1489  * In --with-validation mode gpgsm will now also ask whether a root
1490    certificate should be trusted.
1491
1492  * Link to Pth only if really necessary.
1493
1494  * Fixed a pubring corruption bug in gpg2 occurring when importing
1495    signatures or keys with insane lengths.
1496
1497  * Fixed v3 keyID calculation bug in gpg2.
1498
1499  * More tweaks for certificates without extensions.
1500
1501
1502 Noteworthy changes in version 1.9.92 (2006-10-11)
1503 -------------------------------------------------
1504
1505  * Bug fixes.
1506
1507  See-also: gnupg-announce/2006q4/000236.html
1508
1509
1510 Noteworthy changes in version 1.9.91 (2006-10-04)
1511 -------------------------------------------------
1512
1513  * New "relax" flag for trustlist.txt to allow root CA certificates
1514    without BasicContraints.
1515
1516  * [gpg2] Removed the -k PGP 2 compatibility hack.  -k is now an
1517    alias for --list-keys.
1518
1519  * [gpg2] Print a warning if "-sat" is used instead of "--clearsign".
1520
1521
1522 Noteworthy changes in version 1.9.90 (2006-09-25)
1523 -------------------------------------------------
1524
1525  * Made readline work for gpg.
1526
1527  * Cleanups und minor bug fixes.
1528
1529  * Included translations from gnupg 1.4.5.
1530
1531
1532 Noteworthy changes in version 1.9.23 (2006-09-18)
1533 -------------------------------------------------
1534
1535  * Regular man pages for most tools are now build directly from the
1536    Texinfo source.
1537
1538  * The gpg code from 1.4.5 has been fully merged into this release.
1539    The configure option --enable-gpg is still required to build this
1540    gpg part.  For production use of OpenPGP the gpg version 1.4.5 is
1541    still recommended.  Note, that gpg will be installed under the name
1542    gpg2 to allow coexisting with an 1.4.x gpg.
1543
1544  * API change in gpg-agent's pkdecrypt command.  Thus an older gpgsm
1545    may not be used with the current gpg-agent.
1546
1547  * The scdaemon will now call a script on reader status changes.
1548
1549  * gpgsm now allows file descriptor passing for "INPUT", "OUTPUT" and
1550    "MESSAGE".
1551
1552  * The gpgsm server may now output a key listing to the output file
1553    handle. This needs to be enabled using "OPTION list-to-output=1".
1554
1555  * The --output option of gpgsm has now an effect on list-keys.
1556
1557  * New gpgsm commands --dump-chain and list-chain.
1558
1559  * gpg-connect-agent has new options to utilize descriptor passing.
1560
1561  * A global trustlist may now be used.  See doc/examples/trustlist.txt.
1562
1563  * When creating a new pubring.kbx keybox common certificates are
1564    imported.
1565
1566
1567 Noteworthy changes in version 1.9.22 (2006-07-27)
1568 -------------------------------------------------
1569
1570  * Enhanced pkcs#12 support to allow import from simple keyBags.
1571
1572  * Exporting to pkcs#12 now create bag attributes so that Mozilla is
1573    able to import the files.
1574
1575  * Fixed uploading of certain keys to the smart card.
1576
1577
1578 Noteworthy changes in version 1.9.21 (2006-06-20)
1579 -------------------------------------------------
1580
1581  * New command APDU for scdaemon to allow using it for general card
1582    access.  Might be used through gpg-connect-agent by using the SCD
1583    prefix command.
1584
1585  * Support for the CardMan 4040 PCMCIA reader (Linux 2.6.15 required).
1586
1587  * Scdaemon does not anymore reset cards at the end of a connection.
1588
1589  * Kludge to allow use of Bundesnetzagentur issued X.509 certificates.
1590
1591  * Added --hash=xxx option to scdaemon's PKSIGN command.
1592
1593  * Pkcs#12 files are now created with a MAC.  This is for better
1594    interoperability.
1595
1596  * Collected bug fixes and minor other changes.
1597
1598
1599 Noteworthy changes in version 1.9.20 (2005-12-20)
1600 -------------------------------------------------
1601
1602  * Importing pkcs#12 files created be recent versions of Mozilla works
1603    again.
1604
1605  * Basic support for qualified signatures.
1606
1607  * New debug tool gpgparsemail.
1608
1609
1610 Noteworthy changes in version 1.9.19 (2005-09-12)
1611 -------------------------------------------------
1612
1613  * The Belgian eID card is now supported for signatures and ssh.
1614    Other pkcs#15 cards should work as well.
1615
1616  * Fixed bug in --export-secret-key-p12 so that certificates are again
1617    included.
1618
1619
1620 Noteworthy changes in version 1.9.18 (2005-08-01)
1621 -------------------------------------------------
1622
1623  * [gpgsm] Now allows for more than one email address as well as URIs
1624    and dnsNames in certificate request generation.  A keygrip may be
1625    given to create a request from an existing key.
1626
1627  * A couple of minor bug fixes.
1628
1629
1630 Noteworthy changes in version 1.9.17 (2005-06-20)
1631 -------------------------------------------------
1632
1633  * gpg-connect-agent has now features to handle Assuan INQUIRE
1634    commands.
1635
1636  * Internal changes for OpenPGP cards. New Assuan command WRITEKEY.
1637
1638  * GNU Pth is now a hard requirement.
1639
1640  * [scdaemon] Support for OpenSC has been removed.  Instead a new and
1641    straightforward pkcs#15 modules has been written.  As of now it
1642    does allows only signing using TCOS cards but we are going to
1643    enhance it to match all the old capabilities.
1644
1645  * [gpg-agent] New option --write-env-file and Assuan command
1646    UPDATESTARTUPTTY.
1647
1648  * [gpg-agent] New option --default-cache-ttl-ssh to set the TTL for
1649    SSH passphrase caching independent from the other passphrases.
1650
1651
1652 Noteworthy changes in version 1.9.16 (2005-04-21)
1653 -------------------------------------------------
1654
1655  * gpg-agent does now support the ssh-agent protocol and thus allows
1656    to use the pinentry as well as the OpenPGP smartcard with ssh.
1657
1658  * New tool gpg-connect-agent as a general client for the gpg-agent.
1659
1660  * New tool symcryptrun as a wrapper for certain encryption tools.
1661
1662  * The gpg tool is not anymore build by default because those gpg
1663    versions available in the gnupg 1.4 series are far more matured.
1664
1665
1666 Noteworthy changes in version 1.9.15 (2005-01-13)
1667 -------------------------------------------------
1668
1669  * Fixed passphrase caching bug.
1670
1671  * Better support for CCID readers; the reader from Cherry RS 6700 USB
1672    does now work.
1673
1674
1675 Noteworthy changes in version 1.9.14 (2004-12-22)
1676 -------------------------------------------------
1677
1678  * [gpg-agent] New option --use-standard-socket to allow the use of a
1679    fixed socket.  gpgsm falls back to this socket if GPG_AGENT_INFO
1680    has not been set.
1681
1682  * Ported to MS Windows with some functional limitations.
1683
1684  * New tool gpg-preset-passphrase.
1685
1686
1687 Noteworthy changes in version 1.9.13 (2004-12-03)
1688 -------------------------------------------------
1689
1690  * [gpgsm] New option --prefer-system-dirmngr.
1691
1692  * Minor cleanups and debugging aids.
1693
1694
1695 Noteworthy changes in version 1.9.12 (2004-10-22)
1696 -------------------------------------------------
1697
1698  * [scdaemon] Partly rewrote the PC/SC code.
1699
1700  * Removed the sc-investigate tool.  It is now in a separate package
1701    available at ftp://ftp.g10code.com/g10code/gscutils/ .
1702
1703  * [gpg-agent] Fixed logging problem.
1704
1705
1706 Noteworthy changes in version 1.9.11 (2004-10-01)
1707 -------------------------------------------------
1708
1709  * When using --import along with --with-validation, the imported
1710    certificates are validated and only imported if they are fully
1711    valid.
1712
1713  * [gpg-agent] New option --max-cache-ttl.
1714
1715  * [gpg-agent] When used without --daemon or --server, gpg-agent now
1716    check whether a agent is already running and usable.
1717
1718  * Fixed some i18n problems.
1719
1720
1721 Noteworthy changes in version 1.9.10 (2004-07-22)
1722 -------------------------------------------------
1723
1724  * Fixed a serious bug in the checking of trusted root certificates.
1725
1726  * New configure option --enable-agent-pnly allows to build and
1727    install just the agent.
1728
1729  * Fixed a problem with the log file handling.
1730
1731
1732 Noteworthy changes in version 1.9.9 (2004-06-08)
1733 ------------------------------------------------
1734
1735  * [gpg-agent] The new option --allow-mark-trusted is now required to
1736    allow gpg-agent to add a key to the trustlist.txt after user
1737    confirmation.
1738
1739  * Creating PKCS#10 requests does now honor the key usage.
1740
1741
1742 Noteworthy changes in version 1.9.8 (2004-04-29)
1743 ------------------------------------------------
1744
1745  * [scdaemon] Overhauled the internal CCID driver.
1746
1747  * [scdaemon] Status files named ~/.gnupg/reader_<n>.status are now
1748    written when using the internal CCID driver.
1749
1750  * [gpgsm] New commands --dump-{,secret,external}-keys to show a very
1751    detailed view of the certificates.
1752
1753  * The keybox gets now compressed after 3 hours and ephemeral
1754    stored certificates are deleted after about a day.
1755
1756  * [gpg] Usability fixes for --card-edit.  Note, that this has already
1757    been ported back to gnupg-1.3
1758
1759
1760 Noteworthy changes in version 1.9.7 (2004-04-06)
1761 ------------------------------------------------
1762
1763  * Instrumented the modules for gpgconf.
1764
1765  * Added support for DINSIG card applications.
1766
1767  * Include the smimeCapabilities attribute with signed messages.
1768
1769  * Now uses the gettext domain "gnupg2" to avoid conflicts with gnupg
1770    versions < 1.9.
1771
1772
1773 Noteworthy changes in version 1.9.6 (2004-03-06)
1774 ------------------------------------------------
1775
1776  * Code cleanups and bug fixes.
1777
1778
1779 Noteworthy changes in version 1.9.5 (2004-02-21)
1780 ------------------------------------------------
1781
1782  * gpg-protect-tool gets now installed into libexec as it ought to be.
1783    Cleaned up the build system to better comply with the coding
1784    standards.
1785
1786  * [gpgsm] The --import command is now able to autodetect pkcs#12
1787    files and import secret and private keys from this file format.
1788    A new command --export-secret-key-p12 is provided to allow
1789    exporting of secret keys in PKCS\#12 format.
1790
1791  * [gpgsm] The pinentry will now present a description of the key for
1792    whom the passphrase is requested.
1793
1794  * [gpgsm] New option --with-validation to check the validity of key
1795    while listing it.
1796
1797  * New option --debug-level={none,basic,advanced,expert,guru} to map
1798    the debug flags to sensitive levels on a per program base.
1799
1800
1801 Noteworthy changes in version 1.9.4 (2004-01-30)
1802 ------------------------------------------------
1803
1804  * Added support for the Telesec NKS 2.0 card application.
1805
1806  * Added simple tool addgnupghome to create .gnupg directories from
1807    /etc/skel/.gnupg.
1808
1809  * Various minor bug fixes and cleanups; mainly gpgsm and gpg-agent
1810    related.
1811
1812
1813 Noteworthy changes in version 1.9.3 (2003-12-23)
1814 ------------------------------------------------
1815
1816  * New gpgsm options --{enable,disable}-ocsp to validate keys using
1817    OCSP. This option requires a not yet released DirMngr version.
1818    Default is disabled.
1819
1820  * The --log-file option may now be used to print logs to a socket.
1821    Prefix the socket name with "socket://" to enable this.  This does
1822    not work on all systems and falls back to stderr if there is a
1823    problem with the socket.
1824
1825  * The options --encrypt-to and --no-encrypt-to now work the same in
1826    gpgsm as in gpg.  Note, they are also used in server mode.
1827
1828  * Duplicated recipients are now silently removed in gpgsm.
1829
1830
1831 Noteworthy changes in version 1.9.2 (2003-11-17)
1832 ------------------------------------------------
1833
1834  * On card key generation is no longer done using the --gen-key
1835    command but from the menu provided by the new --card-edit command.
1836
1837  * PINs are now properly cached and there are only 2 PINs visible.
1838    The 3rd PIN (CHV2) is internally syncronized with the regular PIN.
1839
1840  * All kind of other internal stuff.
1841
1842
1843 Noteworthy changes in version 1.9.1 (2003-09-06)
1844 ------------------------------------------------
1845
1846  * Support for OpenSC is back. scdaemon supports a --disable-opensc to
1847    disable OpenSC use at runtime, so that PC/SC or ct-API can still be
1848    used directly.
1849
1850  * Rudimentary support for the SCR335 smartcard reader using an
1851    internal driver.  Requires current libusb from CVS.
1852
1853  * Bug fixes.
1854
1855
1856 Noteworthy changes in version 1.9.0 (2003-08-05)
1857 ------------------------------------------------
1858
1859       ====== PLEASE SEE README-alpha =======
1860
1861  * gpg has been renamed to gpg2 and gpgv to gpgv2.  This is a
1862    temporary change to allow co-existing with stable gpg versions.
1863
1864  * ~/.gnupg/gpg.conf-1.9.0 is fist tried as config file before the
1865    usual gpg.conf.
1866
1867  * Removed the -k, -kv and -kvv commands.  -k is now an alias to
1868    --list-keys.  New command -K as alias for --list-secret-keys.
1869
1870  * Removed --run-as-shm-coprocess feature.
1871
1872  * gpg does now also use libgcrypt, libgpg-error is required.
1873
1874  * New gpgsm commands --call-dirmngr and --call-protect-tool.
1875
1876  * Changing a passphrase is now possible using "gpgsm --passwd"
1877
1878  * The content-type attribute is now recognized and created.
1879
1880  * The agent does now reread certain options on receiving a HUP.
1881
1882  * The pinentry is now forked for each request so that clients with
1883    different environments are supported.  When running in daemon mode
1884    and --keep-display is not used the DISPLAY variable is ignored.
1885
1886  * Merged stuff from the newpg branch and started this new
1887    development branch.
1888
1889
1890 Version 1.4.19 (2015-02-27)
1891 Version 1.4.18 (2014-06-30)
1892 Version 1.4.17 (2014-06-23)
1893 Version 1.4.16 (2013-12-18)
1894 Version 1.4.15 (2013-10-04)
1895 Version 1.4.14 (2013-07-25)
1896 Version 1.4.13 (2012-12-20)
1897 Version 1.4.12 (2012-01-30)
1898 Version 1.4.11 (2010-10-18)
1899 Version 1.4.10 (2009-09-02)
1900 Version 1.4.9 (2008-03-26)
1901 Version 1.4.8 (2007-12-20)
1902 Version 1.4.7 (2007-03-05)
1903 Version 1.4.6 (2006-12-06)
1904 Version 1.4.5 (2006-08-01)
1905 Version 1.4.4 (2006-06-25)
1906 Version 1.4.3 (2006-04-03)
1907 Version 1.4.2 (2005-07-26)
1908 Version 1.4.1 (2005-03-15)
1909 Version 1.4.0 (2004-12-16)
1910
1911
1912 Noteworthy changes in version 1.3.2 (2003-05-27)
1913 ------------------------------------------------
1914
1915     * New "--gnupg" option (set by default) that disables --openpgp,
1916       and the various --pgpX emulation options.  This replaces
1917       --no-openpgp, and --no-pgpX, and also means that GnuPG has
1918       finally grown a --gnupg option to make GnuPG act like GnuPG.
1919
1920     * A bug in key validation has been fixed.  This bug only affects
1921       keys with more than one user ID (photo IDs do not count here),
1922       and results in all user IDs on a given key being treated with
1923       the validity of the most-valid user ID on that key.
1924
1925     * Notation names that do not contain a '@' are no longer allowed
1926       unless --expert is set.  This is to help prevent pollution of
1927       the (as yet unused) IETF notation namespace.
1928
1929     * Multiple trust models are now supported via the --trust-model
1930       option.  The options are "pgp" (web-of-trust plus trust
1931       signatures), "classic" (web-of-trust only), and "always"
1932       (identical to the --always-trust option).
1933
1934     * The --personal-{cipher|digest|compression}-preferences are now
1935       consulted to get default algorithms before resorting to the
1936       last-ditch defaults of --s2k-cipher-algo, SHA1, and ZIP
1937       respectively.  This allows a user to set algorithms to use in a
1938       safe manner so they are used when legal to do so, without
1939       forcing them on for all messages.
1940
1941     * New --primary-keyring option to designate the keyring that the
1942       user wants new keys imported into.
1943
1944     * --s2k-digest-algo is now used for all password mangling.
1945       Earlier versions used both --s2k-digest-algo and --digest-algo
1946       for passphrase mangling.
1947
1948     * Handling of --hidden-recipient or --throw-keyid messages is now
1949       easier - the user only needs to give their passphrase once, and
1950       GnuPG will try it against all of the available secret keys.
1951
1952     * Care is taken to prevent compiler optimization from removing
1953       memory wiping code.
1954
1955     * New option --no-mangle-dos-filenames so that filenames are not
1956       truncated in the W32 version.
1957
1958     * A "convert-from-106" script has been added.  This is a simple
1959       script that automates the conversion from a 1.0.6 or earlier
1960       version of GnuPG to a 1.0.7 or later version.
1961
1962     * Disabled keys are now skipped when selecting keys for
1963       encryption.  If you are using the --with-colons key listings to
1964       detect disabled keys, please see doc/DETAILS for a minor format
1965       change in this release.
1966
1967     * Minor trustdb changes to make the trust calculations match
1968       common usage.
1969
1970     * New command "revuid" in the --edit-key menu to revoke a user ID.
1971       This is a simpler interface to the old method (which still
1972       works) of revoking the user ID self-signature.
1973
1974     * Status VALIDSIG does now also print the primary key's
1975       fingerprint, as well as the signature version, pubkey algorithm,
1976       hash algorithm, and signature class.
1977
1978     * Add read-only support for the SHA-256 hash, and optional
1979       read-only support for the SHA-384 and SHA-512 hashes.
1980
1981     * New option --enable-progress-filter for use with frontends.
1982
1983     * DNS SRV records are used in HKP keyserver lookups to allow
1984       administrators to load balance and select keyserver ports
1985       automatically.  This is as specified in
1986       draft-shaw-openpgp-hkp-00.txt.
1987
1988     * When using the "keyid!" syntax during a key export, only that
1989       specified key is exported.  If the key in question is a subkey,
1990       the primary key plus only that subkey is exported.
1991
1992     * configure --disable-xxx options to disable individual algorithms
1993       at build time.  This can be used to build a smaller gpg binary
1994       for embedded uses where space is tight.  See the README file for
1995       the algorithms that can be used with this option, or use
1996       --enable-minimal to build the smallest gpg possible (disables
1997       all optional algorithms, disables keyserver access, and disables
1998       photo IDs).
1999
2000     * The keyserver no-modify flag on a key can now be displayed and
2001       modified.
2002
2003     * Note that the TIGER/192 digest algorithm is in the process of
2004       being dropped from the OpenPGP standard.  While this release of
2005       GnuPG still contains it, it is disabled by default.  To ensure
2006       you will still be able to use your messages with future versions
2007       of GnuPG and other OpenPGP programs, please do not use this
2008       algorithm.
2009
2010     See-also: gnupg-announce/2003q2/000153.html
2011
2012
2013 Noteworthy changes in version 1.3.1 (2002-11-12)
2014 ------------------------------------------------
2015
2016     * Trust signature support.  This is based on the Maurer trust
2017       model where a user can specify the trust level along with the
2018       signature with multiple levels so users can delegate
2019       certification ability to other users, possibly restricted by a
2020       regular expression on the user ID.  Note that full trust
2021       signature support requires a regular expression parsing library.
2022       The regexp code from glibc 2.3.1 is included for those platforms
2023       that don't have working regexp functions available.  The
2024       configure option --disable-regex may be used to disable any
2025       regular expression code, which will make GnuPG ignore any trust
2026       signature with a regular expression included.
2027
2028     * Two new commands --hidden-recipient (-R) and --hidden-encrypt-to
2029       encrypt to a user, but hide the identity of that user.  This is
2030       the same functionality as --throw-keyid, but can be used on a
2031       per-user basis.
2032
2033     * Full algorithm names (e.g. "3DES", "SHA1", "ZIP") can now be
2034       used interchangeably with the short algorithm names (e.g. "S2",
2035       "H2", "Z1") anywhere algorithm names are used in GnuPG.
2036
2037
2038 Noteworthy changes in version 1.3.0 (2002-10-18)
2039 ------------------------------------------------
2040
2041     * The last piece of internal keyserver support has been removed,
2042       and now all keyserver access is done via the keyserver plugins.
2043       There is also a newer keyserver protocol used between GnuPG and
2044       the plugins, so plugins from earlier versions of GnuPG may not
2045       work properly.
2046
2047     * The HKP keyserver plugin supports the new machine-readable key
2048       listing format for those keyservers that provide it.
2049
2050     * When using a HKP keyserver with multiple DNS records (such as
2051       wwwkeys.pgp.net which has the addresses of multiple servers
2052       around the world), try all records until one succeeds.  Note
2053       that it depends on the LDAP library used whether the LDAP
2054       keyserver plugin does this as well.
2055
2056     * The library dependencies for OpenLDAP seem to change fairly
2057       frequently, and GnuPG's configure script cannot guess all the
2058       combinations.  Use ./configure LDAPLIBS="-L libdir -l libs" to
2059       override the script and use the libraries selected.
2060
2061     * Secret keys generated with --export-secret-subkeys are now
2062       indicated in key listings with a '#' after the "sec", and in
2063       --with-colons listings by showing no capabilities (no lowercase
2064       characters).
2065
2066     * --trusted-key has been un-obsoleted, as it is useful for adding
2067       ultimately trusted keys from the config file.  It is identical
2068       to using --edit and "trust" to change a key to ultimately
2069       trusted.
2070
2071     * Translations other than de are no longer distributed with the
2072       development branch.  This is due to the frequent text changes
2073       during development, which cause the translations to rapidly go
2074       out of date.
2075
2076
2077 Version 1.2.8 (2006-12-07)
2078 Version 1.2.7 (2004-12-27)
2079 Version 1.2.6 (2004-08-25)
2080 Version 1.2.5 (2004-07-26)
2081 Version 1.2.4 (2003-12-23)
2082 Version 1.2.3 (2003-08-21)
2083 Version 1.2.2 (2003-05-01)
2084 Version 1.2.1 (2002-10-25)
2085 Version 1.2.0 (2002-09-21)
2086
2087
2088 Noteworthy changes in version 1.1.92 (2002-09-11)
2089 -------------------------------------------------
2090
2091     * [IMPORTANT] The default configuration file is now
2092       ~/.gnupg/gpg.conf.  If an old ~/.gnupg/options is found it will
2093       still be used.  This change is required to have a more
2094       consistent naming scheme with forthcoming tools.
2095
2096     * The use of MDCs have increased.  A MDC will be used if the
2097       recipients directly request it, if the recipients have AES,
2098       AES192, AES256, or TWOFISH in their cipher preferences, or if
2099       the chosen cipher has a blocksize not equal to 64 bits
2100       (currently this is also AES, AES192, AES256, and TWOFISH).
2101
2102     * GnuPG will no longer automatically disable compression when
2103       processing an already-compressed file unless a MDC is being
2104       used.  This is to give the message a certain amount of
2105       resistance to the chosen-ciphertext attack while communicating
2106       with other programs (most commonly PGP earlier than version 7.x)
2107       that do not support MDCs.
2108
2109     * The option --interactive now has the desired effect when
2110       importing keys.
2111
2112     * The file permission and ownership checks on files have been
2113       clarified.  Specifically, the homedir (usually ~/.gnupg) is
2114       checked to protect everything within it.  If the user specifies
2115       keyrings outside this homedir, they are presumed to be shared
2116       keyrings and therefore *not* checked.  Configuration files
2117       specified with the --options option and the IDEA cipher
2118       extension specified with --load-extension are checked, along
2119       with their enclosing directories.
2120
2121     * The configure option --with-static-rnd=auto allows to build gpg
2122       with all available entropy gathering modules included.  At
2123       runtime the best usable one will be selected from the list
2124       linux, egd, unix.  This is also the default for systems lacking
2125       a /dev/random device.
2126
2127     * The default character set is now taken from the current locale;
2128       it can still be overridden by the --charset option.  Using the
2129       option -vvv shows the used character set.
2130
2131     * [REMOVED] --emulate-checksum-bug and --emulate-3des-s2k-bug have
2132       been removed.
2133
2134
2135 Noteworthy changes in version 1.1.91 (2002-08-04)
2136 -------------------------------------------------
2137
2138     * All modules are now linked statically; the --load-extension
2139       option is in general not useful anymore.  The only exception is
2140       to specify the deprecated idea cipher.
2141
2142     * The IDEA plugin has changed.  Previous versions of the IDEA
2143       plugin will no longer work with GnuPG.  However, the current
2144       version of the plugin will work with earlier GnuPG versions.
2145
2146     * When using --batch with one of the --delete-key commands, the
2147       key must be specified by fingerprint.  See the man page for
2148       details.
2149
2150     * There are now various ways to restrict the ability GnuPG has to
2151       exec external programs (for the keyserver helpers or photo ID
2152       viewers).  Read the README file for the complete list.
2153
2154     * New export option to leave off attribute packets (photo IDs)
2155       during export.  This is useful when exporting to HKP keyservers
2156       which do not understand attribute packets.
2157
2158     * New import option to repair during import the HKP keyserver
2159       mangling multiple subkeys bug.  Note that this cannot completely
2160       repair the damaged key as some crucial data is removed by the
2161       keyserver, but it does at least give you back one subkey.  This
2162       is on by default for keyserver --recv-keys, and off by default
2163       for regular --import.
2164
2165     * The keyserver helper programs now live in
2166       /usr/[local/]libexec/gnupg by default.  If you are upgrading
2167       from 1.0.7, you might want to delete your old copies in
2168       /usr/[local/]bin.  If you use an OS that does not use libexec
2169       for whatever reason, use configure --libexecdir=/usr/local/lib
2170       to place the keyserver helpers there.
2171
2172     * The LDAP keyserver handler now works properly with very old
2173       (version 1) LDAP keyservers.
2174
2175
2176 Noteworthy changes in version 1.1.90 (2002-07-01)
2177 -------------------------------------------------
2178
2179     * New commands: --personal-cipher-preferences,
2180       --personal-digest-preferences, and
2181       --personal-compress-preferences allow the user to specify which
2182       algorithms are to be preferred.  Note that this does not permit
2183       using an algorithm that is not present in the recipient's
2184       preferences (which would violate the OpenPGP standard).  This
2185       just allows sorting the preferences differently.
2186
2187     * New "group" command to refer to several keys with one name.
2188
2189     * A warning is issued if the user forces the use of an algorithm
2190       that is not listed in the recipient's preferences.
2191
2192     * Full revocation key (aka "designated revoker") support.
2193
2194     * The preferred hash algorithms on a key are consulted when
2195       encrypting a signed message to that key.  Note that this is
2196       disabled by default by a SHA1 preference in
2197       --personal-digest-preferences.
2198
2199     * --cert-digest-algo allows the user to specify the hash algorithm
2200       to use when signing a key rather than the default SHA1 (or MD5
2201       for PGP2 keys).  Do not use this feature unless you fully
2202       understand the implications of this.
2203
2204     * --pgp7 mode automatically sets all necessary options to ensure
2205       that the resulting message will be usable by a user of PGP 7.x.
2206
2207     * New --attribute-fd command for frontends and scripts to get the
2208       contents of attribute packets (i.e. photos)
2209
2210     * In expert mode, the user can now re-sign a v3 key with a v4
2211       self-signature.  This does not change the v3 key into a v4 key,
2212       but it does allow the user to use preferences, primary ID flags,
2213       etc.
2214
2215     * Significantly improved photo ID support on non-unixlike
2216       platforms.
2217
2218     * The version number has jumped ahead to 1.1.90 to skip over the
2219       old version 1.1 and to get ready for the upcoming 1.2.
2220
2221     * ElGamal sign and encrypt is not anymore allowed in the key
2222       generation dialog unless in expert mode.  RSA sign and encrypt
2223       has been added with the same restrictions.
2224
2225     * [W32] Keyserver access does work with Windows NT.
2226
2227
2228 Noteworthy changes in version 1.0.7 (2002-04-29)
2229 ------------------------------------------------
2230
2231     * Secret keys are now stored and exported in a new format which
2232       uses SHA-1 for integrity checks.  This format renders the
2233       Rosa/Klima attack useless.  Other OpenPGP implementations might
2234       not yet support this, so the option --simple-sk-checksum creates
2235       the old vulnerable format.
2236
2237     * The default cipher algorithm for encryption is now CAST5,
2238       default hash algorithm is SHA-1.  This will give us better
2239       interoperability with other OpenPGP implementations.
2240
2241     * Symmetric encrypted messages now use a fixed file size if
2242       possible.  This is a tradeoff: it breaks PGP 5, but fixes PGP 2,
2243       6, and 7.  Note this was only an issue with RFC-1991 style
2244       symmetric messages.
2245
2246     * Photographic user ID support.  This uses an external program to
2247       view the images.
2248
2249     * Enhanced keyserver support via keyserver "plugins".  GnuPG comes
2250       with plugins for the NAI LDAP keyserver as well as the HKP email
2251       keyserver.  It retains internal support for the HKP HTTP
2252       keyserver.
2253
2254     * Nonrevocable signatures are now supported.  If a user signs a
2255       key nonrevocably, this signature cannot be taken back so be
2256       careful!
2257
2258     * Multiple signature classes are usable when signing a key to
2259       specify how carefully the key information (fingerprint, photo
2260       ID, etc) was checked.
2261
2262     * --pgp2 mode automatically sets all necessary options to ensure
2263       that the resulting message will be usable by a user of PGP 2.x.
2264
2265     * --pgp6 mode automatically sets all necessary options to ensure
2266       that the resulting message will be usable by a user of PGP 6.x.
2267
2268     * Signatures may now be given an expiration date.  When signing a
2269       key with an expiration date, the user is prompted whether they
2270       want their signature to expire at the same time.
2271
2272     * Revocation keys (designated revokers) are now supported if
2273       present.  There is currently no way to designate new keys as
2274       designated revokers.
2275
2276     * Permissions on the .gnupg directory and its files are checked
2277       for safety.
2278
2279     * --expert mode enables certain silly things such as signing a
2280       revoked user id, expired key, or revoked key.
2281
2282     * Some fixes to build cleanly under Cygwin32.
2283
2284     * New tool gpgsplit to split OpenPGP data formats into packets.
2285
2286     * New option --preserve-permissions.
2287
2288     * Subkeys created in the future are not used for encryption or
2289       signing unless the new option --ignore-valid-from is used.
2290
2291     * Revoked user-IDs are not listed unless signatures are listed too
2292       or we are in verbose mode.
2293
2294     * There is no default comment string with ascii armors anymore
2295       except for revocation certificates and --enarmor mode.
2296
2297     * The command "primary" in the edit menu can be used to change the
2298       primary UID, "setpref" and "updpref" can be used to change the
2299       preferences.
2300
2301     * Fixed the preference handling; since 1.0.5 they were erroneously
2302       matched against against the latest user ID and not the given one.
2303
2304     * RSA key generation.
2305
2306     * Merged Stefan's patches for RISC OS in.  See comments in
2307       scripts/build-riscos.
2308
2309     * It is now possible to sign and conventional encrypt a message (-cs).
2310
2311     * The MDC feature flag is supported and can be set by using
2312       the "updpref" edit command.
2313
2314     * The status messages GOODSIG and BADSIG are now returning the primary
2315       UID, encoded using %XX escaping (but with spaces left as spaces,
2316       so that it should not break too much)
2317
2318     * Support for GDBM based keyrings has been removed.
2319
2320     * The entire keyring management has been revamped.
2321
2322     * The way signature stati are store has changed so that v3
2323       signatures can be supported. To increase the speed of many
2324       operations for existing keyrings you can use the new
2325       --rebuild-keydb-caches command.
2326
2327     * The entire key validation process (trustdb) has been revamped.
2328       See the man page entries for --update-trustdb, --check-trustdb
2329       and --no-auto-check-trustdb.
2330
2331     * --trusted-keys is again obsolete, --edit can be used to set the
2332       ownertrust of any key to ultimately trusted.
2333
2334     * A subkey is never used to sign keys.
2335
2336     * Read only keyrings are now handled as expected.
2337
2338     See-also: gnupg-announce/2002q2/000135.html
2339
2340
2341 Noteworthy changes in version 1.0.6 (2001-05-29)
2342 ------------------------------------------------
2343
2344     * Security fix for a format string bug in the tty code.
2345
2346     * Fixed format string bugs in all PO files.
2347
2348     * Removed Russian translation due to too many bugs.  The FTP
2349       server has an unofficial but better translation in the contrib
2350       directory.
2351
2352     * Fixed expire time calculation and keyserver access.
2353
2354     * The usual set of minor bug fixes and enhancements.
2355
2356     * non-writable keyrings are now correctly handled.
2357
2358     See-also: gnupg-announce/2001q2/000123.html
2359
2360
2361 Noteworthy changes in version 1.0.5 (2001-04-29)
2362 ------------------------------------------------
2363
2364     * WARNING: The semantics of --verify have changed to address a
2365       problem with detached signature detection. --verify now ignores
2366       signed material given on stdin unless this is requested by using
2367       a "-" as the name for the file with the signed material.  Please
2368       check all your detached signature handling applications and make
2369       sure that they don't pipe the signed material to stdin without
2370       using a filename together with "-" on the the command line.
2371
2372     * WARNING: Corrected hash calculation for input data larger than
2373       512M - it was just wrong, so you might notice bad signature in
2374       some very big files.  It may be wise to keep an old copy of
2375       GnuPG around.
2376
2377     * Secret keys are no longer imported unless you use the new option
2378       --allow-secret-key-import.  This is a kludge and future versions will
2379       handle it in another way.
2380
2381     * New command "showpref" in the --edit-key menu to show an easier
2382       to understand preference listing.
2383
2384     * There is now the notation of a primary user ID.  For example, it
2385       is printed with a signature verification as the first user ID;
2386       revoked user IDs are not printed there anymore.  In general the
2387       primary user ID is the one with the latest self-signature.
2388
2389     * New --charset=utf-8 to bypass all internal conversions.
2390
2391     * Large File Support (LFS) is now working.
2392
2393     * New options: --ignore-crc-error, --no-sig-create-check,
2394       --no-sig-cache, --fixed-list-mode, --no-expensive-trust-checks,
2395       --enable-special-filenames and --use-agent.  See man page.
2396
2397     * New command --pipemode, which can be used to run gpg as a
2398       co-process.  Currently only the verification of detached
2399       signatures are working.  See doc/DETAILS.
2400
2401     * Keyserver support for the W32 version.
2402
2403     * Rewritten key selection code so that GnuPG can better cope with
2404       multiple subkeys, expire dates and so.  The drawback is that it
2405       is slower.
2406
2407     * A whole lot of bug fixes.
2408
2409     * The verification status of self-signatures are now cached. To
2410       increase the speed of key list operations for existing keys you
2411       can do the following in your GnuPG homedir (~/.gnupg):
2412          cp pubring.gpg pubring.gpg.save && gpg --export-all >x && \
2413          rm pubring.gpg && gpg --import x
2414       Only v4 keys (i.e not the old RSA keys) benefit from this caching.
2415
2416     * New translations: Estonian, Turkish.
2417
2418     See-also: gnupg-announce/2001q2/000122.html
2419
2420
2421 Noteworthy changes in version 1.0.4 (2000-10-17)
2422 ------------------------------------------------
2423
2424     * Fixed a serious bug which could lead to false signature verification
2425       results when more than one signature is fed to gpg.  This is the
2426       primary reason for releasing this version.
2427
2428     * New utility gpgv which is a stripped down version of gpg to
2429       be used to verify signatures against a list of trusted keys.
2430
2431     * Rijndael (AES) is now supported and listed with top preference.
2432
2433     * --with-colons now works with --print-md[s].
2434
2435     See-also: gnupg-announce/2000q4/000082.html
2436
2437
2438 Noteworthy changes in version 1.0.3 (2000-09-18)
2439 ------------------------------------------------
2440
2441     * Fixed problems with piping to/from other MS-Windows software
2442
2443     * Expiration time of the primary key can be changed again.
2444
2445     * Revoked user IDs are now marked in the output of --list-key
2446
2447     * New options --show-session-key and --override-session-key
2448       to help the British folks to somewhat minimize the danger
2449       of this Orwellian RIP bill.
2450
2451     * New options --merge-only and --try-all-secrets.
2452
2453     * New configuration option --with-egd-socket.
2454
2455     * The --trusted-key option is back after it left us with 0.9.5
2456
2457     * RSA is supported. Key generation does not yet work but will come
2458       soon.
2459
2460     * CAST5 and SHA-1 are now the default algorithms to protect the key
2461       and for symmetric-only encryption. This should solve a couple
2462       of compatibility problems because the old algorithms are optional
2463       according to RFC2440
2464
2465     * Twofish and MDC enhanced encryption is now used.  PGP 7 supports
2466       this.  Older versions of GnuPG don't support it, so they should be
2467       upgraded to at least 1.0.2
2468
2469     See-also: gnupg-announce/2000q3/000075.html
2470
2471
2472 Noteworthy changes in version 1.0.2 (2000-07-12)
2473 ----------------------------------------------
2474
2475     * Fixed expiration handling of encryption keys.
2476
2477     * Add an experimental feature to do unattended key generation.
2478
2479     * The user is now asked for the reason of revocation as required
2480       by the new OpenPGP draft.
2481
2482     * There is a ~/.gnupg/random_seed file now which saves the
2483       state of the internal RNG and increases system performance
2484       somewhat.  This way the full entropy source is only used in
2485       cases were it is really required.
2486       Use the option --no-random-seed-file to disable this feature.
2487
2488     * New options --ignore-time-conflict and --lock-never.
2489
2490     * Some fixes for the W32 version.
2491
2492     * The entropy.dll is not anymore used by the W32 version but replaced
2493       by code derived from Cryptlib.
2494
2495     * Encryption is now much faster: About 2 times for 1k bit keys
2496       and 8 times for 4k keys.
2497
2498     * New encryption keys are generated in a way which allows a much
2499       faster decryption.
2500
2501     * New command --export-secret-subkeys which outputs the
2502       the _primary_ key with it's secret parts deleted.  This is
2503       useful for automated decryption/signature creation as it
2504       allows to keep the real secret primary key offline and
2505       thereby protecting the key certificates and allowing to
2506       create revocations for the subkeys.  See the FAQ for a
2507       procedure to install such secret keys.
2508
2509     * Keygeneration now writes to the first writeable keyring or
2510       as default to the one in the homedirectory.  Prior versions
2511       ignored all --keyring options.
2512
2513     * New option --command-fd to take user input from a file descriptor;
2514       to be used with --status-fd by software which uses GnuPG as a backend.
2515
2516     * There is a new status PROGRESS which is used to show progress during
2517       key generation.
2518
2519     * Support for the new MDC encryption packets.  To create them either
2520       --force-mdc must be use or cipher algorithm with a blocksize other
2521       than 64 bits is to be used.  --openpgp currently disables MDC packets
2522       entirely.  This option should not yet be used.
2523
2524     * New option --no-auto-key-retrieve to disable retrieving of
2525       a missing public key from a keyserver, when a keyserver has been set.
2526
2527     * Danish translation
2528
2529     See-also: gnupg-announce/2000q3/000069.html
2530
2531
2532 Noteworthy changes in version 1.0.1 (1999-12-16)
2533 -----------------------------------
2534
2535     * New command --verify-files.  New option --fast-list-mode.
2536
2537     * $http_proxy is now used when --honor-http-proxy is set.
2538
2539     * Fixed some minor bugs and the problem with conventional encrypted
2540       packets which did use the gpg v3 partial length headers.
2541
2542     * Add Indonesian and Portugese translations.
2543
2544     * Fixed a bug with symmetric-only encryption using the non-default 3DES.
2545       The option --emulate-3des-s2k-bug may be used to decrypt documents
2546       which have been encrypted this way; this should be done immediately
2547       as this workaround will be remove in 1.1
2548
2549     * Can now handle (but not display) PGP's photo IDs. I don't know the
2550       format of that packet but after stripping a few bytes from the start
2551       it looks like a JPEG (at least my test data).  Handling of this
2552       package is required because otherwise it would mix up the
2553       self signatures and you can't import those keys.
2554
2555     * Passing non-ascii user IDs on the commandline should now work in all
2556       cases.
2557
2558     * New keys are now generated with an additional preference to Blowfish.
2559
2560     * Removed the GNU Privacy Handbook from the distribution as it will go
2561       into a separate one.
2562
2563     See-also: gnupg-announce/1999q4/000050.html
2564
2565
2566 Noteworthy changes in version 1.0.0 (1999-09-07)
2567 -----------------------------------
2568
2569     * Add a very preliminary version of the GNU Privacy Handbook to
2570       the distribution (lynx doc/gph/index.html).
2571
2572     * Changed the version number to GnuPG 2001 ;-)
2573
2574     See-also: gnupg-announce/1999q3/000037.html
2575
2576
2577 Noteworthy changes in version 0.9.11 (1999-09-03)
2578 ------------------------------------
2579
2580     * UTF-8 strings are now correctly printed (if --charset is set correctly).
2581       Output of --with-colons remains C-style escaped UTF-8.
2582
2583     * Workaround for a problem with PGP 5 detached signature in textmode.
2584
2585     * Fixed a problem when importing new subkeys (duplicated signatures).
2586
2587     See-also: gnupg-announce/1999q3/000036.html
2588
2589
2590 Noteworthy changes in version 0.9.10 (1999-07-23)
2591 ------------------------------------
2592
2593     * Some strange new options to help pgpgpg
2594
2595     * Cleaned up the dox a bit.
2596
2597     See-also: gnupg-announce/1999q3/000034.html
2598
2599
2600 Noteworthy changes in version 0.9.9
2601 -----------------------------------
2602
2603     * New options --[no-]utf8-strings.
2604
2605     * New edit-menu commands "enable" and "disable" for entire keys.
2606
2607     * You will be asked for a filename if gpg cannot deduce one.
2608
2609     * Changes to support libtool which is needed for the development
2610       of libgcrypt.
2611
2612     * New script tools/lspgpot to help transferring assigned
2613       trustvalues from PGP to GnuPG.
2614
2615     * New commands --lsign-key and made --sign-key a shortcut for --edit
2616       and sign.
2617
2618     * New options (#122--126 ;-) --[no-]default-recipient[-self],
2619       --disable-{cipher,pubkey}-algo. See the man page.
2620
2621     * Enhanced info output in case of multiple recipients and fixed exit code.
2622
2623     * New option --allow-non-selfsigned-uid to work around a problem with
2624       the German IN way of separating signing and encryption keys.
2625
2626     See-also: gnupg-announce/1999q3/000028.html
2627
2628
2629 Noteworthy changes in version 0.9.8 (1999-06-26)
2630 -----------------------------------
2631
2632     * New subcommand "delsig" in the edit menu.
2633
2634     * The name of the output file is not anymore the one which is
2635       embedded in the processed message, but the used filename with
2636       the extension stripped.  To revert to the old behaviour you can
2637       use the option --use-embedded-filename.
2638
2639     * Another hack to cope with pgp2 generated detached signatures.
2640
2641     * latin-2 character set works (--charset=iso-8859-2).
2642
2643     * New option --with-key-data to list the public key parameters.
2644       New option -N to insert notations and a --set-policy-url.
2645       A couple of other options to allow reseting of options.
2646
2647     * Better support for HPUX.
2648
2649     See-also: gnupg-announce/1999q2/000016.html
2650
2651
2652 Noteworthy changes in version 0.9.7 (1999-05-23)
2653 -----------------------------------
2654
2655     * Add some work arounds for a bugs in pgp 2 which led to bad signatures
2656       when used with canonical texts in some cases.
2657
2658     * Enhanced some status outputs.
2659
2660     See-also: gnupg-announce/1999q2/000000.html
2661
2662
2663 Noteworthy changes in version 0.9.6 (1999-05-06)
2664 -----------------------------------
2665
2666     * Twofish is now statically linked by default. The experimental 128 bit
2667       version is now disabled.  Full support will be available as soon as
2668       the OpenPGP WG has decided on an interpretation of rfc2440.
2669
2670     * Dropped support for the ancient Blowfish160 which is not OpenPGP.
2671
2672     * Merged gpgm and gpg into one binary.
2673
2674     * Add "revsig" and "revkey" commands to the edit menu.  It is now
2675       possible to revoke signature and subkeys.
2676
2677
2678 Noteworthy changes in version 0.9.5 (1999-03-20)
2679 -----------------------------------
2680
2681     * New command "lsign" in the keyedit menu to create non-exportable
2682       signatures.  Removed --trusted-keys option.
2683
2684     * A bunch of changes to the key validation code.
2685
2686     * --list-trust-path now has an optional --with-colons format.
2687
2688     * New command --recv-keys to import keys from an keyserver.
2689
2690
2691 Noteworthy changes in version 0.9.4 (1999-03-08)
2692 -----------------------------------
2693
2694     * New configure option --enable-static-rnd=[egd|linux|unix|none]
2695       to select a random gathering module for static linking.
2696
2697     * The original text is now verbatim copied to a cleartext signed message.
2698
2699     * Bugfixes but there are still a couple of bugs.
2700
2701
2702 Noteworthy changes in version 0.9.3 (1999-02-19)
2703 -----------------------------------
2704
2705     * Changed the internal design of getkey which now allows a
2706       efficient lookup of multiple keys and add a word match mode.
2707
2708     * New options --[no-]encrypt-to.
2709
2710     * Some changes to the configure stuff.  Switched to automake 1.4.
2711       Removed intl/ from CVS, autogen.sh now uses gettextize.
2712
2713     * Preferences now include Twofish. Removed preference to Blowfish with
2714       a special hack to suppress the "not listed in preferences" warning;
2715       this is to allow us to switch completely to Twofish in the near future.
2716
2717     * Changed the locking stuff.
2718
2719     * Print all user ids of a good signature.
2720
2721
2722 Noteworthy changes in version 0.9.2 (1999-01-01)
2723 -----------------------------------
2724
2725     * add some additional time warp checks.
2726
2727     * Option --keyserver and command --send-keys to utilize HKP servers.
2728
2729     * Upgraded to zlib 1.1.3 and fixed an inflate bug
2730
2731     * More cleanup on the cleartext signatures.
2732
2733
2734 Noteworthy changes in version 0.9.1 (1999-01-01)
2735 -----------------------------------
2736
2737     * Polish language support.
2738
2739     * When querying the passphrase, the key ID of the primary key is
2740       displayed along with the one of the used secondary key.
2741
2742     * Fixed a bug occurring when decrypting pgp 5 encrypted messages,
2743       fixed an infinite loop bug in the 3DES code and in the code
2744       which looks for trusted signatures.
2745
2746     * Fixed a bug in the mpi library which caused signatures not to
2747       compare okay.
2748
2749     * Rewrote the handling of cleartext signatures; the code is now
2750       better maintainable (I hope so).
2751
2752     * New status output VALIDSIG only for valid signatures together
2753       with the fingerprint of the signer's key.
2754
2755
2756 Noteworthy changes in version 0.9.0 (1998-12-23)
2757 -----------------------------------
2758
2759     * --export does now only exports rfc2440 compatible keys; the
2760       old behaviour is available with --export-all.
2761       Generation of v3 ElGamal (sign and encrypt) keys is not longer
2762       supported.
2763
2764     * Fixed the uncompress bug.
2765
2766     * Rewrote the rndunix module. There are two environment variables
2767       used for debugging now: GNUPG_RNDUNIX_DBG give the file to write
2768       debugging information (use "-" for stdout) and if GNUPG_RNDUNIX_DBGALL
2769       is set, all programs which are only tried are also printed.
2770
2771     * New option --escape-from-lines to "dash-escape" "From " lines to
2772       prevent mailers to change them to ">From ".  This is not enabled by
2773       default because it is not in compliance with rfc2440 - however, you
2774       should turn it on.
2775
2776
2777 Noteworthy changes in version 0.4.5 (1998-12-08)
2778 -----------------------------------
2779
2780     * The keyrings and the trustdb is now locked, so that
2781       other GnuPG processes won't damage these files.  You
2782       may want to put the option --lock-once into your options file.
2783
2784     * The latest self-signatures are now used; this enables --import
2785       to see updated preferences etc.
2786
2787     * Import of subkeys should now work.
2788
2789     * Random gathering modules may now be loaded as extensions. Add
2790       such a module for most Unices but it is very experimental!
2791
2792     * Brazilian language support.
2793
2794
2795 Noteworthy changes in version 0.4.4 (1998-11-20)
2796 -----------------------------------
2797
2798     * Fixed the way the key expiration time is stored. If you have
2799       an expiration time on your key you should fix it with --edit-key
2800       and the command "expire".  I apologize for this inconvenience.
2801
2802     * Add option --charset to support "koi8-r" encoding of user ids.
2803       (Not yet tested).
2804
2805     * Preferences should now work again. You should run
2806       "gpgm --check-trustdb \*" to rebuild all preferences.
2807
2808     * Checking of certificates should now work but this needs a lot
2809       of testing.  Key validation values are now cached in the
2810       trustdb; they should be recalculated as needed, but you may
2811       use --check-trustdb or --update-trustdb to do this.
2812
2813     * Spanish translation by Urko Lusa.
2814
2815     * Patch files are from now on signed.  See the man page
2816       for the new option --not-dash-escaped.
2817
2818     * New syntax: --edit-key <userID> [<commands>]
2819       If you run it without --batch the commands are executed and then
2820       you are put into normal mode unless you use "quit" or "save" as
2821       one of the commands.  When in batch mode, the program quits after
2822       the last command, so you have to use "save" if you did some changes.
2823       It does not yet work completely, but may be used to list so the
2824       keys etc.
2825
2826
2827 Noteworthy changes in version 0.4.3 (1998-11-08)
2828 -----------------------------------
2829
2830     * Fixed the gettext configure bug.
2831
2832     * Kludge for RSA keys: keyid and length of a RSA key are
2833       correctly reported, but you get an error if you try to use
2834       this key (If you do not have the non-US version).
2835
2836     * Experimental support for keyrings stored in a GDBM database.
2837       This is *much* faster than a standard keyring.  You will notice
2838       that the import gets slower with time; the reason is that all
2839       new keys are used to verify signatures of previous inserted
2840       keys.  Use "--keyring gnupg-gdbm:<name-of-gdbm-file>".  This is
2841       not (yet) supported for secret keys.
2842
2843     * A Russian language file in the distribution (alternatives are in
2844       the contrib directory of the FTP servers)
2845
2846     * commandline option processing now works as expected for GNU programs
2847       with the exception that you can't mix options and normal arguments.
2848
2849     * Now --list-key lists all matching keys.  This is needed in some
2850       other places too.
2851
2852
2853 Noteworthy changes in version 0.4.2 (1998-10-18)
2854 -----------------------------------
2855
2856     * This is only a snapshot: There are still a few bugs.
2857
2858     * Fixed this huge memory leak.
2859
2860     * Redesigned the trust database:  You should run "gpgm --check-trustdb".
2861       New command --update-trustdb, which adds new key from the public
2862       keyring into your trustdb
2863
2864     * Fixed a bug in the armor code, leading to invalid packet errors.
2865       (a workaround for this was to use --no-armor).  The shorten line
2866       length (64 instead of 72) fixes a problem with pgp5 and keyservers.
2867
2868     * comment packets are not anymore generated. "--export" filters
2869       them out.  One Exception:  The comment packets in a secret keyring
2870       are still used because they carry the factorization of the public
2871       prime product.
2872
2873     * --import now only looks for KEYBLOCK headers, so you can now simply
2874       remove the "- " in front of such a header if someone accidentally signed
2875       such a message or the keyblock is part of a cleartext signed message.
2876
2877     * --with-colons now lists the key expiration time and not anymore
2878       the valid period.
2879
2880     * Some keyblocks created with old releases have a wrong sequence
2881       of packets, so that the keyservers don't accept these keys.
2882       Simply using "--edit-key" fixes the problem.
2883
2884     * New option --force-v3-sigs to generate signed messages which are
2885       compatible to PGP 5.
2886
2887     * Add some code to support DLD (for non ELF systems) - but this is
2888       not tested because my BSD box is currently broken.
2889
2890     * New command "expire" in the edit-key menu.
2891
2892
2893
2894 Noteworthy changes in version 0.4.1 (1998-10-07)
2895 -----------------------------------
2896
2897     * A secondary key is used when the primary key is specified but cannot
2898       be used for the operation (if it is a sign-only key).
2899
2900     * GNUPG can now handle concatenated armored messages:  There is still a
2901       bug if different kinds of messages are mixed.
2902
2903     * Iterated+Salted passphrases now work.  If want to be sure that PGP5
2904       is able to handle them you may want to use the options
2905         "--s2k-mode 3 --s2k-cipher-algo cast5 --s2k-digest-algo sha1"
2906       when changing a passphrase.
2907
2908     * doc/OpenPGP talks about OpenPGP compliance, doc/HACKING gives
2909       a few hints about the internal structure.
2910
2911     * Checked gnupg against the August 1998 draft (07) and I believe
2912       it is in compliance with this document (except for one point).
2913
2914     * Fixed some bugs in the import merging code and rewrote some
2915       code for the trustdb.
2916
2917
2918 Noteworthy changes in version 0.4.0 (1998-09-18)
2919 -----------------------------------
2920
2921     * Triple DES is now supported.  Michael Roth did this piece of
2922       needed work.  We have now all the coded needed to be OpenPGP
2923       compliant.
2924
2925     * Added a simple rpm spec file (see INSTALL).
2926
2927     * detached and armored signatures are now using "PGP SIGNATURE",
2928       except when --rfc1991 is used.
2929
2930     * All times which are not in the yyyy-mm-dd format are now printed
2931       in local time.
2932
2933
2934 Noteworthy changes in version 0.3.5 (1998-09-14)
2935 -----------------------------------
2936
2937     * New option --throw-keyid to create anonymous enciphered messages.
2938       If gpg detects such a message it tires all available secret keys
2939       in turn so decode it.  This is a gnupg extension and not in OpenPGP
2940       but it has been discussed there and afaik some products use this
2941       scheme too (Suggested by Nimrod Zimmerman).
2942
2943     * Fixed a bug with 5 byte length headers.
2944
2945     * --delete-[secret-]key is now also available in gpgm.
2946
2947     * cleartext signatures are not anymore converted to LF only.
2948
2949     * Fixed a trustdb problem.  Run "gpgm --check-trustdb" to fix old
2950       trust dbs.
2951
2952     * Building in another directory should now work.
2953
2954     * Weak key detection mechanism (Niklas Hernaeus).
2955
2956
2957 Noteworthy changes in version 0.3.4 (1998-08-11)
2958 -----------------------------------
2959
2960     * New options --comment and --set-filename; see g10/OPTIONS
2961
2962     * yes/no, y/n localized.
2963
2964     * Fixed some bugs.
2965
2966
2967 Noteworthy changes in version 0.3.3 (1998-08-08)
2968 -----------------------------------
2969
2970     * IMPORTANT: I found yet another bug in the way the secret keys
2971       are encrypted - I did it the way pgp 2.x did it, but OpenPGP
2972       and pgp 5.x specify another (in some aspects simpler) method.
2973       To convert your secret keys you have to do this:
2974         1. Build the new release but don't install it and keep
2975            a copy of the old program.
2976         2. Disable the network, make sure that you are the only
2977            user, be sure that there are no Trojan horses etc ....
2978         3. Use your old gpg (version 0.3.1 or 0.3.2) and set the
2979            passphrases of ALL your secret keys to empty!
2980            (gpg --change-passphrase your-user-id).
2981         4. Save your ownertrusts (see the next point)
2982         5. rm ~/.gnupg/trustdb.gpg
2983         6. install the new version of gpg (0.3.3)
2984         7. For every secret key call "gpg --edit-key your-user-id",
2985            enter "passwd" at the prompt, follow the instructions and
2986            change your password back, enter "save" to store it.
2987         8. Restore the ownertrust (see next point).
2988
2989     * The format of the trust database has changed; you must delete
2990       the old one, so gnupg can create a new one.
2991       IMPORTANT: Use version 0.3.1 or .2 to save your assigned ownertrusts
2992       ("gpgm --list-ownertrust >saved-trust"); then build this new version
2993       and restore the ownertrust with this new version
2994       ("gpgm --import-ownertrust saved-trust").  Please note that
2995       --list-ownertrust has been renamed to --export-ownertrust in this
2996       release and it does now only export defined ownertrusts.
2997
2998     * The command --edit-key now provides a commandline driven menu
2999       which can be used for various tasks.  --sign-key is only an
3000       an alias to --edit-key and maybe removed in future: use the
3001       command "sign" of this new menu - you can select which user ids
3002       you want to sign.
3003
3004     * Alternate user ids can now be created an signed.
3005
3006     * Owner trust values can now be changed with --edit-key (trust)
3007
3008     * GNUPG can now run as a coprocess; this enables sophisticated
3009       frontends.  tools/shmtest.c is a simple sample implementation.
3010       This needs some more work: all tty_xxx() are to be replaced
3011       by cpr_xxx() and some changes in the display logics is needed.
3012
3013     * Removed options --gen-prime and --gen-random.
3014
3015     * Removed option --add-key; use --edit-key instead.
3016
3017     * Removed option --change-passphrase; use --edit-key instead.
3018
3019     * Signatures are now checked even if the output file could not
3020       be created. Command "--verify" tries to find the detached data.
3021
3022     * gpg now disables core dumps.
3023
3024     * compress and symmetric cipher preferences are now used.
3025       Because there is no 3DES yet, this is replaced by Blowfish.
3026
3027     * We have added the Twofish as an experimental cipher algorithm.
3028       Many thanks to Matthew Skala for doing this work.
3029       Twofish is the AES submission from Schneier et al.; see
3030       "www.counterpane.com/twofish.html" for more information.
3031
3032     * Started with a help system: If you enter a question mark at some
3033       prompt; you should get a specific help for this prompt.
3034
3035     * There is no more backup copy of the secret keyring.
3036
3037     * A lot of new bugs. I think this release is not as stable as
3038       the previous one.
3039
3040
3041 Noteworthy changes in version 0.3.2 (1998-07-09)
3042 -----------------------------------
3043
3044     * Fixed some bugs when using --textmode (-seat)
3045
3046     * Now displays the trust status of a positive verified message.
3047
3048     * Keyrings are now scanned in the sequence they are added with
3049       --[secret-]keyring.  Note that the default keyring is implicitly
3050       added as the very first one unless --no-default-keyring is used.
3051
3052     * Fixed setuid and dlopen bug.
3053
3054
3055 Noteworthy changes in version 0.3.1 (1998-07-06)
3056 -----------------------------------
3057
3058     * Partial headers are now written in the OpenPGP format if
3059       a key in a v4 packet is used.
3060
3061     * Removed some unused options, removed the gnupg.sig stuff.
3062
3063     * Key lookup by name now returns a key which can be used for
3064       the desired action.
3065
3066     * New options --list-ownertrust (gpgm) to make a backup copy
3067       of the ownertrust values you assigned.
3068
3069     * clear signature headers are now in compliance with OpenPGP.
3070
3071
3072 Noteworthy changes in version 0.3.0 (1998-06-25)
3073 -----------------------------------
3074
3075     * New option --emulate-checksum-bug.  If your passphrase does not
3076       work anymore, use this option and --change-passphrase to rewrite
3077       your passphrase.
3078
3079     * More complete v4 key support: Preferences and expiration time
3080       is set into the self signature.
3081
3082     * Key generation defaults to DSA/ElGamal keys, so that new keys are
3083       interoperable with pgp5
3084
3085     * DSA key generation is faster and key generation does not anymore
3086       remove entropy from the random generator (the primes are public
3087       parameters, so there is really no need for a cryptographic secure
3088       prime number generator which we had used).
3089
3090     * A complete new structure for representing the key parameters.
3091
3092     * Removed most public key knowledge into the cipher library.
3093
3094     * Support for dynamic loading of new algorithms.
3095
3096     * Moved tiger to an extension module.
3097
3098
3099 Noteworthy changes in version 0.2.19 (1998-05-29)
3100 ------------------------------------
3101
3102     * Replaced /dev/urandom in checks with new tool mk-tdata.
3103
3104     * Some assembler file cleanups; some more functions for the Alpha.
3105
3106     * Tiger has now the OpenPGP assigned number 6.  Because the OID has
3107       changed, old signatures using this algorithm can't be verified.
3108
3109     * gnupg now encrypts the compressed packed and not any longer in the
3110       reverse order; anyway it can decrypt both versions. Thanks to Tom
3111       for telling me this (not security related) bug.
3112
3113     * --add-key works and you are now able to generate subkeys.
3114
3115     * It is now possible to generate ElGamal keys in v4 packets to create
3116       valid OpenPGP keys.
3117
3118     * Some new features for better integration into MUAs.
3119
3120
3121 Noteworthy changes in version 0.2.18 (1998-05-15)
3122 ------------------------------------
3123
3124     * Splitted cipher/random.c, add new option "--disable-dev-random"
3125       to configure to support the development of a random source for
3126       other systems. Prepared sourcefiles rand-unix.c, rand-w32.c
3127       and rand-dummy.c (which is used to allow compilation on systems
3128       without a random source).
3129
3130     * Fixed a small bug in the key generation (it was possible that 48 bits
3131       of a key were not taken from the random pool)
3132
3133     * Add key generation for DSA and v4 signatures.
3134
3135     * Add a function trap_unaligned(), so that a SIGBUS is issued on
3136       Alphas and not the slow emulation code is used. And success: rmd160
3137       raised a SIGBUS.
3138
3139     * Enhanced the formatting facility of argparse and changed the use of
3140       \r,\v to @ because gettext does not like it.
3141
3142     * New option "--compress-algo 1" to allow the creation of compressed
3143       messages which are readable by PGP and "--print-md" (gpgm) to make
3144       speed measurement easier.
3145
3146
3147 Noteworthy changes in version 0.2.17 (1998-05-04)
3148 ------------------------------------
3149
3150     * Comment packets are now of private type 61.
3151
3152     * Passphrase code still used a 160 bit blowfish key, added a
3153       silly workaround. Please change your passphrase again - sorry.
3154
3155     * Conventional encryption now uses a type 3 packet to describe the
3156       used algorithms.
3157
3158     * The new algorithm number for Blowfish is 20, 16 is still used for
3159       encryption only; for signing it is only used when it is in a v3 packet,
3160       so that GNUPG keys are still valid.
3161
3162
3163 Noteworthy changes in version 0.2.16 (1998-04-28)
3164 ------------------------------------
3165
3166     * Add experimental support for the TIGER/192 message digest algorithm.
3167       (But there is only a dummy ASN OID).
3168
3169     * Standard cipher is now Blowfish with 128 bit key in OpenPGP's CFB
3170       mode. I renamed the old cipher to Blowfish160. Because the OpenPGP
3171       group refused to assign me a number for Blowfish160, I have to
3172       drop support for this in the future. You should use
3173       "--change-passphrase" to recode your current passphrase with 128
3174       bit Blowfish.
3175
3176
3177 Noteworthy changes in version 0.2.15 (1998-04-09)
3178 ------------------------------------
3179
3180     * Fixed a bug with the old checksum calculation for secret keys.
3181       If you run the program without --batch, a warning does inform
3182       you if your secret key needs to be converted; simply use
3183       --change-passphrase to recalculate the checksum. Please do this
3184       soon, as the compatible mode will be removed sometime in the future.
3185
3186     * CAST5 works (using the PGP's special CFB mode).
3187
3188     * Again somewhat more PGP 5 compatible.
3189
3190     * Some new test cases
3191
3192 Noteworthy changes in version 0.2.14 (1998-04-02)
3193 ------------------------------------
3194
3195     * Changed the internal handling of keyrings.
3196
3197     * Add support to list PGP 5 keyrings with subkeys
3198
3199     * Timestamps of signatures are now verified.
3200
3201     * A expiration time can now be specified during key generation.
3202
3203     * Some speedups for Blowfish and SHA-1, rewrote SHA-1 transform.
3204       Reduced the amount of random bytes needed for key generation in
3205       some cases.
3206
3207
3208 Noteworthy changes in version 0.2.13 (1998-03-10)
3209 ------------------------------------
3210
3211     * Verify of DSA signatures works.
3212
3213     * Re-implemented the slower random number generator.
3214
3215
3216 Noteworthy changes in version 0.2.12 (1998-03-07)
3217 ------------------------------------
3218
3219     * --delete-key checks that there is no secret key. The new
3220       option --delete-secret-key maybe used to delete a secret key.
3221
3222     * "-kv" now works as expected. Options "--list-{keys,sigs]"
3223       and "--check-sigs" are now working.
3224
3225     * New options "--verify" and "--decrypt" to better support integration
3226       into MUAs (partly done for Mutt).
3227
3228     * New option "--with-colons" to make parsing of key lists easier.
3229
3230 Noteworthy changes in version 0.2.11 (1998-03-02)
3231 ------------------------------------
3232
3233     * GPG now asks for a recipient's name if option "-r" is not used.
3234
3235     * If there is no good trust path, the program asks whether to use
3236       the public keys anyway.
3237
3238     * "--delete-key" works for public keys. What semantics shall I use
3239       when there is a secret key too? Delete the secret key or leave him
3240       and auto-regenerate the public key, next time the secret key is used?
3241
3242 Noteworthy changes in version 0.2.10 (1998-02-27)
3243 ------------------------------------
3244
3245     * Code for the alpha is much faster (about 20 times); the data
3246       was misaligned and the kernel traps this, so nearly all time
3247       was used by system to trap the misalignments and to write
3248       syslog messages. Shame on me and thanks to Ralph for
3249       pointing me at this while drinking some beer yesterday.
3250
3251     * Changed some configure options and add an option
3252       --disable-m-guard to remove the memory checking code
3253       and to compile everything with optimization on.
3254
3255     * New environment variable GNUPGHOME, which can be used to set
3256       another homedir than ~/.gnupg.  Changed default homedir for
3257       Windoze version to c:/gnupg.
3258
3259     * Fixed detached signatures; detached PGP signatures caused a SEGV.
3260
3261     * The Windoze version works (as usual w/o a strong RNG).
3262
3263
3264 Noteworthy changes in version 0.2.9 (1998-02-26)
3265 -----------------------------------
3266
3267     * Fixed FreeBSD bug.
3268
3269     * Added a simple man page.
3270
3271     * Switched to automake1.2f and a newer gettext.
3272
3273 Noteworthy changes in version 0.2.8 (1998-02-24)
3274 -----------------------------------
3275
3276     * Changed the name to GNUPG, the binaries are called gpg and gpgm.
3277       You must rename rename the directory "~/.g10" to ~/.gnupg/, rename
3278       {pub,sec}ring.g10 to {pub,sec}ring.gpg, trustdb.g10 to trustdb.gpg
3279       and g10.sig to gnupg.sig.
3280
3281     * New or changed passphrases are now salted.
3282
3283
3284 Noteworthy changes in version 0.2.7 (1998-02-18)
3285 -----------------------------------
3286
3287     * New command "gen-revoke" to create a key revocation certificate.
3288
3289     * New option "homedir" to set the homedir (which defaults to "~/.g10").
3290       This directory is created if it does not exists (only the last
3291       part of the name and not the complete hierarchy)
3292
3293     * Command "import" works. (Try: "finger gcrypt@ftp.guug.de|g10 --import")
3294
3295     * New commands "dearmor/enarmor" for g10maint.  These are mainly
3296       used for internal test purposes.
3297
3298     * Option --version now conforming to the GNU standards and lists
3299       the available ciphers, message digests and public key algorithms.
3300
3301     * Assembler code for m68k (not tested).
3302
3303     * "make check" works.
3304
3305 Noteworthy changes in version 0.2.6 (1998-02-13)
3306 -----------------------------------
3307
3308     * Option "--export" works.
3309
3310
3311 Noteworthy changes in version 0.2.5 (1998-02-12)
3312 -----------------------------------
3313
3314     * Added zlib for systems which don't have it.
3315       Use "./configure --with-zlib" to link with the static version.
3316
3317     * Generalized some more functions and rewrote the encoding of
3318       message digests into MPIs.
3319
3320     * Enhanced the checkit script
3321
3322
3323 Noteworthy changes in version 0.2.4 (1998-02-11)
3324 -----------------------------------
3325
3326     * nearly doubled the speed of the ElGamal signature verification.
3327
3328     * backup copies of keyrings are created.
3329
3330     * assembler stuff for Pentium; gives about 15% better performance.
3331
3332     * fixed a lot of bugs.
3333
3334
3335 Noteworthy changes in version 0.2.3 (1998-02-09)
3336 -----------------------------------
3337
3338     * Found a bug in the calculation of ELG fingerprints. This is now
3339       fixed, but all existing fingerprints and keyids for ELG keys
3340       are not any more valid.
3341
3342     * armor should now work; including clear signed text.
3343
3344     * moved some options to the new program g10maint
3345
3346     * It's now 64 bit clean and runs fine on an alpha--linux.
3347
3348     * Key generation is much faster now.  I fixed this by using not
3349       so strong random number for the primes (this was a bug because the
3350       ElGamal primes are public parameters and it does not make sense
3351       to generate them from strong random).  The real secret is the x value
3352       which is still generated from strong (okay: /dev/random) random bits.
3353
3354     * added option "--status-fd": see g10/OPTIONS
3355
3356     * We have secure memory on systems which support mlock().
3357       It is not complete yet, because we do not have signal handler
3358       which does a cleanup in very case.
3359       We should also check the ulimit for the user in the case
3360       that the admin does not have set a limit on locked pages.
3361
3362     * started with internationalization support.
3363
3364     * The logic to handle the web of trust is now implemented. It is
3365       has some bugs; but I'm going to change the algorithm anyway.
3366       It works by calculating the trustlevel on the fly.  It may ask
3367       you to provide trust parameters if the calculated trust probability
3368       is too low.  I will write a paper which discusses this new approach.
3369
3370     * a couple of changes to the configure script.
3371
3372     * New option "--quick-random" which uses a much quicker random
3373       number generator.  Keys generated while this option is in effect
3374       are flags with "INSECURE!" in the user-id.  This is a development
3375       only option.
3376
3377     * Read support for new version packets (OpenPGP).
3378
3379     * Comment packets are now of correct OpenPGP type 16. Old comment
3380       packets written by G10 are detected because they always start with
3381       a hash which is an invalid version byte.
3382
3383     * The string "(INSECURE!)" is appended to a new user-id if this
3384       is generated on a system without a good random number generator.
3385
3386
3387 Version 0.2.2 (1998-02-09)
3388 Version 0.2.1 (1998-01-28)
3389 Version 0.2.0 (1998-01-25)
3390 Version 0.1.3 (1998-01-12)
3391 Version 0.1.2 (1998-01-07)
3392 Version 0.1.1 (1998-01-07)
3393 Version 0.1.0 (1998-01-05)
3394 Version 0.0.0 (1997-12-20)
3395
3396
3397  Copyright (C) 1998-2016 Free Software Foundation, Inc.
3398  Copyright (C) 1997-2016 Werner Koch
3399
3400  This file is free software; as a special exception the author gives
3401  unlimited permission to copy and/or distribute it, with or without
3402  modifications, as long as this notice is preserved.
3403
3404  This file is distributed in the hope that it will be useful, but
3405  WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
3406  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.