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