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