scd,pcsc: Use HANDLE for context and card.
[gnupg.git] / NEWS
1 Noteworthy changes in version 2.3.0 (unreleased)
2 ------------------------------------------------
3
4   Changes also found in 2.2.16:
5
6   * gpg,gpgsm: Fix deadlock on Windows due to a keybox sharing
7     violation.  [#4505]
8
9   * gpg: Allow deletion of subkeys with --delete-key.  This finally
10     makes the bang-suffix work as expected for that command.  [#4457]
11
12   * gpg: Replace SHA-1 by SHA-256 in self-signatures when updating
13     them with --quick-set-expire or --quick-set-primary-uid. [#4508]
14
15   * gpg: Improve the photo image viewer selection.  [#4334]
16
17   * gpg: Fix decryption with --use-embedded-filename.  [#4500]
18
19   * gpg: Remove hints on using the --keyserver option.  [#4512]
20
21   * gpg: Fix export of certain secret keys with comments.  [#4490]
22
23   * gpg: Reject too long user-ids in --quick-gen-key.  [#4532]
24
25   * gpg: Fix a double free in the best key selection code.  [#4462]
26
27   * gpg: Fix the key generation dialog for switching back from EdDSA
28     to ECDSA.
29
30   * gpg: Use AES-192 with SHA-384 to comply with RFC-6637.
31
32   * gpg: Use only the addrspec from the Signer's UID subpacket to
33     mitigate a problem with another implementation.
34
35   * gpg: Skip invalid packets during a keyring listing and sync
36     diagnostics with the output.
37
38   * gpgsm: Avoid confusing diagnostic when signing with the default
39     key.  [#4535]
40
41   * agent: Do not delete any secret key in --dry-run mode.
42
43   * agent: Fix failures on 64 bit big-endian boxes related to URIs in
44     a keyfile.  [#4501]
45
46   * agent: Stop scdaemon after a reload with disable-scdaemon newly
47     configured.  [#4326]
48
49   * dirmngr: Improve caching algorithm for WKD domains.
50
51   * dirmngr: Support other hash algorithms than SHA-1 for OCSP.  [#3966]
52
53   * gpgconf: Make --homedir work for --launch.  [#4496]
54
55   * gpgconf: Before --launch check for a valid config file.  [#4497]
56
57   * wkd: Do not import more than 5 keys from one WKD address.
58
59   * wkd: Accept keys which are stored in armored format in the
60     directory.
61
62   * The installer for Windows now comes with signed binaries.
63
64   Release-info: https://dev.gnupg.org/T4509
65   See-also: gnupg-announce/2019q2/000438.html
66
67   Changes also found in 2.2.15:
68
69   * sm: Fix --logger-fd and --status-fd on Windows for non-standard
70     file descriptors.
71
72   * sm: Allow decryption even if expired keys are configured.  [#4431]
73
74   * agent: Change command KEYINFO to print ssh fingerprints with other
75     hash algos.
76
77   * dirmngr: Fix build problems on Solaris due to the use of reserved
78     symbol names.  [#4420]
79
80   * wkd: New commands --print-wkd-hash and --print-wkd-url for
81     gpg-wks-client.
82
83   Release-info: https://dev.gnupg.org/T4434
84   See-also: gnupg-announce/2019q1/000436.html
85
86   Changes also found in 2.2.14:
87
88   * gpg: Allow import of PGP desktop exported secret keys.  Also avoid
89    importing secret keys if the secret keyblock is not valid.  [#4392]
90
91   * gpg: Make invalid primary key algo obvious in key listings.
92
93   * sm: Do not mark a certificate in a key listing as de-vs compliant
94     if its use for a signature will not be possible.
95
96   * sm: Fix certificate creation with key on card.
97
98   * sm: Create rsa3072 bit certificates by default.
99
100   * sm: Print Yubikey attestation extensions with --dump-cert.
101
102   * agent: Fix cancellation handling for scdaemon.
103
104   * agent: Support --mode=ssh option for CLEAR_PASSPHRASE.  [#4340]
105
106   * scd: Fix flushing of the CA-FPR DOs in app-openpgp.
107
108   * scd: Avoid a conflict error with the "undefined" app.
109
110   * dirmngr: Add CSRF protection exception for protonmail.
111
112   * dirmngr: Fix build problems with gcc 9 in libdns.
113
114   * gpgconf: New option --show-socket for use with --launch.
115
116   * gpgtar: Make option -C work for archive creation.
117
118   Release-info: https://dev.gnupg.org/T4412
119   See-also: gnupg-announce/2019q1/000435.html
120
121   Changes also found in 2.2.13:
122
123   * gpg: Implement key lookup via keygrip (using the & prefix).
124
125   * gpg: Allow generating Ed25519 key from existing key.
126
127   * gpg: Emit an ERROR status line if no key was found with -k.
128
129   * gpg: Stop early when trying to create a primary Elgamal key.  [#4329]
130
131   * gpgsm: Print the card's key algorithms along with their keygrips
132     in interactive key generation.
133
134   * agent: Clear bogus pinentry cache in the error case.  [#4348]
135
136   * scd: Support "acknowledge button" feature.
137
138   * scd: Fix for USB INTERRUPT transfer.  [#4308]
139
140   * wks: Do no use compression for the the encrypted challenge and
141     response.
142
143   Release-info: https://dev.gnupg.org/T4290
144   See-also: gnupg-announce/2019q1/000434.html
145
146   Changes also found in 2.2.12:
147
148   * tools: New commands --install-key and --remove-key for
149     gpg-wks-client.  This allows to prepare a Web Key Directory on a
150     local file system for later upload to a web server.
151
152   * gpg: New --list-option "show-only-fpr-mbox".  This makes the use
153     of the new gpg-wks-client --install-key command easier on Windows.
154
155   * gpg: Improve processing speed when --skip-verify is used.
156
157   * gpg: Fix a bug where a LF was accidentally written to the console.
158
159   * gpg: --card-status now shows whether a card has the new KDF
160     feature enabled.
161
162   * agent: New runtime option --s2k-calibration=MSEC.  New configure
163     option --with-agent-s2k-calibration=MSEC.  [#3399]
164
165   * dirmngr: Try another keyserver from the pool on receiving a 502,
166     503, or 504 error.  [#4175]
167
168   * dirmngr: Avoid possible CSRF attacks via http redirects.  A HTTP
169     query will not anymore follow a 3xx redirect unless the Location
170     header gives the same host.  If the host is different only the
171     host and port is taken from the Location header and the original
172     path and query parts are kept.
173
174   * dirmngr: New command FLUSHCRL to flush all CRLS from disk and
175     memory.  [#3967]
176
177   * New simplified Chinese translation (zh_CN).
178
179   Release-info: https://dev.gnupg.org/T4289
180   See-also: gnupg-announce/2018q4/000433.html
181
182   Changes also found in 2.2.11:
183
184   * gpgsm: Fix CRL loading when intermediate certicates are not yet
185     trusted.
186
187   * gpgsm: Fix an error message about the digest algo.  [#4219]
188
189   * gpg: Fix a wrong warning due to new sign usage check introduced
190     with 2.2.9.  [#4014]
191
192   * gpg: Print the "data source" even for an unsuccessful keyserver
193     query.
194
195   * gpg: Do not store the TOFU trust model in the trustdb.  This
196     allows to enable or disable a TOFO model without triggering a
197     trustdb rebuild.  [#4134]
198
199   * scd: Fix cases of "Bad PIN" after using "forcesig".  [#4177]
200
201   * agent: Fix possible hang in the ssh handler.  [#4221]
202
203   * dirmngr: Tack the unmodified mail address to a WKD request.  See
204     commit a2bd4a64e5b057f291a60a9499f881dd47745e2f for details.
205
206   * dirmngr: Tweak diagnostic about missing LDAP server file.
207
208   * dirmngr: In verbose mode print the OCSP responder id.
209
210   * dirmngr: Fix parsing of the LDAP port.  [#4230]
211
212   * wks: Add option --directory/-C to the server.  Always build the
213     server on Unix systems.
214
215   * wks: Add option --with-colons to the client.  Support sites which
216     use the policy file instead of the submission-address file.
217
218   * Fix EBADF when gpg et al. are called by broken CGI scripts.
219
220   * Fix some minor memory leaks and bugs.
221
222   Release-info: https://dev.gnupg.org/T4233
223   See-also: gnupg-announce/2018q4/000432.html
224
225   Changes also found in 2.2.10:
226
227   * gpg: Refresh expired keys originating from the WKD.  [#2917]
228
229   * gpg: Use a 256 KiB limit for a WKD imported key.
230
231   * gpg: New option --known-notation.  [#4060]
232
233   * scd: Add support for the Trustica Cryptoucan reader.
234
235   * agent: Speed up starting during on-demand launching.  [#3490]
236
237   * dirmngr: Validate SRV records in WKD queries.
238
239   Release-info: https://dev.gnupg.org/T4112
240   See-also: gnupg-announce/2018q3/000428.html
241
242   Changes also found in 2.2.9:
243
244   * dirmngr: Fix recursive resolver mode and other bugs in the libdns
245     code.  [#3374,#3803,#3610]
246
247   * dirmngr: When using libgpg-error 1.32 or later a GnuPG build with
248     NTBTLS support (e.g. the standard Windows installer) does not
249     anymore block for dozens of seconds before returning data.
250
251   * gpg: Fix bug in --show-keys which actually imported revocation
252     certificates.  [#4017]
253
254   * gpg: Ignore too long user-ID and comment packets.  [#4022]
255
256   * gpg: Fix crash due to bad German translation.  Improved printf
257     format compile time check.
258
259   * gpg: Handle missing ISSUER sub packet gracefully in the presence of
260     the new ISSUER_FPR.  [#4046]
261
262   * gpg: Allow decryption using several passphrases in most cases.
263     [#3795,#4050]
264
265   * gpg: Command --show-keys now enables the list options
266     show-unusable-uids, show-unusable-subkeys, show-notations and
267     show-policy-urls by default.
268
269   * gpg: Command --show-keys now prints revocation certificates. [#4018]
270
271   * gpg: Add revocation reason to the "rev" and "rvs" records of the
272     option --with-colons.  [#1173]
273
274   * gpg: Export option export-clean does now remove certain expired
275     subkeys; export-minimal removes all expired subkeys.  [#3622]
276
277   * gpg: New "usage" property for the drop-subkey filters.  [#4019]
278
279   Release-info: https://dev.gnupg.org/T4036
280   See-also: gnupg-announce/2018q3/000427.html
281
282   Changes also found in 2.2.8:
283
284   * gpg: Decryption of messages not using the MDC mode will now lead
285     to a hard failure even if a legacy cipher algorithm was used.  The
286     option --ignore-mdc-error can be used to turn this failure into a
287     warning.  Take care: Never use that option unconditionally or
288     without a prior warning.
289
290   * gpg: The MDC encryption mode is now always used regardless of the
291     cipher algorithm or any preferences.  For testing --rfc2440 can be
292     used to create a message without an MDC.
293
294   * gpg: Sanitize the diagnostic output of the original file name in
295     verbose mode.  [#4012,CVE-2018-12020]
296
297   * gpg: Detect suspicious multiple plaintext packets in a more
298     reliable way.  [#4000]
299
300   * gpg: Fix the duplicate key signature detection code.  [#3994]
301
302   * gpg: The options --no-mdc-warn, --force-mdc, --no-force-mdc,
303     --disable-mdc and --no-disable-mdc have no more effect.
304
305   * gpg: New command --show-keys.
306
307   * agent: Add DBUS_SESSION_BUS_ADDRESS and a few other envvars to the
308     list of startup environment variables.  [#3947]
309
310   See-also: gnupg-announce/2018q2/000425.html
311
312   Changes also found in 2.2.7:
313
314   * gpg: New option --no-symkey-cache to disable the passphrase cache
315     for symmetrical en- and decryption.
316
317   * gpg: The ERRSIG status now prints the fingerprint if that is part
318     of the signature.
319
320   * gpg: Relax emitting of FAILURE status lines
321
322   * gpg: Add a status flag to "sig" lines printed with --list-sigs.
323
324   * gpg: Fix "Too many open files" when using --multifile.  [#3951]
325
326   * ssh: Return an error for unknown ssh-agent flags.  [#3880]
327
328   * dirmngr: Fix a regression since 2.1.16 which caused corrupted CRL
329     caches under Windows.  [#2448,#3923]
330
331   * dirmngr: Fix a CNAME problem with pools and TLS.  Also use a fixed
332     mapping of keys.gnupg.net to sks-keyservers.net.  [#3755]
333
334   * dirmngr: Try resurrecting dead hosts earlier (from 3 to 1.5 hours).
335
336   * dirmngr: Fallback to CRL if no default OCSP responder is configured.
337
338   * dirmngr: Implement CRL fetching via https.  Here a redirection to
339     http is explicitly allowed.
340
341   * dirmngr: Make LDAP searching and CRL fetching work under Windows.
342     This stopped working with 2.1.  [#3937]
343
344   * agent,dirmngr: New sub-command "getenv" for "getinfo" to ease
345     debugging.
346
347   See-also: gnupg-announce/2018q2/000424.html
348
349   Changes also found in 2.2.6:
350
351   * gpg,gpgsm: New option --request-origin to pretend requests coming
352     from a browser or a remote site.
353
354   * gpg: Fix race condition on trustdb.gpg updates due to too early
355     released lock.  [#3839]
356
357   * gpg: Emit FAILURE status lines in almost all cases.  [#3872]
358
359   * gpg: Implement --dry-run for --passwd to make checking a key's
360     passphrase straightforward.
361
362   * gpg: Make sure to only accept a certification capable key for key
363     signatures.  [#3844]
364
365   * gpg: Better user interaction in --card-edit for the factory-reset
366     sub-command.
367
368   * gpg: Improve changing key attributes in --card-edit by adding an
369     explicit "key-attr" sub-command.  [#3781]
370
371   * gpg: Print the keygrips in the --card-status.
372
373   * scd: Support KDF DO setup.  [#3823]
374
375   * scd: Fix some issues with PC/SC on Windows.  [#3825]
376
377   * scd: Fix suspend/resume handling in the CCID driver.
378
379   * agent: Evict cached passphrases also via a timer.  [#3829]
380
381   * agent: Use separate passphrase caches depending on the request
382     origin.  [#3858]
383
384   * ssh: Support signature flags.  [#3880]
385
386   * dirmngr: Handle failures related to missing IPv6 support
387     gracefully.  [#3331]
388
389   * Fix corner cases related to specified home directory with
390     drive letter on Windows.  [#3720]
391
392   * Allow the use of UNC directory names as homedir.  [#3818]
393
394   See-also: gnupg-announce/2018q2/000421.html
395
396   Changes also found in 2.2.5:
397
398   * gpg: Allow the use of the "cv25519" and "ed25519" short names in
399     addition to the canonical curve names in --batch --gen-key.
400
401   * gpg: Make sure to print all secret keys with option --list-only
402     and --decrypt.  [#3718]
403
404   * gpg: Fix the use of future-default with --quick-add-key for
405     signing keys.  [#3747]
406
407   * gpg: Select a secret key by checking availability under gpg-agent.
408     [#1967]
409
410   * gpg: Fix reversed prompt texts for --only-sign-text-ids.  [#3787]
411
412   * gpg,gpgsm: Fix detection of bogus keybox blobs on 32 bit systems.
413     [#3770]
414
415   * gpgsm: Fix regression since 2.1 in --export-secret-key-raw which
416     got $d mod (q-1)$ wrong.  Note that most tools automatically fixup
417     that parameter anyway.
418
419   * ssh: Fix a regression in getting the client'd PID on *BSD and
420     macOS.
421
422   * scd: Support the KDF Data Object of the OpenPGP card 3.3.  [#3152]
423
424   * scd: Fix a regression in the internal CCID driver for certain card
425     readers.  [#3508]
426
427   * scd: Fix a problem on NetBSD killing scdaemon on gpg-agent
428     shutdown.  [#3778]
429
430   * dirmngr: Improve returned error description on failure of DNS
431     resolving.  [#3756]
432
433   * wks: Implement command --install-key for gpg-wks-server.
434
435   * Add option STATIC=1 to the Speedo build system to allow a build
436     with statically linked versions of the core GnuPG libraries.  Also
437     use --enable-wks-tools by default by Speedo builds for Unix.
438
439   See-also: gnupg-announce/2018q1/000420.html
440
441   Changes also found in 2.2.4:
442
443   * gpg: Change default preferences to prefer SHA512.
444
445   * gpg: Print a warning when more than 150 MiB are encrypted using a
446     cipher with 64 bit block size.
447
448   * gpg: Print a warning if the MDC feature has not been used for a
449     message.
450
451   * gpg: Fix regular expression of domain addresses in trust
452     signatures. [#2923]
453
454   * agent: New option --auto-expand-secmem to help with high numbers
455     of concurrent connections.  Requires libgcrypt 1.8.2 for having
456     an effect.  [#3530]
457
458   * dirmngr: Cache responses of WKD queries.
459
460   * gpgconf: Add option --status-fd.
461
462   * wks: Add commands --check and --remove-key to gpg-wks-server.
463
464   * Increase the backlog parameter of the daemons to 64 and add
465     option --listen-backlog.
466
467   * New configure option --enable-run-gnupg-user-socket to first try a
468     socket directory which is not removed by systemd at session end.
469
470   See-also: gnupg-announce/2017q4/000419.html
471
472   Changes also found in 2.2.3:
473
474   * gpgsm: Fix initial keybox creation on Windows. [#3507]
475
476   * dirmngr: Fix crash in case of a CRL loading error. [#3510]
477
478   * Fix the name of the Windows registry key. [Git#4f5afaf1fd]
479
480   * gpgtar: Fix wrong behaviour of --set-filename. [#3500]
481
482   * gpg: Silence AKL retrieval messages. [#3504]
483
484   * agent: Use clock or clock_gettime for calibration. [#3056]
485
486   * agent: Improve robustness of the shutdown pending
487     state. [Git#7ffedfab89]
488
489   See-also: gnupg-announce/2017q4/000417.html
490
491   Changes also found in 2.2.2:
492
493   * gpg: Avoid duplicate key imports by concurrently running gpg
494     processes. [#3446]
495
496   * gpg: Fix creating on-disk subkey with on-card primary key. [#3280]
497
498   * gpg: Fix validity retrieval for multiple keyrings. [Debian#878812]
499
500   * gpg: Fix --dry-run and import option show-only for secret keys.
501
502   * gpg: Print "sec" or "sbb" for secret keys with import option
503     import-show. [#3431]
504
505   * gpg: Make import less verbose. [#3397]
506
507   * gpg: Add alias "Key-Grip" for parameter "Keygrip" and new
508     parameter "Subkey-Grip" to unattended key generation.  [#3478]
509
510   * gpg: Improve "factory-reset" command for OpenPGP cards.  [#3286]
511
512   * gpg: Ease switching Gnuk tokens into ECC mode by using the magic
513     keysize value 25519.
514
515   * gpgsm: Fix --with-colon listing in crt records for fields > 12.
516
517   * gpgsm: Do not expect X.509 keyids to be unique.  [#1644]
518
519   * agent: Fix stucked Pinentry when using --max-passphrase-days. [#3190]
520
521   * agent: New option --s2k-count.  [#3276 (workaround)]
522
523   * dirmngr: Do not follow https-to-http redirects. [#3436]
524
525   * dirmngr: Reduce default LDAP timeout from 100 to 15 seconds. [#3487]
526
527   * gpgconf: Ignore non-installed components for commands
528     --apply-profile and --apply-defaults. [#3313]
529
530   * Add configure option --enable-werror.  [#2423]
531
532   See-also: gnupg-announce/2017q4/000416.html
533
534   Changes also found in 2.2.1:
535
536   * gpg: Fix formatting of the user id in batch mode key generation
537     if only "name-email" is given.
538
539   * gpgv: Fix annoying "not suitable for" warnings.
540
541   * wks: Convey only the newest user id to the provider.  This is the
542     case if different names are used with the same addr-spec.
543
544   * wks: Create a complying user id for provider policy mailbox-only.
545
546   * wks: Add workaround for posteo.de.
547
548   * scd: Fix the use of large ECC keys with an OpenPGP card.
549
550   * dirmngr: Use system provided root certificates if no specific HKP
551     certificates are configured.  If build with GNUTLS, this was
552     already the case.
553
554   See-also: gnupg-announce/2017q3/000415.html
555
556   Release dates of 2.2.x versions:
557   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
558   Version 2.2.1  (2017-09-19)
559   Version 2.2.2  (2017-11-07)
560   Version 2.2.3  (2017-11-20)
561   Version 2.2.4  (2017-12-20)
562   Version 2.2.5  (2018-02-22)
563   Version 2.2.6  (2018-04-09)
564   Version 2.2.7  (2018-05-02)
565   Version 2.2.8  (2018-06-08)
566   Version 2.2.9  (2018-07-12)
567   Version 2.2.10 (2018-08-30)
568   Version 2.2.11 (2018-11-06)
569   Version 2.2.12 (2018-12-14)
570   Version 2.2.13 (2019-02-12)
571   Version 2.2.14 (2019-03-19)
572   Version 2.2.15 (2019-03-26)
573   Version 2.2.16 (2019-05-28)
574
575
576 Noteworthy changes in version 2.2.0 (2017-08-28)
577 ------------------------------------------------
578
579   This is the new long term stable branch.  This branch will only see
580   bug fixes and no new features.
581
582   * gpg: Reverted change in 2.1.23 so that --no-auto-key-retrieve is
583     again the default.
584
585   * Fixed a few minor bugs.
586
587   See-also: gnupg-announce/2017q3/000413.html
588
589
590 Noteworthy changes in version 2.1.23 (2017-08-09)
591 -------------------------------------------------
592
593   * gpg: "gpg" is now installed as "gpg" and not anymore as "gpg2".
594     If needed, the new configure option --enable-gpg-is-gpg2 can be
595     used to revert this.
596
597   * gpg: Options --auto-key-retrieve and --auto-key-locate "local,wkd"
598     are now used by default.  Note: this enables keyserver and Web Key
599     Directory operators to notice when a signature from a locally
600     non-available key is being verified for the first time or when
601     you intend to encrypt to a mail address without having the key
602     locally.  This new behaviour will eventually make key discovery
603     much easier and mostly automatic.  Disable this by adding
604       no-auto-key-retrieve
605       auto-key-locate local
606     to your gpg.conf.
607
608   * agent: Option --no-grab is now the default.  The new option --grab
609     allows to revert this.
610
611   * gpg: New import option "show-only".
612
613   * gpg: New option --disable-dirmngr to entirely disable network
614     access for gpg.
615
616   * gpg,gpgsm: Tweaked DE-VS compliance behaviour.
617
618   * New configure flag --enable-all-tests to run more extensive tests
619     during "make check".
620
621   * gpgsm: The keygrip is now always printed in colon mode as
622     documented in the man page.
623
624   * Fixed connection timeout problem under Windows.
625
626   See-also: gnupg-announce/2017q3/000412.html
627
628
629 Noteworthy changes in version 2.1.22 (2017-07-28)
630 -------------------------------------------------
631
632   * gpg: Extend command --quick-set-expire to allow for setting the
633     expiration time of subkeys.
634
635   * gpg: By default try to repair keys during import.  New sub-option
636     no-repair-keys for --import-options.
637
638   * gpg,gpgsm: Improved checking and reporting of DE-VS compliance.
639
640   * gpg: New options --key-origin and --with-key-origin.  Store the
641     time of the last key update from keyservers, WKD, or DANE.
642
643   * agent: New option --ssh-fingerprint-digest.
644
645   * dimngr: Lower timeouts on keyserver connection attempts and made
646     it configurable.
647
648   * dirmngr: Tor will now automatically be detected and used.  The
649     option --no-use-tor disables Tor detection.
650
651   * dirmngr: Now detects a changed /etc/resolv.conf.
652
653   * agent,dirmngr: Initiate shutdown on removal of the GnuPG home
654     directory.
655
656   * gpg: Avoid caching passphrase for failed symmetric encryption.
657
658   * agent: Support for unprotected ssh keys.
659
660   * dirmngr: Fixed name resolving on systems using only v6
661     nameservers.
662
663   * dirmngr: Allow the use of TLS over http proxies.
664
665   * w32: Change directory of the daemons after startup.
666
667   * wks: New man pages for client and server.
668
669   * Many other bug fixes.
670
671   See-also: gnupg-announce/2017q3/000411.html
672
673
674 Noteworthy changes in version 2.1.21 (2017-05-15)
675 -------------------------------------------------
676
677   * gpg,gpgsm: Fix corruption of old style keyring.gpg files.  This
678     bug was introduced with version 2.1.20.  Note that the default
679     pubring.kbx format was not affected.
680
681   * gpg,dirmngr: Removed the skeleton config file support.  The
682     system's standard methods for providing default configuration
683     files should be used instead.
684
685   * w32: The Windows installer now allows installation of GnuPG
686     without Administrator permissions.
687
688   * gpg: Fixed import filter property match bug.
689
690   * scd: Removed Linux support for Cardman 4040 PCMCIA reader.
691
692   * scd: Fixed some corner case bugs in resume/suspend handling.
693
694   * Many minor bug fixes and code cleanup.
695
696   See-also: gnupg-announce/2017q2/000405.html
697
698
699 Noteworthy changes in version 2.1.20 (2017-04-03)
700 -------------------------------------------------
701
702   * gpg: New properties 'expired', 'revoked', and 'disabled' for the
703     import and export filters.
704
705   * gpg: New command --quick-set-primary-uid.
706
707   * gpg: New compliance field for the --with-colon key listing.
708
709   * gpg: Changed the key parser to generalize the processing of local
710     meta data packets.
711
712   * gpg: Fixed assertion failure in the TOFU trust model.
713
714   * gpg: Fixed exporting of zero length user ID packets.
715
716   * scd: Improved support for multiple readers.
717
718   * scd: Fixed timeout handling for key generation.
719
720   * agent: New option --enable-extended-key-format.
721
722   * dirmngr: Do not add a keyserver to a new dirmngr.conf.  Dirmngr
723     uses a default keyserver.
724
725   * dimngr: Do not treat TLS warning alerts as severe error when
726     building with GNUTLS.
727
728   * dirmngr: Actually take /etc/hosts in account.
729
730   * wks: Fixed client problems on Windows.  Published keys are now set
731     to world-readable.
732
733   * tests: Fixed creation of temporary directories.
734
735   * A socket directory for a non standard GNUGHOME is now created on
736     the fly under /run/user.  Thus "gpgconf --create-socketdir" is now
737     optional.  The use of "gpgconf --remove-socketdir" to clean up
738     obsolete socket directories is however recommended to avoid
739     cluttering /run/user with useless directories.
740
741   * Fixed build problems on some platforms.
742
743   See-also: gnupg-announce/2017q2/000404.html
744
745
746 Noteworthy changes in version 2.1.19 (2017-03-01)
747 -------------------------------------------------
748
749   * gpg: Print a warning if Tor mode is requested but the Tor daemon
750     is not running.
751
752   * gpg: New status code DECRYPTION_KEY to print the actual private
753     key used for decryption.
754
755   * gpgv: New options --log-file and --debug.
756
757   * gpg-agent: Revamp the prompts to ask for card PINs.
758
759   * scd: Support for multiple card readers.
760
761   * scd: Removed option --debug-disable-ticker.  Ticker is used
762     only when it is required to watch removal of device/card.
763
764   * scd: Improved detection of card inserting and removal.
765
766   * dirmngr: New option --disable-ipv4.
767
768   * dirmngr: New option --no-use-tor to explicitly disable the use of
769     Tor.
770
771   * dirmngr: The option --allow-version-check is now required even if
772     the option --use-tor is also used.
773
774   * dirmngr: Handle a missing nsswitch.conf gracefully.
775
776   * dirmngr: Avoid PTR lookups for keyserver pools.  The are only done
777     for the debug command "keyserver --hosttable".
778
779   * dirmngr: Rework the internal certificate cache to support classes
780     of certificates.  Load system provided certificates on startup.
781     Add options --tls, --no-crl, and --systrust to the "VALIDATE"
782     command.
783
784   * dirmngr: Add support for the ntbtls library.
785
786   * wks: Create mails with a "WKS-Phase" header.  Fix detection of
787     Draft-2 mode.
788
789   * The Windows installer is now build with limited TLS support.
790
791   * Many other bug fixes and new regression tests.
792
793   See-also: gnupg-announce/2017q1/000402.html
794
795
796 Noteworthy changes in version 2.1.18 (2017-01-23)
797 -------------------------------------------------
798
799   * gpg: Remove bogus subkey signature while cleaning a key (with
800     export-clean, import-clean, or --edit-key's sub-command clean)
801
802   * gpg: Allow freezing the clock with --faked-system-time.
803
804   * gpg: New --export-option flag "backup", new --import-option flag
805     "restore".
806
807   * gpg-agent: Fixed long delay due to a regression in the progress
808     callback code.
809
810   * scd: Lots of code cleanup and internal changes.
811
812   * scd: Improved the internal CCID driver.
813
814   * dirmngr: Fixed problem with the DNS glue code (removal of the
815     trailing dot in domain names).
816
817   * dirmngr: Make sure that Tor is actually enabled after changing the
818     conf file and sending SIGHUP or "gpgconf --reload dirmngr".
819
820   * dirmngr: Fixed Tor access to IPv6 addresses.  Note that current
821     versions of Tor may require that the flag "IPv6Traffic" is used
822     with the option "SocksPort" in torrc to actually allow IPv6
823     traffic.
824
825   * dirmngr: Fixed HKP for literally given IPv6 addresses.
826
827   * dirmngr: Enabled reverse DNS lookups via Tor.
828
829   * dirmngr: Added experimental SRV record lookup for WKD.
830     See commit 88dc3af3d4ae1afe1d5e136bc4c38bc4e7d4cd10 for details.
831
832   * dirmngr: For HKP use "pgpkey-hkps" and "pgpkey-hkp" in SRV record
833     lookups.  Avoid SRV record lookup when a port is explicitly
834     specified.  This fixes a regression from the 1.4 and 2.0 behavior.
835
836   * dirmngr: Gracefully handle a missing /etc/nsswitch.conf.  Ignore
837     negation terms (e.g. "[!UNAVAIL=return]" instead of bailing out.
838
839   * dirmngr: Better debug output for flags "dns" and "network".
840
841   * dirmngr: On reload mark all known HKP servers alive.
842
843   * gpgconf: Allow keyword "all" for --launch, --kill, and --reload.
844
845   * tools: gpg-wks-client now ignores a missing policy file on the
846     server.
847
848   * Avoid unnecessary ambiguity error message in the option parsing.
849
850   * Further improvements of the regression test suite.
851
852   * Fixed building with --disable-libdns configure option.
853
854   * Fixed a crash running the tests on 32 bit architectures.
855
856   * Fixed spurious failures on BSD system in the spawn functions.
857     This affected for example gpg-wks-client and gpgconf.
858
859   See-also: gnupg-announce/2017q1/000401.html
860
861
862 Noteworthy changes in version 2.1.17 (2016-12-20)
863 -------------------------------------------------
864
865  * gpg: By default new keys expire after 2 years.
866
867  * gpg: New command --quick-set-expire to conveniently change the
868    expiration date of keys.
869
870  * gpg: Option and command names have been changed for easier
871    comprehension.  The old names are still available as aliases.
872
873  * gpg: Improved the TOFU trust model.
874
875  * gpg: New option --default-new-key-algo.
876
877  * scd: Support OpenPGP card V3 for RSA.
878
879  * dirmngr: Support for the ADNS library has been removed.  Instead
880    William Ahern's Libdns is now source included and used on all
881    platforms.  This enables Tor support on all platforms.  The new
882    option --standard-resolver can be used to disable this code at
883    runtime.  In case of build problems the new configure option
884    --disable-libdns can be used to build without Libdns.
885
886  * dirmngr: Lazily launch ldap reaper thread.
887
888  * tools: New options --check and --status-fd for gpg-wks-client.
889
890  * The UTF-8 byte order mark is now skipped when reading conf files.
891
892  * Fixed many bugs and regressions.
893
894  * Major improvements to the test suite.  For example it is possible
895    to run the external test suite of GPGME.
896
897  See-also: gnupg-announce/2016q4/000400.html
898
899
900 Noteworthy changes in version 2.1.16 (2016-11-18)
901 -------------------------------------------------
902
903  * gpg: New algorithm for selecting the best ranked public key when
904    using a mail address with -r, -R, or --locate-key.
905
906  * gpg: New option --with-tofu-info to print a new "tfs" record in
907    colon formatted key listings.
908
909  * gpg: New option --compliance as an alternative way to specify
910    options like --rfc2440, --rfc4880, et al.
911
912  * gpg: Many changes to the TOFU implementation.
913
914  * gpg: Improve usability of --quick-gen-key.
915
916  * gpg: In --verbose mode print a diagnostic when a pinentry is
917    launched.
918
919  * gpg: Remove code which warns for old versions of gnome-keyring.
920
921  * gpg: New option --override-session-key-fd.
922
923  * gpg: Option --output does now work with --verify.
924
925  * gpgv: New option --output to allow saving the verified data.
926
927  * gpgv: New option --enable-special-filenames.
928
929  * agent, dirmngr: New --supervised mode for use by systemd and alike.
930
931  * agent: By default listen on all available sockets using standard
932    names.
933
934  * agent: Invoke scdaemon with --homedir.
935
936  * dirmngr: On Linux now detects the removal of its own socket and
937    terminates.
938
939  * scd: Support ECC key generation.
940
941  * scd: Support more card readers.
942
943  * dirmngr: New option --allow-version-check to download a software
944    version database in the background.
945
946  * dirmngr: Use system provided CAs if no --hkp-cacert is given.
947
948  * dirmngr: Use a default keyserver if none is explicitly set
949
950  * gpgconf: New command --query-swdb to check software versions
951    against an copy of an online database.
952
953  * gpgconf: Print the socket directory with --list-dirs.
954
955  * tools: The WKS tools now support draft version -02.
956
957  * tools: Always build gpg-wks-client and install under libexec.
958
959  * tools: New option --supported for gpg-wks-client.
960
961  * The log-file option now accepts a value "socket://" to log to the
962    socket named "S.log" in the standard socket directory.
963
964  * Provide fake pinentries for use by tests cases of downstream
965    developers.
966
967  * Fixed many bugs and regressions.
968
969  * Many changes and improvements for the test suite.
970
971  See-also: gnupg-announce/2016q4/000398.html
972
973
974 Noteworthy changes in version 2.1.15 (2016-08-18)
975 -------------------------------------------------
976
977  * gpg: Remove the --tofu-db-format option and support for the split
978    TOFU database.
979
980  * gpg: Add option --sender to prepare for coming features.
981
982  * gpg: Add option --input-size-hint to help progress indicators.
983
984  * gpg: Extend the PROGRESS status line with the counted unit.
985
986  * gpg: Avoid publishing the GnuPG version by default with --armor.
987
988  * gpg: Properly ignore legacy keys in the keyring cache.
989
990  * gpg: Always print fingerprint records in --with-colons mode.
991
992  * gpg: Make sure that keygrips are printed for each subkey in
993    --with-colons mode.
994
995  * gpg: New import filter "drop-sig".
996
997  * gpgsm: Fix a bug in the machine-readable key listing.
998
999  * gpg,gpgsm: Block signals during keyring updates to limits the
1000    effects of a Ctrl-C at the wrong time.
1001
1002  * g13: Add command --umount and other fixes for dm-crypt.
1003
1004  * agent: Fix regression in SIGTERM handling.
1005
1006  * agent: Cleanup of the ssh-agent code.
1007
1008  * agent: Allow import of overly long keys.
1009
1010  * scd: Fix problems with card removal.
1011
1012  * dirmngr: Remove all code for running as a system service.
1013
1014  * tools: Make gpg-wks-client conforming to the specs.
1015
1016  * tests: Improve the output of the new regression test tool.
1017
1018  * tests: Distribute the standalone test runner.
1019
1020  * tests: Run each test in a clean environment.
1021
1022  * Spelling and grammar fixes.
1023
1024  See-also: gnupg-announce/2016q3/000396.html
1025
1026
1027 Noteworthy changes in version 2.1.14 (2016-07-14)
1028 -------------------------------------------------
1029
1030  * gpg: Removed options --print-dane-records and --print-pka-records.
1031    The new export options "export-pka" and "export-dane" can instead
1032    be used with the export command.
1033
1034  * gpg: New options --import-filter and --export-filter.
1035
1036  * gpg: New import options "import-show" and "import-export".
1037
1038  * gpg: New option --no-keyring.
1039
1040  * gpg: New command --quick-revuid.
1041
1042  * gpg: New options -f/--recipient-file and -F/--hidden-recipient-file
1043    to directly specify encryption keys.
1044
1045  * gpg: New option --mimemode to indicate that the content is a MIME
1046    part.  Does only enable --textmode right now.
1047
1048  * gpg: New option --rfc4880bis to allow experiments with proposed
1049    changes to the current OpenPGP specs.
1050
1051  * gpg: Fix regression in the "fetch" sub-command of --card-edit.
1052
1053  * gpg: Fix regression since 2.1 in option --try-all-secrets.
1054
1055  * gpgv: Change default options for extra security.
1056
1057  * gpgsm: No more root certificates are installed by default.
1058
1059  * agent: "updatestartuptty" does now affect more environment
1060    variables.
1061
1062  * scd: The option --homedir does now work with scdaemon.
1063
1064  * scd: Support some more GEMPlus card readers.
1065
1066  * gpgtar: Fix handling of '-' as file name.
1067
1068  * gpgtar: New commands --create and --extract.
1069
1070  * gpgconf: Tweak for --list-dirs to better support shell scripts.
1071
1072  * tools: Add programs gpg-wks-client and gpg-wks-server to implement
1073    a Web Key Service.  The configure option --enable-wks-tools is
1074    required to build them; they should be considered Beta software.
1075
1076  * tests: Complete rework of the openpgp part of the test suite.  The
1077    test scripts have been changed from Bourne shell scripts to Scheme
1078    programs.  A customized scheme interpreter (gpgscm) is included.
1079    This change was triggered by the need to run the test suite on
1080    non-Unix platforms.
1081
1082  * The rendering of the man pages has been improved.
1083
1084  See-also: gnupg-announce/2016q3/000393.html
1085
1086
1087 Noteworthy changes in version 2.1.13 (2016-06-16)
1088 -------------------------------------------------
1089
1090  * gpg: New command --quick-addkey.  Extend the --quick-gen-key
1091    command.
1092
1093  * gpg: New --keyid-format "none" which is now also the default.
1094
1095  * gpg: New option --with-subkey-fingerprint.
1096
1097  * gpg: Include Signer's UID subpacket in signatures if the secret key
1098    has been specified using a mail address and the new option
1099    --disable-signer-uid is not used.
1100
1101  * gpg: Allow unattended deletion of a secret key.
1102
1103  * gpg: Allow export of non-passphrase protected secret keys.
1104
1105  * gpg: New status lines KEY_CONSIDERED and NOTATION_FLAGS.
1106
1107  * gpg: Change status line TOFU_STATS_LONG to use '~' as
1108    a non-breaking-space character.
1109
1110  * gpg: Speedup key listings in Tofu mode.
1111
1112  * gpg: Make sure that the current and total values of a PROGRESS
1113    status line are small enough.
1114
1115  * gpgsm: Allow the use of AES192 and SERPENT ciphers.
1116
1117  * dirmngr: Adjust WKD lookup to current specs.
1118
1119  * dirmngr: Fallback to LDAP v3 if v2 is is not supported.
1120
1121  * gpgconf: New commands --create-socketdir and --remove-socketdir,
1122    new option --homedir.
1123
1124  * If a /run/user/$UID directory exists, that directory is now used
1125    for IPC sockets instead of the GNUPGHOME directory.  This fixes
1126    problems with NFS and too long socket names and thus avoids the
1127    need for redirection files.
1128
1129  * The Speedo build systems now uses the new versions.gnupg.org server
1130    to retrieve the default package versions.
1131
1132  * Fix detection of libusb on FreeBSD.
1133
1134  * Speedup fd closing after a fork.
1135
1136  See-also: gnupg-announce/2016q2/000390.html
1137
1138
1139 Noteworthy changes in version 2.1.12 (2016-05-04)
1140 -------------------------------------------------
1141
1142  * gpg: New --edit-key sub-command "change-usage" for testing
1143    purposes.
1144
1145  * gpg: Out of order key-signatures are now systematically detected
1146    and fixed by --edit-key.
1147
1148  * gpg: Improved detection of non-armored messages.
1149
1150  * gpg: Removed the extra prompt needed to create Curve25519 keys.
1151
1152  * gpg: Improved user ID selection for --quick-sign-key.
1153
1154  * gpg: Use the root CAs provided by the system with --fetch-key.
1155
1156  * gpg: Add support for the experimental Web Key Directory key
1157    location service.
1158
1159  * gpg: Improve formatting of Tofu messages and emit new Tofu specific
1160    status lines.
1161
1162  * gpgsm: Add option --pinentry-mode to support a loopback pinentry.
1163
1164  * gpgsm: A new pubring.kbx is now created with the header blob so
1165    that gpg can detect that the keybox format needs to be used.
1166
1167  * agent: Add read support for the new private key protection format
1168    openpgp-s2k-ocb-aes.
1169
1170  * agent: Add read support for the new extended private key format.
1171
1172  * agent: Default to --allow-loopback-pinentry and add option
1173    --no-allow-loopback-pinentry.
1174
1175  * scd: Changed to use the new libusb 1.0 API for the internal CCID
1176    driver.
1177
1178  * dirmngr: The dirmngr-client does now auto-detect the PEM format.
1179
1180  * g13: Add experimental support for dm-crypt.
1181
1182  * w32: Tofu support is now available with the Speedo build method.
1183
1184  * w32: Removed the need for libiconv.dll.
1185
1186  * The man pages for gpg and gpgv are now installed under the correct
1187    name (gpg2 or gpg - depending on a configure option).
1188
1189  * Lots of internal cleanups and bug fixes.
1190
1191  See-also: gnupg-announce/2016q2/000387.html
1192
1193
1194 Noteworthy changes in version 2.1.11 (2016-01-26)
1195 -------------------------------------------------
1196
1197  * gpg: New command --export-ssh-key to replace the gpgkey2ssh tool.
1198
1199  * gpg: Allow to generate mail address only keys with --gen-key.
1200
1201  * gpg: "--list-options show-usage" is now the default.
1202
1203  * gpg: Make lookup of DNS CERT records holding an URL work.
1204
1205  * gpg: Emit PROGRESS status lines during key generation.
1206
1207  * gpg: Don't check for ambiguous or non-matching key specification in
1208    the config file or given to --encrypt-to.  This feature will return
1209    in 2.3.x.
1210
1211  * gpg: Lock keybox files while updating them.
1212
1213  * gpg: Solve rare error on Windows during keyring and Keybox updates.
1214
1215  * gpg: Fix possible keyring corruption. (bug#2193)
1216
1217  * gpg: Fix regression of "bkuptocard" sub-command in --edit-key and
1218    remove "checkbkupkey" sub-command introduced with 2.1.  (bug#2169)
1219
1220  * gpg: Fix internal error in gpgv when using default keyid-format.
1221
1222  * gpg: Fix --auto-key-retrieve to work with dirmngr.conf configured
1223    keyservers. (bug#2147).
1224
1225  * agent: New option --pinentry-timeout.
1226
1227  * scd: Improve unplugging of USB readers under Windows.
1228
1229  * scd: Fix regression for generating RSA keys on card.
1230
1231  * dirmmgr: All configured keyservers are now searched.
1232
1233  * dirmngr: Install CA certificate for hkps.pool.sks-keyservers.net.
1234    Use this certificate even if --hkp-cacert is not used.
1235
1236  * gpgtar: Add actual encryption code.  gpgtar does now fully replace
1237    gpg-zip.
1238
1239  * gpgtar: Fix filename encoding problem on Windows.
1240
1241  * Print a warning if a GnuPG component is using an older version of
1242    gpg-agent, dirmngr, or scdaemon.
1243
1244  See-also: gnupg-announce/2016q1/000383.html
1245
1246
1247 Noteworthy changes in version 2.1.10 (2015-12-04)
1248 -------------------------------------------------
1249
1250  * gpg: New trust models "tofu" and "tofu+pgp".
1251
1252  * gpg: New command --tofu-policy.  New options --tofu-default-policy
1253    and --tofu-db-format.
1254
1255  * gpg: New option --weak-digest to specify hash algorithms which
1256    should be considered weak.
1257
1258  * gpg: Allow the use of multiple --default-key options; take the last
1259    available key.
1260
1261  * gpg: New option --encrypt-to-default-key.
1262
1263  * gpg: New option --unwrap to only strip the encryption layer.
1264
1265  * gpg: New option --only-sign-text-ids to exclude photo IDs from key
1266    signing.
1267
1268  * gpg: Check for ambiguous or non-matching key specification in the
1269    config file or given to --encrypt-to.
1270
1271  * gpg: Show the used card reader with --card-status.
1272
1273  * gpg: Print export statistics and an EXPORTED status line.
1274
1275  * gpg: Allow selecting subkeys by keyid in --edit-key.
1276
1277  * gpg: Allow updating the expiration time of multiple subkeys at
1278    once.
1279
1280  * dirmngr: New option --use-tor.  For full support this requires
1281    libassuan version 2.4.2 and a patched version of libadns
1282    (e.g. adns-1.4-g10-7 as used by the standard Windows installer).
1283
1284  * dirmngr: New option --nameserver to specify the nameserver used in
1285    Tor mode.
1286
1287  * dirmngr: Keyservers may again be specified by IP address.
1288
1289  * dirmngr: Fixed problems in resolving keyserver pools.
1290
1291  * dirmngr: Fixed handling of premature termination of TLS streams so
1292    that large numbers of keys can be refreshed via hkps.
1293
1294  * gpg: Fixed a regression in --locate-key [since 2.1.9].
1295
1296  * gpg: Fixed another bug for keyrings with legacy keys.
1297
1298  * gpgsm: Allow combinations of usage flags in --gen-key.
1299
1300  * Make tilde expansion work with most options.
1301
1302  * Many other cleanups and bug fixes.
1303
1304  See-also: gnupg-announce/2015q4/000381.html
1305
1306
1307 Noteworthy changes in version 2.1.9 (2015-10-09)
1308 ------------------------------------------------
1309
1310  * gpg: Allow fetching keys via OpenPGP DANE (--auto-key-locate).  New
1311    option --print-dane-records.  [Update: --print-dane-records replaced
1312    in 2.1.4.]
1313
1314  * gpg: Fix for a problem with PGP-2 keys in a keyring.
1315
1316  * gpg: Fail with an error instead of a warning if a modern cipher
1317    algorithm is used without a MDC.
1318
1319  * agent: New option --pinentry-invisible-char.
1320
1321  * agent: Always do a RSA signature verification after creation.
1322
1323  * agent: Fix a regression in ssh-add-ing Ed25519 keys.
1324
1325  * agent: Fix ssh fingerprint computation for nistp384 and EdDSA.
1326
1327  * agent: Fix crash during passphrase entry on some platforms.
1328
1329  * scd: Change timeout to fix problems with some 2.1 cards.
1330
1331  * dirmngr: Displayed name is now Key Acquirer.
1332
1333  * dirmngr: Add option --keyserver.  Deprecate that option for gpg.
1334    Install a dirmngr.conf file from a skeleton for new installations.
1335
1336  See-also: gnupg-announce/2015q4/000380.html
1337
1338
1339 Noteworthy changes in version 2.1.8 (2015-09-10)
1340 ------------------------------------------------
1341
1342  * gpg: Sending very large keys to the keyservers works again.
1343
1344  * gpg: Validity strings in key listings are now again translatable.
1345
1346  * gpg: Emit FAILURE status lines to help GPGME.
1347
1348  * gpg: Does not anymore link to Libksba to reduce dependencies.
1349
1350  * gpgsm: Export of secret keys via Assuan is now possible.
1351
1352  * agent: Raise the maximum passphrase length from 100 to 255 bytes.
1353
1354  * agent: Fix regression using EdDSA keys with ssh.
1355
1356  * Does not anymore use a build timestamp by default.
1357
1358  * The fallback encoding for broken locale settings changed
1359    from Latin-1 to UTF-8.
1360
1361  * Many code cleanups and improved internal documentation.
1362
1363  * Various minor bug fixes.
1364
1365  See-also: gnupg-announce/2015q3/000379.html
1366
1367
1368 Noteworthy changes in version 2.1.7 (2015-08-11)
1369 ------------------------------------------------
1370
1371  * gpg: Support encryption with Curve25519 if Libgcrypt 1.7 is used.
1372
1373  * gpg: In the --edit-key menu: Removed the need for "toggle", changed
1374    how secret keys are indicated, new commands "fpr *" and "grip".
1375
1376  * gpg: More fixes related to legacy keys in a keyring.
1377
1378  * gpgv: Does now also work with a "trustedkeys.kbx" file.
1379
1380  * scd: Support some feature from the OpenPGP card 3.0 specs.
1381
1382  * scd: Improved ECC support
1383
1384  * agent: New option --force for the DELETE_KEY command.
1385
1386  * w32: Look for the Pinentry at more places.
1387
1388  * Dropped deprecated gpgsm-gencert.sh
1389
1390  * Various other bug fixes.
1391
1392  See-also: gnupg-announce/2015q3/000371.html
1393
1394
1395 Noteworthy changes in version 2.1.6 (2015-07-01)
1396 ------------------------------------------------
1397
1398  * agent: New option --verify for the PASSWD command.
1399
1400  * gpgsm: Add command option "offline" as an alternative to
1401    --disable-dirmngr.
1402
1403  * gpg: Do not prompt multiple times for a password in pinentry
1404    loopback mode.
1405
1406  * Allow the use of debug category names with --debug.
1407
1408  * Using gpg-agent and gpg/gpgsm with different locales will now show
1409    the correct translations in Pinentry.
1410
1411  * gpg: Improve speed of --list-sigs and --check-sigs.
1412
1413  * gpg: Make --list-options show-sig-subpackets work again.
1414
1415  * gpg: Fix an export problem for old keyrings with PGP-2 keys.
1416
1417  * scd: Support PIN-pads on more readers.
1418
1419  * dirmngr: Properly cleanup zombie LDAP helper processes and avoid
1420    hangs on dirmngr shutdown.
1421
1422  * Various other bug fixes.
1423
1424  See-also: gnupg-announce/2015q3/000370.html
1425
1426
1427 Noteworthy changes in version 2.1.5 (2015-06-11)
1428 ------------------------------------------------
1429
1430  * Support for an external passphrase cache.
1431
1432  * Support for the forthcoming version 3 OpenPGP smartcard.
1433
1434  * Manuals now show the actual used file names.
1435
1436  * Prepared for improved integration with Emacs.
1437
1438  * Code cleanups and minor bug fixes.
1439
1440  See-also: gnupg-announce/2015q2/000369.html
1441
1442
1443 Noteworthy changes in version 2.1.4 (2015-05-12)
1444 ------------------------------------------------
1445
1446  * gpg: Add command --quick-adduid to non-interactively add a new user
1447    id to an existing key.
1448
1449  * gpg: Do no enable honor-keyserver-url by default.  Make it work if
1450    enabled.
1451
1452  * gpg: Display the serial number in the --card-status output again.
1453
1454  * agent: Support for external password managers.
1455    Add option --no-allow-external-cache.
1456
1457  * scdaemon: Improved handling of extended APDUs.
1458
1459  * Make HTTP proxies work again.
1460
1461  * All network access including DNS as been moved to Dirmngr.
1462
1463  * Allow building without LDAP support.
1464
1465  * Fixed lots of smaller bugs.
1466
1467  See-also: gnupg-announce/2015q2/000366.html
1468
1469
1470 Noteworthy changes in version 2.1.3 (2015-04-11)
1471 ------------------------------------------------
1472
1473  * gpg: LDAP keyservers are now supported by 2.1.
1474
1475  * gpg: New option --with-icao-spelling.
1476
1477  * gpg: New option --print-pka-records.  Changed the PKA method to use
1478    CERT records and hashed names.  [Update: --print-pka-records
1479    replaced in 2.1.14.]
1480
1481  * gpg: New command --list-gcrypt-config.  New parameter "curve"
1482    for --list-config.
1483
1484  * gpg: Print a NEWSIG status line like gpgsm always did.
1485
1486  * gpg: Print MPI values with --list-packets and --verbose.
1487
1488  * gpg: Write correct MPI lengths with ECC keys.
1489
1490  * gpg: Skip legacy PGP-2 keys while searching.
1491
1492  * gpg: Improved searching for mail addresses when using a keybox.
1493
1494  * gpgsm: Changed default algos to AES-128 and SHA-256.
1495
1496  * gpgtar: Fixed extracting files with sizes of a multiple of 512.
1497
1498  * dirmngr: Fixed SNI handling for hkps pools.
1499
1500  * dirmngr: extra-certs and trusted-certs are now always loaded from
1501    the sysconfig dir instead of the homedir.
1502
1503  * Fixed possible problems due to compiler optimization, two minor
1504    regressions, and other bugs.
1505
1506  See-also: gnupg-announce/2015q2/000365.html
1507
1508
1509 Noteworthy changes in version 2.1.2 (2015-02-11)
1510 ------------------------------------------------
1511
1512  * gpg: The parameter 'Passphrase' for batch key generation works
1513    again.
1514
1515  * gpg: Using a passphrase option in batch mode now has the expected
1516    effect on --quick-gen-key.
1517
1518  * gpg: Improved reporting of unsupported PGP-2 keys.
1519
1520  * gpg: Added support for algo names when generating keys using
1521    --command-fd.
1522
1523  * gpg: Fixed DoS based on bogus and overlong key packets.
1524
1525  * agent: When setting --default-cache-ttl the value
1526    for --max-cache-ttl is adjusted to be not lower than the former.
1527
1528  * agent: Fixed problems with the new --extra-socket.
1529
1530  * agent: Made --allow-loopback-pinentry changeable with gpgconf.
1531
1532  * agent: Fixed importing of unprotected openpgp keys.
1533
1534  * agent: Now tries to use a fallback pinentry if the standard
1535    pinentry is not installed.
1536
1537  * scd: Added support for ECDH.
1538
1539  * Fixed several bugs related to bogus keyrings and improved some
1540    other code.
1541
1542  See-also: gnupg-announce/2015q1/000361.html
1543
1544
1545 Noteworthy changes in version 2.1.1 (2014-12-16)
1546 ------------------------------------------------
1547
1548  * gpg: Detect faulty use of --verify on detached signatures.
1549
1550  * gpg: New import option "keep-ownertrust".
1551
1552  * gpg: New sub-command "factory-reset" for --card-edit.
1553
1554  * gpg: A stub key for smartcards is now created by --card-status.
1555
1556  * gpg: Fixed regression in --refresh-keys.
1557
1558  * gpg: Fixed regression in %g and %p codes for --sig-notation.
1559
1560  * gpg: Fixed best matching hash algo detection for ECDSA and EdDSA.
1561
1562  * gpg: Improved perceived speed of secret key listisngs.
1563
1564  * gpg: Print number of skipped PGP-2 keys on import.
1565
1566  * gpg: Removed the option aliases --throw-keyid and --notation-data;
1567    use --throw-keyids and --set-notation instead.
1568
1569  * gpg: New import option "keep-ownertrust".
1570
1571  * gpg: Skip too large keys during import.
1572
1573  * gpg,gpgsm: New option --no-autostart to avoid starting gpg-agent or
1574    dirmngr.
1575
1576  * gpg-agent: New option --extra-socket to provide a restricted
1577    command set for use with remote clients.
1578
1579  * gpgconf --kill does not anymore start a service only to kill it.
1580
1581  * gpg-pconnect-agent: Add convenience option --uiserver.
1582
1583  * Fixed keyserver access for Windows.
1584
1585  * Fixed build problems on Mac OS X
1586
1587  * The Windows installer does now install development files
1588
1589  * More translations (but most of them are not complete).
1590
1591  * To support remotely mounted home directories, the IPC sockets may
1592    now be redirected.  This feature requires Libassuan 2.2.0.
1593
1594  * Improved portability and the usual bunch of bug fixes.
1595
1596  See-also: gnupg-announce/2014q4/000360.html
1597
1598
1599 Noteworthy changes in version 2.1.0 (2014-11-06)
1600 ------------------------------------------------
1601
1602  This release introduces a lot of changes.  Most of them are internal
1603  and thus not user visible.  However, some long standing behavior has
1604  slightly changed and it is strongly suggested that an existing
1605  "~/.gnupg" directory is backed up before this version is used.
1606
1607  A verbose description of the major new features and changes can be
1608  found in the file doc/whats-new-in-2.1.txt.
1609
1610  * gpg: All support for v3 (PGP 2) keys has been dropped.  All
1611    signatures are now created as v4 signatures.  v3 keys will be
1612    removed from the keyring.
1613
1614  * gpg: With pinentry-0.9.0 the passphrase "enter again" prompt shows
1615    up in the same window as the "new passphrase" prompt.
1616
1617  * gpg: Allow importing keys with duplicated long key ids.
1618
1619  * dirmngr: May now be build without support for LDAP.
1620
1621  * For a complete list of changes see the lists of changes for the
1622    2.1.0 beta versions below.  Note that all relevant fixes from
1623    versions 2.0.14 to 2.0.26 are also applied to this version.
1624
1625
1626  [Noteworthy changes in version 2.1.0-beta864 (2014-10-03)]
1627
1628  * gpg: Removed the GPG_AGENT_INFO related code.  GnuPG does now
1629    always use a fixed socket name in its home directory.
1630
1631  * gpg: Renamed --gen-key to --full-gen-key and re-added a --gen-key
1632    command with less choices.
1633
1634  * gpg: Use SHA-256 for all signature types also on RSA keys.
1635
1636  * gpg: Default keyring is now created with a .kbx suffix.
1637
1638  * gpg: Add a shortcut to the key capabilities menu (e.g. "=e" sets the
1639    encryption capabilities).
1640
1641  * gpg: Fixed obsolete options parsing.
1642
1643  * Further improvements for the alternative speedo build system.
1644
1645
1646  [Noteworthy changes in version 2.1.0-beta834 (2014-09-18)]
1647
1648  * gpg: Improved passphrase caching.
1649
1650  * gpg: Switched to algorithm number 22 for EdDSA.
1651
1652  * gpg: Removed CAST5 from the default preferences.
1653
1654  * gpg: Order SHA-1 last in the hash preferences.
1655
1656  * gpg: Changed default cipher for --symmetric to AES-128.
1657
1658  * gpg: Fixed export of ECC keys and import of EdDSA keys.
1659
1660  * dirmngr: Fixed the KS_FETCH command.
1661
1662  * The speedo build system now downloads related packages and works
1663    for non-Windows platforms.
1664
1665
1666  [Noteworthy changes in version 2.1.0-beta783 (2014-08-14)]
1667
1668  * gpg: Add command --quick-gen-key.
1669
1670  * gpg: Make --quick-sign-key promote local key signatures.
1671
1672  * gpg: Added "show-usage" sub-option to --list-options.
1673
1674  * gpg: Screen keyserver responses to avoid importing unwanted keys
1675    from rogue servers.
1676
1677  * gpg: Removed the option --pgp2 and --rfc1991 and the ability to
1678    create PGP-2 compatible messages.
1679
1680  * gpg: Removed options --compress-keys and --compress-sigs.
1681
1682  * gpg: Cap attribute packets at 16MB.
1683
1684  * gpg: Improved output of --list-packets.
1685
1686  * gpg: Make with-colons output of --search-keys work again.
1687
1688  * gpgsm: Auto-create the ".gnupg" directory like gpg does.
1689
1690  * agent: Fold new passphrase warning prompts into one.
1691
1692  * scdaemon: Add support for the Smartcard-HSM card.
1693
1694  * scdaemon: Remove the use of the pcsc-wrapper.
1695
1696
1697  [Noteworthy changes in version 2.1.0-beta751 (2014-07-03)]
1698
1699  * gpg: Create revocation certificates during key generation.
1700
1701  * gpg: Create exported secret keys and revocation certifciates with
1702    mode 0700
1703
1704  * gpg: The validity of user ids is now shown by default.  To revert
1705    this add "list-options no-show-uid-validity" to gpg.conf.
1706
1707  * gpg: Make export of secret keys work again.
1708
1709  * gpg: The output of --list-packets does now print the offset of the
1710    packet and information about the packet header.
1711
1712  * gpg: Avoid DoS due to garbled compressed data packets. [CVE-2014-4617]
1713
1714  * gpg: Print more specific reason codes with the INV_RECP status.
1715
1716  * gpg: Cap RSA and Elgamal keysize at 4096 bit also for unattended
1717    key generation.
1718
1719  * scdaemon: Support reader Gemalto IDBridge CT30 and pinpad of SCT
1720    cyberJack go.
1721
1722  * The speedo build system has been improved.  It is now also possible
1723    to build a partly working installer for Windows.
1724
1725
1726  [Noteworthy changes in version 2.1.0-beta442 (2014-06-05)]
1727
1728  * gpg: Changed the format of key listings.  To revert to the old
1729    format the option --legacy-list-mode is available.
1730
1731  * gpg: Add experimental signature support using curve Ed25519 and
1732    with a patched Libgcrypt also encryption support with Curve25519.
1733    [Update: this encryption support has been removed from 2.1.0 until
1734    we have agreed on a suitable format.]
1735
1736  * gpg: Allow use of Brainpool curves.
1737
1738  * gpg: Accepts a space separated fingerprint as user ID.  This
1739    allows to copy and paste the fingerprint from the key listing.
1740
1741  * gpg: The hash algorithm is now printed for signature records in key
1742    listings.
1743
1744  * gpg: Reject signatures made using the MD5 hash algorithm unless the
1745    new option --allow-weak-digest-algos or --pgp2 are given.
1746
1747  * gpg: Print a warning if the Gnome-Keyring-Daemon intercepts the
1748    communication with the gpg-agent.
1749
1750  * gpg: New option --pinentry-mode.
1751
1752  * gpg: Fixed decryption using an OpenPGP card.
1753
1754  * gpg: Fixed bug with deeply nested compressed packets.
1755
1756  * gpg: Only the major version number is by default included in the
1757    armored output.
1758
1759  * gpg: Do not create a trustdb file if --trust-model=always is used.
1760
1761  * gpg: Protect against rogue keyservers sending secret keys.
1762
1763  * gpg: The format of the fallback key listing ("gpg KEYFILE") is now
1764    more aligned to the regular key listing ("gpg -k").
1765
1766  * gpg: The option--show-session-key prints its output now before the
1767    decryption of the bulk message starts.
1768
1769  * gpg: New %U expando for the photo viewer.
1770
1771  * gpg,gpgsm: New option --with-secret.
1772
1773  * gpgsm: By default the users are now asked via the Pinentry whether
1774    they trust an X.509 root key.  To prohibit interactive marking of
1775    such keys, the new option --no-allow-mark-trusted may be used.
1776
1777  * gpgsm: New commands to export a secret RSA key in PKCS#1 or PKCS#8
1778    format.
1779
1780  * gpgsm: Improved handling of re-issued CA certificates.
1781
1782  * agent: The included ssh agent does now support ECDSA keys.
1783
1784  * agent: New option --enable-putty-support to allow gpg-agent on
1785    Windows to act as a Pageant replacement with full smartcard support.
1786
1787  * scdaemon: New option --enable-pinpad-varlen.
1788
1789  * scdaemon: Various fixes for pinpad equipped card readers.
1790
1791  * scdaemon: Rename option --disable-pinpad (was --disable-keypad).
1792
1793  * scdaemon: Better support fo CCID readers.  Now, internal CCID
1794    driver supports readers with no auto configuration feature.
1795
1796  * dirmngr: Removed support for the original HKP keyserver which is
1797    not anymore used by any site.
1798
1799  * dirmngr: Improved support for keyserver pools.
1800
1801  * tools: New option --dirmngr for gpg-connect-agent.
1802
1803  * The GNU Pth library has been replaced by the new nPth library.
1804
1805  * Support installation as portable application under Windows.
1806
1807  * All kind of other improvements - see the git log.
1808
1809
1810  [Noteworthy changes in version 2.1.0beta3 (2011-12-20)]
1811
1812  * gpg: Fixed regression in the secret key export function.
1813
1814  * gpg: Allow generation of card keys up to 4096 bit.
1815
1816  * gpgsm: Preliminary support for the validation model "steed".
1817
1818  * gpgsm: Improved certificate creation.
1819
1820  * agent: Support the SSH confirm flag.
1821
1822  * agent: New option to select a passphrase mode.  The loopback
1823    mode may be used to bypass Pinentry.
1824
1825  * agent: The Assuan commands KILLAGENT and KILLSCD are working again.
1826
1827  * scdaemon: Does not anymore block after changing a card (regression
1828    fix).
1829
1830  * tools: gpg-connect-agent does now properly display the help output
1831    for "SCD HELP" commands.
1832
1833
1834  [Noteworthy changes in version 2.1.0beta2 (2011-03-08)]
1835
1836  * gpg: ECC support as described by draft-jivsov-openpgp-ecc-06.txt
1837    [Update: now known as RFC-6637].
1838
1839  * gpg: Print "AES128" instead of "AES".  This change introduces a
1840    little incompatibility for tools using "gpg --list-config".  We
1841    hope that these tools are written robust enough to accept this new
1842    algorithm name as well.
1843
1844  * gpgsm: New feature to create certificates from a parameter file.
1845    Add prompt to the --gen-key UI to create self-signed certificates.
1846
1847  * agent: TMPDIR is now also honored when creating a socket using
1848    the --no-standard-socket option and with symcryptrun's temp files.
1849
1850  * scdaemon: Fixed a bug where scdaemon sends a signal to gpg-agent
1851    running in non-daemon mode.
1852
1853  * dirmngr: Fixed CRL loading under W32 (bug#1010).
1854
1855  * Dirmngr has taken over the function of the keyserver helpers.  Thus
1856    we now have a specified direct interface to keyservers via Dirmngr.
1857    LDAP, DNS and mail backends are not yet implemented.
1858
1859  * Fixed TTY management for pinentries and session variable update
1860    problem.
1861
1862
1863  [Noteworthy changes in version 2.1.0beta1 (2010-10-26)]
1864
1865  * gpg: secring.gpg is not anymore used but all secret key operations
1866    are delegated to gpg-agent.  The import command moves secret keys
1867    to the agent.
1868
1869  * gpg: The OpenPGP import command is now able to merge secret keys.
1870
1871  * gpg: Encrypted OpenPGP messages with trailing data (e.g. other
1872    OpenPGP packets) are now correctly parsed.
1873
1874  * gpg: Given sufficient permissions Dirmngr is started automagically.
1875
1876  * gpg: Fixed output of "gpgconf --check-options".
1877
1878  * gpg: Removed options --export-options(export-secret-subkey-passwd)
1879    and --simple-sk-checksum.
1880
1881  * gpg: New options --try-secret-key.
1882
1883  * gpg: Support DNS lookups for SRV, PKA and CERT on W32.
1884
1885  * gpgsm: The --audit-log feature is now more complete.
1886
1887  * gpgsm: The default for --include-cert is now to include all
1888    certificates in the chain except for the root certificate.
1889
1890  * gpgsm: New option --ignore-cert-extension.
1891
1892  * g13: The G13 tool for disk encryption key management has been
1893    added.
1894
1895  * agent: If the agent's --use-standard-socket option is active, all
1896    tools try to start and daemonize the agent on the fly.  In the past
1897    this was only supported on W32; on non-W32 systems the new
1898    configure option --disable-standard-socket may now be used to
1899    disable this new default.
1900
1901  * agent: New and changed passphrases are now created with an
1902    iteration count requiring about 100ms of CPU work.
1903
1904  * dirmngr: Dirmngr is now a part of this package.  It is now also
1905    expected to run as a system service and the configuration
1906    directories are changed to the GnuPG name space. [Update: 2.1.0
1907    starts dirmngr on demand as user daemon.]
1908
1909  * Support for Windows CE. [Update: This has not been tested for the
1910    2.1.0 release]
1911
1912  * Numerical values may now be used as an alternative to the
1913    debug-level keywords.
1914
1915  See-also: gnupg-announce/2014q4/000358.html
1916
1917
1918 Version 2.0.28 (2015-06-02)
1919 Version 2.0.27 (2015-02-18)
1920 Version 2.0.26 (2014-08-12)
1921 Version 2.0.25 (2014-06-30)
1922 Version 2.0.24 (2014-06-24)
1923 Version 2.0.23 (2014-06-03)
1924 Version 2.0.22 (2013-10-04)
1925 Version 2.0.21 (2013-08-19)
1926 Version 2.0.20 (2013-05-10)
1927 Version 2.0.19 (2012-03-27)
1928 Version 2.0.18 (2011-08-04)
1929 Version 2.0.17 (2011-01-13)
1930 Version 2.0.16 (2010-07-19)
1931 Version 2.0.15 (2010-03-09)
1932 Version 2.0.14 (2009-12-21)
1933
1934
1935 Noteworthy changes in version 2.0.13 (2009-09-04)
1936 -------------------------------------------------
1937
1938  * GPG now generates 2048 bit RSA keys by default.  The default hash
1939    algorithm preferences has changed to prefer SHA-256 over SHA-1.
1940    2048 bit DSA keys are now generated to use a 256 bit hash algorithm
1941
1942  * The envvars XMODIFIERS, GTK_IM_MODULE and QT_IM_MODULE are now
1943    passed to the Pinentry to make SCIM work.
1944
1945  * The GPGSM command --gen-key features a --batch mode and implements
1946    all features of gpgsm-gencert.sh in standard mode.
1947
1948  * New option --re-import for GPGSM's IMPORT server command.
1949
1950  * Enhanced writing of existing keys to OpenPGP v2 cards.
1951
1952  * Add hack to the internal CCID driver to allow the use of some
1953    Omnikey based card readers with 2048 bit keys.
1954
1955  * GPG now repeatedly asks the user to insert the requested OpenPGP
1956    card.  This can be disabled with --limit-card-insert-tries=1.
1957
1958  * Minor bug fixes.
1959
1960  See-also: gnupg-announce/2009q3/000294.html
1961
1962
1963 Noteworthy changes in version 2.0.12 (2009-06-17)
1964 -------------------------------------------------
1965
1966  * GPGSM now always lists ephemeral certificates if specified by
1967    fingerprint or keygrip.
1968
1969  * New command "KEYINFO" for GPG_AGENT.  GPGSM now also returns
1970    information about smartcards.
1971
1972  * Made sure not to leak file descriptors if running gpg-agent with a
1973    command.  Restore the signal mask to solve a problem in Mono.
1974
1975  * Changed order of the confirmation questions for root certificates
1976    and store negative answers in trustlist.txt.
1977
1978  * Better synchronization of concurrent smartcard sessions.
1979
1980  * Support 2048 bit OpenPGP cards.
1981
1982  * Support Telesec Netkey 3 cards.
1983
1984  * The gpg-protect-tool now uses gpg-agent via libassuan.  Under
1985    Windows the Pinentry will now be put into the foreground.
1986
1987  * Changed code to avoid a possible Mac OS X system freeze.
1988
1989  See-also: gnupg-announce/2009q2/000288.html
1990
1991
1992 Noteworthy changes in version 2.0.11 (2009-03-03)
1993 -------------------------------------------------
1994
1995  * Fixed a problem in SCDAEMON which caused unexpected card resets.
1996
1997  * SCDAEMON is now aware of the Geldkarte.
1998
1999  * The SCDAEMON option --allow-admin is now used by default.
2000
2001  * GPGCONF now restarts SCdaemon if necessary.
2002
2003  * The default cipher algorithm in GPGSM is now again 3DES.  This is
2004    due to interoperability problems with Outlook 2003 which still
2005    can't cope with AES.
2006
2007  See-also: gnupg-announce/2009q1/000287.html
2008
2009
2010 Noteworthy changes in version 2.0.10 (2009-01-12)
2011 -------------------------------------------------
2012
2013  * [gpg] New keyserver helper gpg2keys_kdns as generic DNS CERT
2014    lookup.  Run with --help for a short description.  Requires the
2015    ADNS library.
2016
2017  * [gpg] New mechanisms "local" and "nodefault" for --auto-key-locate.
2018    Fixed a few problems with this option.
2019
2020  * [gpg] New command --locate-keys.
2021
2022  * [gpg] New options --with-sig-list and --with-sig-check.
2023
2024  * [gpg] The option "-sat" is no longer an alias for --clearsign.
2025
2026  * [gpg] The option --fixed-list-mode is now implicitly used and obsolete.
2027
2028  * [gpg] New control statement %ask-passphrase for the unattended key
2029    generation.
2030
2031  * [gpg] The algorithm to compute the SIG_ID status has been changed.
2032
2033  * [gpgsm] Now uses AES by default.
2034
2035  * [gpgsm] Made --output option work with --export-secret-key-p12.
2036
2037  * [gpg-agent] Terminate process if the own listening socket is not
2038    anymore served by ourself.
2039
2040  * [scdaemon] Made it more robust on W32.
2041
2042  * [gpg-connect-agent] Accept commands given as command line arguments.
2043
2044  * [w32] Initialized the socket subsystem for all keyserver helpers.
2045
2046  * [w32] The sysconf directory has been moved from a subdirectory of
2047    the installation directory to %CSIDL_COMMON_APPDATA%/GNU/etc/gnupg.
2048
2049  * [w32] The gnupg2.nls directory is not anymore used.  The standard
2050    locale directory is now used.
2051
2052  * [w32] Fixed a race condition between gpg and gpgsm in the use of
2053    temporary file names.
2054
2055  * The gpg-preset-passphrase mechanism works again.  An arbitrary
2056    string may now be used for a custom cache ID.
2057
2058  * Admin PINs are cached again (bug in 2.0.9).
2059
2060  * Support for version 2 OpenPGP cards.
2061
2062  * Libgcrypt 1.4 is now required.
2063
2064  See-also: gnupg-announce/2009q1/000284.html
2065
2066
2067 Noteworthy changes in version 2.0.9 (2008-03-26)
2068 ------------------------------------------------
2069
2070  * Gpgsm always tries to locate missing certificates from a running
2071    Dirmngr's cache.
2072
2073  * Tweaks for Windows.
2074
2075  * The Admin PIN for OpenPGP cards may now be entered with the pinpad.
2076
2077  * Improved certificate chain construction.
2078
2079  * Extended the PKITS framework.
2080
2081  * Fixed a bug in the ambiguous name detection.
2082
2083  * Fixed possible memory corruption while importing OpenPGP keys (bug
2084    introduced with 2.0.8). [CVE-2008-1530]
2085
2086  * Minor bug fixes.
2087
2088
2089
2090 Noteworthy changes in version 2.0.8 (2007-12-20)
2091 ------------------------------------------------
2092
2093  * Enhanced gpg-connect-agent with a small scripting language.
2094
2095  * New option --list-config for gpgconf.
2096
2097  * Fixed a crash in gpgconf.
2098
2099  * Gpg-agent now supports the passphrase quality bar of the latest
2100    Pinentry.
2101
2102  * The envvars XAUTHORITY and PINENTRY_USER_DATA are now passed to the
2103    Pinentry.
2104
2105  * Fixed the auto creation of the key stub for smartcards.
2106
2107  * Fixed a rare bug in decryption using the OpenPGP card.
2108
2109  * Creating DSA2 keys is now possible.
2110
2111  * New option --extra-digest-algo for gpgsm to allow verification of
2112    broken signatures.
2113
2114  * Allow encryption with legacy Elgamal sign+encrypt keys with option
2115    --rfc2440.
2116
2117  * Windows is now a supported platform.
2118
2119  * Made sure that under Windows the file permissions of the socket are
2120    taken into account.  This required a change of our socket emulation
2121    code and changed the IPC protocol under Windows.
2122
2123  See-also: gnupg-announce/2007q4/000267.html
2124
2125
2126 Noteworthy changes in version 2.0.7 (2007-09-10)
2127 ------------------------------------------------
2128
2129  * Fixed encryption problem if duplicate certificates are in the
2130    keybox.
2131
2132  * Made it work on Windows Vista.  Note that the entire Windows port
2133    is still considered Beta.
2134
2135  * Add new options min-passphrase-nonalpha, check-passphrase-pattern,
2136    enforce-passphrase-constraints and max-passphrase-days to
2137    gpg-agent.
2138
2139  * Add command --check-components to gpgconf.  Gpgconf now uses the
2140    installed versions of the programs and does not anymore search via
2141    PATH for them.
2142
2143  See-also: gnupg-announce/2007q3/000259.html
2144
2145
2146 Noteworthy changes in version 2.0.6 (2007-08-16)
2147 ------------------------------------------------
2148
2149  * GPGSM does now grok --default-key.
2150
2151  * GPGCONF is now aware of --default-key and --encrypt-to.
2152
2153  * GPGSM does again correctly print the serial number as well the the
2154    various keyids.  This was broken since 2.0.4.
2155
2156  * New option --validation-model and support for the chain-model.
2157
2158  * Improved Windows support.
2159
2160  See-also: gnupg-announce/2007q3/000258.html
2161
2162
2163 Noteworthy changes in version 2.0.5 (2007-07-05)
2164 ------------------------------------------------
2165
2166  * Switched license to GPLv3.
2167
2168  * Basic support for Windows.  Run "./autogen.sh --build-w32" to build
2169    it.  As usual the mingw cross compiling toolchain is required.
2170
2171  * Fixed bug when using the --p12-charset without --armor.
2172
2173  * The command --gen-key may now be used instead of the
2174    gpgsm-gencert.sh script.
2175
2176  * Changed key generation to reveal less information about the
2177    machine.  Bug fixes for gpg2's card key generation.
2178
2179  See-also: gnupg-announce/2007q3/000255.html
2180
2181
2182 Noteworthy changes in version 2.0.4 (2007-05-09)
2183 ------------------------------------------------
2184
2185  * The server mode key listing commands are now also working for
2186    systems without the funopen/fopencookie API.
2187
2188  * PKCS#12 import now tries several encodings in case the passphrase
2189    was not utf-8 encoded.  New option --p12-charset for gpgsm.
2190
2191  * Improved the libgcrypt logging support in all modules.
2192
2193  See-also: gnupg-announce/2007q2/000254.html
2194
2195
2196 Noteworthy changes in version 2.0.3 (2007-03-08)
2197 ------------------------------------------------
2198
2199  * By default, do not allow processing multiple plaintexts in a single
2200    stream.  Many programs that called GnuPG were assuming that GnuPG
2201    did not permit this, and were thus not using the plaintext boundary
2202    status tags that GnuPG provides.  This change makes GnuPG reject
2203    such messages by default which makes those programs safe again.
2204    --allow-multiple-messages returns to the old behavior. [CVE-2007-1263].
2205
2206  * New --verify-option show-primary-uid-only.
2207
2208  * gpgconf may now reads a global configuration file to select which
2209    options are changeable by a frontend.  The new applygnupgdefaults
2210    tool may be used by an admin to set default options for all users.
2211
2212  * The PIN pad of the Cherry XX44 keyboard is now supported.  The
2213    DINSIG and the NKS applications are now also aware of PIN pads.
2214
2215  See-also: gnupg-announce/2007q1/000252.html
2216
2217
2218 Noteworthy changes in version 2.0.2 (2007-01-31)
2219 ------------------------------------------------
2220
2221  * Fixed a serious and exploitable bug in processing encrypted
2222    packages. [CVE-2006-6235].
2223
2224  * Added --passphrase-repeat to set the number of times GPG will
2225    prompt for a new passphrase to be repeated.  This is useful to help
2226    memorize a new passphrase.  The default is 1 repetition.
2227
2228  * Using a PIN pad does now also work for the signing key.
2229
2230  * A warning is displayed by gpg-agent if a new passphrase is too
2231    short.  New option --min-passphrase-len defaults to 8.
2232
2233  * The status code BEGIN_SIGNING now shows the used hash algorithms.
2234
2235  See-also: gnupg-announce/2007q1/000249.html
2236
2237
2238 Noteworthy changes in version 2.0.1 (2006-11-28)
2239 ------------------------------------------------
2240
2241  * Experimental support for the PIN pads of the SPR 532 and the Kaan
2242    Advanced card readers.  Add "disable-keypad" scdaemon.conf if you
2243    don't want it.  Does currently only work for the OpenPGP card and
2244    its authentication and decrypt keys.
2245
2246  * Fixed build problems on some some platforms and crashes on amd64.
2247
2248  * Fixed a buffer overflow in gpg2. [bug#728,CVE-2006-6169]
2249
2250  See-also: gnupg-announce/2006q4/000242.html
2251
2252
2253 Noteworthy changes in version 2.0.0 (2006-11-11)
2254 ------------------------------------------------
2255
2256  * First stable version of a GnuPG integrating OpenPGP and S/MIME.
2257
2258  See-also: gnupg-announce/2006q4/000239.html
2259
2260
2261 Noteworthy changes in version 1.9.95 (2006-11-06)
2262 -------------------------------------------------
2263
2264  * Minor bug fixes.
2265
2266
2267 Noteworthy changes in version 1.9.94 (2006-10-24)
2268 -------------------------------------------------
2269
2270  * Keys for gpgsm may now be specified using a keygrip.  A keygrip is
2271    indicated by a prefixing it with an ampersand.
2272
2273  * gpgconf now supports switching the CMS cipher algo (e.g. to AES).
2274
2275  * New command --gpgconf-test for all major tools. This may be used to
2276    check whether the configuration file is sane.
2277
2278
2279 Noteworthy changes in version 1.9.93 (2006-10-18)
2280 -------------------------------------------------
2281
2282  * In --with-validation mode gpgsm will now also ask whether a root
2283    certificate should be trusted.
2284
2285  * Link to Pth only if really necessary.
2286
2287  * Fixed a pubring corruption bug in gpg2 occurring when importing
2288    signatures or keys with insane lengths.
2289
2290  * Fixed v3 keyID calculation bug in gpg2.
2291
2292  * More tweaks for certificates without extensions.
2293
2294
2295 Noteworthy changes in version 1.9.92 (2006-10-11)
2296 -------------------------------------------------
2297
2298  * Bug fixes.
2299
2300  See-also: gnupg-announce/2006q4/000236.html
2301
2302
2303 Noteworthy changes in version 1.9.91 (2006-10-04)
2304 -------------------------------------------------
2305
2306  * New "relax" flag for trustlist.txt to allow root CA certificates
2307    without BasicContraints.
2308
2309  * [gpg2] Removed the -k PGP 2 compatibility hack.  -k is now an
2310    alias for --list-keys.
2311
2312  * [gpg2] Print a warning if "-sat" is used instead of "--clearsign".
2313
2314
2315 Noteworthy changes in version 1.9.90 (2006-09-25)
2316 -------------------------------------------------
2317
2318  * Made readline work for gpg.
2319
2320  * Cleanups und minor bug fixes.
2321
2322  * Included translations from gnupg 1.4.5.
2323
2324
2325 Noteworthy changes in version 1.9.23 (2006-09-18)
2326 -------------------------------------------------
2327
2328  * Regular man pages for most tools are now build directly from the
2329    Texinfo source.
2330
2331  * The gpg code from 1.4.5 has been fully merged into this release.
2332    The configure option --enable-gpg is still required to build this
2333    gpg part.  For production use of OpenPGP the gpg version 1.4.5 is
2334    still recommended.  Note, that gpg will be installed under the name
2335    gpg2 to allow coexisting with an 1.4.x gpg.
2336
2337  * API change in gpg-agent's pkdecrypt command.  Thus an older gpgsm
2338    may not be used with the current gpg-agent.
2339
2340  * The scdaemon will now call a script on reader status changes.
2341
2342  * gpgsm now allows file descriptor passing for "INPUT", "OUTPUT" and
2343    "MESSAGE".
2344
2345  * The gpgsm server may now output a key listing to the output file
2346    handle. This needs to be enabled using "OPTION list-to-output=1".
2347
2348  * The --output option of gpgsm has now an effect on list-keys.
2349
2350  * New gpgsm commands --dump-chain and list-chain.
2351
2352  * gpg-connect-agent has new options to utilize descriptor passing.
2353
2354  * A global trustlist may now be used.  See doc/examples/trustlist.txt.
2355
2356  * When creating a new pubring.kbx keybox common certificates are
2357    imported.
2358
2359
2360 Noteworthy changes in version 1.9.22 (2006-07-27)
2361 -------------------------------------------------
2362
2363  * Enhanced pkcs#12 support to allow import from simple keyBags.
2364
2365  * Exporting to pkcs#12 now create bag attributes so that Mozilla is
2366    able to import the files.
2367
2368  * Fixed uploading of certain keys to the smart card.
2369
2370
2371 Noteworthy changes in version 1.9.21 (2006-06-20)
2372 -------------------------------------------------
2373
2374  * New command APDU for scdaemon to allow using it for general card
2375    access.  Might be used through gpg-connect-agent by using the SCD
2376    prefix command.
2377
2378  * Support for the CardMan 4040 PCMCIA reader (Linux 2.6.15 required).
2379
2380  * Scdaemon does not anymore reset cards at the end of a connection.
2381
2382  * Kludge to allow use of Bundesnetzagentur issued X.509 certificates.
2383
2384  * Added --hash=xxx option to scdaemon's PKSIGN command.
2385
2386  * Pkcs#12 files are now created with a MAC.  This is for better
2387    interoperability.
2388
2389  * Collected bug fixes and minor other changes.
2390
2391
2392 Noteworthy changes in version 1.9.20 (2005-12-20)
2393 -------------------------------------------------
2394
2395  * Importing pkcs#12 files created be recent versions of Mozilla works
2396    again.
2397
2398  * Basic support for qualified signatures.
2399
2400  * New debug tool gpgparsemail.
2401
2402
2403 Noteworthy changes in version 1.9.19 (2005-09-12)
2404 -------------------------------------------------
2405
2406  * The Belgian eID card is now supported for signatures and ssh.
2407    Other pkcs#15 cards should work as well.
2408
2409  * Fixed bug in --export-secret-key-p12 so that certificates are again
2410    included.
2411
2412
2413 Noteworthy changes in version 1.9.18 (2005-08-01)
2414 -------------------------------------------------
2415
2416  * [gpgsm] Now allows for more than one email address as well as URIs
2417    and dnsNames in certificate request generation.  A keygrip may be
2418    given to create a request from an existing key.
2419
2420  * A couple of minor bug fixes.
2421
2422
2423 Noteworthy changes in version 1.9.17 (2005-06-20)
2424 -------------------------------------------------
2425
2426  * gpg-connect-agent has now features to handle Assuan INQUIRE
2427    commands.
2428
2429  * Internal changes for OpenPGP cards. New Assuan command WRITEKEY.
2430
2431  * GNU Pth is now a hard requirement.
2432
2433  * [scdaemon] Support for OpenSC has been removed.  Instead a new and
2434    straightforward pkcs#15 modules has been written.  As of now it
2435    does allows only signing using TCOS cards but we are going to
2436    enhance it to match all the old capabilities.
2437
2438  * [gpg-agent] New option --write-env-file and Assuan command
2439    UPDATESTARTUPTTY.
2440
2441  * [gpg-agent] New option --default-cache-ttl-ssh to set the TTL for
2442    SSH passphrase caching independent from the other passphrases.
2443
2444
2445 Noteworthy changes in version 1.9.16 (2005-04-21)
2446 -------------------------------------------------
2447
2448  * gpg-agent does now support the ssh-agent protocol and thus allows
2449    to use the pinentry as well as the OpenPGP smartcard with ssh.
2450
2451  * New tool gpg-connect-agent as a general client for the gpg-agent.
2452
2453  * New tool symcryptrun as a wrapper for certain encryption tools.
2454
2455  * The gpg tool is not anymore build by default because those gpg
2456    versions available in the gnupg 1.4 series are far more matured.
2457
2458
2459 Noteworthy changes in version 1.9.15 (2005-01-13)
2460 -------------------------------------------------
2461
2462  * Fixed passphrase caching bug.
2463
2464  * Better support for CCID readers; the reader from Cherry RS 6700 USB
2465    does now work.
2466
2467
2468 Noteworthy changes in version 1.9.14 (2004-12-22)
2469 -------------------------------------------------
2470
2471  * [gpg-agent] New option --use-standard-socket to allow the use of a
2472    fixed socket.  gpgsm falls back to this socket if GPG_AGENT_INFO
2473    has not been set.
2474
2475  * Ported to MS Windows with some functional limitations.
2476
2477  * New tool gpg-preset-passphrase.
2478
2479
2480 Noteworthy changes in version 1.9.13 (2004-12-03)
2481 -------------------------------------------------
2482
2483  * [gpgsm] New option --prefer-system-dirmngr.
2484
2485  * Minor cleanups and debugging aids.
2486
2487
2488 Noteworthy changes in version 1.9.12 (2004-10-22)
2489 -------------------------------------------------
2490
2491  * [scdaemon] Partly rewrote the PC/SC code.
2492
2493  * Removed the sc-investigate tool.  It is now in a separate package
2494    available at ftp://ftp.g10code.com/g10code/gscutils/ .
2495
2496  * [gpg-agent] Fixed logging problem.
2497
2498
2499 Noteworthy changes in version 1.9.11 (2004-10-01)
2500 -------------------------------------------------
2501
2502  * When using --import along with --with-validation, the imported
2503    certificates are validated and only imported if they are fully
2504    valid.
2505
2506  * [gpg-agent] New option --max-cache-ttl.
2507
2508  * [gpg-agent] When used without --daemon or --server, gpg-agent now
2509    check whether a agent is already running and usable.
2510
2511  * Fixed some i18n problems.
2512
2513
2514 Noteworthy changes in version 1.9.10 (2004-07-22)
2515 -------------------------------------------------
2516
2517  * Fixed a serious bug in the checking of trusted root certificates.
2518
2519  * New configure option --enable-agent-pnly allows to build and
2520    install just the agent.
2521
2522  * Fixed a problem with the log file handling.
2523
2524
2525 Noteworthy changes in version 1.9.9 (2004-06-08)
2526 ------------------------------------------------
2527
2528  * [gpg-agent] The new option --allow-mark-trusted is now required to
2529    allow gpg-agent to add a key to the trustlist.txt after user
2530    confirmation.
2531
2532  * Creating PKCS#10 requests does now honor the key usage.
2533
2534
2535 Noteworthy changes in version 1.9.8 (2004-04-29)
2536 ------------------------------------------------
2537
2538  * [scdaemon] Overhauled the internal CCID driver.
2539
2540  * [scdaemon] Status files named ~/.gnupg/reader_<n>.status are now
2541    written when using the internal CCID driver.
2542
2543  * [gpgsm] New commands --dump-{,secret,external}-keys to show a very
2544    detailed view of the certificates.
2545
2546  * The keybox gets now compressed after 3 hours and ephemeral
2547    stored certificates are deleted after about a day.
2548
2549  * [gpg] Usability fixes for --card-edit.  Note, that this has already
2550    been ported back to gnupg-1.3
2551
2552
2553 Noteworthy changes in version 1.9.7 (2004-04-06)
2554 ------------------------------------------------
2555
2556  * Instrumented the modules for gpgconf.
2557
2558  * Added support for DINSIG card applications.
2559
2560  * Include the smimeCapabilities attribute with signed messages.
2561
2562  * Now uses the gettext domain "gnupg2" to avoid conflicts with gnupg
2563    versions < 1.9.
2564
2565
2566 Noteworthy changes in version 1.9.6 (2004-03-06)
2567 ------------------------------------------------
2568
2569  * Code cleanups and bug fixes.
2570
2571
2572 Noteworthy changes in version 1.9.5 (2004-02-21)
2573 ------------------------------------------------
2574
2575  * gpg-protect-tool gets now installed into libexec as it ought to be.
2576    Cleaned up the build system to better comply with the coding
2577    standards.
2578
2579  * [gpgsm] The --import command is now able to autodetect pkcs#12
2580    files and import secret and private keys from this file format.
2581    A new command --export-secret-key-p12 is provided to allow
2582    exporting of secret keys in PKCS\#12 format.
2583
2584  * [gpgsm] The pinentry will now present a description of the key for
2585    whom the passphrase is requested.
2586
2587  * [gpgsm] New option --with-validation to check the validity of key
2588    while listing it.
2589
2590  * New option --debug-level={none,basic,advanced,expert,guru} to map
2591    the debug flags to sensitive levels on a per program base.
2592
2593
2594 Noteworthy changes in version 1.9.4 (2004-01-30)
2595 ------------------------------------------------
2596
2597  * Added support for the Telesec NKS 2.0 card application.
2598
2599  * Added simple tool addgnupghome to create .gnupg directories from
2600    /etc/skel/.gnupg.
2601
2602  * Various minor bug fixes and cleanups; mainly gpgsm and gpg-agent
2603    related.
2604
2605
2606 Noteworthy changes in version 1.9.3 (2003-12-23)
2607 ------------------------------------------------
2608
2609  * New gpgsm options --{enable,disable}-ocsp to validate keys using
2610    OCSP. This option requires a not yet released DirMngr version.
2611    Default is disabled.
2612
2613  * The --log-file option may now be used to print logs to a socket.
2614    Prefix the socket name with "socket://" to enable this.  This does
2615    not work on all systems and falls back to stderr if there is a
2616    problem with the socket.
2617
2618  * The options --encrypt-to and --no-encrypt-to now work the same in
2619    gpgsm as in gpg.  Note, they are also used in server mode.
2620
2621  * Duplicated recipients are now silently removed in gpgsm.
2622
2623
2624 Noteworthy changes in version 1.9.2 (2003-11-17)
2625 ------------------------------------------------
2626
2627  * On card key generation is no longer done using the --gen-key
2628    command but from the menu provided by the new --card-edit command.
2629
2630  * PINs are now properly cached and there are only 2 PINs visible.
2631    The 3rd PIN (CHV2) is internally synchronized with the regular PIN.
2632
2633  * All kind of other internal stuff.
2634
2635
2636 Noteworthy changes in version 1.9.1 (2003-09-06)
2637 ------------------------------------------------
2638
2639  * Support for OpenSC is back. scdaemon supports a --disable-opensc to
2640    disable OpenSC use at runtime, so that PC/SC or ct-API can still be
2641    used directly.
2642
2643  * Rudimentary support for the SCR335 smartcard reader using an
2644    internal driver.  Requires current libusb from CVS.
2645
2646  * Bug fixes.
2647
2648
2649 Noteworthy changes in version 1.9.0 (2003-08-05)
2650 ------------------------------------------------
2651
2652       ====== PLEASE SEE README-alpha =======
2653
2654  * gpg has been renamed to gpg2 and gpgv to gpgv2.  This is a
2655    temporary change to allow co-existing with stable gpg versions.
2656
2657  * ~/.gnupg/gpg.conf-1.9.0 is fist tried as config file before the
2658    usual gpg.conf.
2659
2660  * Removed the -k, -kv and -kvv commands.  -k is now an alias to
2661    --list-keys.  New command -K as alias for --list-secret-keys.
2662
2663  * Removed --run-as-shm-coprocess feature.
2664
2665  * gpg does now also use libgcrypt, libgpg-error is required.
2666
2667  * New gpgsm commands --call-dirmngr and --call-protect-tool.
2668
2669  * Changing a passphrase is now possible using "gpgsm --passwd"
2670
2671  * The content-type attribute is now recognized and created.
2672
2673  * The agent does now reread certain options on receiving a HUP.
2674
2675  * The pinentry is now forked for each request so that clients with
2676    different environments are supported.  When running in daemon mode
2677    and --keep-display is not used the DISPLAY variable is ignored.
2678
2679  * Merged stuff from the newpg branch and started this new
2680    development branch.
2681
2682
2683 Version 1.4.19 (2015-02-27)
2684 Version 1.4.18 (2014-06-30)
2685 Version 1.4.17 (2014-06-23)
2686 Version 1.4.16 (2013-12-18)
2687 Version 1.4.15 (2013-10-04)
2688 Version 1.4.14 (2013-07-25)
2689 Version 1.4.13 (2012-12-20)
2690 Version 1.4.12 (2012-01-30)
2691 Version 1.4.11 (2010-10-18)
2692 Version 1.4.10 (2009-09-02)
2693 Version 1.4.9 (2008-03-26)
2694 Version 1.4.8 (2007-12-20)
2695 Version 1.4.7 (2007-03-05)
2696 Version 1.4.6 (2006-12-06)
2697 Version 1.4.5 (2006-08-01)
2698 Version 1.4.4 (2006-06-25)
2699 Version 1.4.3 (2006-04-03)
2700 Version 1.4.2 (2005-07-26)
2701 Version 1.4.1 (2005-03-15)
2702 Version 1.4.0 (2004-12-16)
2703
2704
2705 Noteworthy changes in version 1.3.2 (2003-05-27)
2706 ------------------------------------------------
2707
2708     * New "--gnupg" option (set by default) that disables --openpgp,
2709       and the various --pgpX emulation options.  This replaces
2710       --no-openpgp, and --no-pgpX, and also means that GnuPG has
2711       finally grown a --gnupg option to make GnuPG act like GnuPG.
2712
2713     * A bug in key validation has been fixed.  This bug only affects
2714       keys with more than one user ID (photo IDs do not count here),
2715       and results in all user IDs on a given key being treated with
2716       the validity of the most-valid user ID on that key.
2717
2718     * Notation names that do not contain a '@' are no longer allowed
2719       unless --expert is set.  This is to help prevent pollution of
2720       the (as yet unused) IETF notation namespace.
2721
2722     * Multiple trust models are now supported via the --trust-model
2723       option.  The options are "pgp" (web-of-trust plus trust
2724       signatures), "classic" (web-of-trust only), and "always"
2725       (identical to the --always-trust option).
2726
2727     * The --personal-{cipher|digest|compression}-preferences are now
2728       consulted to get default algorithms before resorting to the
2729       last-ditch defaults of --s2k-cipher-algo, SHA1, and ZIP
2730       respectively.  This allows a user to set algorithms to use in a
2731       safe manner so they are used when legal to do so, without
2732       forcing them on for all messages.
2733
2734     * New --primary-keyring option to designate the keyring that the
2735       user wants new keys imported into.
2736
2737     * --s2k-digest-algo is now used for all password mangling.
2738       Earlier versions used both --s2k-digest-algo and --digest-algo
2739       for passphrase mangling.
2740
2741     * Handling of --hidden-recipient or --throw-keyid messages is now
2742       easier - the user only needs to give their passphrase once, and
2743       GnuPG will try it against all of the available secret keys.
2744
2745     * Care is taken to prevent compiler optimization from removing
2746       memory wiping code.
2747
2748     * New option --no-mangle-dos-filenames so that filenames are not
2749       truncated in the W32 version.
2750
2751     * A "convert-from-106" script has been added.  This is a simple
2752       script that automates the conversion from a 1.0.6 or earlier
2753       version of GnuPG to a 1.0.7 or later version.
2754
2755     * Disabled keys are now skipped when selecting keys for
2756       encryption.  If you are using the --with-colons key listings to
2757       detect disabled keys, please see doc/DETAILS for a minor format
2758       change in this release.
2759
2760     * Minor trustdb changes to make the trust calculations match
2761       common usage.
2762
2763     * New command "revuid" in the --edit-key menu to revoke a user ID.
2764       This is a simpler interface to the old method (which still
2765       works) of revoking the user ID self-signature.
2766
2767     * Status VALIDSIG does now also print the primary key's
2768       fingerprint, as well as the signature version, pubkey algorithm,
2769       hash algorithm, and signature class.
2770
2771     * Add read-only support for the SHA-256 hash, and optional
2772       read-only support for the SHA-384 and SHA-512 hashes.
2773
2774     * New option --enable-progress-filter for use with frontends.
2775
2776     * DNS SRV records are used in HKP keyserver lookups to allow
2777       administrators to load balance and select keyserver ports
2778       automatically.  This is as specified in
2779       draft-shaw-openpgp-hkp-00.txt.
2780
2781     * When using the "keyid!" syntax during a key export, only that
2782       specified key is exported.  If the key in question is a subkey,
2783       the primary key plus only that subkey is exported.
2784
2785     * configure --disable-xxx options to disable individual algorithms
2786       at build time.  This can be used to build a smaller gpg binary
2787       for embedded uses where space is tight.  See the README file for
2788       the algorithms that can be used with this option, or use
2789       --enable-minimal to build the smallest gpg possible (disables
2790       all optional algorithms, disables keyserver access, and disables
2791       photo IDs).
2792
2793     * The keyserver no-modify flag on a key can now be displayed and
2794       modified.
2795
2796     * Note that the TIGER/192 digest algorithm is in the process of
2797       being dropped from the OpenPGP standard.  While this release of
2798       GnuPG still contains it, it is disabled by default.  To ensure
2799       you will still be able to use your messages with future versions
2800       of GnuPG and other OpenPGP programs, please do not use this
2801       algorithm.
2802
2803     See-also: gnupg-announce/2003q2/000153.html
2804
2805
2806 Noteworthy changes in version 1.3.1 (2002-11-12)
2807 ------------------------------------------------
2808
2809     * Trust signature support.  This is based on the Maurer trust
2810       model where a user can specify the trust level along with the
2811       signature with multiple levels so users can delegate
2812       certification ability to other users, possibly restricted by a
2813       regular expression on the user ID.  Note that full trust
2814       signature support requires a regular expression parsing library.
2815       The regexp code from glibc 2.3.1 is included for those platforms
2816       that don't have working regexp functions available.  The
2817       configure option --disable-regex may be used to disable any
2818       regular expression code, which will make GnuPG ignore any trust
2819       signature with a regular expression included.
2820
2821     * Two new commands --hidden-recipient (-R) and --hidden-encrypt-to
2822       encrypt to a user, but hide the identity of that user.  This is
2823       the same functionality as --throw-keyid, but can be used on a
2824       per-user basis.
2825
2826     * Full algorithm names (e.g. "3DES", "SHA1", "ZIP") can now be
2827       used interchangeably with the short algorithm names (e.g. "S2",
2828       "H2", "Z1") anywhere algorithm names are used in GnuPG.
2829
2830
2831 Noteworthy changes in version 1.3.0 (2002-10-18)
2832 ------------------------------------------------
2833
2834     * The last piece of internal keyserver support has been removed,
2835       and now all keyserver access is done via the keyserver plugins.
2836       There is also a newer keyserver protocol used between GnuPG and
2837       the plugins, so plugins from earlier versions of GnuPG may not
2838       work properly.
2839
2840     * The HKP keyserver plugin supports the new machine-readable key
2841       listing format for those keyservers that provide it.
2842
2843     * When using a HKP keyserver with multiple DNS records (such as
2844       wwwkeys.pgp.net which has the addresses of multiple servers
2845       around the world), try all records until one succeeds.  Note
2846       that it depends on the LDAP library used whether the LDAP
2847       keyserver plugin does this as well.
2848
2849     * The library dependencies for OpenLDAP seem to change fairly
2850       frequently, and GnuPG's configure script cannot guess all the
2851       combinations.  Use ./configure LDAPLIBS="-L libdir -l libs" to
2852       override the script and use the libraries selected.
2853
2854     * Secret keys generated with --export-secret-subkeys are now
2855       indicated in key listings with a '#' after the "sec", and in
2856       --with-colons listings by showing no capabilities (no lowercase
2857       characters).
2858
2859     * --trusted-key has been un-obsoleted, as it is useful for adding
2860       ultimately trusted keys from the config file.  It is identical
2861       to using --edit and "trust" to change a key to ultimately
2862       trusted.
2863
2864     * Translations other than de are no longer distributed with the
2865       development branch.  This is due to the frequent text changes
2866       during development, which cause the translations to rapidly go
2867       out of date.
2868
2869
2870 Version 1.2.8 (2006-12-07)
2871 Version 1.2.7 (2004-12-27)
2872 Version 1.2.6 (2004-08-25)
2873 Version 1.2.5 (2004-07-26)
2874 Version 1.2.4 (2003-12-23)
2875 Version 1.2.3 (2003-08-21)
2876 Version 1.2.2 (2003-05-01)
2877 Version 1.2.1 (2002-10-25)
2878 Version 1.2.0 (2002-09-21)
2879
2880
2881 Noteworthy changes in version 1.1.92 (2002-09-11)
2882 -------------------------------------------------
2883
2884     * [IMPORTANT] The default configuration file is now
2885       ~/.gnupg/gpg.conf.  If an old ~/.gnupg/options is found it will
2886       still be used.  This change is required to have a more
2887       consistent naming scheme with forthcoming tools.
2888
2889     * The use of MDCs have increased.  A MDC will be used if the
2890       recipients directly request it, if the recipients have AES,
2891       AES192, AES256, or TWOFISH in their cipher preferences, or if
2892       the chosen cipher has a blocksize not equal to 64 bits
2893       (currently this is also AES, AES192, AES256, and TWOFISH).
2894
2895     * GnuPG will no longer automatically disable compression when
2896       processing an already-compressed file unless a MDC is being
2897       used.  This is to give the message a certain amount of
2898       resistance to the chosen-ciphertext attack while communicating
2899       with other programs (most commonly PGP earlier than version 7.x)
2900       that do not support MDCs.
2901
2902     * The option --interactive now has the desired effect when
2903       importing keys.
2904
2905     * The file permission and ownership checks on files have been
2906       clarified.  Specifically, the homedir (usually ~/.gnupg) is
2907       checked to protect everything within it.  If the user specifies
2908       keyrings outside this homedir, they are presumed to be shared
2909       keyrings and therefore *not* checked.  Configuration files
2910       specified with the --options option and the IDEA cipher
2911       extension specified with --load-extension are checked, along
2912       with their enclosing directories.
2913
2914     * The configure option --with-static-rnd=auto allows to build gpg
2915       with all available entropy gathering modules included.  At
2916       runtime the best usable one will be selected from the list
2917       linux, egd, unix.  This is also the default for systems lacking
2918       a /dev/random device.
2919
2920     * The default character set is now taken from the current locale;
2921       it can still be overridden by the --charset option.  Using the
2922       option -vvv shows the used character set.
2923
2924     * [REMOVED] --emulate-checksum-bug and --emulate-3des-s2k-bug have
2925       been removed.
2926
2927
2928 Noteworthy changes in version 1.1.91 (2002-08-04)
2929 -------------------------------------------------
2930
2931     * All modules are now linked statically; the --load-extension
2932       option is in general not useful anymore.  The only exception is
2933       to specify the deprecated idea cipher.
2934
2935     * The IDEA plugin has changed.  Previous versions of the IDEA
2936       plugin will no longer work with GnuPG.  However, the current
2937       version of the plugin will work with earlier GnuPG versions.
2938
2939     * When using --batch with one of the --delete-key commands, the
2940       key must be specified by fingerprint.  See the man page for
2941       details.
2942
2943     * There are now various ways to restrict the ability GnuPG has to
2944       exec external programs (for the keyserver helpers or photo ID
2945       viewers).  Read the README file for the complete list.
2946
2947     * New export option to leave off attribute packets (photo IDs)
2948       during export.  This is useful when exporting to HKP keyservers
2949       which do not understand attribute packets.
2950
2951     * New import option to repair during import the HKP keyserver
2952       mangling multiple subkeys bug.  Note that this cannot completely
2953       repair the damaged key as some crucial data is removed by the
2954       keyserver, but it does at least give you back one subkey.  This
2955       is on by default for keyserver --recv-keys, and off by default
2956       for regular --import.
2957
2958     * The keyserver helper programs now live in
2959       /usr/[local/]libexec/gnupg by default.  If you are upgrading
2960       from 1.0.7, you might want to delete your old copies in
2961       /usr/[local/]bin.  If you use an OS that does not use libexec
2962       for whatever reason, use configure --libexecdir=/usr/local/lib
2963       to place the keyserver helpers there.
2964
2965     * The LDAP keyserver handler now works properly with very old
2966       (version 1) LDAP keyservers.
2967
2968
2969 Noteworthy changes in version 1.1.90 (2002-07-01)
2970 -------------------------------------------------
2971
2972     * New commands: --personal-cipher-preferences,
2973       --personal-digest-preferences, and
2974       --personal-compress-preferences allow the user to specify which
2975       algorithms are to be preferred.  Note that this does not permit
2976       using an algorithm that is not present in the recipient's
2977       preferences (which would violate the OpenPGP standard).  This
2978       just allows sorting the preferences differently.
2979
2980     * New "group" command to refer to several keys with one name.
2981
2982     * A warning is issued if the user forces the use of an algorithm
2983       that is not listed in the recipient's preferences.
2984
2985     * Full revocation key (aka "designated revoker") support.
2986
2987     * The preferred hash algorithms on a key are consulted when
2988       encrypting a signed message to that key.  Note that this is
2989       disabled by default by a SHA1 preference in
2990       --personal-digest-preferences.
2991
2992     * --cert-digest-algo allows the user to specify the hash algorithm
2993       to use when signing a key rather than the default SHA1 (or MD5
2994       for PGP2 keys).  Do not use this feature unless you fully
2995       understand the implications of this.
2996
2997     * --pgp7 mode automatically sets all necessary options to ensure
2998       that the resulting message will be usable by a user of PGP 7.x.
2999
3000     * New --attribute-fd command for frontends and scripts to get the
3001       contents of attribute packets (i.e. photos)
3002
3003     * In expert mode, the user can now re-sign a v3 key with a v4
3004       self-signature.  This does not change the v3 key into a v4 key,
3005       but it does allow the user to use preferences, primary ID flags,
3006       etc.
3007
3008     * Significantly improved photo ID support on non-unixlike
3009       platforms.
3010
3011     * The version number has jumped ahead to 1.1.90 to skip over the
3012       old version 1.1 and to get ready for the upcoming 1.2.
3013
3014     * ElGamal sign and encrypt is not anymore allowed in the key
3015       generation dialog unless in expert mode.  RSA sign and encrypt
3016       has been added with the same restrictions.
3017
3018     * [W32] Keyserver access does work with Windows NT.
3019
3020
3021 Noteworthy changes in version 1.0.7 (2002-04-29)
3022 ------------------------------------------------
3023
3024     * Secret keys are now stored and exported in a new format which
3025       uses SHA-1 for integrity checks.  This format renders the
3026       Rosa/Klima attack useless.  Other OpenPGP implementations might
3027       not yet support this, so the option --simple-sk-checksum creates
3028       the old vulnerable format.
3029
3030     * The default cipher algorithm for encryption is now CAST5,
3031       default hash algorithm is SHA-1.  This will give us better
3032       interoperability with other OpenPGP implementations.
3033
3034     * Symmetric encrypted messages now use a fixed file size if
3035       possible.  This is a tradeoff: it breaks PGP 5, but fixes PGP 2,
3036       6, and 7.  Note this was only an issue with RFC-1991 style
3037       symmetric messages.
3038
3039     * Photographic user ID support.  This uses an external program to
3040       view the images.
3041
3042     * Enhanced keyserver support via keyserver "plugins".  GnuPG comes
3043       with plugins for the NAI LDAP keyserver as well as the HKP email
3044       keyserver.  It retains internal support for the HKP HTTP
3045       keyserver.
3046
3047     * Nonrevocable signatures are now supported.  If a user signs a
3048       key nonrevocably, this signature cannot be taken back so be
3049       careful!
3050
3051     * Multiple signature classes are usable when signing a key to
3052       specify how carefully the key information (fingerprint, photo
3053       ID, etc) was checked.
3054
3055     * --pgp2 mode automatically sets all necessary options to ensure
3056       that the resulting message will be usable by a user of PGP 2.x.
3057
3058     * --pgp6 mode automatically sets all necessary options to ensure
3059       that the resulting message will be usable by a user of PGP 6.x.
3060
3061     * Signatures may now be given an expiration date.  When signing a
3062       key with an expiration date, the user is prompted whether they
3063       want their signature to expire at the same time.
3064
3065     * Revocation keys (designated revokers) are now supported if
3066       present.  There is currently no way to designate new keys as
3067       designated revokers.
3068
3069     * Permissions on the .gnupg directory and its files are checked
3070       for safety.
3071
3072     * --expert mode enables certain silly things such as signing a
3073       revoked user id, expired key, or revoked key.
3074
3075     * Some fixes to build cleanly under Cygwin32.
3076
3077     * New tool gpgsplit to split OpenPGP data formats into packets.
3078
3079     * New option --preserve-permissions.
3080
3081     * Subkeys created in the future are not used for encryption or
3082       signing unless the new option --ignore-valid-from is used.
3083
3084     * Revoked user-IDs are not listed unless signatures are listed too
3085       or we are in verbose mode.
3086
3087     * There is no default comment string with ascii armors anymore
3088       except for revocation certificates and --enarmor mode.
3089
3090     * The command "primary" in the edit menu can be used to change the
3091       primary UID, "setpref" and "updpref" can be used to change the
3092       preferences.
3093
3094     * Fixed the preference handling; since 1.0.5 they were erroneously
3095       matched against against the latest user ID and not the given one.
3096
3097     * RSA key generation.
3098
3099     * Merged Stefan's patches for RISC OS in.  See comments in
3100       scripts/build-riscos.
3101
3102     * It is now possible to sign and conventional encrypt a message (-cs).
3103
3104     * The MDC feature flag is supported and can be set by using
3105       the "updpref" edit command.
3106
3107     * The status messages GOODSIG and BADSIG are now returning the primary
3108       UID, encoded using %XX escaping (but with spaces left as spaces,
3109       so that it should not break too much)
3110
3111     * Support for GDBM based keyrings has been removed.
3112
3113     * The entire keyring management has been revamped.
3114
3115     * The way signature stati are store has changed so that v3
3116       signatures can be supported. To increase the speed of many
3117       operations for existing keyrings you can use the new
3118       --rebuild-keydb-caches command.
3119
3120     * The entire key validation process (trustdb) has been revamped.
3121       See the man page entries for --update-trustdb, --check-trustdb
3122       and --no-auto-check-trustdb.
3123
3124     * --trusted-keys is again obsolete, --edit can be used to set the
3125       ownertrust of any key to ultimately trusted.
3126
3127     * A subkey is never used to sign keys.
3128
3129     * Read only keyrings are now handled as expected.
3130
3131     See-also: gnupg-announce/2002q2/000135.html
3132
3133
3134 Noteworthy changes in version 1.0.6 (2001-05-29)
3135 ------------------------------------------------
3136
3137     * Security fix for a format string bug in the tty code.
3138
3139     * Fixed format string bugs in all PO files.
3140
3141     * Removed Russian translation due to too many bugs.  The FTP
3142       server has an unofficial but better translation in the contrib
3143       directory.
3144
3145     * Fixed expire time calculation and keyserver access.
3146
3147     * The usual set of minor bug fixes and enhancements.
3148
3149     * non-writable keyrings are now correctly handled.
3150
3151     See-also: gnupg-announce/2001q2/000123.html
3152
3153
3154 Noteworthy changes in version 1.0.5 (2001-04-29)
3155 ------------------------------------------------
3156
3157     * WARNING: The semantics of --verify have changed to address a
3158       problem with detached signature detection. --verify now ignores
3159       signed material given on stdin unless this is requested by using
3160       a "-" as the name for the file with the signed material.  Please
3161       check all your detached signature handling applications and make
3162       sure that they don't pipe the signed material to stdin without
3163       using a filename together with "-" on the the command line.
3164
3165     * WARNING: Corrected hash calculation for input data larger than
3166       512M - it was just wrong, so you might notice bad signature in
3167       some very big files.  It may be wise to keep an old copy of
3168       GnuPG around.
3169
3170     * Secret keys are no longer imported unless you use the new option
3171       --allow-secret-key-import.  This is a kludge and future versions will
3172       handle it in another way.
3173
3174     * New command "showpref" in the --edit-key menu to show an easier
3175       to understand preference listing.
3176
3177     * There is now the notation of a primary user ID.  For example, it
3178       is printed with a signature verification as the first user ID;
3179       revoked user IDs are not printed there anymore.  In general the
3180       primary user ID is the one with the latest self-signature.
3181
3182     * New --charset=utf-8 to bypass all internal conversions.
3183
3184     * Large File Support (LFS) is now working.
3185
3186     * New options: --ignore-crc-error, --no-sig-create-check,
3187       --no-sig-cache, --fixed-list-mode, --no-expensive-trust-checks,
3188       --enable-special-filenames and --use-agent.  See man page.
3189
3190     * New command --pipemode, which can be used to run gpg as a
3191       co-process.  Currently only the verification of detached
3192       signatures are working.  See doc/DETAILS.
3193
3194     * Keyserver support for the W32 version.
3195
3196     * Rewritten key selection code so that GnuPG can better cope with
3197       multiple subkeys, expire dates and so.  The drawback is that it
3198       is slower.
3199
3200     * A whole lot of bug fixes.
3201
3202     * The verification status of self-signatures are now cached. To
3203       increase the speed of key list operations for existing keys you
3204       can do the following in your GnuPG homedir (~/.gnupg):
3205          cp pubring.gpg pubring.gpg.save && gpg --export-all >x && \
3206          rm pubring.gpg && gpg --import x
3207       Only v4 keys (i.e not the old RSA keys) benefit from this caching.
3208
3209     * New translations: Estonian, Turkish.
3210
3211     See-also: gnupg-announce/2001q2/000122.html
3212
3213
3214 Noteworthy changes in version 1.0.4 (2000-10-17)
3215 ------------------------------------------------
3216
3217     * Fixed a serious bug which could lead to false signature verification
3218       results when more than one signature is fed to gpg.  This is the
3219       primary reason for releasing this version.
3220
3221     * New utility gpgv which is a stripped down version of gpg to
3222       be used to verify signatures against a list of trusted keys.
3223
3224     * Rijndael (AES) is now supported and listed with top preference.
3225
3226     * --with-colons now works with --print-md[s].
3227
3228     See-also: gnupg-announce/2000q4/000082.html
3229
3230
3231 Noteworthy changes in version 1.0.3 (2000-09-18)
3232 ------------------------------------------------
3233
3234     * Fixed problems with piping to/from other MS-Windows software
3235
3236     * Expiration time of the primary key can be changed again.
3237
3238     * Revoked user IDs are now marked in the output of --list-key
3239
3240     * New options --show-session-key and --override-session-key
3241       to help the British folks to somewhat minimize the danger
3242       of this Orwellian RIP bill.
3243
3244     * New options --merge-only and --try-all-secrets.
3245
3246     * New configuration option --with-egd-socket.
3247
3248     * The --trusted-key option is back after it left us with 0.9.5
3249
3250     * RSA is supported. Key generation does not yet work but will come
3251       soon.
3252
3253     * CAST5 and SHA-1 are now the default algorithms to protect the key
3254       and for symmetric-only encryption. This should solve a couple
3255       of compatibility problems because the old algorithms are optional
3256       according to RFC2440
3257
3258     * Twofish and MDC enhanced encryption is now used.  PGP 7 supports
3259       this.  Older versions of GnuPG don't support it, so they should be
3260       upgraded to at least 1.0.2
3261
3262     See-also: gnupg-announce/2000q3/000075.html
3263
3264
3265 Noteworthy changes in version 1.0.2 (2000-07-12)
3266 ----------------------------------------------
3267
3268     * Fixed expiration handling of encryption keys.
3269
3270     * Add an experimental feature to do unattended key generation.
3271
3272     * The user is now asked for the reason of revocation as required
3273       by the new OpenPGP draft.
3274
3275     * There is a ~/.gnupg/random_seed file now which saves the
3276       state of the internal RNG and increases system performance
3277       somewhat.  This way the full entropy source is only used in
3278       cases were it is really required.
3279       Use the option --no-random-seed-file to disable this feature.
3280
3281     * New options --ignore-time-conflict and --lock-never.
3282
3283     * Some fixes for the W32 version.
3284
3285     * The entropy.dll is not anymore used by the W32 version but replaced
3286       by code derived from Cryptlib.
3287
3288     * Encryption is now much faster: About 2 times for 1k bit keys
3289       and 8 times for 4k keys.
3290
3291     * New encryption keys are generated in a way which allows a much
3292       faster decryption.
3293
3294     * New command --export-secret-subkeys which outputs the
3295       the _primary_ key with it's secret parts deleted.  This is
3296       useful for automated decryption/signature creation as it
3297       allows to keep the real secret primary key offline and
3298       thereby protecting the key certificates and allowing to
3299       create revocations for the subkeys.  See the FAQ for a
3300       procedure to install such secret keys.
3301
3302     * Keygeneration now writes to the first writeable keyring or
3303       as default to the one in the homedirectory.  Prior versions
3304       ignored all --keyring options.
3305
3306     * New option --command-fd to take user input from a file descriptor;
3307       to be used with --status-fd by software which uses GnuPG as a backend.
3308
3309     * There is a new status PROGRESS which is used to show progress during
3310       key generation.
3311
3312     * Support for the new MDC encryption packets.  To create them either
3313       --force-mdc must be use or cipher algorithm with a blocksize other
3314       than 64 bits is to be used.  --openpgp currently disables MDC packets
3315       entirely.  This option should not yet be used.
3316
3317     * New option --no-auto-key-retrieve to disable retrieving of
3318       a missing public key from a keyserver, when a keyserver has been set.
3319
3320     * Danish translation
3321
3322     See-also: gnupg-announce/2000q3/000069.html
3323
3324
3325 Noteworthy changes in version 1.0.1 (1999-12-16)
3326 -----------------------------------
3327
3328     * New command --verify-files.  New option --fast-list-mode.
3329
3330     * $http_proxy is now used when --honor-http-proxy is set.
3331
3332     * Fixed some minor bugs and the problem with conventional encrypted
3333       packets which did use the gpg v3 partial length headers.
3334
3335     * Add Indonesian and Portuguese translations.
3336
3337     * Fixed a bug with symmetric-only encryption using the non-default 3DES.
3338       The option --emulate-3des-s2k-bug may be used to decrypt documents
3339       which have been encrypted this way; this should be done immediately
3340       as this workaround will be remove in 1.1
3341
3342     * Can now handle (but not display) PGP's photo IDs. I don't know the
3343       format of that packet but after stripping a few bytes from the start
3344       it looks like a JPEG (at least my test data).  Handling of this
3345       package is required because otherwise it would mix up the
3346       self signatures and you can't import those keys.
3347
3348     * Passing non-ascii user IDs on the commandline should now work in all
3349       cases.
3350
3351     * New keys are now generated with an additional preference to Blowfish.
3352
3353     * Removed the GNU Privacy Handbook from the distribution as it will go
3354       into a separate one.
3355
3356     See-also: gnupg-announce/1999q4/000050.html
3357
3358
3359 Noteworthy changes in version 1.0.0 (1999-09-07)
3360 -----------------------------------
3361
3362     * Add a very preliminary version of the GNU Privacy Handbook to
3363       the distribution (lynx doc/gph/index.html).
3364
3365     * Changed the version number to GnuPG 2001 ;-)
3366
3367     See-also: gnupg-announce/1999q3/000037.html
3368
3369
3370 Noteworthy changes in version 0.9.11 (1999-09-03)
3371 ------------------------------------
3372
3373     * UTF-8 strings are now correctly printed (if --charset is set correctly).
3374       Output of --with-colons remains C-style escaped UTF-8.
3375
3376     * Workaround for a problem with PGP 5 detached signature in textmode.
3377
3378     * Fixed a problem when importing new subkeys (duplicated signatures).
3379
3380     See-also: gnupg-announce/1999q3/000036.html
3381
3382
3383 Noteworthy changes in version 0.9.10 (1999-07-23)
3384 ------------------------------------
3385
3386     * Some strange new options to help pgpgpg
3387
3388     * Cleaned up the dox a bit.
3389
3390     See-also: gnupg-announce/1999q3/000034.html
3391
3392
3393 Noteworthy changes in version 0.9.9
3394 -----------------------------------
3395
3396     * New options --[no-]utf8-strings.
3397
3398     * New edit-menu commands "enable" and "disable" for entire keys.
3399
3400     * You will be asked for a filename if gpg cannot deduce one.
3401
3402     * Changes to support libtool which is needed for the development
3403       of libgcrypt.
3404
3405     * New script tools/lspgpot to help transferring assigned
3406       trustvalues from PGP to GnuPG.
3407
3408     * New commands --lsign-key and made --sign-key a shortcut for --edit
3409       and sign.
3410
3411     * New options (#122--126 ;-) --[no-]default-recipient[-self],
3412       --disable-{cipher,pubkey}-algo. See the man page.
3413
3414     * Enhanced info output in case of multiple recipients and fixed exit code.
3415
3416     * New option --allow-non-selfsigned-uid to work around a problem with
3417       the German IN way of separating signing and encryption keys.
3418
3419     See-also: gnupg-announce/1999q3/000028.html
3420
3421
3422 Noteworthy changes in version 0.9.8 (1999-06-26)
3423 -----------------------------------
3424
3425     * New subcommand "delsig" in the edit menu.
3426
3427     * The name of the output file is not anymore the one which is
3428       embedded in the processed message, but the used filename with
3429       the extension stripped.  To revert to the old behaviour you can
3430       use the option --use-embedded-filename.
3431
3432     * Another hack to cope with pgp2 generated detached signatures.
3433
3434     * latin-2 character set works (--charset=iso-8859-2).
3435
3436     * New option --with-key-data to list the public key parameters.
3437       New option -N to insert notations and a --set-policy-url.
3438       A couple of other options to allow resetting of options.
3439
3440     * Better support for HPUX.
3441
3442     See-also: gnupg-announce/1999q2/000016.html
3443
3444
3445 Noteworthy changes in version 0.9.7 (1999-05-23)
3446 -----------------------------------
3447
3448     * Add some work arounds for a bugs in pgp 2 which led to bad signatures
3449       when used with canonical texts in some cases.
3450
3451     * Enhanced some status outputs.
3452
3453     See-also: gnupg-announce/1999q2/000000.html
3454
3455
3456 Noteworthy changes in version 0.9.6 (1999-05-06)
3457 -----------------------------------
3458
3459     * Twofish is now statically linked by default. The experimental 128 bit
3460       version is now disabled.  Full support will be available as soon as
3461       the OpenPGP WG has decided on an interpretation of rfc2440.
3462
3463     * Dropped support for the ancient Blowfish160 which is not OpenPGP.
3464
3465     * Merged gpgm and gpg into one binary.
3466
3467     * Add "revsig" and "revkey" commands to the edit menu.  It is now
3468       possible to revoke signature and subkeys.
3469
3470
3471 Noteworthy changes in version 0.9.5 (1999-03-20)
3472 -----------------------------------
3473
3474     * New command "lsign" in the keyedit menu to create non-exportable
3475       signatures.  Removed --trusted-keys option.
3476
3477     * A bunch of changes to the key validation code.
3478
3479     * --list-trust-path now has an optional --with-colons format.
3480
3481     * New command --recv-keys to import keys from an keyserver.
3482
3483
3484 Noteworthy changes in version 0.9.4 (1999-03-08)
3485 -----------------------------------
3486
3487     * New configure option --enable-static-rnd=[egd|linux|unix|none]
3488       to select a random gathering module for static linking.
3489
3490     * The original text is now verbatim copied to a cleartext signed message.
3491
3492     * Bugfixes but there are still a couple of bugs.
3493
3494
3495 Noteworthy changes in version 0.9.3 (1999-02-19)
3496 -----------------------------------
3497
3498     * Changed the internal design of getkey which now allows a
3499       efficient lookup of multiple keys and add a word match mode.
3500
3501     * New options --[no-]encrypt-to.
3502
3503     * Some changes to the configure stuff.  Switched to automake 1.4.
3504       Removed intl/ from CVS, autogen.sh now uses gettextize.
3505
3506     * Preferences now include Twofish. Removed preference to Blowfish with
3507       a special hack to suppress the "not listed in preferences" warning;
3508       this is to allow us to switch completely to Twofish in the near future.
3509
3510     * Changed the locking stuff.
3511
3512     * Print all user ids of a good signature.
3513
3514
3515 Noteworthy changes in version 0.9.2 (1999-01-01)
3516 -----------------------------------
3517
3518     * add some additional time warp checks.
3519
3520     * Option --keyserver and command --send-keys to utilize HKP servers.
3521
3522     * Upgraded to zlib 1.1.3 and fixed an inflate bug
3523
3524     * More cleanup on the cleartext signatures.
3525
3526
3527 Noteworthy changes in version 0.9.1 (1999-01-01)
3528 -----------------------------------
3529
3530     * Polish language support.
3531
3532     * When querying the passphrase, the key ID of the primary key is
3533       displayed along with the one of the used secondary key.
3534
3535     * Fixed a bug occurring when decrypting pgp 5 encrypted messages,
3536       fixed an infinite loop bug in the 3DES code and in the code
3537       which looks for trusted signatures.
3538
3539     * Fixed a bug in the mpi library which caused signatures not to
3540       compare okay.
3541
3542     * Rewrote the handling of cleartext signatures; the code is now
3543       better maintainable (I hope so).
3544
3545     * New status output VALIDSIG only for valid signatures together
3546       with the fingerprint of the signer's key.
3547
3548
3549 Noteworthy changes in version 0.9.0 (1998-12-23)
3550 -----------------------------------
3551
3552     * --export does now only exports rfc2440 compatible keys; the
3553       old behaviour is available with --export-all.
3554       Generation of v3 ElGamal (sign and encrypt) keys is not longer
3555       supported.
3556
3557     * Fixed the uncompress bug.
3558
3559     * Rewrote the rndunix module. There are two environment variables
3560       used for debugging now: GNUPG_RNDUNIX_DBG give the file to write
3561       debugging information (use "-" for stdout) and if GNUPG_RNDUNIX_DBGALL
3562       is set, all programs which are only tried are also printed.
3563
3564     * New option --escape-from-lines to "dash-escape" "From " lines to
3565       prevent mailers to change them to ">From ".  This is not enabled by
3566       default because it is not in compliance with rfc2440 - however, you
3567       should turn it on.
3568
3569
3570 Noteworthy changes in version 0.4.5 (1998-12-08)
3571 -----------------------------------
3572
3573     * The keyrings and the trustdb is now locked, so that
3574       other GnuPG processes won't damage these files.  You
3575       may want to put the option --lock-once into your options file.
3576
3577     * The latest self-signatures are now used; this enables --import
3578       to see updated preferences etc.
3579
3580     * Import of subkeys should now work.
3581
3582     * Random gathering modules may now be loaded as extensions. Add
3583       such a module for most Unices but it is very experimental!
3584
3585     * Brazilian language support.
3586
3587
3588 Noteworthy changes in version 0.4.4 (1998-11-20)
3589 -----------------------------------
3590
3591     * Fixed the way the key expiration time is stored. If you have
3592       an expiration time on your key you should fix it with --edit-key
3593       and the command "expire".  I apologize for this inconvenience.
3594
3595     * Add option --charset to support "koi8-r" encoding of user ids.
3596       (Not yet tested).
3597
3598     * Preferences should now work again. You should run
3599       "gpgm --check-trustdb \*" to rebuild all preferences.
3600
3601     * Checking of certificates should now work but this needs a lot
3602       of testing.  Key validation values are now cached in the
3603       trustdb; they should be recalculated as needed, but you may
3604       use --check-trustdb or --update-trustdb to do this.
3605
3606     * Spanish translation by Urko Lusa.
3607
3608     * Patch files are from now on signed.  See the man page
3609       for the new option --not-dash-escaped.
3610
3611     * New syntax: --edit-key <userID> [<commands>]
3612       If you run it without --batch the commands are executed and then
3613       you are put into normal mode unless you use "quit" or "save" as
3614       one of the commands.  When in batch mode, the program quits after
3615       the last command, so you have to use "save" if you did some changes.
3616       It does not yet work completely, but may be used to list so the
3617       keys etc.
3618
3619
3620 Noteworthy changes in version 0.4.3 (1998-11-08)
3621 -----------------------------------
3622
3623     * Fixed the gettext configure bug.
3624
3625     * Kludge for RSA keys: keyid and length of a RSA key are
3626       correctly reported, but you get an error if you try to use
3627       this key (If you do not have the non-US version).
3628
3629     * Experimental support for keyrings stored in a GDBM database.
3630       This is *much* faster than a standard keyring.  You will notice
3631       that the import gets slower with time; the reason is that all
3632       new keys are used to verify signatures of previous inserted
3633       keys.  Use "--keyring gnupg-gdbm:<name-of-gdbm-file>".  This is
3634       not (yet) supported for secret keys.
3635
3636     * A Russian language file in the distribution (alternatives are in
3637       the contrib directory of the FTP servers)
3638
3639     * commandline option processing now works as expected for GNU programs
3640       with the exception that you can't mix options and normal arguments.
3641
3642     * Now --list-key lists all matching keys.  This is needed in some
3643       other places too.
3644
3645
3646 Noteworthy changes in version 0.4.2 (1998-10-18)
3647 -----------------------------------
3648
3649     * This is only a snapshot: There are still a few bugs.
3650
3651     * Fixed this huge memory leak.
3652
3653     * Redesigned the trust database:  You should run "gpgm --check-trustdb".
3654       New command --update-trustdb, which adds new key from the public
3655       keyring into your trustdb
3656
3657     * Fixed a bug in the armor code, leading to invalid packet errors.
3658       (a workaround for this was to use --no-armor).  The shorten line
3659       length (64 instead of 72) fixes a problem with pgp5 and keyservers.
3660
3661     * comment packets are not anymore generated. "--export" filters
3662       them out.  One Exception:  The comment packets in a secret keyring
3663       are still used because they carry the factorization of the public
3664       prime product.
3665
3666     * --import now only looks for KEYBLOCK headers, so you can now simply
3667       remove the "- " in front of such a header if someone accidentally signed
3668       such a message or the keyblock is part of a cleartext signed message.
3669
3670     * --with-colons now lists the key expiration time and not anymore
3671       the valid period.
3672
3673     * Some keyblocks created with old releases have a wrong sequence
3674       of packets, so that the keyservers don't accept these keys.
3675       Simply using "--edit-key" fixes the problem.
3676
3677     * New option --force-v3-sigs to generate signed messages which are
3678       compatible to PGP 5.
3679
3680     * Add some code to support DLD (for non ELF systems) - but this is
3681       not tested because my BSD box is currently broken.
3682
3683     * New command "expire" in the edit-key menu.
3684
3685
3686
3687 Noteworthy changes in version 0.4.1 (1998-10-07)
3688 -----------------------------------
3689
3690     * A secondary key is used when the primary key is specified but cannot
3691       be used for the operation (if it is a sign-only key).
3692
3693     * GNUPG can now handle concatenated armored messages:  There is still a
3694       bug if different kinds of messages are mixed.
3695
3696     * Iterated+Salted passphrases now work.  If want to be sure that PGP5
3697       is able to handle them you may want to use the options
3698         "--s2k-mode 3 --s2k-cipher-algo cast5 --s2k-digest-algo sha1"
3699       when changing a passphrase.
3700
3701     * doc/OpenPGP talks about OpenPGP compliance, doc/HACKING gives
3702       a few hints about the internal structure.
3703
3704     * Checked gnupg against the August 1998 draft (07) and I believe
3705       it is in compliance with this document (except for one point).
3706
3707     * Fixed some bugs in the import merging code and rewrote some
3708       code for the trustdb.
3709
3710
3711 Noteworthy changes in version 0.4.0 (1998-09-18)
3712 -----------------------------------
3713
3714     * Triple DES is now supported.  Michael Roth did this piece of
3715       needed work.  We have now all the coded needed to be OpenPGP
3716       compliant.
3717
3718     * Added a simple rpm spec file (see INSTALL).
3719
3720     * detached and armored signatures are now using "PGP SIGNATURE",
3721       except when --rfc1991 is used.
3722
3723     * All times which are not in the yyyy-mm-dd format are now printed
3724       in local time.
3725
3726
3727 Noteworthy changes in version 0.3.5 (1998-09-14)
3728 -----------------------------------
3729
3730     * New option --throw-keyid to create anonymous enciphered messages.
3731       If gpg detects such a message it tires all available secret keys
3732       in turn so decode it.  This is a gnupg extension and not in OpenPGP
3733       but it has been discussed there and afaik some products use this
3734       scheme too (Suggested by Nimrod Zimmerman).
3735
3736     * Fixed a bug with 5 byte length headers.
3737
3738     * --delete-[secret-]key is now also available in gpgm.
3739
3740     * cleartext signatures are not anymore converted to LF only.
3741
3742     * Fixed a trustdb problem.  Run "gpgm --check-trustdb" to fix old
3743       trust dbs.
3744
3745     * Building in another directory should now work.
3746
3747     * Weak key detection mechanism (Niklas Hernaeus).
3748
3749
3750 Noteworthy changes in version 0.3.4 (1998-08-11)
3751 -----------------------------------
3752
3753     * New options --comment and --set-filename; see g10/OPTIONS
3754
3755     * yes/no, y/n localized.
3756
3757     * Fixed some bugs.
3758
3759
3760 Noteworthy changes in version 0.3.3 (1998-08-08)
3761 -----------------------------------
3762
3763     * IMPORTANT: I found yet another bug in the way the secret keys
3764       are encrypted - I did it the way pgp 2.x did it, but OpenPGP
3765       and pgp 5.x specify another (in some aspects simpler) method.
3766       To convert your secret keys you have to do this:
3767         1. Build the new release but don't install it and keep
3768            a copy of the old program.
3769         2. Disable the network, make sure that you are the only
3770            user, be sure that there are no Trojan horses etc ....
3771         3. Use your old gpg (version 0.3.1 or 0.3.2) and set the
3772            passphrases of ALL your secret keys to empty!
3773            (gpg --change-passphrase your-user-id).
3774         4. Save your ownertrusts (see the next point)
3775         5. rm ~/.gnupg/trustdb.gpg
3776         6. install the new version of gpg (0.3.3)
3777         7. For every secret key call "gpg --edit-key your-user-id",
3778            enter "passwd" at the prompt, follow the instructions and
3779            change your password back, enter "save" to store it.
3780         8. Restore the ownertrust (see next point).
3781
3782     * The format of the trust database has changed; you must delete
3783       the old one, so gnupg can create a new one.
3784       IMPORTANT: Use version 0.3.1 or .2 to save your assigned ownertrusts
3785       ("gpgm --list-ownertrust >saved-trust"); then build this new version
3786       and restore the ownertrust with this new version
3787       ("gpgm --import-ownertrust saved-trust").  Please note that
3788       --list-ownertrust has been renamed to --export-ownertrust in this
3789       release and it does now only export defined ownertrusts.
3790
3791     * The command --edit-key now provides a commandline driven menu
3792       which can be used for various tasks.  --sign-key is only an
3793       an alias to --edit-key and maybe removed in future: use the
3794       command "sign" of this new menu - you can select which user ids
3795       you want to sign.
3796
3797     * Alternate user ids can now be created an signed.
3798
3799     * Owner trust values can now be changed with --edit-key (trust)
3800
3801     * GNUPG can now run as a coprocess; this enables sophisticated
3802       frontends.  tools/shmtest.c is a simple sample implementation.
3803       This needs some more work: all tty_xxx() are to be replaced
3804       by cpr_xxx() and some changes in the display logics is needed.
3805
3806     * Removed options --gen-prime and --gen-random.
3807
3808     * Removed option --add-key; use --edit-key instead.
3809
3810     * Removed option --change-passphrase; use --edit-key instead.
3811
3812     * Signatures are now checked even if the output file could not
3813       be created. Command "--verify" tries to find the detached data.
3814
3815     * gpg now disables core dumps.
3816
3817     * compress and symmetric cipher preferences are now used.
3818       Because there is no 3DES yet, this is replaced by Blowfish.
3819
3820     * We have added the Twofish as an experimental cipher algorithm.
3821       Many thanks to Matthew Skala for doing this work.
3822       Twofish is the AES submission from Schneier et al.; see
3823       "www.counterpane.com/twofish.html" for more information.
3824
3825     * Started with a help system: If you enter a question mark at some
3826       prompt; you should get a specific help for this prompt.
3827
3828     * There is no more backup copy of the secret keyring.
3829
3830     * A lot of new bugs. I think this release is not as stable as
3831       the previous one.
3832
3833
3834 Noteworthy changes in version 0.3.2 (1998-07-09)
3835 -----------------------------------
3836
3837     * Fixed some bugs when using --textmode (-seat)
3838
3839     * Now displays the trust status of a positive verified message.
3840
3841     * Keyrings are now scanned in the sequence they are added with
3842       --[secret-]keyring.  Note that the default keyring is implicitly
3843       added as the very first one unless --no-default-keyring is used.
3844
3845     * Fixed setuid and dlopen bug.
3846
3847
3848 Noteworthy changes in version 0.3.1 (1998-07-06)
3849 -----------------------------------
3850
3851     * Partial headers are now written in the OpenPGP format if
3852       a key in a v4 packet is used.
3853
3854     * Removed some unused options, removed the gnupg.sig stuff.
3855
3856     * Key lookup by name now returns a key which can be used for
3857       the desired action.
3858
3859     * New options --list-ownertrust (gpgm) to make a backup copy
3860       of the ownertrust values you assigned.
3861
3862     * clear signature headers are now in compliance with OpenPGP.
3863
3864
3865 Noteworthy changes in version 0.3.0 (1998-06-25)
3866 -----------------------------------
3867
3868     * New option --emulate-checksum-bug.  If your passphrase does not
3869       work anymore, use this option and --change-passphrase to rewrite
3870       your passphrase.
3871
3872     * More complete v4 key support: Preferences and expiration time
3873       is set into the self signature.
3874
3875     * Key generation defaults to DSA/ElGamal keys, so that new keys are
3876       interoperable with pgp5
3877
3878     * DSA key generation is faster and key generation does not anymore
3879       remove entropy from the random generator (the primes are public
3880       parameters, so there is really no need for a cryptographic secure
3881       prime number generator which we had used).
3882
3883     * A complete new structure for representing the key parameters.
3884
3885     * Removed most public key knowledge into the cipher library.
3886
3887     * Support for dynamic loading of new algorithms.
3888
3889     * Moved tiger to an extension module.
3890
3891
3892 Noteworthy changes in version 0.2.19 (1998-05-29)
3893 ------------------------------------
3894
3895     * Replaced /dev/urandom in checks with new tool mk-tdata.
3896
3897     * Some assembler file cleanups; some more functions for the Alpha.
3898
3899     * Tiger has now the OpenPGP assigned number 6.  Because the OID has
3900       changed, old signatures using this algorithm can't be verified.
3901
3902     * gnupg now encrypts the compressed packed and not any longer in the
3903       reverse order; anyway it can decrypt both versions. Thanks to Tom
3904       for telling me this (not security related) bug.
3905
3906     * --add-key works and you are now able to generate subkeys.
3907
3908     * It is now possible to generate ElGamal keys in v4 packets to create
3909       valid OpenPGP keys.
3910
3911     * Some new features for better integration into MUAs.
3912
3913
3914 Noteworthy changes in version 0.2.18 (1998-05-15)
3915 ------------------------------------
3916
3917     * Split cipher/random.c, add new option "--disable-dev-random"
3918       to configure to support the development of a random source for
3919       other systems. Prepared sourcefiles rand-unix.c, rand-w32.c
3920       and rand-dummy.c (which is used to allow compilation on systems
3921       without a random source).
3922
3923     * Fixed a small bug in the key generation (it was possible that 48 bits
3924       of a key were not taken from the random pool)
3925
3926     * Add key generation for DSA and v4 signatures.
3927
3928     * Add a function trap_unaligned(), so that a SIGBUS is issued on
3929       Alphas and not the slow emulation code is used. And success: rmd160
3930       raised a SIGBUS.
3931
3932     * Enhanced the formatting facility of argparse and changed the use of
3933       \r,\v to @ because gettext does not like it.
3934
3935     * New option "--compress-algo 1" to allow the creation of compressed
3936       messages which are readable by PGP and "--print-md" (gpgm) to make
3937       speed measurement easier.
3938
3939
3940 Noteworthy changes in version 0.2.17 (1998-05-04)
3941 ------------------------------------
3942
3943     * Comment packets are now of private type 61.
3944
3945     * Passphrase code still used a 160 bit blowfish key, added a
3946       silly workaround. Please change your passphrase again - sorry.
3947
3948     * Conventional encryption now uses a type 3 packet to describe the
3949       used algorithms.
3950
3951     * The new algorithm number for Blowfish is 20, 16 is still used for
3952       encryption only; for signing it is only used when it is in a v3 packet,
3953       so that GNUPG keys are still valid.
3954
3955
3956 Noteworthy changes in version 0.2.16 (1998-04-28)
3957 ------------------------------------
3958
3959     * Add experimental support for the TIGER/192 message digest algorithm.
3960       (But there is only a dummy ASN OID).
3961
3962     * Standard cipher is now Blowfish with 128 bit key in OpenPGP's CFB
3963       mode. I renamed the old cipher to Blowfish160. Because the OpenPGP
3964       group refused to assign me a number for Blowfish160, I have to
3965       drop support for this in the future. You should use
3966       "--change-passphrase" to recode your current passphrase with 128
3967       bit Blowfish.
3968
3969
3970 Noteworthy changes in version 0.2.15 (1998-04-09)
3971 ------------------------------------
3972
3973     * Fixed a bug with the old checksum calculation for secret keys.
3974       If you run the program without --batch, a warning does inform
3975       you if your secret key needs to be converted; simply use
3976       --change-passphrase to recalculate the checksum. Please do this
3977       soon, as the compatible mode will be removed sometime in the future.
3978
3979     * CAST5 works (using the PGP's special CFB mode).
3980
3981     * Again somewhat more PGP 5 compatible.
3982
3983     * Some new test cases
3984
3985 Noteworthy changes in version 0.2.14 (1998-04-02)
3986 ------------------------------------
3987
3988     * Changed the internal handling of keyrings.
3989
3990     * Add support to list PGP 5 keyrings with subkeys
3991
3992     * Timestamps of signatures are now verified.
3993
3994     * A expiration time can now be specified during key generation.
3995
3996     * Some speedups for Blowfish and SHA-1, rewrote SHA-1 transform.
3997       Reduced the amount of random bytes needed for key generation in
3998       some cases.
3999
4000
4001 Noteworthy changes in version 0.2.13 (1998-03-10)
4002 ------------------------------------
4003
4004     * Verify of DSA signatures works.
4005
4006     * Re-implemented the slower random number generator.
4007
4008
4009 Noteworthy changes in version 0.2.12 (1998-03-07)
4010 ------------------------------------
4011
4012     * --delete-key checks that there is no secret key. The new
4013       option --delete-secret-key maybe used to delete a secret key.
4014
4015     * "-kv" now works as expected. Options "--list-{keys,sigs]"
4016       and "--check-sigs" are now working.
4017
4018     * New options "--verify" and "--decrypt" to better support integration
4019       into MUAs (partly done for Mutt).
4020
4021     * New option "--with-colons" to make parsing of key lists easier.
4022
4023 Noteworthy changes in version 0.2.11 (1998-03-02)
4024 ------------------------------------
4025
4026     * GPG now asks for a recipient's name if option "-r" is not used.
4027
4028     * If there is no good trust path, the program asks whether to use
4029       the public keys anyway.
4030
4031     * "--delete-key" works for public keys. What semantics shall I use
4032       when there is a secret key too? Delete the secret key or leave him
4033       and auto-regenerate the public key, next time the secret key is used?
4034
4035 Noteworthy changes in version 0.2.10 (1998-02-27)
4036 ------------------------------------
4037
4038     * Code for the alpha is much faster (about 20 times); the data
4039       was misaligned and the kernel traps this, so nearly all time
4040       was used by system to trap the misalignments and to write
4041       syslog messages. Shame on me and thanks to Ralph for
4042       pointing me at this while drinking some beer yesterday.
4043
4044     * Changed some configure options and add an option
4045       --disable-m-guard to remove the memory checking code
4046       and to compile everything with optimization on.
4047
4048     * New environment variable GNUPGHOME, which can be used to set
4049       another homedir than ~/.gnupg.  Changed default homedir for
4050       Windoze version to c:/gnupg.
4051
4052     * Fixed detached signatures; detached PGP signatures caused a SEGV.
4053
4054     * The Windoze version works (as usual w/o a strong RNG).
4055
4056
4057 Noteworthy changes in version 0.2.9 (1998-02-26)
4058 -----------------------------------
4059
4060     * Fixed FreeBSD bug.
4061
4062     * Added a simple man page.
4063
4064     * Switched to automake1.2f and a newer gettext.
4065
4066 Noteworthy changes in version 0.2.8 (1998-02-24)
4067 -----------------------------------
4068
4069     * Changed the name to GNUPG, the binaries are called gpg and gpgm.
4070       You must rename rename the directory "~/.g10" to ~/.gnupg/, rename
4071       {pub,sec}ring.g10 to {pub,sec}ring.gpg, trustdb.g10 to trustdb.gpg
4072       and g10.sig to gnupg.sig.
4073
4074     * New or changed passphrases are now salted.
4075
4076
4077 Noteworthy changes in version 0.2.7 (1998-02-18)
4078 -----------------------------------
4079
4080     * New command "gen-revoke" to create a key revocation certificate.
4081
4082     * New option "homedir" to set the homedir (which defaults to "~/.g10").
4083       This directory is created if it does not exists (only the last
4084       part of the name and not the complete hierarchy)
4085
4086     * Command "import" works. (Try: "finger gcrypt@ftp.guug.de|g10 --import")
4087
4088     * New commands "dearmor/enarmor" for g10maint.  These are mainly
4089       used for internal test purposes.
4090
4091     * Option --version now conforming to the GNU standards and lists
4092       the available ciphers, message digests and public key algorithms.
4093
4094     * Assembler code for m68k (not tested).
4095
4096     * "make check" works.
4097
4098 Noteworthy changes in version 0.2.6 (1998-02-13)
4099 -----------------------------------
4100
4101     * Option "--export" works.
4102
4103
4104 Noteworthy changes in version 0.2.5 (1998-02-12)
4105 -----------------------------------
4106
4107     * Added zlib for systems which don't have it.
4108       Use "./configure --with-zlib" to link with the static version.
4109
4110     * Generalized some more functions and rewrote the encoding of
4111       message digests into MPIs.
4112
4113     * Enhanced the checkit script
4114
4115
4116 Noteworthy changes in version 0.2.4 (1998-02-11)
4117 -----------------------------------
4118
4119     * nearly doubled the speed of the ElGamal signature verification.
4120
4121     * backup copies of keyrings are created.
4122
4123     * assembler stuff for Pentium; gives about 15% better performance.
4124
4125     * fixed a lot of bugs.
4126
4127
4128 Noteworthy changes in version 0.2.3 (1998-02-09)
4129 -----------------------------------
4130
4131     * Found a bug in the calculation of ELG fingerprints. This is now
4132       fixed, but all existing fingerprints and keyids for ELG keys
4133       are not any more valid.
4134
4135     * armor should now work; including clear signed text.
4136
4137     * moved some options to the new program g10maint
4138
4139     * It's now 64 bit clean and runs fine on an alpha--linux.
4140
4141     * Key generation is much faster now.  I fixed this by using not
4142       so strong random number for the primes (this was a bug because the
4143       ElGamal primes are public parameters and it does not make sense
4144       to generate them from strong random).  The real secret is the x value
4145       which is still generated from strong (okay: /dev/random) random bits.
4146
4147     * added option "--status-fd": see g10/OPTIONS
4148
4149     * We have secure memory on systems which support mlock().
4150       It is not complete yet, because we do not have signal handler
4151       which does a cleanup in very case.
4152       We should also check the ulimit for the user in the case
4153       that the admin does not have set a limit on locked pages.
4154
4155     * started with internationalization support.
4156
4157     * The logic to handle the web of trust is now implemented. It is
4158       has some bugs; but I'm going to change the algorithm anyway.
4159       It works by calculating the trustlevel on the fly.  It may ask
4160       you to provide trust parameters if the calculated trust probability
4161       is too low.  I will write a paper which discusses this new approach.
4162
4163     * a couple of changes to the configure script.
4164
4165     * New option "--quick-random" which uses a much quicker random
4166       number generator.  Keys generated while this option is in effect
4167       are flags with "INSECURE!" in the user-id.  This is a development
4168       only option.
4169
4170     * Read support for new version packets (OpenPGP).
4171
4172     * Comment packets are now of correct OpenPGP type 16. Old comment
4173       packets written by G10 are detected because they always start with
4174       a hash which is an invalid version byte.
4175
4176     * The string "(INSECURE!)" is appended to a new user-id if this
4177       is generated on a system without a good random number generator.
4178
4179
4180 Version 0.2.2 (1998-02-09)
4181 Version 0.2.1 (1998-01-28)
4182 Version 0.2.0 (1998-01-25)
4183 Version 0.1.3 (1998-01-12)
4184 Version 0.1.2 (1998-01-07)
4185 Version 0.1.1 (1998-01-07)
4186 Version 0.1.0 (1998-01-05)
4187 Version 0.0.0 (1997-12-20)
4188
4189
4190  Copyright (C) 1998-2017 Free Software Foundation, Inc.
4191  Copyright (C) 1997-2017 Werner Koch
4192
4193  This file is free software; as a special exception the author gives
4194  unlimited permission to copy and/or distribute it, with or without
4195  modifications, as long as this notice is preserved.
4196
4197  This file is distributed in the hope that it will be useful, but
4198  WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
4199  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.