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