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