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