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