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