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