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