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