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