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