See ChangeLog: Fri Oct 6 14:29:16 CEST 2000 Werner Koch
[gnupg.git] / NEWS
1 Noteworthy changes in the current CVS HEAD
2 ------------------------------------------
3
4     THIS IS A DEVELOPMENT VERSION; see README-alpha
5
6     * Add Rijndael (AES) support.
7
8     * Removed gdbm support.
9
10     * Fixed problems with piping to/from other MS-Windows software
11
12     * Expiration time of the primary key can be changed again.
13
14     * Revoked user IDs are now marked in the output of --list-key
15
16     * New options --merge-only and --try-all-secrets.
17
18     * New configuration option --with-egd-socket.
19
20     * The --trusted-key option is back after it left us with 0.9.5
21      
22     * RSA is supported. Key generation does not yet work but will come
23       soon.
24     
25     * CAST5 and SHA-1 are now the default algorithms to protect the key
26       and for symmetric-only encryption. This should solve a couple
27       of compatibility problems because the old algorithms are optional
28       according to RFC2440
29
30     * Twofish and MDC enhanced encryption is now used.  PGP 7 supports 
31       this.  Older versions of GnuPG don't support it, so they should be
32       upgraded to at least 1.0.2
33     
34
35 Noteworthy changes in version 1.1.1
36 -----------------------------------
37
38     * Add gpg-agent.
39
40     * Removed option --emulate-checksum-bug
41
42     * Fixed expiration handling of encryption keys.
43
44     * Add an experimental feature to do unattended key generation.
45
46     * The user is now asked for the reason of revocation as required
47       by the new OpenPGP draft.
48
49     * There is a ~/.gnupg/random_seed file now which saves the
50       state of the internal RNG and increases system performance
51       somewhat.  This way the full entropy source is only used in
52       cases were it is really required.
53       Use the option --no-random-seed-file to disable this feature.
54
55     * New options --ignore-time-conflict and --lock-never.
56
57     * Some fixes for the W32 version.
58
59     * The entropy.dll is not anymore used by the W32 version but replaced
60       by code derived from Cryptlib.
61
62     * Encryption is now much faster: About 2 times for 1k bit keys
63       and 8 times for 4k keys.
64
65     * New encryption keys are generated in a way which allows a much
66       faster decryption.
67
68     * New command --export-secret-subkeys which outputs the
69       the _primary_ key with it's secret parts deleted.  This is
70       useful for automated decryption/signature creation as it
71       allows to keep the real secret primary key offline and
72       thereby protecting the key certificates and allowing to
73       create revocations for the subkeys.  See the FAQ for a
74       procedure to install such secret keys.
75
76     * Keygeneration now writes to the first writeable keyring or
77       as default to the one in the homedirectory.  Prior versions
78       ignored all --keyring options.
79
80     * New option --command-fd to take user input from a file descriptor;
81       to be used with --status-fd by software which uses GnuPG as a backend.
82
83     * There is a new status PROGRESS which is used to show progress during
84       key generation.
85
86     * Support for the new MDC encryption packets.  To create them either
87       --force-mdc must be use or cipher algorithm with a blocksize other
88       than 64 bits is to be used.  --openpgp currently disables MDC packets
89       entirely.  This option should not yet be used.
90
91     * New option --no-auto-key-retrieve to disable retrieving of
92       a missing public key from a keyerver, when a keyerver has been set.
93
94     * New command --verify-files.  New option --fast-list-mode.
95
96     * $http_proxy is now used when --honor-http-proxy is set.
97
98     * Fixed some minor bugs and the problem with conventional encrypted
99       packets which did use the gpg v3 partial length headers.
100
101     * Some more translations.
102
103     * Fixed a bug with symmetric-only encryption using the non-default 3DES.
104       The option --emulate-3des-s2k-bug may be used to decrypt documents
105       which have been encrypted this way; this should be done immediately
106       as this workaround will be remove in 1.1
107
108     * Can now handle (but not display) PGP's photo IDs. I don't know the
109       format of that packet but after stripping a few bytes from the start
110       it looks like a JPEG (at least my test data).  Handling of this
111       package is required because otherwise it would mix up the
112       self signatures and you can't import those keys.
113
114     * Passing non-ascii user IDs on the commandline should now work in all
115       cases.
116
117     * New keys are now generated with an additional preference to Blowfish.
118
119     * Removed the GNU Privacy Handbook from the distribution because it
120       is now in the package GPH.
121
122
123 Noteworthy changes in version 1.1.0 (1999-10-26)
124 -----------------------------------
125
126     * Did a couple of changes for this new development series.
127       This release basically works on my machine but may have
128       serious problems.
129
130
131 Noteworthy changes in version 1.0.0 (1999-09-07)
132 -----------------------------------
133
134     * Add a very preliminary version of the GNU Privacy Handbook to
135       the distribution (lynx doc/gph/index.html).
136
137     * Changed the version number to GnuPG 2001 ;-)
138
139
140 Noteworthy changes in version 0.9.11
141 ------------------------------------
142
143     * UTF-8 strings are now correctly printed (if --charset is set correctly).
144       Output of --with-colons remains C-style escaped UTF-8.
145
146     * Workaround for a problem with PGP 5 detached signature in textmode.
147
148     * Fixed a problem when importing new subkeys (duplicated signatures).
149
150 Noteworthy changes in version 0.9.10
151 ------------------------------------
152
153     * Some strange new options to help pgpgpg
154
155     * Cleaned up the dox a bit.
156
157
158 Noteworthy changes in version 0.9.9
159 -----------------------------------
160
161     * New options --[no-]utf8-strings.
162
163     * New edit-menu commands "enable" and "disable" for entire keys.
164
165     * You will be asked for a filename if gpg cannot deduce one.
166
167     * Changes to support libtool which is needed for the development
168       of libgcrypt.
169
170     * New script tools/lspgpot to help transferring assigned
171       trustvalues from PGP to GnuPG.
172
173     * New commands --lsign-key and made --sign-key a shortcut for --edit
174       and sign.
175
176     * New options (#122--126 ;-) --[no-]default-recipient[-self],
177       --disable-{cipher,pubkey}-algo. See the man page.
178
179     * Enhanced info output in case of multiple recipients and fixed exit code.
180
181     * New option --allow-non-selfsigned-uid to work around a problem with
182       the German IN way of separating signing and encryption keys.
183
184
185 Noteworthy changes in version 0.9.8
186 -----------------------------------
187
188     * New subcommand "delsig" in the edit menu.
189
190     * The name of the output file is not anymore the one which is
191       embedded in the processed message, but the used filename with
192       the extension stripped.  To revert to the old behaviour you can
193       use the option --use-embedded-filename.
194
195     * Another hack to cope with pgp2 generated detached signatures.
196
197     * latin-2 character set works (--charset=iso-8859-2).
198
199     * New option --with-key-data to list the public key parameters.
200       New option -N to insert notations and a --set-policy-url.
201       A couple of other options to allow reseting of options.
202
203     * Better support for HPUX.
204
205
206 Noteworthy changes in version 0.9.7
207 -----------------------------------
208
209     * Add some work arounds for a bugs in pgp 2 which led to bad signatures
210       when used with canonical texts in some cases.
211
212     * Enhanced some status outputs.
213
214 Noteworthy changes in version 0.9.6
215 -----------------------------------
216
217     * Twofish is now statically linked by default. The experimental 128 bit
218       version is now disabled.  Full support will be available as soon as
219       the OpenPGP WG has decided on an interpretation of rfc2440.
220
221     * Dropped support for the ancient Blowfish160 which is not OpenPGP.
222
223     * Merged gpgm and gpg into one binary.
224
225     * Add "revsig" and "revkey" commands to the edit menu.  It is now
226       possible to revoke signature and subkeys.
227
228
229 Noteworthy changes in version 0.9.5
230 -----------------------------------
231
232     * New command "lsign" in the keyedit menu to create non-exportable
233       signatures.  Removed --trusted-keys option.
234
235     * A bunch of changes to the key validation code.
236
237     * --list-trust-path now has an optional --with-colons format.
238
239     * New command --recv-keys to import keys from an keyserver.
240
241
242 Noteworthy changes in version 0.9.4
243 -----------------------------------
244
245     * New configure option --enable-static-rnd=[egd|linux|unix|none]
246       to select a random gathering module for static linking.
247
248     * The original text is now verbatim copied to a cleartext signed message.
249
250     * Bugfixes but there are still a couple of bugs.
251
252
253 Noteworthy changes in version 0.9.3
254 -----------------------------------
255
256     * Changed the internal design of getkey which now allows a
257       efficient lookup of multiple keys and add a word match mode.
258
259     * New options --[no-]encrypt-to.
260
261     * Some changes to the configure stuff.  Switched to automake 1.4.
262       Removed intl/ from CVS, autogen.sh now uses gettextize.
263
264     * Preferences now include Twofish. Removed preference to Blowfish with
265       a special hack to suppress the "not listed in preferences" warning;
266       this is to allow us to switch completely to Twofish in the near future.
267
268     * Changed the locking stuff.
269
270     * Print all user ids of a good signature.
271
272
273 Noteworthy changes in version 0.9.2
274 -----------------------------------
275
276     * add some additional time warp checks.
277
278     * Option --keyserver and command --send-keys to utilize HKP servers.
279
280     * Upgraded to zlib 1.1.3 and fixed an inflate bug
281
282     * More cleanup on the cleartext signatures.
283
284
285 Noteworthy changes in version 0.9.1
286 -----------------------------------
287
288     * Polish language support.
289
290     * When querying the passphrase, the key ID of the primary key is
291       displayed along with the one of the used secondary key.
292
293     * Fixed a bug occurring when decrypting pgp 5 encrypted messages,
294       fixed an infinite loop bug in the 3DES code and in the code
295       which looks for trusted signatures.
296
297     * Fixed a bug in the mpi library which caused signatures not to
298       compare okay.
299
300     * Rewrote the handling of cleartext signatures; the code is now
301       better maintainable (I hope so).
302
303     * New status output VALIDSIG only for valid signatures together
304       with the fingerprint of the signer's key.
305
306
307 Noteworthy changes in version 0.9.0
308 -----------------------------------
309
310     * --export does now only exports rfc2440 compatible keys; the
311       old behaviour is available with --export-all.
312       Generation of v3 ElGamal (sign and encrypt) keys is not longer
313       supported.
314
315     * Fixed the uncompress bug.
316
317     * Rewrote the rndunix module. There are two environment variables
318       used for debugging now: GNUPG_RNDUNIX_DBG give the file to write
319       debugging information (use "-" for stdout) and if GNUPG_RNDUNIX_DBGALL
320       is set, all programs which are only tried are also printed.
321
322     * New option --escape-from-lines to "dash-escape" "From " lines to
323       prevent mailers to change them to ">From ".  This is not enabled by
324       default because it is not in compliance with rfc2440 - however, you
325       should turn it on.
326
327
328 Noteworthy changes in version 0.4.5
329 -----------------------------------
330
331     * The keyrings and the trustdb is now locked, so that
332       other GnuPG processes won't damage these files.  You
333       may want to put the option --lock-once into your options file.
334
335     * The latest self-signatures are now used; this enables --import
336       to see updated preferences etc.
337
338     * Import of subkeys should now work.
339
340     * Random gathering modules may now be loaded as extensions. Add
341       such a module for most Unices but it is very experimental!
342
343     * Brazilian language support.
344
345
346 Noteworthy changes in version 0.4.4
347 -----------------------------------
348
349     * Fixed the way the key expiration time is stored. If you have
350       an expiration time on your key you should fix it with --edit-key
351       and the command "expire".  I apologize for this inconvenience.
352
353     * Add option --charset to support "koi8-r" encoding of user ids.
354       (Not yet tested).
355
356     * Preferences should now work again. You should run
357       "gpgm --check-trustdb \*" to rebuild all preferences.
358
359     * Checking of certificates should now work but this needs a lot
360       of testing.  Key validation values are now cached in the
361       trustdb; they should be recalculated as needed, but you may
362       use --check-trustdb or --update-trustdb to do this.
363
364     * Spanish translation by Urko Lusa.
365
366     * Patch files are from now on signed.  See the man page
367       for the new option --not-dash-escaped.
368
369     * New syntax: --edit-key <userID> [<commands>]
370       If you run it without --batch the commands are executed and then
371       you are put into normal mode unless you use "quit" or "save" as
372       one of the commands.  When in batch mode, the program quits after
373       the last command, so you have to use "save" if you did some changes.
374       It does not yet work completely, but may be used to list so the
375       keys etc.
376
377
378 Noteworthy changes in version 0.4.3
379 -----------------------------------
380
381     * Fixed the gettext configure bug.
382
383     * Kludge for RSA keys: keyid and length of a RSA key are
384       correctly reported, but you get an error if you try to use
385       this key (If you do not have the non-US version).
386
387     * Experimental support for keyrings stored in a GDBM database.
388       This is *much* faster than a standard keyring.  You will notice
389       that the import gets slower with time; the reason is that all
390       new keys are used to verify signatures of previous inserted
391       keys.  Use "--keyring gnupg-gdbm:<name-of-gdbm-file>".  This is
392       not (yet) supported for secret keys.
393
394     * A Russian language file in the distribution (alternatives are in
395       the contrib directory of the FTP servers)
396
397     * commandline option processing now works as expected for GNU programs
398       with the exception that you can't mix options and normal arguments.
399
400     * Now --list-key lists all matching keys.  This is needed in some
401       other places too.
402
403
404 Noteworthy changes in version 0.4.2
405 -----------------------------------
406
407     * This is only a snapshot: There are still a few bugs.
408
409     * Fixed this huge memory leak.
410
411     * Redesigned the trust database:  You should run "gpgm --check-trustdb".
412       New command --update-trustdb, which adds new key from the public
413       keyring into your trustdb
414
415     * Fixed a bug in the armor code, leading to invalid packet errors.
416       (a workaround for this was to use --no-armor).  The shorten line
417       length (64 instead of 72) fixes a problem with pgp5 and keyservers.
418
419     * comment packets are not anymore generated. "--export" filters
420       them out.  One Exception:  The comment packets in a secret keyring
421       are still used because they carry the factorization of the public
422       prime product.
423
424     * --import now only looks for KEYBLOCK headers, so you can now simply
425       remove the "- " in front of such a header if someone accidently signed
426       such a message or the keyblock is part of a cleartext signed message.
427
428     * --with-colons now lists the key expiration time and not anymore
429       the valid period.
430
431     * Some keyblocks created with old releases have a wrong sequence
432       of packets, so that the keyservers don't accept these keys.
433       Simply using "--edit-key" fixes the problem.
434
435     * New option --force-v3-sigs to generate signed messages which are
436       compatible to PGP 5.
437
438     * Add some code to support DLD (for non ELF systems) - but this is
439       not tested because my BSD box is currently broken.
440
441     * New command "expire" in the edit-key menu.
442
443
444
445 Noteworthy changes in version 0.4.1
446 -----------------------------------
447     * A secondary key is used when the primary key is specified but cannot
448       be used for the operation (if it is a sign-only key).
449
450     * GNUPG can now handle concatenated armored messages:  There is still a
451       bug if different kinds of messages are mixed.
452
453     * Iterated+Salted passphrases now work.  If want to be sure that PGP5
454       is able to handle them you may want to use the options
455         "--s2k-mode 3 --s2k-cipher-algo cast5 --s2k-digest-algo sha1"
456       when changing a passphrase.
457
458     * doc/OpenPGP talks about OpenPGP compliance, doc/HACKING gives
459       a few hints about the internal structure.
460
461     * Checked gnupg against the August 1998 draft (07) and I believe
462       it is in compliance with this document (except for one point).
463
464     * Fixed some bugs in the import merging code and rewrote some
465       code for the trustdb.
466
467
468 Noteworthy changes in version 0.4.0
469 -----------------------------------
470     * Triple DES is now supported.  Michael Roth did this piece of
471       needed work.  We have now all the coded needed to be OpenPGP
472       compliant.
473
474     * Added a simple rpm spec file (see INSTALL).
475
476     * detached and armored signatures are now using "PGP SIGNATURE",
477       except when --rfc1991 is used.
478
479     * All times which are not in the yyyy-mm-dd format are now printed
480       in local time.
481
482
483 Noteworthy changes in version 0.3.5
484 -----------------------------------
485     * New option --throw-keyid to create anonymous enciphered messages.
486       If gpg detects such a message it tires all available secret keys
487       in turn so decode it.  This is a gnupg extension and not in OpenPGP
488       but it has been discussed there and afaik some products use this
489       scheme too (Suggested by Nimrod Zimmerman).
490
491     * Fixed a bug with 5 byte length headers.
492
493     * --delete-[secret-]key is now also available in gpgm.
494
495     * cleartext signatures are not anymore converted to LF only.
496
497     * Fixed a trustdb problem.  Run "gpgm --check-trustdb" to fix old
498       trust dbs.
499
500     * Building in another directory should now work.
501
502     * Weak key detection mechanism (Niklas Hernaeus).
503
504
505 Noteworthy changes in version 0.3.4
506 -----------------------------------
507     * New options --comment and --set-filename; see g10/OPTIONS
508
509     * yes/no, y/n localized.
510
511     * Fixed some bugs.
512
513 Noteworthy changes in version 0.3.3
514 -----------------------------------
515     * IMPORTANT: I found yet another bug in the way the secret keys
516       are encrypted - I did it the way pgp 2.x did it, but OpenPGP
517       and pgp 5.x specify another (in some aspects simpler) method.
518       To convert your secret keys you have to do this:
519         1. Build the new release but don't install it and keep
520            a copy of the old program.
521         2. Disable the network, make sure that you are the only
522            user, be sure that there are no Trojan horses etc ....
523         3. Use your old gpg (version 0.3.[12]) and set the
524            passphrases of ALL your secret keys to empty!
525            (gpg --change-passphrase your-user-id).
526         4. Save your ownertrusts (see the next point)
527         5. rm ~/.gnupg/trustdb.gpg
528         6. install the new version of gpg (0.3.3)
529         7. For every secret key call "gpg --edit-key your-user-id",
530            enter "passwd" at the prompt, follow the instructions and
531            change your password back, enter "save" to store it.
532         8. Restore the ownertrust (see next point).
533
534     * The format of the trust database has changed; you must delete
535       the old one, so gnupg can create a new one.
536       IMPORTANT: Use version 0.3.[12] to save your assigned ownertrusts
537       ("gpgm --list-ownertrust >saved-trust"); then build this new version
538       and restore the ownertrust with this new version
539       ("gpgm --import-ownertrust saved-trust").  Please note that
540       --list-ownertrust has been renamed to --export-ownertrust in this
541       release and it does now only export defined ownertrusts.
542
543     * The command --edit-key now provides a commandline driven menu
544       which can be used for various tasks.  --sign-key is only an
545       an alias to --edit-key and maybe removed in future: use the
546       command "sign" of this new menu - you can select which user ids
547       you want to sign.
548
549     * Alternate user ids can now be created an signed.
550
551     * Owner trust values can now be changed with --edit-key (trust)
552
553     * GNUPG can now run as a coprocess; this enables sophisticated
554       frontends.  tools/shmtest.c is a simple sample implementation.
555       This needs some more work: all tty_xxx() are to be replaced
556       by cpr_xxx() and some changes in the display logics is needed.
557
558     * Removed options --gen-prime and --gen-random.
559
560     * Removed option --add-key; use --edit-key instead.
561
562     * Removed option --change-passphrase; use --edit-key instead.
563
564     * Signatures are now checked even if the output file could not
565       be created. Command "--verify" tries to find the detached data.
566
567     * gpg now disables core dumps.
568
569     * compress and symmetric cipher preferences are now used.
570       Because there is no 3DES yet, this is replaced by Blowfish.
571
572     * We have added the Twofish as an experimental cipher algorithm.
573       Many thanks to Matthew Skala for doing this work.
574       Twofish is the AES submission from Schneier et al.; see
575       "www.counterpane.com/twofish.html" for more information.
576
577     * Started with a help system: If you enter a question mark at some
578       prompt; you should get a specific help for this prompt.
579
580     * There is no more backup copy of the secret keyring.
581
582     * A lot of new bugs. I think this release is not as stable as
583       the previous one.
584
585
586 Noteworthy changes in version 0.3.2
587 -----------------------------------
588     * Fixed some bugs when using --textmode (-seat)
589
590     * Now displays the trust status of a positive verified message.
591
592     * Keyrings are now scanned in the sequence they are added with
593       --[secret-]keyring.  Note that the default keyring is implicitly
594       added as the very first one unless --no-default-keyring is used.
595
596     * Fixed setuid and dlopen bug.
597
598 Noteworthy changes in version 0.3.1
599 -----------------------------------
600     * Partial headers are now written in the OpenPGP format if
601       a key in a v4 packet is used.
602
603     * Removed some unused options, removed the gnupg.sig stuff.
604
605     * Key lookup by name now returns a key which can be used for
606       the desired action.
607
608     * New options --list-ownertrust (gpgm) to make a backup copy
609       of the ownertrust values you assigned.
610
611     * clear signature headers are now in compliance with OpenPGP.
612
613 Noteworthy changes in version 0.3.0
614 -----------------------------------
615
616     * New option --emulate-checksum-bug.  If your passphrase does not
617       work anymore, use this option and --change-passphrase to rewrite
618       your passphrase.
619
620     * More complete v4 key support: Preferences and expiration time
621       is set into the self signature.
622
623     * Key generation defaults to DSA/ElGamal keys, so that new keys are
624       interoperable with pgp5
625
626     * DSA key generation is faster and key generation does not anymore
627       remove entropy from the random generator (the primes are public
628       parameters, so there is really no need for a cryptographic secure
629       prime number generator which we had used).
630
631     * A complete new structure for representing the key parameters.
632
633     * Removed most public key knowledge into the cipher library.
634
635     * Support for dynamic loading of new algorithms.
636
637     * Moved tiger to an extension module.
638
639
640 Noteworthy changes in version 0.2.19
641 ------------------------------------
642
643     * Replaced /dev/urandom in checks with new tool mk-tdata.
644
645     * Some assembler file cleanups; some more functions for the Alpha.
646
647     * Tiger has now the OpenPGP assigned number 6.  Because the OID has
648       changed, old signatures using this algorithm can't be verified.
649
650     * gnupg now encrypts the compressed packed and not any longer in the
651       reverse order; anyway it can decrypt both versions. Thanks to Tom
652       for telling me this (not security related) bug.
653
654     * --add-key works and you are now able to generate subkeys.
655
656     * It is now possible to generate ElGamal keys in v4 packets to create
657       valid OpenPGP keys.
658
659     * Some new features for better integration into MUAs.
660
661
662 Noteworthy changes in version 0.2.18
663 ------------------------------------
664
665     * Splitted cipher/random.c, add new option "--disable-dev-random"
666       to configure to support the development of a random source for
667       other systems. Prepared sourcefiles rand-unix.c, rand-w32.c
668       and rand-dummy.c (which is used to allow compilation on systems
669       without a random source).
670
671     * Fixed a small bug in the key generation (it was possible that 48 bits
672       of a key were not taken from the random pool)
673
674     * Add key generation for DSA and v4 signatures.
675
676     * Add a function trap_unaligned(), so that a SIGBUS is issued on
677       Alphas and not the slow emulation code is used. And success: rmd160
678       raised a SIGBUS.
679
680     * Enhanced the formatting facility of argparse and changed the use of
681       \r,\v to @ because gettext does not like it.
682
683     * New option "--compress-algo 1" to allow the creation of compressed
684       messages which are readable by PGP and "--print-md" (gpgm) to make
685       speed measurement easier.
686
687
688 Noteworthy changes in version 0.2.17
689 ------------------------------------
690
691     * Comment packets are now of private type 61.
692
693     * Passphrase code still used a 160 bit blowfish key, added a
694       silly workaround. Please change your passphrase again - sorry.
695
696     * Conventional encryption now uses a type 3 packet to describe the
697       used algorithms.
698
699     * The new algorithm number for Blowfish is 20, 16 is still used for
700       encryption only; for signing it is only used when it is in a v3 packet,
701       so that GNUPG keys are still valid.
702
703
704 Noteworthy changes in version 0.2.16
705 ------------------------------------
706
707     * Add experimental support for the TIGER/192 message digest algorithm.
708       (But there is only a dummy ASN OID).
709
710     * Standard cipher is now Blowfish with 128 bit key in OpenPGP's CFB
711       mode. I renamed the old cipher to Blowfish160. Because the OpenPGP
712       group refused to assign me a number for Blowfish160, I have to
713       drop support for this in the future. You should use
714       "--change-passphrase" to recode your current passphrase with 128
715       bit Blowfish.
716
717
718 Noteworthy changes in version 0.2.15
719 ------------------------------------
720
721     * Fixed a bug with the old checksum calculation for secret keys.
722       If you run the program without --batch, a warning does inform
723       you if your secret key needs to be converted; simply use
724       --change-passphrase to recalculate the checksum. Please do this
725       soon, as the compatible mode will be removed sometime in the future.
726
727     * CAST5 works (using the PGP's special CFB mode).
728
729     * Again somewhat more PGP 5 compatible.
730
731     * Some new test cases
732
733 Noteworthy changes in version 0.2.14
734 ------------------------------------
735
736     * Changed the internal handling of keyrings.
737
738     * Add support to list PGP 5 keyrings with subkeys
739
740     * Timestamps of signatures are now verified.
741
742     * A expiration time can now be specified during key generation.
743
744     * Some speedups for Blowfish and SHA-1, rewrote SHA-1 transform.
745       Reduced the amount of random bytes needed for key generation in
746       some cases.
747
748
749 Noteworthy changes in version 0.2.13
750 ------------------------------------
751
752     * Verify of DSA signatures works.
753
754     * Re-implemented the slower random number generator.
755
756
757 Noteworthy changes in version 0.2.12
758 ------------------------------------
759
760     * --delete-key checks that there is no secret key. The new
761       option --delete-secret-key maybe used to delete a secret key.
762
763     * "-kv" now works as expected. Options "--list-{keys,sigs]"
764       and "--check-sigs" are now working.
765
766     * New options "--verify" and "--decrypt" to better support integration
767       into MUAs (partly done for Mutt).
768
769     * New option "--with-colons" to make parsing of key lists easier.
770
771 Noteworthy changes in version 0.2.11
772 ------------------------------------
773
774     * GPG now asks for a recipient's name if option "-r" is not used.
775
776     * If there is no good trust path, the program asks whether to use
777       the public keys anyway.
778
779     * "--delete-key" works for public keys. What semantics shall I use
780       when there is a secret key too? Delete the secret key or leave him
781       and auto-regenerate the public key, next time the secret key is used?
782
783 Noteworthy changes in version 0.2.10
784 ------------------------------------
785
786     * Code for the alpha is much faster (about 20 times); the data
787       was misaligned and the kernel traps this, so nearly all time
788       was used by system to trap the misalignments and to write
789       syslog messages. Shame on me and thanks to Ralph for
790       pointing me at this while drinking some beer yesterday.
791
792     * Changed some configure options and add an option
793       --disable-m-guard to remove the memory checking code
794       and to compile everything with optimization on.
795
796     * New environment variable GNUPGHOME, which can be used to set
797       another homedir than ~/.gnupg.  Changed default homedir for
798       Windoze version to c:/gnupg.
799
800     * Fixed detached signatures; detached PGP signatures caused a SEGV.
801
802     * The Windoze version works (as usual w/o a strong RNG).
803
804
805 Noteworthy changes in version 0.2.9
806 -----------------------------------
807
808     * Fixed FreeBSD bug.
809
810     * Added a simple man page.
811
812     * Switched to automake1.2f and a newer gettext.
813
814 Noteworthy changes in version 0.2.8
815 -----------------------------------
816
817     * Changed the name to GNUPG, the binaries are called gpg and gpgm.
818       You must rename rename the directory "~/.g10" to ~/.gnupg/, rename
819       {pub,sec}ring.g10 to {pub,sec}ring.gpg, trustdb.g10 to trustdb.gpg
820       and g10.sig to gnupg.sig.
821
822     * New or changed passphrases are now salted.
823
824
825 Noteworthy changes in version 0.2.7
826 -----------------------------------
827
828     * New command "gen-revoke" to create a key revocation certificate.
829
830     * New option "homedir" to set the homedir (which defaults to "~/.g10").
831       This directory is created if it does not exists (only the last
832       part of the name and not the complete hierarchy)
833
834     * Command "import" works. (Try: "finger gcrypt@ftp.guug.de|g10 --import")
835
836     * New commands "dearmor/enarmor" for g10maint.  These are mainly
837       used for internal test purposes.
838
839     * Option --version now conforming to the GNU standards and lists
840       the available ciphers, message digests and public key algorithms.
841
842     * Assembler code for m68k (not tested).
843
844     * "make check" works.
845
846 Noteworthy changes in version 0.2.6
847 -----------------------------------
848
849     * Option "--export" works.
850
851
852 Noteworthy changes in version 0.2.5
853 -----------------------------------
854
855     * Added zlib for systems which don't have it.
856       Use "./configure --with-zlib" to link with the static version.
857
858     * Generalized some more functions and rewrote the encoding of
859       message digests into MPIs.
860
861     * Enhanced the checkit script
862
863
864 Noteworthy changes in version 0.2.4
865 -----------------------------------
866
867     * nearly doubled the speed of the ElGamal signature verification.
868
869     * backup copies of keyrings are created.
870
871     * assembler stuff for Pentium; gives about 15% better performance.
872
873     * fixed a lot of bugs.
874
875
876 Noteworthy changes in version 0.2.3
877 -----------------------------------
878
879     * Found a bug in the calculation of ELG fingerprints. This is now
880       fixed, but all existing fingerprints and keyids for ELG keys
881       are not any more valid.
882
883     * armor should now work; including clear signed text.
884
885     * moved some options to the new program g10maint
886
887     * It's now 64 bit clean and runs fine on an alpha--linux.
888
889     * Key generation is much faster now.  I fixed this by using not
890       so strong random number for the primes (this was a bug because the
891       ElGamal primes are public parameters and it does not make sense
892       to generate them from strong random).  The real secret is the x value
893       which is still generated from strong (okay: /dev/random) random bits.
894
895     * added option "--status-fd": see g10/OPTIONS
896
897     * We have secure memory on systems which support mlock().
898       It is not complete yet, because we do not have signal handler
899       which does a cleanup in very case.
900       We should also check the ulimit for the user in the case
901       that the admin does not have set a limit on locked pages.
902
903     * started with internationalization support.
904
905     * The logic to handle the web of trust is now implemented. It is
906       has some bugs; but I'm going to change the algorithm anyway.
907       It works by calculating the trustlevel on the fly.  It may ask
908       you to provide trust parameters if the calculated trust probability
909       is too low.  I will write a paper which discusses this new approach.
910
911     * a couple of changes to the configure script.
912
913     * New option "--quick-random" which uses a much quicker random
914       number generator.  Keys generated while this option is in effect
915       are flags with "INSECURE!" in the user-id.  This is a development
916       only option.
917
918     * Read support for new version packets (OpenPGP).
919
920     * Comment packets are now of correct OpenPGP type 16. Old comment
921       packets written by G10 are detected because they always start with
922       a hash which is an invalid version byte.
923
924     * The string "(INSECURE!)" is appended to a new user-id if this
925       is generated on a system without a good random number generator.
926