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