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