Move password repetition from gpg to gpg-agent.
[gnupg.git] / NEWS
1 Noteworthy changes in version 2.0.12
2 -------------------------------------------------
3
4  * GPGSM now always lists ephemeral certificates if specified by
5    fingerprint or keygrip.
6
7  * New command "KEYINFO" for GPG_AGENT.  GPGSM now also returns
8    information about smartcards.
9
10
11 Noteworthy changes in version 2.0.11 (2009-03-03)
12 -------------------------------------------------
13
14  * Fixed a problem in SCDAEMON which caused unexpected card resets.
15
16  * SCDAEMON is now aware of the Geldkarte.
17
18  * The SCDAEMON option --allow-admin is now used by default.
19
20  * GPGCONF now restarts SCdaemon if necessary.
21
22  * The default cipher algorithm in GPGSM is now again 3DES.  This is
23    due to interoperability problems with Outlook 2003 which still
24    can't cope with AES.
25
26
27 Noteworthy changes in version 2.0.10 (2009-01-12)
28 -------------------------------------------------
29
30  * [gpg] New keyserver helper gpg2keys_kdns as generic DNS CERT
31    lookup.  Run with --help for a short description.  Requires the
32    ADNS library.
33
34  * [gpg] New mechanisms "local" and "nodefault" for --auto-key-locate.
35    Fixed a few problems with this option.
36
37  * [gpg] New command --locate-keys.
38
39  * [gpg] New options --with-sig-list and --with-sig-check.
40
41  * [gpg] The option "-sat" is no longer an alias for --clearsign.
42
43  * [gpg] The option --fixed-list-mode is now implicitly used and obsolete.
44
45  * [gpg] New control statement %ask-passphrase for the unattended key
46    generation.
47
48  * [gpg] The algorithm to compute the SIG_ID status has been changed.
49
50  * [gpgsm] Now uses AES by default.
51
52  * [gpgsm] Made --output option work with --export-secret-key-p12.
53
54  * [gpg-agent] Terminate process if the own listening socket is not
55    anymore served by ourself.
56
57  * [scdaemon] Made it more robust on W32.
58
59  * [gpg-connect-agent] Accept commands given as command line arguments.
60
61  * [w32] Initialized the socket subsystem for all keyserver helpers.
62
63  * [w32] The sysconf directory has been moved from a subdirectory of
64    the installation directory to %CSIDL_COMMON_APPDATA%/GNU/etc/gnupg.
65
66  * [w32] The gnupg2.nls directory is not anymore used.  The standard
67    locale directory is now used.  
68
69  * [w32] Fixed a race condition between gpg and gpgsm in the use of
70    temporary file names.
71
72  * The gpg-preset-passphrase mechanism works again.  An arbitrary
73    string may now be used for a custom cache ID.
74
75  * Admin PINs are cached again (bug in 2.0.9).
76
77  * Support for version 2 OpenPGP cards.
78
79  * Libgcrypt 1.4 is now required.
80
81
82 Noteworthy changes in version 2.0.9 (2008-03-26)
83 ------------------------------------------------
84
85  * Gpgsm always tries to locate missing certificates from a running
86    Dirmngr's cache.
87
88  * Tweaks for Windows.
89
90  * The Admin PIN for OpenPGP cards may now be entered with the pinpad.
91
92  * Improved certificate chain construction.
93
94  * Extended the PKITS framework.
95
96  * Fixed a bug in the ambigious name detection.
97
98  * Fixed possible memory corruption while importing OpenPGP keys (bug
99    introduced with 2.0.8). [CVE-2008-1530]
100
101  * Minor bug fixes.
102
103
104 Noteworthy changes in version 2.0.8 (2007-12-20)
105 ------------------------------------------------
106
107  * Enhanced gpg-connect-agent with a small scripting language.
108
109  * New option --list-config for gpgconf.
110
111  * Fixed a crash in gpgconf.
112
113  * Gpg-agent now supports the passphrase quality bar of the latest
114    Pinentry.
115
116  * The envvars XAUTHORITY and PINENTRY_USER_DATA are now passed to the
117    Pinentry.
118
119  * Fixed the auto creation of the key stub for smartcards.  
120
121  * Fixed a rare bug in decryption using the OpenPGP card.
122
123  * Creating DSA2 keys is now possible.
124
125  * New option --extra-digest-algo for gpgsm to allow verification of
126    broken signatures.
127
128  * Allow encryption with legacy Elgamal sign+encrypt keys with option
129    --rfc2440.
130
131  * Windows is now a supported platform.
132
133  * Made sure that under Windows the file permissions of the socket are
134    taken into account.  This required a change of our socket emulation
135    code and changed the IPC protocol under Windows.
136
137
138 Noteworthy changes in version 2.0.7 (2007-09-10)
139 ------------------------------------------------
140
141  * Fixed encryption problem if duplicate certificates are in the
142    keybox.
143
144  * Made it work on Windows Vista.  Note that the entire Windows port
145    is still considered Beta.
146
147  * Add new options min-passphrase-nonalpha, check-passphrase-pattern,
148    enforce-passphrase-constraints and max-passphrase-days to
149    gpg-agent.
150
151  * Add command --check-components to gpgconf.  Gpgconf now uses the
152    installed versions of the programs and does not anymore search via
153    PATH for them.
154
155
156 Noteworthy changes in version 2.0.6 (2007-08-16)
157 ------------------------------------------------
158
159  * GPGSM does now grok --default-key.
160
161  * GPGCONF is now aware of --default-key and --encrypt-to. 
162
163  * GPGSM does again correctly print the serial number as well the the
164    various keyids.  This was broken since 2.0.4.
165
166  * New option --validation-model and support for the chain-model.
167
168  * Improved Windows support.
169
170  
171 Noteworthy changes in version 2.0.5 (2007-07-05)
172 ------------------------------------------------
173
174  * Switched license to GPLv3.
175
176  * Basic support for Windows.  Run "./autogen.sh --build-w32" to build
177    it.  As usual the mingw cross compiling toolchain is required.
178
179  * Fixed bug when using the --p12-charset without --armor.
180
181  * The command --gen-key may now be used instead of the
182    gpgsm-gencert.sh script.
183
184  * Changed key generation to reveal less information about the
185    machine.  Bug fixes for gpg2's card key generation.
186
187
188 Noteworthy changes in version 2.0.4 (2007-05-09)
189 ------------------------------------------------
190
191  * The server mode key listing commands are now also working for
192    systems without the funopen/fopencookie API.
193
194  * PKCS#12 import now tries several encodings in case the passphrase
195    was not utf-8 encoded.  New option --p12-charset for gpgsm.
196
197  * Improved the libgcrypt logging support in all modules.
198
199
200 Noteworthy changes in version 2.0.3 (2007-03-08)
201 ------------------------------------------------
202
203  * By default, do not allow processing multiple plaintexts in a single
204    stream.  Many programs that called GnuPG were assuming that GnuPG
205    did not permit this, and were thus not using the plaintext boundary
206    status tags that GnuPG provides.  This change makes GnuPG reject
207    such messages by default which makes those programs safe again.
208    --allow-multiple-messages returns to the old behavior. [CVE-2007-1263].
209
210  * New --verify-option show-primary-uid-only. 
211
212  * gpgconf may now reads a global configuration file to select which
213    options are changeable by a frontend.  The new applygnupgdefaults
214    tool may be used by an admin to set default options for all users.
215
216  * The PIN pad of the Cherry XX44 keyboard is now supported.  The
217    DINSIG and the NKS applications are now also aware of PIN pads.
218
219
220 Noteworthy changes in version 2.0.2 (2007-01-31)
221 ------------------------------------------------
222
223  * Fixed a serious and exploitable bug in processing encrypted
224    packages. [CVE-2006-6235].
225
226  * Added --passphrase-repeat to set the number of times GPG will
227    prompt for a new passphrase to be repeated.  This is useful to help
228    memorize a new passphrase.  The default is 1 repetition.
229
230  * Using a PIN pad does now also work for the signing key.
231
232  * A warning is displayed by gpg-agent if a new passphrase is too
233    short.  New option --min-passphrase-len defaults to 8.
234
235  * The status code BEGIN_SIGNING now shows the used hash algorithms.
236
237
238 Noteworthy changes in version 2.0.1 (2006-11-28)
239 ------------------------------------------------
240
241  * Experimental support for the PIN pads of the SPR 532 and the Kaan
242    Advanced card readers.  Add "disable-keypad" scdaemon.conf if you
243    don't want it.  Does currently only work for the OpenPGP card and
244    its authentication and decrypt keys.
245
246  * Fixed build problems on some some platforms and crashes on amd64.
247
248  * Fixed a buffer overflow in gpg2. [bug#728,CVE-2006-6169]
249
250
251 Noteworthy changes in version 2.0.0 (2006-11-11)
252 ------------------------------------------------
253
254  * First stable version of a GnuPG integrating OpenPGP and S/MIME.
255
256
257 Noteworthy changes in version 1.9.95 (2006-11-06)
258 -------------------------------------------------
259
260  * Minor bug fixes.
261
262
263 Noteworthy changes in version 1.9.94 (2006-10-24)
264 -------------------------------------------------
265
266  * Keys for gpgsm may now be specified using a keygrip.  A keygrip is
267    indicated by a prefixing it with an ampersand.
268
269  * gpgconf now supports switching the CMS cipher algo (e.g. to AES).
270
271  * New command --gpgconf-test for all major tools. This may be used to
272    check whether the configuration file is sane.
273
274
275 Noteworthy changes in version 1.9.93 (2006-10-18)
276 -------------------------------------------------
277
278  * In --with-validation mode gpgsm will now also ask whether a root
279    certificate should be trusted.
280
281  * Link to Pth only if really necessary.
282
283  * Fixed a pubring corruption bug in gpg2 occurring when importing
284    signatures or keys with insane lengths.
285
286  * Fixed v3 keyID calculation bug in gpg2.
287
288  * More tweaks for certificates without extensions.
289
290
291 Noteworthy changes in version 1.9.92 (2006-10-11)
292 -------------------------------------------------
293
294  * Bug fixes.
295
296
297 Noteworthy changes in version 1.9.91 (2006-10-04)
298 -------------------------------------------------
299
300  * New "relax" flag for trustlist.txt to allow root CA certificates
301    without BasicContraints.
302
303  * [gpg2] Removed the -k PGP 2 compatibility hack.  -k is now an
304    alias for --list-keys.
305
306  * [gpg2] Print a warning if "-sat" is used instead of "--clearsign".
307
308
309 Noteworthy changes in version 1.9.90 (2006-09-25)
310 -------------------------------------------------
311
312  * Made readline work for gpg.
313
314  * Cleanups und minor bug fixes.
315
316  * Included translations from gnupg 1.4.5.
317
318
319 Noteworthy changes in version 1.9.23 (2006-09-18)
320 -------------------------------------------------
321
322  * Regular man pages for most tools are now build directly from the
323    Texinfo source.
324
325  * The gpg code from 1.4.5 has been fully merged into this release.
326    The configure option --enable-gpg is still required to build this
327    gpg part.  For production use of OpenPGP the gpg version 1.4.5 is
328    still recommended.  Note, that gpg will be installed under the name
329    gpg2 to allow coexisting with an 1.4.x gpg.
330
331  * API change in gpg-agent's pkdecrypt command.  Thus an older gpgsm
332    may not be used with the current gpg-agent.
333
334  * The scdaemon will now call a script on reader status changes.
335
336  * gpgsm now allows file descriptor passing for "INPUT", "OUTPUT" and
337    "MESSAGE".
338
339  * The gpgsm server may now output a key listing to the output file
340    handle. This needs to be enabled using "OPTION list-to-output=1".
341
342  * The --output option of gpgsm has now an effect on list-keys.
343
344  * New gpgsm commands --dump-chain and list-chain.
345
346  * gpg-connect-agent has new options to utilize descriptor passing.
347
348  * A global trustlist may now be used.  See doc/examples/trustlist.txt.
349
350  * When creating a new pubring.kbx keybox common certificates are
351    imported.
352
353
354 Noteworthy changes in version 1.9.22 (2006-07-27)
355 -------------------------------------------------
356
357  * Enhanced pkcs#12 support to allow import from simple keyBags.
358
359  * Exporting to pkcs#12 now create bag attributes so that Mozilla is
360    able to import the files.
361
362  * Fixed uploading of certain keys to the smart card.
363
364
365 Noteworthy changes in version 1.9.21 (2006-06-20)
366 -------------------------------------------------
367
368  * New command APDU for scdaemon to allow using it for general card
369    access.  Might be used through gpg-connect-agent by using the SCD
370    prefix command.
371
372  * Support for the CardMan 4040 PCMCIA reader (Linux 2.6.15 required).
373
374  * Scdaemon does not anymore reset cards at the end of a connection. 
375
376  * Kludge to allow use of Bundesnetzagentur issued X.509 certificates.
377
378  * Added --hash=xxx option to scdaemon's PKSIGN command.
379
380  * Pkcs#12 files are now created with a MAC.  This is for better
381    interoperability.
382
383  * Collected bug fixes and minor other changes.
384
385
386 Noteworthy changes in version 1.9.20 (2005-12-20)
387 -------------------------------------------------
388
389  * Importing pkcs#12 files created be recent versions of Mozilla works
390    again.
391
392  * Basic support for qualified signatures.
393
394  * New debug tool gpgparsemail. 
395
396
397 Noteworthy changes in version 1.9.19 (2005-09-12)
398 -------------------------------------------------
399
400  * The Belgian eID card is now supported for signatures and ssh.
401    Other pkcs#15 cards should work as well.
402
403  * Fixed bug in --export-secret-key-p12 so that certificates are again
404    included.
405
406
407 Noteworthy changes in version 1.9.18 (2005-08-01)
408 -------------------------------------------------
409
410  * [gpgsm] Now allows for more than one email address as well as URIs
411    and dnsNames in certificate request generation.  A keygrip may be
412    given to create a request from an existing key.
413
414  * A couple of minor bug fixes.
415
416
417 Noteworthy changes in version 1.9.17 (2005-06-20)
418 -------------------------------------------------
419
420  * gpg-connect-agent has now features to handle Assuan INQUIRE
421    commands.
422
423  * Internal changes for OpenPGP cards. New Assuan command WRITEKEY.
424
425  * GNU Pth is now a hard requirement.
426
427  * [scdaemon] Support for OpenSC has been removed.  Instead a new and
428    straightforward pkcs#15 modules has been written.  As of now it
429    does allows only signing using TCOS cards but we are going to
430    enhance it to match all the old capabilities.
431
432  * [gpg-agent] New option --write-env-file and Assuan command
433    UPDATESTARTUPTTY.
434
435  * [gpg-agent] New option --default-cache-ttl-ssh to set the TTL for
436    SSH passphrase caching independent from the other passphrases.
437
438
439 Noteworthy changes in version 1.9.16 (2005-04-21)
440 -------------------------------------------------
441
442  * gpg-agent does now support the ssh-agent protocol and thus allows
443    to use the pinentry as well as the OpenPGP smartcard with ssh.
444
445  * New tool gpg-connect-agent as a general client for the gpg-agent.
446
447  * New tool symcryptrun as a wrapper for certain encryption tools.
448
449  * The gpg tool is not anymore build by default because those gpg
450    versions available in the gnupg 1.4 series are far more matured.
451
452
453 Noteworthy changes in version 1.9.15 (2005-01-13)
454 -------------------------------------------------
455
456  * Fixed passphrase caching bug.
457
458  * Better support for CCID readers; the reader from Cherry RS 6700 USB
459    does now work.
460
461
462 Noteworthy changes in version 1.9.14 (2004-12-22)
463 -------------------------------------------------
464
465  * [gpg-agent] New option --use-standard-socket to allow the use of a
466    fixed socket.  gpgsm falls back to this socket if GPG_AGENT_INFO
467    has not been set.
468
469  * Ported to MS Windows with some functional limitations.
470
471  * New tool gpg-preset-passphrase.
472
473
474 Noteworthy changes in version 1.9.13 (2004-12-03)
475 -------------------------------------------------
476
477  * [gpgsm] New option --prefer-system-dirmngr.
478
479  * Minor cleanups and debugging aids.
480
481
482 Noteworthy changes in version 1.9.12 (2004-10-22)
483 -------------------------------------------------
484
485  * [scdaemon] Partly rewrote the PC/SC code.
486
487  * Removed the sc-investigate tool.  It is now in a separate package
488    available at ftp://ftp.g10code.com/g10code/gscutils/ .
489
490  * [gpg-agent] Fixed logging problem.
491
492
493 Noteworthy changes in version 1.9.11 (2004-10-01)
494 -------------------------------------------------
495
496  * When using --import along with --with-validation, the imported
497    certificates are validated and only imported if they are fully
498    valid.
499
500  * [gpg-agent] New option --max-cache-ttl.
501
502  * [gpg-agent] When used without --daemon or --server, gpg-agent now
503    check whether a agent is already running and usable.
504
505  * Fixed some i18n problems.
506
507
508 Noteworthy changes in version 1.9.10 (2004-07-22)
509 -------------------------------------------------
510
511  * Fixed a serious bug in the checking of trusted root certificates.
512
513  * New configure option --enable-agent-pnly allows to build and
514    install just the agent.
515
516  * Fixed a problem with the log file handling.
517
518
519 Noteworthy changes in version 1.9.9 (2004-06-08)
520 ------------------------------------------------
521
522  * [gpg-agent] The new option --allow-mark-trusted is now required to
523    allow gpg-agent to add a key to the trustlist.txt after user
524    confirmation.
525
526  * Creating PKCS#10 requests does now honor the key usage.
527
528
529 Noteworthy changes in version 1.9.8 (2004-04-29)
530 ------------------------------------------------
531
532  * [scdaemon] Overhauled the internal CCID driver.
533
534  * [scdaemon] Status files named ~/.gnupg/reader_<n>.status are now
535    written when using the internal CCID driver.
536
537  * [gpgsm] New commands --dump-{,secret,external}-keys to show a very
538    detailed view of the certificates.
539
540  * The keybox gets now compressed after 3 hours and ephemeral
541    stored certificates are deleted after about a day.
542
543  * [gpg] Usability fixes for --card-edit.  Note, that this has already
544    been ported back to gnupg-1.3
545
546
547 Noteworthy changes in version 1.9.7 (2004-04-06)
548 ------------------------------------------------
549
550  * Instrumented the modules for gpgconf.
551
552  * Added support for DINSIG card applications.
553
554  * Include the smimeCapabilities attribute with signed messages.
555
556  * Now uses the gettext domain "gnupg2" to avoid conflicts with gnupg
557    versions < 1.9.
558
559
560 Noteworthy changes in version 1.9.6 (2004-03-06)
561 ------------------------------------------------
562
563  * Code cleanups and bug fixes.
564
565
566 Noteworthy changes in version 1.9.5 (2004-02-21)
567 ------------------------------------------------
568
569  * gpg-protect-tool gets now installed into libexec as it ought to be.
570    Cleaned up the build system to better comply with the coding
571    standards.
572
573  * [gpgsm] The --import command is now able to autodetect pkcs#12
574    files and import secret and private keys from this file format.
575    A new command --export-secret-key-p12 is provided to allow
576    exporting of secret keys in PKCS\#12 format.
577
578  * [gpgsm] The pinentry will now present a description of the key for
579    whom the passphrase is requested.
580
581  * [gpgsm] New option --with-validation to check the validity of key
582    while listing it.
583
584  * New option --debug-level={none,basic,advanced,expert,guru} to map
585    the debug flags to sensitive levels on a per program base.
586
587
588 Noteworthy changes in version 1.9.4 (2004-01-30)
589 ------------------------------------------------
590
591  * Added support for the Telesec NKS 2.0 card application.
592
593  * Added simple tool addgnupghome to create .gnupg directories from
594    /etc/skel/.gnupg.
595
596  * Various minor bug fixes and cleanups; mainly gpgsm and gpg-agent
597    related.
598
599
600 Noteworthy changes in version 1.9.3 (2003-12-23)
601 ------------------------------------------------
602
603  * New gpgsm options --{enable,disable}-ocsp to validate keys using
604    OCSP. This option requires a not yet released DirMngr version.
605    Default is disabled.
606
607  * The --log-file option may now be used to print logs to a socket.
608    Prefix the socket name with "socket://" to enable this.  This does
609    not work on all systems and falls back to stderr if there is a
610    problem with the socket.
611
612  * The options --encrypt-to and --no-encrypt-to now work the same in
613    gpgsm as in gpg.  Note, they are also used in server mode.
614
615  * Duplicated recipients are now silently removed in gpgsm.
616
617
618 Noteworthy changes in version 1.9.2 (2003-11-17)
619 ------------------------------------------------
620
621  * On card key generation is no longer done using the --gen-key
622    command but from the menu provided by the new --card-edit command.
623
624  * PINs are now properly cached and there are only 2 PINs visible.
625    The 3rd PIN (CHV2) is internally syncronized with the regular PIN.
626
627  * All kind of other internal stuff.
628
629
630 Noteworthy changes in version 1.9.1 (2003-09-06)
631 ------------------------------------------------
632
633  * Support for OpenSC is back. scdaemon supports a --disable-opensc to
634    disable OpenSC use at runtime, so that PC/SC or ct-API can still be
635    used directly.
636
637  * Rudimentary support for the SCR335 smartcard reader using an
638    internal driver.  Requires current libusb from CVS.
639
640  * Bug fixes.
641
642
643 Noteworthy changes in version 1.9.0 (2003-08-05)
644 ------------------------------------------------
645
646       ====== PLEASE SEE README-alpha =======
647
648  * gpg has been renamed to gpg2 and gpgv to gpgv2.  This is a
649    temporary change to allow co-existing with stable gpg versions.
650
651  * ~/.gnupg/gpg.conf-1.9.0 is fist tried as config file before the
652    usual gpg.conf.
653
654  * Removed the -k, -kv and -kvv commands.  -k is now an alias to
655    --list-keys.  New command -K as alias for --list-secret-keys.
656
657  * Removed --run-as-shm-coprocess feature.
658
659  * gpg does now also use libgcrypt, libgpg-error is required.
660
661  * New gpgsm commands --call-dirmngr and --call-protect-tool.
662
663  * Changing a passphrase is now possible using "gpgsm --passwd"
664
665  * The content-type attribute is now recognized and created.
666
667  * The agent does now reread certain options on receiving a HUP.
668
669  * The pinentry is now forked for each request so that clients with
670    different environments are supported.  When running in daemon mode
671    and --keep-display is not used the DISPLAY variable is ignored.
672
673  * Merged stuff from the newpg branch and started this new
674    development branch.
675
676
677  Copyright 2002, 2003, 2004, 2005, 2006, 2007,
678            2008, 2009  Free Software Foundation, Inc.
679
680  This file is free software; as a special exception the author gives
681  unlimited permission to copy and/or distribute it, with or without
682  modifications, as long as this notice is preserved.
683
684  This file is distributed in the hope that it will be useful, but
685  WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
686  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.