1 Noteworthy changes in version 2.1.0beta2 (unreleased)
2 -----------------------------------------------------
4 * TMPDIR is now also honored when creating a socket using
5 --no-standard-socket and with symcryptrun's temp files.
7 * Fixed a bug where SCdaemon sends a signal to Gpg-agent running in
10 * Print "AES128" instead of "AES". This change introduces a little
11 incompatibility for tools using "gpg --list-config". We hope that
12 these tools are written robust enough to accept this new algorithm
15 * Fixed CRL loading under W32 (bug#1010).
17 * Fixed TTY management for pinentries and session variable update
20 * Dirmngr has taken over the function of the keyserver helpers. Thus
21 we now have a specified direct interface to keyservers via Dirmngr.
22 LDAP, DNS and mail backends are not yet implemented.
24 * ECC support for GPG as described by draft-jivsov-openpgp-ecc-06.txt.
26 * New GPGSM feature to create certificates from a parameter file.
27 Add prompt to the --gen-key UI to create self-signed certificates.
30 Noteworthy changes in version 2.1.0beta1 (2010-10-26)
31 -----------------------------------------------------
33 * Encrypted OpenPGP messages with trailing data (e.g. other OpenPGP
34 packets) are now correctly parsed.
36 * The GPGSM --audit-log feature is now more complete.
38 * The G13 tool for disk encryption key management has been added.
40 * The default for --include-cert is now to include all certificates
41 in the chain except for the root certificate.
43 * Numerical values may now be used as an alternative to the
46 * Support DNS lookups for SRV, PKA and CERT on W32.
48 * New GPGSM option --ignore-cert-extension.
50 * New and changed passphrases are now created with an iteration count
51 requiring about 100ms of CPU work.
53 * Support for Windows CE.
55 * If the agent's --use-standard-socket option is active, all tools
56 try to start and daemonize the agent on the fly. In the past this
57 was only supported on W32; on non-W32 systems the new configure
58 option --disable-standard-socket may now be used to disable this
61 * Dirmngr is now a part of this package. Dirmngr is now also
62 expected to run as a system service and the configuration
63 directories are changed to the GnuPG name space.
65 * Given sufficient permissions Dirmngr is started automagically.
67 * Fixed output of "gpgconf --check-options".
69 * GPG does not anymore use secring.gpg but delegates all secret key
70 operations to gpg-agent. The import command moves secret keys to
73 * The OpenPGP import command is now able to merge secret keys.
75 * Removed GPG options:
76 --export-options: export-secret-subkey-passwd
83 Noteworthy changes in version 2.0.13 (2009-09-04)
84 -------------------------------------------------
86 * GPG now generates 2048 bit RSA keys by default. The default hash
87 algorithm preferences has changed to prefer SHA-256 over SHA-1.
88 2048 bit DSA keys are now generated to use a 256 bit hash algorithm
90 * The envvars XMODIFIERS, GTK_IM_MODULE and QT_IM_MODULE are now
91 passed to the Pinentry to make SCIM work.
93 * The GPGSM command --gen-key features a --batch mode and implements
94 all features of gpgsm-gencert.sh in standard mode.
96 * New option --re-import for GPGSM's IMPORT server command.
98 * Enhanced writing of existing keys to OpenPGP v2 cards.
100 * Add hack to the internal CCID driver to allow the use of some
101 Omnikey based card readers with 2048 bit keys.
103 * GPG now repeatly asks the user to insert the requested OpenPGP
104 card. This can be disabled with --limit-card-insert-tries=1.
109 Noteworthy changes in version 2.0.12 (2009-06-17)
110 -------------------------------------------------
112 * GPGSM now always lists ephemeral certificates if specified by
113 fingerprint or keygrip.
115 * New command "KEYINFO" for GPG_AGENT. GPGSM now also returns
116 information about smartcards.
118 * Made sure not to leak file descriptors if running gpg-agent with a
119 command. Restore the signal mask to solve a problem in Mono.
121 * Changed order of the confirmation questions for root certificates
122 and store negative answers in trustlist.txt.
124 * Better synchronization of concurrent smartcard sessions.
126 * Support 2048 bit OpenPGP cards.
128 * Support Telesec Netkey 3 cards.
130 * The gpg-protect-tool now uses gpg-agent via libassuan. Under
131 Windows the Pinentry will now be put into the foreground.
133 * Changed code to avoid a possible Mac OS X system freeze.
136 Noteworthy changes in version 2.0.11 (2009-03-03)
137 -------------------------------------------------
139 * Fixed a problem in SCDAEMON which caused unexpected card resets.
141 * SCDAEMON is now aware of the Geldkarte.
143 * The SCDAEMON option --allow-admin is now used by default.
145 * GPGCONF now restarts SCdaemon if necessary.
147 * The default cipher algorithm in GPGSM is now again 3DES. This is
148 due to interoperability problems with Outlook 2003 which still
152 Noteworthy changes in version 2.0.10 (2009-01-12)
153 -------------------------------------------------
155 * [gpg] New keyserver helper gpg2keys_kdns as generic DNS CERT
156 lookup. Run with --help for a short description. Requires the
159 * [gpg] New mechanisms "local" and "nodefault" for --auto-key-locate.
160 Fixed a few problems with this option.
162 * [gpg] New command --locate-keys.
164 * [gpg] New options --with-sig-list and --with-sig-check.
166 * [gpg] The option "-sat" is no longer an alias for --clearsign.
168 * [gpg] The option --fixed-list-mode is now implicitly used and obsolete.
170 * [gpg] New control statement %ask-passphrase for the unattended key
173 * [gpg] The algorithm to compute the SIG_ID status has been changed.
175 * [gpgsm] Now uses AES by default.
177 * [gpgsm] Made --output option work with --export-secret-key-p12.
179 * [gpg-agent] Terminate process if the own listening socket is not
180 anymore served by ourself.
182 * [scdaemon] Made it more robust on W32.
184 * [gpg-connect-agent] Accept commands given as command line arguments.
186 * [w32] Initialized the socket subsystem for all keyserver helpers.
188 * [w32] The sysconf directory has been moved from a subdirectory of
189 the installation directory to %CSIDL_COMMON_APPDATA%/GNU/etc/gnupg.
191 * [w32] The gnupg2.nls directory is not anymore used. The standard
192 locale directory is now used.
194 * [w32] Fixed a race condition between gpg and gpgsm in the use of
195 temporary file names.
197 * The gpg-preset-passphrase mechanism works again. An arbitrary
198 string may now be used for a custom cache ID.
200 * Admin PINs are cached again (bug in 2.0.9).
202 * Support for version 2 OpenPGP cards.
204 * Libgcrypt 1.4 is now required.
207 Noteworthy changes in version 2.0.9 (2008-03-26)
208 ------------------------------------------------
210 * Gpgsm always tries to locate missing certificates from a running
213 * Tweaks for Windows.
215 * The Admin PIN for OpenPGP cards may now be entered with the pinpad.
217 * Improved certificate chain construction.
219 * Extended the PKITS framework.
221 * Fixed a bug in the ambigious name detection.
223 * Fixed possible memory corruption while importing OpenPGP keys (bug
224 introduced with 2.0.8). [CVE-2008-1530]
229 Noteworthy changes in version 2.0.8 (2007-12-20)
230 ------------------------------------------------
232 * Enhanced gpg-connect-agent with a small scripting language.
234 * New option --list-config for gpgconf.
236 * Fixed a crash in gpgconf.
238 * Gpg-agent now supports the passphrase quality bar of the latest
241 * The envvars XAUTHORITY and PINENTRY_USER_DATA are now passed to the
244 * Fixed the auto creation of the key stub for smartcards.
246 * Fixed a rare bug in decryption using the OpenPGP card.
248 * Creating DSA2 keys is now possible.
250 * New option --extra-digest-algo for gpgsm to allow verification of
253 * Allow encryption with legacy Elgamal sign+encrypt keys with option
256 * Windows is now a supported platform.
258 * Made sure that under Windows the file permissions of the socket are
259 taken into account. This required a change of our socket emulation
260 code and changed the IPC protocol under Windows.
263 Noteworthy changes in version 2.0.7 (2007-09-10)
264 ------------------------------------------------
266 * Fixed encryption problem if duplicate certificates are in the
269 * Made it work on Windows Vista. Note that the entire Windows port
270 is still considered Beta.
272 * Add new options min-passphrase-nonalpha, check-passphrase-pattern,
273 enforce-passphrase-constraints and max-passphrase-days to
276 * Add command --check-components to gpgconf. Gpgconf now uses the
277 installed versions of the programs and does not anymore search via
281 Noteworthy changes in version 2.0.6 (2007-08-16)
282 ------------------------------------------------
284 * GPGSM does now grok --default-key.
286 * GPGCONF is now aware of --default-key and --encrypt-to.
288 * GPGSM does again correctly print the serial number as well the the
289 various keyids. This was broken since 2.0.4.
291 * New option --validation-model and support for the chain-model.
293 * Improved Windows support.
296 Noteworthy changes in version 2.0.5 (2007-07-05)
297 ------------------------------------------------
299 * Switched license to GPLv3.
301 * Basic support for Windows. Run "./autogen.sh --build-w32" to build
302 it. As usual the mingw cross compiling toolchain is required.
304 * Fixed bug when using the --p12-charset without --armor.
306 * The command --gen-key may now be used instead of the
307 gpgsm-gencert.sh script.
309 * Changed key generation to reveal less information about the
310 machine. Bug fixes for gpg2's card key generation.
313 Noteworthy changes in version 2.0.4 (2007-05-09)
314 ------------------------------------------------
316 * The server mode key listing commands are now also working for
317 systems without the funopen/fopencookie API.
319 * PKCS#12 import now tries several encodings in case the passphrase
320 was not utf-8 encoded. New option --p12-charset for gpgsm.
322 * Improved the libgcrypt logging support in all modules.
325 Noteworthy changes in version 2.0.3 (2007-03-08)
326 ------------------------------------------------
328 * By default, do not allow processing multiple plaintexts in a single
329 stream. Many programs that called GnuPG were assuming that GnuPG
330 did not permit this, and were thus not using the plaintext boundary
331 status tags that GnuPG provides. This change makes GnuPG reject
332 such messages by default which makes those programs safe again.
333 --allow-multiple-messages returns to the old behavior. [CVE-2007-1263].
335 * New --verify-option show-primary-uid-only.
337 * gpgconf may now reads a global configuration file to select which
338 options are changeable by a frontend. The new applygnupgdefaults
339 tool may be used by an admin to set default options for all users.
341 * The PIN pad of the Cherry XX44 keyboard is now supported. The
342 DINSIG and the NKS applications are now also aware of PIN pads.
345 Noteworthy changes in version 2.0.2 (2007-01-31)
346 ------------------------------------------------
348 * Fixed a serious and exploitable bug in processing encrypted
349 packages. [CVE-2006-6235].
351 * Added --passphrase-repeat to set the number of times GPG will
352 prompt for a new passphrase to be repeated. This is useful to help
353 memorize a new passphrase. The default is 1 repetition.
355 * Using a PIN pad does now also work for the signing key.
357 * A warning is displayed by gpg-agent if a new passphrase is too
358 short. New option --min-passphrase-len defaults to 8.
360 * The status code BEGIN_SIGNING now shows the used hash algorithms.
363 Noteworthy changes in version 2.0.1 (2006-11-28)
364 ------------------------------------------------
366 * Experimental support for the PIN pads of the SPR 532 and the Kaan
367 Advanced card readers. Add "disable-keypad" scdaemon.conf if you
368 don't want it. Does currently only work for the OpenPGP card and
369 its authentication and decrypt keys.
371 * Fixed build problems on some some platforms and crashes on amd64.
373 * Fixed a buffer overflow in gpg2. [bug#728,CVE-2006-6169]
376 Noteworthy changes in version 2.0.0 (2006-11-11)
377 ------------------------------------------------
379 * First stable version of a GnuPG integrating OpenPGP and S/MIME.
382 Noteworthy changes in version 1.9.95 (2006-11-06)
383 -------------------------------------------------
388 Noteworthy changes in version 1.9.94 (2006-10-24)
389 -------------------------------------------------
391 * Keys for gpgsm may now be specified using a keygrip. A keygrip is
392 indicated by a prefixing it with an ampersand.
394 * gpgconf now supports switching the CMS cipher algo (e.g. to AES).
396 * New command --gpgconf-test for all major tools. This may be used to
397 check whether the configuration file is sane.
400 Noteworthy changes in version 1.9.93 (2006-10-18)
401 -------------------------------------------------
403 * In --with-validation mode gpgsm will now also ask whether a root
404 certificate should be trusted.
406 * Link to Pth only if really necessary.
408 * Fixed a pubring corruption bug in gpg2 occurring when importing
409 signatures or keys with insane lengths.
411 * Fixed v3 keyID calculation bug in gpg2.
413 * More tweaks for certificates without extensions.
416 Noteworthy changes in version 1.9.92 (2006-10-11)
417 -------------------------------------------------
422 Noteworthy changes in version 1.9.91 (2006-10-04)
423 -------------------------------------------------
425 * New "relax" flag for trustlist.txt to allow root CA certificates
426 without BasicContraints.
428 * [gpg2] Removed the -k PGP 2 compatibility hack. -k is now an
429 alias for --list-keys.
431 * [gpg2] Print a warning if "-sat" is used instead of "--clearsign".
434 Noteworthy changes in version 1.9.90 (2006-09-25)
435 -------------------------------------------------
437 * Made readline work for gpg.
439 * Cleanups und minor bug fixes.
441 * Included translations from gnupg 1.4.5.
444 Noteworthy changes in version 1.9.23 (2006-09-18)
445 -------------------------------------------------
447 * Regular man pages for most tools are now build directly from the
450 * The gpg code from 1.4.5 has been fully merged into this release.
451 The configure option --enable-gpg is still required to build this
452 gpg part. For production use of OpenPGP the gpg version 1.4.5 is
453 still recommended. Note, that gpg will be installed under the name
454 gpg2 to allow coexisting with an 1.4.x gpg.
456 * API change in gpg-agent's pkdecrypt command. Thus an older gpgsm
457 may not be used with the current gpg-agent.
459 * The scdaemon will now call a script on reader status changes.
461 * gpgsm now allows file descriptor passing for "INPUT", "OUTPUT" and
464 * The gpgsm server may now output a key listing to the output file
465 handle. This needs to be enabled using "OPTION list-to-output=1".
467 * The --output option of gpgsm has now an effect on list-keys.
469 * New gpgsm commands --dump-chain and list-chain.
471 * gpg-connect-agent has new options to utilize descriptor passing.
473 * A global trustlist may now be used. See doc/examples/trustlist.txt.
475 * When creating a new pubring.kbx keybox common certificates are
479 Noteworthy changes in version 1.9.22 (2006-07-27)
480 -------------------------------------------------
482 * Enhanced pkcs#12 support to allow import from simple keyBags.
484 * Exporting to pkcs#12 now create bag attributes so that Mozilla is
485 able to import the files.
487 * Fixed uploading of certain keys to the smart card.
490 Noteworthy changes in version 1.9.21 (2006-06-20)
491 -------------------------------------------------
493 * New command APDU for scdaemon to allow using it for general card
494 access. Might be used through gpg-connect-agent by using the SCD
497 * Support for the CardMan 4040 PCMCIA reader (Linux 2.6.15 required).
499 * Scdaemon does not anymore reset cards at the end of a connection.
501 * Kludge to allow use of Bundesnetzagentur issued X.509 certificates.
503 * Added --hash=xxx option to scdaemon's PKSIGN command.
505 * Pkcs#12 files are now created with a MAC. This is for better
508 * Collected bug fixes and minor other changes.
511 Noteworthy changes in version 1.9.20 (2005-12-20)
512 -------------------------------------------------
514 * Importing pkcs#12 files created be recent versions of Mozilla works
517 * Basic support for qualified signatures.
519 * New debug tool gpgparsemail.
522 Noteworthy changes in version 1.9.19 (2005-09-12)
523 -------------------------------------------------
525 * The Belgian eID card is now supported for signatures and ssh.
526 Other pkcs#15 cards should work as well.
528 * Fixed bug in --export-secret-key-p12 so that certificates are again
532 Noteworthy changes in version 1.9.18 (2005-08-01)
533 -------------------------------------------------
535 * [gpgsm] Now allows for more than one email address as well as URIs
536 and dnsNames in certificate request generation. A keygrip may be
537 given to create a request from an existing key.
539 * A couple of minor bug fixes.
542 Noteworthy changes in version 1.9.17 (2005-06-20)
543 -------------------------------------------------
545 * gpg-connect-agent has now features to handle Assuan INQUIRE
548 * Internal changes for OpenPGP cards. New Assuan command WRITEKEY.
550 * GNU Pth is now a hard requirement.
552 * [scdaemon] Support for OpenSC has been removed. Instead a new and
553 straightforward pkcs#15 modules has been written. As of now it
554 does allows only signing using TCOS cards but we are going to
555 enhance it to match all the old capabilities.
557 * [gpg-agent] New option --write-env-file and Assuan command
560 * [gpg-agent] New option --default-cache-ttl-ssh to set the TTL for
561 SSH passphrase caching independent from the other passphrases.
564 Noteworthy changes in version 1.9.16 (2005-04-21)
565 -------------------------------------------------
567 * gpg-agent does now support the ssh-agent protocol and thus allows
568 to use the pinentry as well as the OpenPGP smartcard with ssh.
570 * New tool gpg-connect-agent as a general client for the gpg-agent.
572 * New tool symcryptrun as a wrapper for certain encryption tools.
574 * The gpg tool is not anymore build by default because those gpg
575 versions available in the gnupg 1.4 series are far more matured.
578 Noteworthy changes in version 1.9.15 (2005-01-13)
579 -------------------------------------------------
581 * Fixed passphrase caching bug.
583 * Better support for CCID readers; the reader from Cherry RS 6700 USB
587 Noteworthy changes in version 1.9.14 (2004-12-22)
588 -------------------------------------------------
590 * [gpg-agent] New option --use-standard-socket to allow the use of a
591 fixed socket. gpgsm falls back to this socket if GPG_AGENT_INFO
594 * Ported to MS Windows with some functional limitations.
596 * New tool gpg-preset-passphrase.
599 Noteworthy changes in version 1.9.13 (2004-12-03)
600 -------------------------------------------------
602 * [gpgsm] New option --prefer-system-dirmngr.
604 * Minor cleanups and debugging aids.
607 Noteworthy changes in version 1.9.12 (2004-10-22)
608 -------------------------------------------------
610 * [scdaemon] Partly rewrote the PC/SC code.
612 * Removed the sc-investigate tool. It is now in a separate package
613 available at ftp://ftp.g10code.com/g10code/gscutils/ .
615 * [gpg-agent] Fixed logging problem.
618 Noteworthy changes in version 1.9.11 (2004-10-01)
619 -------------------------------------------------
621 * When using --import along with --with-validation, the imported
622 certificates are validated and only imported if they are fully
625 * [gpg-agent] New option --max-cache-ttl.
627 * [gpg-agent] When used without --daemon or --server, gpg-agent now
628 check whether a agent is already running and usable.
630 * Fixed some i18n problems.
633 Noteworthy changes in version 1.9.10 (2004-07-22)
634 -------------------------------------------------
636 * Fixed a serious bug in the checking of trusted root certificates.
638 * New configure option --enable-agent-pnly allows to build and
639 install just the agent.
641 * Fixed a problem with the log file handling.
644 Noteworthy changes in version 1.9.9 (2004-06-08)
645 ------------------------------------------------
647 * [gpg-agent] The new option --allow-mark-trusted is now required to
648 allow gpg-agent to add a key to the trustlist.txt after user
651 * Creating PKCS#10 requests does now honor the key usage.
654 Noteworthy changes in version 1.9.8 (2004-04-29)
655 ------------------------------------------------
657 * [scdaemon] Overhauled the internal CCID driver.
659 * [scdaemon] Status files named ~/.gnupg/reader_<n>.status are now
660 written when using the internal CCID driver.
662 * [gpgsm] New commands --dump-{,secret,external}-keys to show a very
663 detailed view of the certificates.
665 * The keybox gets now compressed after 3 hours and ephemeral
666 stored certificates are deleted after about a day.
668 * [gpg] Usability fixes for --card-edit. Note, that this has already
669 been ported back to gnupg-1.3
672 Noteworthy changes in version 1.9.7 (2004-04-06)
673 ------------------------------------------------
675 * Instrumented the modules for gpgconf.
677 * Added support for DINSIG card applications.
679 * Include the smimeCapabilities attribute with signed messages.
681 * Now uses the gettext domain "gnupg2" to avoid conflicts with gnupg
685 Noteworthy changes in version 1.9.6 (2004-03-06)
686 ------------------------------------------------
688 * Code cleanups and bug fixes.
691 Noteworthy changes in version 1.9.5 (2004-02-21)
692 ------------------------------------------------
694 * gpg-protect-tool gets now installed into libexec as it ought to be.
695 Cleaned up the build system to better comply with the coding
698 * [gpgsm] The --import command is now able to autodetect pkcs#12
699 files and import secret and private keys from this file format.
700 A new command --export-secret-key-p12 is provided to allow
701 exporting of secret keys in PKCS\#12 format.
703 * [gpgsm] The pinentry will now present a description of the key for
704 whom the passphrase is requested.
706 * [gpgsm] New option --with-validation to check the validity of key
709 * New option --debug-level={none,basic,advanced,expert,guru} to map
710 the debug flags to sensitive levels on a per program base.
713 Noteworthy changes in version 1.9.4 (2004-01-30)
714 ------------------------------------------------
716 * Added support for the Telesec NKS 2.0 card application.
718 * Added simple tool addgnupghome to create .gnupg directories from
721 * Various minor bug fixes and cleanups; mainly gpgsm and gpg-agent
725 Noteworthy changes in version 1.9.3 (2003-12-23)
726 ------------------------------------------------
728 * New gpgsm options --{enable,disable}-ocsp to validate keys using
729 OCSP. This option requires a not yet released DirMngr version.
732 * The --log-file option may now be used to print logs to a socket.
733 Prefix the socket name with "socket://" to enable this. This does
734 not work on all systems and falls back to stderr if there is a
735 problem with the socket.
737 * The options --encrypt-to and --no-encrypt-to now work the same in
738 gpgsm as in gpg. Note, they are also used in server mode.
740 * Duplicated recipients are now silently removed in gpgsm.
743 Noteworthy changes in version 1.9.2 (2003-11-17)
744 ------------------------------------------------
746 * On card key generation is no longer done using the --gen-key
747 command but from the menu provided by the new --card-edit command.
749 * PINs are now properly cached and there are only 2 PINs visible.
750 The 3rd PIN (CHV2) is internally syncronized with the regular PIN.
752 * All kind of other internal stuff.
755 Noteworthy changes in version 1.9.1 (2003-09-06)
756 ------------------------------------------------
758 * Support for OpenSC is back. scdaemon supports a --disable-opensc to
759 disable OpenSC use at runtime, so that PC/SC or ct-API can still be
762 * Rudimentary support for the SCR335 smartcard reader using an
763 internal driver. Requires current libusb from CVS.
768 Noteworthy changes in version 1.9.0 (2003-08-05)
769 ------------------------------------------------
771 ====== PLEASE SEE README-alpha =======
773 * gpg has been renamed to gpg2 and gpgv to gpgv2. This is a
774 temporary change to allow co-existing with stable gpg versions.
776 * ~/.gnupg/gpg.conf-1.9.0 is fist tried as config file before the
779 * Removed the -k, -kv and -kvv commands. -k is now an alias to
780 --list-keys. New command -K as alias for --list-secret-keys.
782 * Removed --run-as-shm-coprocess feature.
784 * gpg does now also use libgcrypt, libgpg-error is required.
786 * New gpgsm commands --call-dirmngr and --call-protect-tool.
788 * Changing a passphrase is now possible using "gpgsm --passwd"
790 * The content-type attribute is now recognized and created.
792 * The agent does now reread certain options on receiving a HUP.
794 * The pinentry is now forked for each request so that clients with
795 different environments are supported. When running in daemon mode
796 and --keep-display is not used the DISPLAY variable is ignored.
798 * Merged stuff from the newpg branch and started this new
802 Copyright 2002, 2003, 2004, 2005, 2006, 2007,
803 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
805 This file is free software; as a special exception the author gives
806 unlimited permission to copy and/or distribute it, with or without
807 modifications, as long as this notice is preserved.
809 This file is distributed in the hope that it will be useful, but
810 WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
811 implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.