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