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