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