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