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