agent: Improve support for externally cached passwords.
[gnupg.git] / NEWS
1 Noteworthy changes in version 2.1.4 (unreleased)
2 ------------------------------------------------
3
4
5 Noteworthy changes in version 2.1.3 (2015-04-11)
6 ------------------------------------------------
7
8  * gpg: LDAP keyservers are now supported by 2.1.
9
10  * gpg: New option --with-icao-spelling.
11
12  * gpg: New option --print-pka-records.  Changed the PKA method to use
13    CERT records and hashed names.
14
15  * gpg: New command --list-gcrypt-config.  New parameter "curve"
16    for --list-config.
17
18  * gpg: Print a NEWSIG status line like gpgsm always did.
19
20  * gpg: Print MPI values with --list-packets and --verbose.
21
22  * gpg: Write correct MPI lengths with ECC keys.
23
24  * gpg: Skip legacy PGP-2 keys while searching.
25
26  * gpg: Improved searching for mail addresses when using a keybox.
27
28  * gpgsm: Changed default algos to AES-128 and SHA-256.
29
30  * gpgtar: Fixed extracting files with sizes of a multiple of 512.
31
32  * dirmngr: Fixed SNI handling for hkps pools.
33
34  * dirmngr: extra-certs and trusted-certs are now always loaded from
35    the sysconfig dir instead of the homedir.
36
37  * Fixed possible problems due to compiler optimization, two minor
38    regressions, and other bugs.
39
40
41 Noteworthy changes in version 2.1.2 (2015-02-11)
42 ------------------------------------------------
43
44  * gpg: The parameter 'Passphrase' for batch key generation works
45    again.
46
47  * gpg: Using a passphrase option in batch mode now has the expected
48    effect on --quick-gen-key.
49
50  * gpg: Improved reporting of unsupported PGP-2 keys.
51
52  * gpg: Added support for algo names when generating keys using
53    --command-fd.
54
55  * gpg: Fixed DoS based on bogus and overlong key packets.
56
57  * agent: When setting --default-cache-ttl the value
58    for --max-cache-ttl is adjusted to be not lower than the former.
59
60  * agent: Fixed problems with the new --extra-socket.
61
62  * agent: Made --allow-loopback-pinentry changeable with gpgconf.
63
64  * agent: Fixed importing of unprotected openpgp keys.
65
66  * agent: Now tries to use a fallback pinentry if the standard
67    pinentry is not installed.
68
69  * scd: Added support for ECDH.
70
71  * Fixed several bugs related to bogus keyrings and improved some
72    other code.
73
74
75 Noteworthy changes in version 2.1.1 (2014-12-16)
76 ------------------------------------------------
77
78  * gpg: Detect faulty use of --verify on detached signatures.
79
80  * gpg: New import option "keep-ownertrust".
81
82  * gpg: New sub-command "factory-reset" for --card-edit.
83
84  * gpg: A stub key for smartcards is now created by --card-status.
85
86  * gpg: Fixed regression in --refresh-keys.
87
88  * gpg: Fixed regresion in %g and %p codes for --sig-notation.
89
90  * gpg: Fixed best matching hash algo detection for ECDSA and EdDSA.
91
92  * gpg: Improved perceived speed of secret key listisngs.
93
94  * gpg: Print number of skipped PGP-2 keys on import.
95
96  * gpg: Removed the option aliases --throw-keyid and --notation-data;
97    use --throw-keyids and --set-notation instead.
98
99  * gpg: New import option "keep-ownertrust".
100
101  * gpg: Skip too large keys during import.
102
103  * gpg,gpgsm: New option --no-autostart to avoid starting gpg-agent or
104    dirmngr.
105
106  * gpg-agent: New option --extra-socket to provide a restricted
107    command set for use with remote clients.
108
109  * gpgconf --kill does not anymore start a service only to kill it.
110
111  * gpg-pconnect-agent: Add convenience option --uiserver.
112
113  * Fixed keyserver access for Windows.
114
115  * Fixed build problems on Mac OS X
116
117  * The Windows installer does now install development files
118
119  * More translations (but most of them are not complete).
120
121  * To support remotely mounted home directories, the IPC sockets may
122    now be redirected.  This feature requires Libassuan 2.2.0.
123
124  * Improved portability and the usual bunch of bug fixes.
125
126
127 Noteworthy changes in version 2.1.0 (2014-11-06)
128 ------------------------------------------------
129
130  This release introduces a lot of changes.  Most of them are internal
131  and thus not user visible.  However, some long standing behavior has
132  slightly changed and it is strongly suggested that an existing
133  "~/.gnupg" directory is backed up before this version is used.
134
135  A verbose description of the major new features and changes can be
136  found in the file doc/whats-new-in-2.1.txt.
137
138  * gpg: All support for v3 (PGP 2) keys has been dropped.  All
139    signatures are now created as v4 signatures.  v3 keys will be
140    removed from the keyring.
141
142  * gpg: With pinentry-0.9.0 the passphrase "enter again" prompt shows
143    up in the same window as the "new passphrase" prompt.
144
145  * gpg: Allow importing keys with duplicated long key ids.
146
147  * dirmngr: May now be build without support for LDAP.
148
149  * For a complete list of changes see the lists of changes for the
150    2.1.0 beta versions below.  Note that all relevant fixes from
151    versions 2.0.14 to 2.0.26 are also applied to this version.
152
153
154  [Noteworthy changes in version 2.1.0-beta864 (2014-10-03)]
155
156  * gpg: Removed the GPG_AGENT_INFO related code.  GnuPG does now
157    always use a fixed socket name in its home directory.
158
159  * gpg: Renamed --gen-key to --full-gen-key and re-added a --gen-key
160    command with less choices.
161
162  * gpg: Use SHA-256 for all signature types also on RSA keys.
163
164  * gpg: Default keyring is now created with a .kbx suffix.
165
166  * gpg: Add a shortcut to the key capabilies menu (e.g. "=e" sets the
167    encryption capabilities).
168
169  * gpg: Fixed obsolete options parsing.
170
171  * Further improvements for the alternative speedo build system.
172
173
174  [Noteworthy changes in version 2.1.0-beta834 (2014-09-18)]
175
176  * gpg: Improved passphrase caching.
177
178  * gpg: Switched to algorithm number 22 for EdDSA.
179
180  * gpg: Removed CAST5 from the default preferences.
181
182  * gpg: Order SHA-1 last in the hash preferences.
183
184  * gpg: Changed default cipher for --symmetric to AES-128.
185
186  * gpg: Fixed export of ECC keys and import of EdDSA keys.
187
188  * dirmngr: Fixed the KS_FETCH command.
189
190  * The speedo build system now downloads related packages and works
191    for non-Windows platforms.
192
193
194  [Noteworthy changes in version 2.1.0-beta783 (2014-08-14)]
195
196  * gpg: Add command --quick-gen-key.
197
198  * gpg: Make --quick-sign-key promote local key signatures.
199
200  * gpg: Added "show-usage" sub-option to --list-options.
201
202  * gpg: Screen keyserver responses to avoid importing unwanted keys
203    from rogue servers.
204
205  * gpg: Removed the option --pgp2 and --rfc1991 and the ability to
206    create PGP-2 compatible messages.
207
208  * gpg: Removed options --compress-keys and --compress-sigs.
209
210  * gpg: Cap attribute packets at 16MB.
211
212  * gpg: Improved output of --list-packets.
213
214  * gpg: Make with-colons output of --search-keys work again.
215
216  * gpgsm: Auto-create the ".gnupg" directory like gpg does.
217
218  * agent: Fold new passphrase warning prompts into one.
219
220  * scdaemon: Add support for the Smartcard-HSM card.
221
222  * scdaemon: Remove the use of the pcsc-wrapper.
223
224
225  [Noteworthy changes in version 2.1.0-beta751 (2014-07-03)]
226
227  * gpg: Create revocation certificates during key generation.
228
229  * gpg: Create exported secret keys and revocation certifciates with
230    mode 0700
231
232  * gpg: The validity of user ids is now shown by default.  To revert
233    this add "list-options no-show-uid-validity" to gpg.conf.
234
235  * gpg: Make export of secret keys work again.
236
237  * gpg: The output of --list-packets does now print the offset of the
238    packet and information about the packet header.
239
240  * gpg: Avoid DoS due to garbled compressed data packets. [CVE-2014-4617]
241
242  * gpg: Print more specific reason codes with the INV_RECP status.
243
244  * gpg: Cap RSA and Elgamal keysize at 4096 bit also for unattended
245    key generation.
246
247  * scdaemon: Support reader Gemalto IDBridge CT30 and pinpad of SCT
248    cyberJack go.
249
250  * The speedo build system has been improved.  It is now also possible
251    to build a partly working installer for Windows.
252
253
254  [Noteworthy changes in version 2.1.0-beta442 (2014-06-05)]
255
256  * gpg: Changed the format of key listings.  To revert to the old
257    format the option --legacy-list-mode is available.
258
259  * gpg: Add experimental signature support using curve Ed25519 and
260    with a patched Libgcrypt also encryption support with Curve25519.
261    [Update: this encryption support has been removed from 2.1.0 until
262    we have agreed on a suitable format.]
263
264  * gpg: Allow use of Brainpool curves.
265
266  * gpg: Accepts a space separated fingerprint as user ID.  This
267    allows to copy and paste the fingerprint from the key listing.
268
269  * gpg: The hash algorithm is now printed for signature records in key
270    listings.
271
272  * gpg: Reject signatures made using the MD5 hash algorithm unless the
273    new option --allow-weak-digest-algos or --pgp2 are given.
274
275  * gpg: Print a warning if the Gnome-Keyring-Daemon intercepts the
276    communication with the gpg-agent.
277
278  * gpg: New option --pinentry-mode.
279
280  * gpg: Fixed decryption using an OpenPGP card.
281
282  * gpg: Fixed bug with deeply nested compressed packets.
283
284  * gpg: Only the major version number is by default included in the
285    armored output.
286
287  * gpg: Do not create a trustdb file if --trust-model=always is used.
288
289  * gpg: Protect against rogue keyservers sending secret keys.
290
291  * gpg: The format of the fallback key listing ("gpg KEYFILE") is now
292    more aligned to the regular key listing ("gpg -k").
293
294  * gpg: The option--show-session-key prints its output now before the
295    decryption of the bulk message starts.
296
297  * gpg: New %U expando for the photo viewer.
298
299  * gpg,gpgsm: New option --with-secret.
300
301  * gpgsm: By default the users are now asked via the Pinentry whether
302    they trust an X.509 root key.  To prohibit interactive marking of
303    such keys, the new option --no-allow-mark-trusted may be used.
304
305  * gpgsm: New commands to export a secret RSA key in PKCS#1 or PKCS#8
306    format.
307
308  * gpgsm: Improved handling of re-issued CA certificates.
309
310  * agent: The included ssh agent does now support ECDSA keys.
311
312  * agent: New option --enable-putty-support to allow gpg-agent on
313    Windows to act as a Pageant replacement with full smartcard support.
314
315  * scdaemon: New option --enable-pinpad-varlen.
316
317  * scdaemon: Various fixes for pinpad equipped card readers.
318
319  * scdaemon: Rename option --disable-pinpad (was --disable-keypad).
320
321  * scdaemon: Better support fo CCID readers.  Now, internal CCID
322    driver supports readers with no auto configuration feature.
323
324  * dirmngr: Removed support for the original HKP keyserver which is
325    not anymore used by any site.
326
327  * dirmngr: Improved support for keyserver pools.
328
329  * tools: New option --dirmngr for gpg-connect-agent.
330
331  * The GNU Pth library has been replaced by the new nPth library.
332
333  * Support installation as portable application under Windows.
334
335  * All kind of other improvements - see the git log.
336
337
338  [Noteworthy changes in version 2.1.0beta3 (2011-12-20)]
339
340  * gpg: Fixed regression in the secret key export function.
341
342  * gpg: Allow generation of card keys up to 4096 bit.
343
344  * gpgsm: Preliminary support for the validation model "steed".
345
346  * gpgsm: Improved certificate creation.
347
348  * agent: Support the SSH confirm flag.
349
350  * agent: New option to select a passphrase mode.  The loopback
351    mode may be used to bypass Pinentry.
352
353  * agent: The Assuan commands KILLAGENT and KILLSCD are working again.
354
355  * scdaemon: Does not anymore block after changing a card (regression
356    fix).
357
358  * tools: gpg-connect-agent does now proberly display the help output
359    for "SCD HELP" commands.
360
361
362  [Noteworthy changes in version 2.1.0beta2 (2011-03-08)]
363
364  * gpg: ECC support as described by draft-jivsov-openpgp-ecc-06.txt
365    [Update: now known as RFC-6637].
366
367  * gpg: Print "AES128" instead of "AES".  This change introduces a
368    little incompatibility for tools using "gpg --list-config".  We
369    hope that these tools are written robust enough to accept this new
370    algorithm name as well.
371
372  * gpgsm: New feature to create certificates from a parameter file.
373    Add prompt to the --gen-key UI to create self-signed certificates.
374
375  * agent: TMPDIR is now also honored when creating a socket using
376    the --no-standard-socket option and with symcryptrun's temp files.
377
378  * scdaemon: Fixed a bug where scdaemon sends a signal to gpg-agent
379    running in non-daemon mode.
380
381  * dirmngr: Fixed CRL loading under W32 (bug#1010).
382
383  * Dirmngr has taken over the function of the keyserver helpers.  Thus
384    we now have a specified direct interface to keyservers via Dirmngr.
385    LDAP, DNS and mail backends are not yet implemented.
386
387  * Fixed TTY management for pinentries and session variable update
388    problem.
389
390
391  [Noteworthy changes in version 2.1.0beta1 (2010-10-26)]
392
393  * gpg: secring.gpg is not anymore used but all secret key operations
394    are delegated to gpg-agent.  The import command moves secret keys
395    to the agent.
396
397  * gpg: The OpenPGP import command is now able to merge secret keys.
398
399  * gpg: Encrypted OpenPGP messages with trailing data (e.g. other
400    OpenPGP packets) are now correctly parsed.
401
402  * gpg: Given sufficient permissions Dirmngr is started automagically.
403
404  * gpg: Fixed output of "gpgconf --check-options".
405
406  * gpg: Removed options --export-options(export-secret-subkey-passwd)
407    and --simple-sk-checksum.
408
409  * gpg: New options --try-secret-key.
410
411  * gpg: Support DNS lookups for SRV, PKA and CERT on W32.
412
413  * gpgsm: The --audit-log feature is now more complete.
414
415  * gpgsm: The default for --include-cert is now to include all
416    certificates in the chain except for the root certificate.
417
418  * gpgsm: New option --ignore-cert-extension.
419
420  * g13: The G13 tool for disk encryption key management has been
421    added.
422
423  * agent: If the agent's --use-standard-socket option is active, all
424    tools try to start and daemonize the agent on the fly.  In the past
425    this was only supported on W32; on non-W32 systems the new
426    configure option --disable-standard-socket may now be used to
427    disable this new default.
428
429  * agent: New and changed passphrases are now created with an
430    iteration count requiring about 100ms of CPU work.
431
432  * dirmngr: Dirmngr is now a part of this package.  It is now also
433    expected to run as a system service and the configuration
434    directories are changed to the GnuPG name space. [Update: 2.1.0
435    starts dirmngr on demand as user daemon.]
436
437  * Support for Windows CE. [Update: This has not been tested for the
438    2.1.0 release]
439
440  * Numerical values may now be used as an alternative to the
441    debug-level keywords.
442
443
444 Noteworthy changes in version 2.0.13 (2009-09-04)
445 -------------------------------------------------
446
447  * GPG now generates 2048 bit RSA keys by default.  The default hash
448    algorithm preferences has changed to prefer SHA-256 over SHA-1.
449    2048 bit DSA keys are now generated to use a 256 bit hash algorithm
450
451  * The envvars XMODIFIERS, GTK_IM_MODULE and QT_IM_MODULE are now
452    passed to the Pinentry to make SCIM work.
453
454  * The GPGSM command --gen-key features a --batch mode and implements
455    all features of gpgsm-gencert.sh in standard mode.
456
457  * New option --re-import for GPGSM's IMPORT server command.
458
459  * Enhanced writing of existing keys to OpenPGP v2 cards.
460
461  * Add hack to the internal CCID driver to allow the use of some
462    Omnikey based card readers with 2048 bit keys.
463
464  * GPG now repeatly asks the user to insert the requested OpenPGP
465    card.  This can be disabled with --limit-card-insert-tries=1.
466
467  * Minor bug fixes.
468
469
470 Noteworthy changes in version 2.0.12 (2009-06-17)
471 -------------------------------------------------
472
473  * GPGSM now always lists ephemeral certificates if specified by
474    fingerprint or keygrip.
475
476  * New command "KEYINFO" for GPG_AGENT.  GPGSM now also returns
477    information about smartcards.
478
479  * Made sure not to leak file descriptors if running gpg-agent with a
480    command.  Restore the signal mask to solve a problem in Mono.
481
482  * Changed order of the confirmation questions for root certificates
483    and store negative answers in trustlist.txt.
484
485  * Better synchronization of concurrent smartcard sessions.
486
487  * Support 2048 bit OpenPGP cards.
488
489  * Support Telesec Netkey 3 cards.
490
491  * The gpg-protect-tool now uses gpg-agent via libassuan.  Under
492    Windows the Pinentry will now be put into the foreground.
493
494  * Changed code to avoid a possible Mac OS X system freeze.
495
496
497 Noteworthy changes in version 2.0.11 (2009-03-03)
498 -------------------------------------------------
499
500  * Fixed a problem in SCDAEMON which caused unexpected card resets.
501
502  * SCDAEMON is now aware of the Geldkarte.
503
504  * The SCDAEMON option --allow-admin is now used by default.
505
506  * GPGCONF now restarts SCdaemon if necessary.
507
508  * The default cipher algorithm in GPGSM is now again 3DES.  This is
509    due to interoperability problems with Outlook 2003 which still
510    can't cope with AES.
511
512
513 Noteworthy changes in version 2.0.10 (2009-01-12)
514 -------------------------------------------------
515
516  * [gpg] New keyserver helper gpg2keys_kdns as generic DNS CERT
517    lookup.  Run with --help for a short description.  Requires the
518    ADNS library.
519
520  * [gpg] New mechanisms "local" and "nodefault" for --auto-key-locate.
521    Fixed a few problems with this option.
522
523  * [gpg] New command --locate-keys.
524
525  * [gpg] New options --with-sig-list and --with-sig-check.
526
527  * [gpg] The option "-sat" is no longer an alias for --clearsign.
528
529  * [gpg] The option --fixed-list-mode is now implicitly used and obsolete.
530
531  * [gpg] New control statement %ask-passphrase for the unattended key
532    generation.
533
534  * [gpg] The algorithm to compute the SIG_ID status has been changed.
535
536  * [gpgsm] Now uses AES by default.
537
538  * [gpgsm] Made --output option work with --export-secret-key-p12.
539
540  * [gpg-agent] Terminate process if the own listening socket is not
541    anymore served by ourself.
542
543  * [scdaemon] Made it more robust on W32.
544
545  * [gpg-connect-agent] Accept commands given as command line arguments.
546
547  * [w32] Initialized the socket subsystem for all keyserver helpers.
548
549  * [w32] The sysconf directory has been moved from a subdirectory of
550    the installation directory to %CSIDL_COMMON_APPDATA%/GNU/etc/gnupg.
551
552  * [w32] The gnupg2.nls directory is not anymore used.  The standard
553    locale directory is now used.
554
555  * [w32] Fixed a race condition between gpg and gpgsm in the use of
556    temporary file names.
557
558  * The gpg-preset-passphrase mechanism works again.  An arbitrary
559    string may now be used for a custom cache ID.
560
561  * Admin PINs are cached again (bug in 2.0.9).
562
563  * Support for version 2 OpenPGP cards.
564
565  * Libgcrypt 1.4 is now required.
566
567
568 Noteworthy changes in version 2.0.9 (2008-03-26)
569 ------------------------------------------------
570
571  * Gpgsm always tries to locate missing certificates from a running
572    Dirmngr's cache.
573
574  * Tweaks for Windows.
575
576  * The Admin PIN for OpenPGP cards may now be entered with the pinpad.
577
578  * Improved certificate chain construction.
579
580  * Extended the PKITS framework.
581
582  * Fixed a bug in the ambigious name detection.
583
584  * Fixed possible memory corruption while importing OpenPGP keys (bug
585    introduced with 2.0.8). [CVE-2008-1530]
586
587  * Minor bug fixes.
588
589
590 Noteworthy changes in version 2.0.8 (2007-12-20)
591 ------------------------------------------------
592
593  * Enhanced gpg-connect-agent with a small scripting language.
594
595  * New option --list-config for gpgconf.
596
597  * Fixed a crash in gpgconf.
598
599  * Gpg-agent now supports the passphrase quality bar of the latest
600    Pinentry.
601
602  * The envvars XAUTHORITY and PINENTRY_USER_DATA are now passed to the
603    Pinentry.
604
605  * Fixed the auto creation of the key stub for smartcards.
606
607  * Fixed a rare bug in decryption using the OpenPGP card.
608
609  * Creating DSA2 keys is now possible.
610
611  * New option --extra-digest-algo for gpgsm to allow verification of
612    broken signatures.
613
614  * Allow encryption with legacy Elgamal sign+encrypt keys with option
615    --rfc2440.
616
617  * Windows is now a supported platform.
618
619  * Made sure that under Windows the file permissions of the socket are
620    taken into account.  This required a change of our socket emulation
621    code and changed the IPC protocol under Windows.
622
623
624 Noteworthy changes in version 2.0.7 (2007-09-10)
625 ------------------------------------------------
626
627  * Fixed encryption problem if duplicate certificates are in the
628    keybox.
629
630  * Made it work on Windows Vista.  Note that the entire Windows port
631    is still considered Beta.
632
633  * Add new options min-passphrase-nonalpha, check-passphrase-pattern,
634    enforce-passphrase-constraints and max-passphrase-days to
635    gpg-agent.
636
637  * Add command --check-components to gpgconf.  Gpgconf now uses the
638    installed versions of the programs and does not anymore search via
639    PATH for them.
640
641
642 Noteworthy changes in version 2.0.6 (2007-08-16)
643 ------------------------------------------------
644
645  * GPGSM does now grok --default-key.
646
647  * GPGCONF is now aware of --default-key and --encrypt-to.
648
649  * GPGSM does again correctly print the serial number as well the the
650    various keyids.  This was broken since 2.0.4.
651
652  * New option --validation-model and support for the chain-model.
653
654  * Improved Windows support.
655
656
657 Noteworthy changes in version 2.0.5 (2007-07-05)
658 ------------------------------------------------
659
660  * Switched license to GPLv3.
661
662  * Basic support for Windows.  Run "./autogen.sh --build-w32" to build
663    it.  As usual the mingw cross compiling toolchain is required.
664
665  * Fixed bug when using the --p12-charset without --armor.
666
667  * The command --gen-key may now be used instead of the
668    gpgsm-gencert.sh script.
669
670  * Changed key generation to reveal less information about the
671    machine.  Bug fixes for gpg2's card key generation.
672
673
674 Noteworthy changes in version 2.0.4 (2007-05-09)
675 ------------------------------------------------
676
677  * The server mode key listing commands are now also working for
678    systems without the funopen/fopencookie API.
679
680  * PKCS#12 import now tries several encodings in case the passphrase
681    was not utf-8 encoded.  New option --p12-charset for gpgsm.
682
683  * Improved the libgcrypt logging support in all modules.
684
685
686 Noteworthy changes in version 2.0.3 (2007-03-08)
687 ------------------------------------------------
688
689  * By default, do not allow processing multiple plaintexts in a single
690    stream.  Many programs that called GnuPG were assuming that GnuPG
691    did not permit this, and were thus not using the plaintext boundary
692    status tags that GnuPG provides.  This change makes GnuPG reject
693    such messages by default which makes those programs safe again.
694    --allow-multiple-messages returns to the old behavior. [CVE-2007-1263].
695
696  * New --verify-option show-primary-uid-only.
697
698  * gpgconf may now reads a global configuration file to select which
699    options are changeable by a frontend.  The new applygnupgdefaults
700    tool may be used by an admin to set default options for all users.
701
702  * The PIN pad of the Cherry XX44 keyboard is now supported.  The
703    DINSIG and the NKS applications are now also aware of PIN pads.
704
705
706 Noteworthy changes in version 2.0.2 (2007-01-31)
707 ------------------------------------------------
708
709  * Fixed a serious and exploitable bug in processing encrypted
710    packages. [CVE-2006-6235].
711
712  * Added --passphrase-repeat to set the number of times GPG will
713    prompt for a new passphrase to be repeated.  This is useful to help
714    memorize a new passphrase.  The default is 1 repetition.
715
716  * Using a PIN pad does now also work for the signing key.
717
718  * A warning is displayed by gpg-agent if a new passphrase is too
719    short.  New option --min-passphrase-len defaults to 8.
720
721  * The status code BEGIN_SIGNING now shows the used hash algorithms.
722
723
724 Noteworthy changes in version 2.0.1 (2006-11-28)
725 ------------------------------------------------
726
727  * Experimental support for the PIN pads of the SPR 532 and the Kaan
728    Advanced card readers.  Add "disable-keypad" scdaemon.conf if you
729    don't want it.  Does currently only work for the OpenPGP card and
730    its authentication and decrypt keys.
731
732  * Fixed build problems on some some platforms and crashes on amd64.
733
734  * Fixed a buffer overflow in gpg2. [bug#728,CVE-2006-6169]
735
736
737 Noteworthy changes in version 2.0.0 (2006-11-11)
738 ------------------------------------------------
739
740  * First stable version of a GnuPG integrating OpenPGP and S/MIME.
741
742
743 Noteworthy changes in version 1.9.95 (2006-11-06)
744 -------------------------------------------------
745
746  * Minor bug fixes.
747
748
749 Noteworthy changes in version 1.9.94 (2006-10-24)
750 -------------------------------------------------
751
752  * Keys for gpgsm may now be specified using a keygrip.  A keygrip is
753    indicated by a prefixing it with an ampersand.
754
755  * gpgconf now supports switching the CMS cipher algo (e.g. to AES).
756
757  * New command --gpgconf-test for all major tools. This may be used to
758    check whether the configuration file is sane.
759
760
761 Noteworthy changes in version 1.9.93 (2006-10-18)
762 -------------------------------------------------
763
764  * In --with-validation mode gpgsm will now also ask whether a root
765    certificate should be trusted.
766
767  * Link to Pth only if really necessary.
768
769  * Fixed a pubring corruption bug in gpg2 occurring when importing
770    signatures or keys with insane lengths.
771
772  * Fixed v3 keyID calculation bug in gpg2.
773
774  * More tweaks for certificates without extensions.
775
776
777 Noteworthy changes in version 1.9.92 (2006-10-11)
778 -------------------------------------------------
779
780  * Bug fixes.
781
782
783 Noteworthy changes in version 1.9.91 (2006-10-04)
784 -------------------------------------------------
785
786  * New "relax" flag for trustlist.txt to allow root CA certificates
787    without BasicContraints.
788
789  * [gpg2] Removed the -k PGP 2 compatibility hack.  -k is now an
790    alias for --list-keys.
791
792  * [gpg2] Print a warning if "-sat" is used instead of "--clearsign".
793
794
795 Noteworthy changes in version 1.9.90 (2006-09-25)
796 -------------------------------------------------
797
798  * Made readline work for gpg.
799
800  * Cleanups und minor bug fixes.
801
802  * Included translations from gnupg 1.4.5.
803
804
805 Noteworthy changes in version 1.9.23 (2006-09-18)
806 -------------------------------------------------
807
808  * Regular man pages for most tools are now build directly from the
809    Texinfo source.
810
811  * The gpg code from 1.4.5 has been fully merged into this release.
812    The configure option --enable-gpg is still required to build this
813    gpg part.  For production use of OpenPGP the gpg version 1.4.5 is
814    still recommended.  Note, that gpg will be installed under the name
815    gpg2 to allow coexisting with an 1.4.x gpg.
816
817  * API change in gpg-agent's pkdecrypt command.  Thus an older gpgsm
818    may not be used with the current gpg-agent.
819
820  * The scdaemon will now call a script on reader status changes.
821
822  * gpgsm now allows file descriptor passing for "INPUT", "OUTPUT" and
823    "MESSAGE".
824
825  * The gpgsm server may now output a key listing to the output file
826    handle. This needs to be enabled using "OPTION list-to-output=1".
827
828  * The --output option of gpgsm has now an effect on list-keys.
829
830  * New gpgsm commands --dump-chain and list-chain.
831
832  * gpg-connect-agent has new options to utilize descriptor passing.
833
834  * A global trustlist may now be used.  See doc/examples/trustlist.txt.
835
836  * When creating a new pubring.kbx keybox common certificates are
837    imported.
838
839
840 Noteworthy changes in version 1.9.22 (2006-07-27)
841 -------------------------------------------------
842
843  * Enhanced pkcs#12 support to allow import from simple keyBags.
844
845  * Exporting to pkcs#12 now create bag attributes so that Mozilla is
846    able to import the files.
847
848  * Fixed uploading of certain keys to the smart card.
849
850
851 Noteworthy changes in version 1.9.21 (2006-06-20)
852 -------------------------------------------------
853
854  * New command APDU for scdaemon to allow using it for general card
855    access.  Might be used through gpg-connect-agent by using the SCD
856    prefix command.
857
858  * Support for the CardMan 4040 PCMCIA reader (Linux 2.6.15 required).
859
860  * Scdaemon does not anymore reset cards at the end of a connection.
861
862  * Kludge to allow use of Bundesnetzagentur issued X.509 certificates.
863
864  * Added --hash=xxx option to scdaemon's PKSIGN command.
865
866  * Pkcs#12 files are now created with a MAC.  This is for better
867    interoperability.
868
869  * Collected bug fixes and minor other changes.
870
871
872 Noteworthy changes in version 1.9.20 (2005-12-20)
873 -------------------------------------------------
874
875  * Importing pkcs#12 files created be recent versions of Mozilla works
876    again.
877
878  * Basic support for qualified signatures.
879
880  * New debug tool gpgparsemail.
881
882
883 Noteworthy changes in version 1.9.19 (2005-09-12)
884 -------------------------------------------------
885
886  * The Belgian eID card is now supported for signatures and ssh.
887    Other pkcs#15 cards should work as well.
888
889  * Fixed bug in --export-secret-key-p12 so that certificates are again
890    included.
891
892
893 Noteworthy changes in version 1.9.18 (2005-08-01)
894 -------------------------------------------------
895
896  * [gpgsm] Now allows for more than one email address as well as URIs
897    and dnsNames in certificate request generation.  A keygrip may be
898    given to create a request from an existing key.
899
900  * A couple of minor bug fixes.
901
902
903 Noteworthy changes in version 1.9.17 (2005-06-20)
904 -------------------------------------------------
905
906  * gpg-connect-agent has now features to handle Assuan INQUIRE
907    commands.
908
909  * Internal changes for OpenPGP cards. New Assuan command WRITEKEY.
910
911  * GNU Pth is now a hard requirement.
912
913  * [scdaemon] Support for OpenSC has been removed.  Instead a new and
914    straightforward pkcs#15 modules has been written.  As of now it
915    does allows only signing using TCOS cards but we are going to
916    enhance it to match all the old capabilities.
917
918  * [gpg-agent] New option --write-env-file and Assuan command
919    UPDATESTARTUPTTY.
920
921  * [gpg-agent] New option --default-cache-ttl-ssh to set the TTL for
922    SSH passphrase caching independent from the other passphrases.
923
924
925 Noteworthy changes in version 1.9.16 (2005-04-21)
926 -------------------------------------------------
927
928  * gpg-agent does now support the ssh-agent protocol and thus allows
929    to use the pinentry as well as the OpenPGP smartcard with ssh.
930
931  * New tool gpg-connect-agent as a general client for the gpg-agent.
932
933  * New tool symcryptrun as a wrapper for certain encryption tools.
934
935  * The gpg tool is not anymore build by default because those gpg
936    versions available in the gnupg 1.4 series are far more matured.
937
938
939 Noteworthy changes in version 1.9.15 (2005-01-13)
940 -------------------------------------------------
941
942  * Fixed passphrase caching bug.
943
944  * Better support for CCID readers; the reader from Cherry RS 6700 USB
945    does now work.
946
947
948 Noteworthy changes in version 1.9.14 (2004-12-22)
949 -------------------------------------------------
950
951  * [gpg-agent] New option --use-standard-socket to allow the use of a
952    fixed socket.  gpgsm falls back to this socket if GPG_AGENT_INFO
953    has not been set.
954
955  * Ported to MS Windows with some functional limitations.
956
957  * New tool gpg-preset-passphrase.
958
959
960 Noteworthy changes in version 1.9.13 (2004-12-03)
961 -------------------------------------------------
962
963  * [gpgsm] New option --prefer-system-dirmngr.
964
965  * Minor cleanups and debugging aids.
966
967
968 Noteworthy changes in version 1.9.12 (2004-10-22)
969 -------------------------------------------------
970
971  * [scdaemon] Partly rewrote the PC/SC code.
972
973  * Removed the sc-investigate tool.  It is now in a separate package
974    available at ftp://ftp.g10code.com/g10code/gscutils/ .
975
976  * [gpg-agent] Fixed logging problem.
977
978
979 Noteworthy changes in version 1.9.11 (2004-10-01)
980 -------------------------------------------------
981
982  * When using --import along with --with-validation, the imported
983    certificates are validated and only imported if they are fully
984    valid.
985
986  * [gpg-agent] New option --max-cache-ttl.
987
988  * [gpg-agent] When used without --daemon or --server, gpg-agent now
989    check whether a agent is already running and usable.
990
991  * Fixed some i18n problems.
992
993
994 Noteworthy changes in version 1.9.10 (2004-07-22)
995 -------------------------------------------------
996
997  * Fixed a serious bug in the checking of trusted root certificates.
998
999  * New configure option --enable-agent-pnly allows to build and
1000    install just the agent.
1001
1002  * Fixed a problem with the log file handling.
1003
1004
1005 Noteworthy changes in version 1.9.9 (2004-06-08)
1006 ------------------------------------------------
1007
1008  * [gpg-agent] The new option --allow-mark-trusted is now required to
1009    allow gpg-agent to add a key to the trustlist.txt after user
1010    confirmation.
1011
1012  * Creating PKCS#10 requests does now honor the key usage.
1013
1014
1015 Noteworthy changes in version 1.9.8 (2004-04-29)
1016 ------------------------------------------------
1017
1018  * [scdaemon] Overhauled the internal CCID driver.
1019
1020  * [scdaemon] Status files named ~/.gnupg/reader_<n>.status are now
1021    written when using the internal CCID driver.
1022
1023  * [gpgsm] New commands --dump-{,secret,external}-keys to show a very
1024    detailed view of the certificates.
1025
1026  * The keybox gets now compressed after 3 hours and ephemeral
1027    stored certificates are deleted after about a day.
1028
1029  * [gpg] Usability fixes for --card-edit.  Note, that this has already
1030    been ported back to gnupg-1.3
1031
1032
1033 Noteworthy changes in version 1.9.7 (2004-04-06)
1034 ------------------------------------------------
1035
1036  * Instrumented the modules for gpgconf.
1037
1038  * Added support for DINSIG card applications.
1039
1040  * Include the smimeCapabilities attribute with signed messages.
1041
1042  * Now uses the gettext domain "gnupg2" to avoid conflicts with gnupg
1043    versions < 1.9.
1044
1045
1046 Noteworthy changes in version 1.9.6 (2004-03-06)
1047 ------------------------------------------------
1048
1049  * Code cleanups and bug fixes.
1050
1051
1052 Noteworthy changes in version 1.9.5 (2004-02-21)
1053 ------------------------------------------------
1054
1055  * gpg-protect-tool gets now installed into libexec as it ought to be.
1056    Cleaned up the build system to better comply with the coding
1057    standards.
1058
1059  * [gpgsm] The --import command is now able to autodetect pkcs#12
1060    files and import secret and private keys from this file format.
1061    A new command --export-secret-key-p12 is provided to allow
1062    exporting of secret keys in PKCS\#12 format.
1063
1064  * [gpgsm] The pinentry will now present a description of the key for
1065    whom the passphrase is requested.
1066
1067  * [gpgsm] New option --with-validation to check the validity of key
1068    while listing it.
1069
1070  * New option --debug-level={none,basic,advanced,expert,guru} to map
1071    the debug flags to sensitive levels on a per program base.
1072
1073
1074 Noteworthy changes in version 1.9.4 (2004-01-30)
1075 ------------------------------------------------
1076
1077  * Added support for the Telesec NKS 2.0 card application.
1078
1079  * Added simple tool addgnupghome to create .gnupg directories from
1080    /etc/skel/.gnupg.
1081
1082  * Various minor bug fixes and cleanups; mainly gpgsm and gpg-agent
1083    related.
1084
1085
1086 Noteworthy changes in version 1.9.3 (2003-12-23)
1087 ------------------------------------------------
1088
1089  * New gpgsm options --{enable,disable}-ocsp to validate keys using
1090    OCSP. This option requires a not yet released DirMngr version.
1091    Default is disabled.
1092
1093  * The --log-file option may now be used to print logs to a socket.
1094    Prefix the socket name with "socket://" to enable this.  This does
1095    not work on all systems and falls back to stderr if there is a
1096    problem with the socket.
1097
1098  * The options --encrypt-to and --no-encrypt-to now work the same in
1099    gpgsm as in gpg.  Note, they are also used in server mode.
1100
1101  * Duplicated recipients are now silently removed in gpgsm.
1102
1103
1104 Noteworthy changes in version 1.9.2 (2003-11-17)
1105 ------------------------------------------------
1106
1107  * On card key generation is no longer done using the --gen-key
1108    command but from the menu provided by the new --card-edit command.
1109
1110  * PINs are now properly cached and there are only 2 PINs visible.
1111    The 3rd PIN (CHV2) is internally syncronized with the regular PIN.
1112
1113  * All kind of other internal stuff.
1114
1115
1116 Noteworthy changes in version 1.9.1 (2003-09-06)
1117 ------------------------------------------------
1118
1119  * Support for OpenSC is back. scdaemon supports a --disable-opensc to
1120    disable OpenSC use at runtime, so that PC/SC or ct-API can still be
1121    used directly.
1122
1123  * Rudimentary support for the SCR335 smartcard reader using an
1124    internal driver.  Requires current libusb from CVS.
1125
1126  * Bug fixes.
1127
1128
1129 Noteworthy changes in version 1.9.0 (2003-08-05)
1130 ------------------------------------------------
1131
1132       ====== PLEASE SEE README-alpha =======
1133
1134  * gpg has been renamed to gpg2 and gpgv to gpgv2.  This is a
1135    temporary change to allow co-existing with stable gpg versions.
1136
1137  * ~/.gnupg/gpg.conf-1.9.0 is fist tried as config file before the
1138    usual gpg.conf.
1139
1140  * Removed the -k, -kv and -kvv commands.  -k is now an alias to
1141    --list-keys.  New command -K as alias for --list-secret-keys.
1142
1143  * Removed --run-as-shm-coprocess feature.
1144
1145  * gpg does now also use libgcrypt, libgpg-error is required.
1146
1147  * New gpgsm commands --call-dirmngr and --call-protect-tool.
1148
1149  * Changing a passphrase is now possible using "gpgsm --passwd"
1150
1151  * The content-type attribute is now recognized and created.
1152
1153  * The agent does now reread certain options on receiving a HUP.
1154
1155  * The pinentry is now forked for each request so that clients with
1156    different environments are supported.  When running in daemon mode
1157    and --keep-display is not used the DISPLAY variable is ignored.
1158
1159  * Merged stuff from the newpg branch and started this new
1160    development branch.
1161
1162
1163  Copyright 2002, 2003, 2004, 2005, 2006, 2007,
1164            2008, 2009, 2010, 2011  Free Software Foundation, Inc.
1165
1166  This file is free software; as a special exception the author gives
1167  unlimited permission to copy and/or distribute it, with or without
1168  modifications, as long as this notice is preserved.
1169
1170  This file is distributed in the hope that it will be useful, but
1171  WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
1172  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.