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