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