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