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