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