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