po: Update Japanese Translation.
[gnupg.git] / doc / whats-new-in-2.1.txt
index d20239f..ef8b233 100644 (file)
@@ -6,7 +6,7 @@
                       ━━━━━━━━━━━━━━━━━━━━━━━━━━━
 
 
                       ━━━━━━━━━━━━━━━━━━━━━━━━━━━
 
 
-                               2014-11-04
+                               2017-08-28
 
 
 Table of Contents
 
 
 Table of Contents
@@ -27,9 +27,12 @@ Table of Contents
 .. 1.12 Auto-generated revocation certificates
 .. 1.13 Improved card support
 .. 1.14 New format for key listings
 .. 1.12 Auto-generated revocation certificates
 .. 1.13 Improved card support
 .. 1.14 New format for key listings
-.. 1.15 Support for Putty
-.. 1.16 Improved X.509 certificate creation
-.. 1.17 Scripts to create a Windows installer
+.. 1.15 Recipient key from file
+.. 1.16 Using gpg as a filter
+.. 1.17 Support for Putty
+.. 1.18 Export of SSH public keys
+.. 1.19 Improved X.509 certificate creation
+.. 1.20 Scripts to create a Windows installer
 
 
 A possibly revised version of this article can be found at:
 
 
 A possibly revised version of this article can be found at:
@@ -39,11 +42,11 @@ https://gnupg.org/faq/whats-new-in-2.1.html
 1 What’s new in GnuPG 2.1
 ═════════════════════════
 
 1 What’s new in GnuPG 2.1
 ═════════════════════════
 
-  GnuPG version 2.1 comes with a bag of new features which changes some
-  things old-timers are used to.  This page explains the more important
-  ones.  It expects that the reader is familiar with GnuPG version 2.0
-  and aware that GnuPG consists of /gpg/, /gpgsm/, and /gpg-agent/ as
-  its main components.
+  GnuPG version 2.1 (now known as 2.2) comes with a bag of new features
+  which changes some things old-timers are used to.  This page explains
+  the more important ones.  It expects that the reader is familiar with
+  GnuPG version 2.0 and aware that GnuPG consists of /gpg/, /gpgsm/, and
+  /gpg-agent/ as its main components.
 
   • The file /secring.gpg/ is not anymore used to store the secret keys.
     Merging of secret keys is now supported.
 
   • The file /secring.gpg/ is not anymore used to store the secret keys.
     Merging of secret keys is now supported.
@@ -83,6 +86,10 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   • The format of the key listing has been changed to better identify
     the properties of a key.
 
   • The format of the key listing has been changed to better identify
     the properties of a key.
 
+  • A file with the recipient’s key may now be used directly.
+
+  • Gpg can be used to filter out parts of a key.
+
   • The gpg-agent may now be used on Windows as /pageant/ replacement
     for /putty/ in the same way it is used for years on Unix as
     /ssh-agent/ replacement.
   • The gpg-agent may now be used on Windows as /pageant/ replacement
     for /putty/ in the same way it is used for years on Unix as
     /ssh-agent/ replacement.
@@ -91,9 +98,13 @@ https://gnupg.org/faq/whats-new-in-2.1.html
     possible to export them directly in PKCS#8 and PEM format for use on
     TLS servers.
 
     possible to export them directly in PKCS#8 and PEM format for use on
     TLS servers.
 
+  • Export of /ssh/ keys has been integrated.
+
   • The scripts to create a Windows installer are now part of GnuPG.
 
   • The scripts to create a Windows installer are now part of GnuPG.
 
-  Now for the detailed description of these new features:
+  Now for the detailed description of these new features.  Note that the
+  examples assume that /gpg/ is installed as /gpg/.  Your installation
+  may have it installed under the name /gpg2/.
 
 
 1.1 Removal of the secret keyring
 
 
 1.1 Removal of the secret keyring
@@ -172,8 +183,8 @@ https://gnupg.org/faq/whats-new-in-2.1.html
 
   This is best shown with an example:
 
 
   This is best shown with an example:
 
-  â\95­────
-  │ $ gpg2 --gen-key
+  â\94\8c────
+  │ $ gpg --gen-key
   │ gpg (GnuPG) 2.1.0; Copyright (C) 2014 Free Software Foundation, Inc.
   │ This is free software: you are free to change and redistribute it.
   │ There is NO WARRANTY, to the extent permitted by law.
   │ gpg (GnuPG) 2.1.0; Copyright (C) 2014 Free Software Foundation, Inc.
   │ This is free software: you are free to change and redistribute it.
   │ There is NO WARRANTY, to the extent permitted by law.
@@ -194,7 +205,7 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   │       Key fingerprint = 0290 5ABF 17C7 81FB C390  9B00 636A 1BBD 68FD 0088
   │ uid       [ultimate] Glenn Greenwald <glenn@example.org>
   │ sub   rsa2048/84439DCD 2014-11-03
   │       Key fingerprint = 0290 5ABF 17C7 81FB C390  9B00 636A 1BBD 68FD 0088
   │ uid       [ultimate] Glenn Greenwald <glenn@example.org>
   │ sub   rsa2048/84439DCD 2014-11-03
-  â\95°────
+  â\94\94────
 
   Thus only the name and the mail address are required.  For all other
   parameters the default values are used.  Many graphical frontends
 
   Thus only the name and the mail address are required.  For all other
   parameters the default values are used.  Many graphical frontends
@@ -212,11 +223,11 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   options to create an ECC key.
 
   For those who want to experiment with ECC or already want to prepare a
   options to create an ECC key.
 
   For those who want to experiment with ECC or already want to prepare a
-  key for future use, the command `--gen-full-key' along with the option
+  key for future use, the command `--full-gen-key' along with the option
   `--expert' is the enabler:
 
   `--expert' is the enabler:
 
-  â\95­────
-  │ $ gpg2 --expert --full-gen-key
+  â\94\8c────
+  │ $ gpg --expert --full-gen-key
   │ gpg (GnuPG) 2.1.0; Copyright (C) 2014 Free Software Foundation, Inc.
   │ This is free software: you are free to change and redistribute it.
   │ There is NO WARRANTY, to the extent permitted by law.
   │ gpg (GnuPG) 2.1.0; Copyright (C) 2014 Free Software Foundation, Inc.
   │ This is free software: you are free to change and redistribute it.
   │ There is NO WARRANTY, to the extent permitted by law.
@@ -264,7 +275,7 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   │       Key fingerprint = E630 27CF 3D68 22A7 6FF2  093E D179 9E72 3826 60E3
   │ uid       [ultimate] Edward Snowden <edward@example.org>
   │ sub   nistp256/48C9A997 2014-11-03 nistp256
   │       Key fingerprint = E630 27CF 3D68 22A7 6FF2  093E D179 9E72 3826 60E3
   │ uid       [ultimate] Edward Snowden <edward@example.org>
   │ sub   nistp256/48C9A997 2014-11-03 nistp256
-  â\95°────
+  â\94\94────
 
   In this example we created a primary ECC key for signing and an subkey
   for encryption.  For both we use the NIST P-256 curve.  The key may
 
   In this example we created a primary ECC key for signing and an subkey
   for encryption.  For both we use the NIST P-256 curve.  The key may
@@ -284,8 +295,8 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   releases.  Recall that an encryption subkey can be added to a key at
   any time.  If you want to create a signing key you may do it this way:
 
   releases.  Recall that an encryption subkey can be added to a key at
   any time.  If you want to create a signing key you may do it this way:
 
-  â\95­────
-  │ $ gpg2 --expert --full-gen-key
+  â\94\8c────
+  │ $ gpg --expert --full-gen-key
   │ gpg (GnuPG) 2.1.0; Copyright (C) 2014 Free Software Foundation, Inc.
   │ This is free software: you are free to change and redistribute it.
   │ There is NO WARRANTY, to the extent permitted by law.
   │ gpg (GnuPG) 2.1.0; Copyright (C) 2014 Free Software Foundation, Inc.
   │ This is free software: you are free to change and redistribute it.
   │ There is NO WARRANTY, to the extent permitted by law.
@@ -335,7 +346,7 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   │ pub   ed25519/5C1AFC2A 2014-11-03
   │       Key fingerprint = ED85 4D98 5D8F 502F C6C5  FFB2 AA81 319E 5C1A FC2A
   │ uid       [ultimate] Laura Poitras <laura@example.org>
   │ pub   ed25519/5C1AFC2A 2014-11-03
   │       Key fingerprint = ED85 4D98 5D8F 502F C6C5  FFB2 AA81 319E 5C1A FC2A
   │ uid       [ultimate] Laura Poitras <laura@example.org>
-  â\95°────
+  â\94\94────
 
   Support for ECC keys is available only on some keyservers but it is
   expected that this will be fixed over the next few months.
 
   Support for ECC keys is available only on some keyservers but it is
   expected that this will be fixed over the next few months.
@@ -355,18 +366,18 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   parameter file or interactive prompts for generating a key or to sign
   a key.  This can now be accomplished with a few new commands:
 
   parameter file or interactive prompts for generating a key or to sign
   a key.  This can now be accomplished with a few new commands:
 
-  â\95­────
-  │ $ gpg2 --batch --quick-gen-key 'Daniel Ellsberg <ellsberg@example.org>'
+  â\94\8c────
+  │ $ gpg --batch --quick-gen-key 'Daniel Ellsberg <ellsberg@example.org>'
   │ gpg: key 911B90A9 marked as ultimately trusted
   │ gpg: key 911B90A9 marked as ultimately trusted
-  â\95°────
+  â\94\94────
 
   If a key with that user id already exists, gpg bails out with an error
   message.  You can force creation using the option `--yes'.  If you
   want some more control, you may not use `--batch' and gpg will ask for
   confirmation and show the resulting key:
 
 
   If a key with that user id already exists, gpg bails out with an error
   message.  You can force creation using the option `--yes'.  If you
   want some more control, you may not use `--batch' and gpg will ask for
   confirmation and show the resulting key:
 
-  â\95­────
-  │ $ gpg2 --quick-gen-key 'Daniel Ellsberg <ellsberg@example.org>'
+  â\94\8c────
+  │ $ gpg --quick-gen-key 'Daniel Ellsberg <ellsberg@example.org>'
   │ About to create a key for:
   │     "Daniel Ellsberg <ellsberg@example.org>"
   │
   │ About to create a key for:
   │     "Daniel Ellsberg <ellsberg@example.org>"
   │
@@ -379,14 +390,14 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   │       Key fingerprint = 15CB 723E 2000 A1A8 2505  F3B7 CC00 B501 BD19 AC1C
   │ uid       [ultimate] Daniel Ellsberg <ellsberg@example.org>
   │ sub   rsa2048/72A4D018 2014-11-04
   │       Key fingerprint = 15CB 723E 2000 A1A8 2505  F3B7 CC00 B501 BD19 AC1C
   │ uid       [ultimate] Daniel Ellsberg <ellsberg@example.org>
   │ sub   rsa2048/72A4D018 2014-11-04
-  â\95°────
+  â\94\94────
 
   Another common operation is to sign a key.  /gpg/ can do this directly
   from the command line by giving the fingerprint of the to-be-signed
   key:
 
 
   Another common operation is to sign a key.  /gpg/ can do this directly
   from the command line by giving the fingerprint of the to-be-signed
   key:
 
-  â\95­────
-  │ $ gpg2 --quick-sign-key  '15CB 723E 2000 A1A8 2505  F3B7 CC00 B501 BD19 AC1C'
+  â\94\8c────
+  │ $ gpg --quick-sign-key  '15CB 723E 2000 A1A8 2505  F3B7 CC00 B501 BD19 AC1C'
   │
   │ pub  rsa2048/BD19AC1C
   │      created: 2014-11-04  expires: never       usage: SC
   │
   │ pub  rsa2048/BD19AC1C
   │      created: 2014-11-04  expires: never       usage: SC
@@ -394,14 +405,14 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   │  Primary key fingerprint: 15CB 723E 2000 A1A8 2505  F3B7 CC00 B501 BD19 AC1C
   │
   │      Daniel Ellsberg <ellsberg@example.org>
   │  Primary key fingerprint: 15CB 723E 2000 A1A8 2505  F3B7 CC00 B501 BD19 AC1C
   │
   │      Daniel Ellsberg <ellsberg@example.org>
-  â\95°────
+  â\94\94────
 
   In case the key has already been signed, the command prints a note and
   exits with success.  In case you want to check that it really worked,
 
   In case the key has already been signed, the command prints a note and
   exits with success.  In case you want to check that it really worked,
-  use `=--check-sigs' as usual:
+  use `--check-sigs' as usual:
 
 
-  â\95­────
-  │ $ gpg2 --check-sigs  '15CB 723E 2000 A1A8 2505  F3B7 CC00 B501 BD19 AC1C'
+  â\94\8c────
+  │ $ gpg --check-sigs  '15CB 723E 2000 A1A8 2505  F3B7 CC00 B501 BD19 AC1C'
   │ gpg: checking the trustdb
   │ gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
   │ gpg: depth: 0  valid:   6  signed:   1  trust: 0-, 0q, 0n, 0m, 0f, 6u
   │ gpg: checking the trustdb
   │ gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
   │ gpg: depth: 0  valid:   6  signed:   1  trust: 0-, 0q, 0n, 0m, 0f, 6u
@@ -411,7 +422,7 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   │ sig!         68FD0088 2014-11-04  Glenn Greenwald <glenn@example.org>
   │ sub   rsa2048/72A4D018 2014-11-04
   │ sig!         BD19AC1C 2014-11-04  Daniel Ellsberg <ellsberg@example.org>
   │ sig!         68FD0088 2014-11-04  Glenn Greenwald <glenn@example.org>
   │ sub   rsa2048/72A4D018 2014-11-04
   │ sig!         BD19AC1C 2014-11-04  Daniel Ellsberg <ellsberg@example.org>
-  â\95°────
+  â\94\94────
 
 
   The fingerprint may also be given without the spaces in which case
 
 
   The fingerprint may also be given without the spaces in which case
@@ -420,6 +431,71 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   To create a non-exportable key signature, use the command
   `--quick-lsign-key' instead.
 
   To create a non-exportable key signature, use the command
   `--quick-lsign-key' instead.
 
+  Since version 2.1.4 it possible to directly add another user id to an
+  existing key:
+
+  ┌────
+  │ $ gpg -k 8CFDE12197965A9A
+  │ pub   ed25519/8CFDE12197965A9A 2014-08-19
+  │ uid               [ unknown] EdDSA sample key 1
+  │ $ gpg --quick-adduid 8CFDE12197965A9A 'Sample 2 <me@example.org>'
+  │ $ gpg -k 8CFDE12197965A9A
+  │ pub   ed25519/8CFDE12197965A9A 2014-08-19
+  │ uid               [ unknown] Sample 2 <me@example.org>
+  │ uid               [ unknown] EdDSA sample key 1
+  └────
+
+  Since version 2.1.13 another subkey can directly be added to an
+  existing key:
+
+  ┌────
+  │ $ gpg --quick-addkey 15CB723E2000A1A82505F3B7CC00B501BD19AC1C - - 2016-12-31
+  │ $ gpg -k 15CB723E2000A1A82505F3B7CC00B501BD19AC1C
+  │ pub   rsa2048 2014-11-04 [SC]
+  │       15CB723E2000A1A82505F3B7CC00B501BD19AC1C
+  │ uid           [ unknown] Daniel Ellsberg <ellsberg@example.org>
+  │ sub   rsa2048 2014-11-04 [E]
+  │ sub   rsa2048 2016-06-06 [E] [expires: 2016-12-31]
+  └────
+
+  Here we created another encryption subkey with an expiration date.
+  The key listing also shows the default key listing format introduced
+  with 2.1.13.  There are a lot of other options to the `--quick-addkey'
+  command which are described in the manual.
+
+  Since version 2.1.14 it possible to revoke a user id on an existing
+  key:
+
+  ┌────
+  │ $ gpg -k 8CFDE12197965A9A
+  │ pub   ed25519/8CFDE12197965A9A 2014-08-19
+  │ uid               [ unknown] Sample 2 <me@example.org>
+  │ uid               [ unknown] EdDSA sample key 1
+  │ $ gpg --quick-revuid 8CFDE12197965A9A 'EdDSA sample key 1'
+  │ $ gpg -k 8CFDE12197965A9A
+  │ pub   ed25519/8CFDE12197965A9A 2014-08-19
+  │ uid               [ unknown] Sample 2 <me@example.org>
+  └────
+
+  Since version 2.1.17 the expiration date of the primary key can be
+  changed directly:
+
+  ┌────
+  │ $ gpg --quick-set-expire 5B83120DB1E3A65AE5A8DCF6AA43F1DCC7FED1B7 2017-12-31
+  │ $ gpg -K 5B83120DB1E3A65AE5A8DCF6AA43F1DCC7FED1B7
+  │ sec   rsa2048 2016-06-22 [SC] [expires: 2017-12-31]
+  │       5B83120DB1E3A65AE5A8DCF6AA43F1DCC7FED1B7
+  │ uid           [ultimate] steve.biko@example.net
+  │ ssb   rsa2048 2016-06-22 [E]
+  │
+  │ $ gpg --quick-set-expire 5B83120DB1E3A65AE5A8DCF6AA43F1DCC7FED1B7 none
+  │ $ gpg -K 5B83120DB1E3A65AE5A8DCF6AA43F1DCC7FED1B7
+  │ sec   rsa2048 2016-06-22 [SC]
+  │       5B83120DB1E3A65AE5A8DCF6AA43F1DCC7FED1B7
+  │ uid           [ultimate] steve.biko@example.net
+  │ ssb   rsa2048 2016-06-22 [E]
+  └────
+
 
 1.6 Improved Pinentry support
 ─────────────────────────────
 
 1.6 Improved Pinentry support
 ─────────────────────────────
@@ -453,9 +529,9 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   at login time and use an environment variable (`GPG_AGENT_INFO') to
   tell the other GnuPG modules how to connect to the agent.  However,
   correctly managing the start up and this environment variable is
   at login time and use an environment variable (`GPG_AGENT_INFO') to
   tell the other GnuPG modules how to connect to the agent.  However,
   correctly managing the start up and this environment variable is
-  cumbersome so that that an easier method is required.  Since GnuPG
-  2.0.16 the `--use-standard-socket' option already allowed to start the
-  agent on the fly; however the environment variable was still required.
+  cumbersome so that an easier method is required.  Since GnuPG 2.0.16
+  the `--use-standard-socket' option already allowed to start the agent
+  on the fly; however the environment variable was still required.
 
   With GnuPG 2.1 the need of `GPG_AGENT_INFO' has been completely
   removed and the variable is ignored.  Instead a fixed Unix domain
 
   With GnuPG 2.1 the need of `GPG_AGENT_INFO' has been completely
   removed and the variable is ignored.  Instead a fixed Unix domain
@@ -476,14 +552,14 @@ https://gnupg.org/faq/whats-new-in-2.1.html
 ───────────────────────────────
 
   A deficit of the OpenPGP protocol is that signatures carry only a
 ───────────────────────────────
 
   A deficit of the OpenPGP protocol is that signatures carry only a
-  limited indication on which public has been used to create a
+  limited indication on which public key has been used to create a
   signature.  Thus a verification engine may only use this “long key id”
   signature.  Thus a verification engine may only use this “long key id”
-  to look up the the key in its own store or from a public keyserver.
+  to look up the key in its own store or from a public keyserver.
   Unfortunately it has now become possible to create a key with a long
   key id matching the key id of another key.  Importing a key with a
   long key id already used by another key in gpg’s local key store was
   not possible due to checks done on import.  Now, if the “wrong” key
   Unfortunately it has now become possible to create a key with a long
   key id matching the key id of another key.  Importing a key with a
   long key id already used by another key in gpg’s local key store was
   not possible due to checks done on import.  Now, if the “wrong” key
-  has been imported first /gpg/ would not allow to later import the
+  has been imported first /gpg/ would not allow later import of the
   second “correct” key.  This problem has been fixed in 2.1 by allowing
   the import and by doing trial verification against all matching keys.
 
   second “correct” key.  This problem has been fixed in 2.1 by allowing
   the import and by doing trial verification against all matching keys.
 
@@ -516,25 +592,25 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   enable instant round-robin DNS assignment of random keyservers.  A
   problem with that approach is that the DNS resolver is not aware of
   the state of the keyserver.  If a keyserver has gone down or a routing
   enable instant round-robin DNS assignment of random keyservers.  A
   problem with that approach is that the DNS resolver is not aware of
   the state of the keyserver.  If a keyserver has gone down or a routing
-  problems occurs, /gpg/ and its keyserver helpers were not ware of it
+  problems occurs, /gpg/ and its keyserver helpers were not aware of it
   and would try over and over to use the same, dead, keyserver up until
   the DNS information expires and a the DNS resolver assigned a new
   server from the pool.
 
   The new /dirmngr/ in GnuPG does not use the implicit round-robin of
   and would try over and over to use the same, dead, keyserver up until
   the DNS information expires and a the DNS resolver assigned a new
   server from the pool.
 
   The new /dirmngr/ in GnuPG does not use the implicit round-robin of
-  the DNS resolver but uses its own DNS look up and keeps an internal
+  the DNS resolver but uses its own DNS lookup and keeps an internal
   table of all hosts from the pool along with the encountered aliveness
   state.  Thus after a failure (timeout) of a request, /dirmngr/ flags a
   host as dead and randomly selects another one from the pool.  After a
   few hours the flag is removed so that the host will be tried again.
   table of all hosts from the pool along with the encountered aliveness
   state.  Thus after a failure (timeout) of a request, /dirmngr/ flags a
   host as dead and randomly selects another one from the pool.  After a
   few hours the flag is removed so that the host will be tried again.
-  It is also possible to mark a specif host from a pool explicitly as
-  dead so that it won’t be used in future.  To interact with the
+  It is also possible to mark a specific host from a pool explicitly as
+  dead so that it won’t be used in the future.  To interact with the
   /dirmngr/ the `gpg-connect-agent' tool is used:
 
   /dirmngr/ the `gpg-connect-agent' tool is used:
 
-  â\95­────
+  â\94\8c────
   │ $ gpg-connect-agent --dirmngr 'help keyserver' /bye
   │ $ gpg-connect-agent --dirmngr 'keyserver --hosttable' /bye
   │ $ gpg-connect-agent --dirmngr 'help keyserver' /bye
   │ $ gpg-connect-agent --dirmngr 'keyserver --hosttable' /bye
-  â\95°────
+  â\94\94────
 
   The first command prints a help screen for the keyserver command and
   the second command prints the current host table.
 
   The first command prints a help screen for the keyserver command and
   the second command prints the current host table.
@@ -555,11 +631,11 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   public keys (certificates) which we call a /keybox/. That file format
   carries meta information about the stored keys and thus allows
   searching without actually parsing the key and computing fingerprints
   public keys (certificates) which we call a /keybox/. That file format
   carries meta information about the stored keys and thus allows
   searching without actually parsing the key and computing fingerprints
-  and such.  The /keybox/ format has been designed protocol independent
-  and with 2.1 support for OpenPGP keys has been added.  Random access
-  to the keys is now really fast and keyrings with 30000 keys and more
-  are now easily possible.  That change also enables us to easily
-  introduce other storage methods
+  and such.  The /keybox/ format has been designed to be protocol
+  independent and with 2.1 support for OpenPGP keys has been added.
+  Random access to the keys is now really fast and keyrings with 30000
+  keys and more are now easily possible.  That change also enables us to
+  easily introduce other storage methods
 
   If no `pubring.gpg' is found, /gpg/ defaults to the new /keybox/
   format and creates a `pubring.kbx' keybox file.  If such a keybox file
 
   If no `pubring.gpg' is found, /gpg/ defaults to the new /keybox/
   format and creates a `pubring.kbx' keybox file.  If such a keybox file
@@ -571,16 +647,23 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   keybox file.
 
   To convert an existing `pubring.gpg' file to the keybox format, you
   keybox file.
 
   To convert an existing `pubring.gpg' file to the keybox format, you
-  first rename the file to (for example) `publickeys' so it won’t be
-  recognized by any GnuPG version and then you run the command
-
-  ╭────
-  │ $ gpg2 --import publickeys
-  ╰────
+  first backup the ownertrust values, then rename the file to (for
+  example) `publickeys', so it won’t be recognized by any GnuPG version,
+  then run import, and finally restore the ownertrust values:
+
+  ┌────
+  │ $ cd ~/.gnupg
+  │ $ gpg --export-ownertrust >otrust.lst
+  │ $ mv pubring.gpg publickeys
+  │ $ gpg --import-options import-local-sigs --import publickeys
+  │ $ gpg --import-ownertrust otrust.lst
+  └────
 
   You may then rename the `publickeys' file back so that it can be used
   by older GnuPG versions.  Remember that in this case you have two
 
   You may then rename the `publickeys' file back so that it can be used
   by older GnuPG versions.  Remember that in this case you have two
-  independent copies of the public keys.
+  independent copies of the public keys.  The ownertrust values are kept
+  by all gpg versions in the file `trustdb.gpg' but the above
+  precautions need to be taken to keep them over an import.
 
 
 1.12 Auto-generated revocation certificates
 
 
 1.12 Auto-generated revocation certificates
@@ -597,12 +680,19 @@ https://gnupg.org/faq/whats-new-in-2.1.html
 ──────────────────────────
 
   The /scdaemon/, which is responsible for accessing smardcards and
 ──────────────────────────
 
   The /scdaemon/, which is responsible for accessing smardcards and
-  other tokens, has received may updates.  In particular plugable USB
+  other tokens, has received many updates.  In particular pluggable USB
   readers with a fixed card now work smoothless and similar to standard
   readers with a fixed card now work smoothless and similar to standard
-  readers.  The latest features of the /gnuk/ token are supported.  Code
-  for the HSM smartcard has been added.  More card readers with a PIN
+  readers.  The latest features of the [gnuk] token are supported.  Code
+  for the SmartCard-HSM has been added.  More card readers with a PIN
   pad are supported.  The internal CCID driver does now also work with
   pad are supported.  The internal CCID driver does now also work with
-  certain non-auto configuration equipped readers.
+  certain non-auto-configuration equipped readers.
+
+  Since version 2.1.19 multiple card readers are support and the format
+  of the Pinentry prompts has been changed to show more information on
+  the requested card.
+
+
+  [gnuk] http://www.fsij.org/doc-gnuk/
 
 
 1.14 New format for key listings
 
 
 1.14 New format for key listings
@@ -616,15 +706,23 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   either use the algorithm name with appended key length or use the name
   of the curve:
 
   either use the algorithm name with appended key length or use the name
   of the curve:
 
-  â\95­────
+  â\94\8c────
   │ pub   2048D/1E42B367 2007-12-31 [expires: 2018-12-31]
   │ pub   2048D/1E42B367 2007-12-31 [expires: 2018-12-31]
-  │ pub   dsa2048/1E42B367 2007-12-31 [expires: 2018-12-31]
-  │ pub   ed25519/0AA914C9 2014-10-18
-  ╰────
-
-  The first two lines show the same key in the old format and in the new
-  format.  The third line shows an example of an ECC key using the
-  ed25519 curve.
+  │
+  │ pub   dsa2048 2007-12-31 [SC] [expires: 2018-12-31]
+  │       80615870F5BAD690333686D0F2AD85AC1E42B367
+  │
+  │ pub   ed25519 2014-10-18 [SC]
+  │       0B7F0C1D690BC440D5AFF9B56902F00A0AA914C9
+  └────
+
+  The first two "pub"-items show the same key in the old format and in
+  the new format.  The third "pub"-item shows an example of an ECC key
+  using an ed25519 curve.  Note that since version 2.1.13 the key id is
+  not anymore shown.  Instead the full fingerprint is shown in a compact
+  format; by using the option `--with-fingerprint' the non-compact
+  format is used.  The `--keyid-format' option can be used to switch
+  back to the discouraged format which prints only the key id.
 
   As a further change the validity of a key is now shown by default;
   that is `show-uid-validity' is implicitly used for the
 
   As a further change the validity of a key is now shown by default;
   that is `show-uid-validity' is implicitly used for the
@@ -632,16 +730,63 @@ https://gnupg.org/faq/whats-new-in-2.1.html
 
   The annotated key listing produced by the `--with-colons' options did
   not change.  However a couple of new fields have been added, for
 
   The annotated key listing produced by the `--with-colons' options did
   not change.  However a couple of new fields have been added, for
-  example if the new option `--with-secret-' is used the “S/N of a token
+  example if the new option `--with-secret' is used the “S/N of a token
   field” indicates the presence of a secret key even in a public key
   listing.  This option is supported by recent [GPGME] versions and
   makes writing of key manager software easier.
 
 
   field” indicates the presence of a secret key even in a public key
   listing.  This option is supported by recent [GPGME] versions and
   makes writing of key manager software easier.
 
 
-  [GPGME] https://gnupg.org/related_software/gpgme/
+  [GPGME] https://gnupg.org/software/gpgme/
+
+
+1.15 Recipient key from file
+────────────────────────────
 
 
+  Since version 2.1.14 it is possible to specify the recipient’s key by
+  providing a file with that key.  This done with the new options
+  `--recipient-file' (or short `-f') and `--hidden-recipient-file' (or
+  short `-F').  The file must containing exactly one key in binary or
+  armored format.  All keys specified with those options are always
+  considered fully valid.  These option may be mixed with the regular
+  options to specify a key.  Along with the new convenience option
+  `--no-keyring' it is now possible to encrypt data without maintaining
+  a local keyring.
 
 
-1.15 Support for Putty
+
+1.16 Using gpg as a filter
+──────────────────────────
+
+  Since version 2.1.14 the export and import options have been enhanced
+  to allow the use of /gpg/ to modify a key without first stroing it in
+  the keyring.  For example:
+
+  ┌────
+  │ $ gpg --import-options import-minimal,import-export \
+  │       --output smallkey.gpg --import key.gpg
+  └────
+
+  copies the keys in `keys.gpg' to `smallkey.gpg' while also removing
+  all key signatures except for the latest self-signatures.  This can
+  even be further restricted to copy only a specific user ID to the
+  output file:
+
+  ┌────
+  │ $ gpg --import-options import-minimal,import-export \
+  │       --import-filter keepuid='mbox = foo@example.org' \
+  │       --output smallkey.gpg --import key.gpg
+  └────
+
+  Here the new `--import-filter' option is used to remove all user IDs
+  except for those which have the mail address “foo@example.org”.  The
+  same is also possible while exporting a key:
+
+  ┌────
+  │ $ gpg --export-filter keepuid='mbox = me@example.org' \
+  │       --armor --export 8CFDE12197965A9A >smallkey.asc
+  └────
+
+
+1.17 Support for Putty
 ──────────────────────
 
   On Windows the new option `--enable-putty-support' allows gpg-agent to
 ──────────────────────
 
   On Windows the new option `--enable-putty-support' allows gpg-agent to
@@ -653,7 +798,18 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   [Putty] http://www.chiark.greenend.org.uk/~sgtatham/putty/
 
 
   [Putty] http://www.chiark.greenend.org.uk/~sgtatham/putty/
 
 
-1.16 Improved X.509 certificate creation
+1.18 Export of SSH public keys
+──────────────────────────────
+
+  The new command `--export-ssh-key' makes it easy to export an /ssh/
+  public key in the format used for ssh’s `authorized_keys' file.  By
+  default the command exports the newest subkey with an authorization
+  usage flags.  A special syntax can be used to export other subkeys.
+  This command is available since 2.1.11 and replaces the former debug
+  utility /gpgkey2ssh/.
+
+
+1.19 Improved X.509 certificate creation
 ────────────────────────────────────────
 
   In addition to an improved certificate signing request menu, it is now
 ────────────────────────────────────────
 
   In addition to an improved certificate signing request menu, it is now
@@ -663,7 +819,7 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   In batch mode the certificate creation dialog can now be controlled by
   a parameter file with several new keywords.  Such a parameter file
   allows the creation of arbitrary X.509 certificates similar to what
   In batch mode the certificate creation dialog can now be controlled by
   a parameter file with several new keywords.  Such a parameter file
   allows the creation of arbitrary X.509 certificates similar to what
-  can be done with /openssl/.  It may this be used as the base for a CA
+  can be done with /openssl/.  It may thus be used as the base for a CA
   software.  For details see the “CSR and certificate creation” section
   in the manual.
 
   software.  For details see the “CSR and certificate creation” section
   in the manual.
 
@@ -673,7 +829,7 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   and directly exported in a format suitable for OpenSSL based servers.
 
 
   and directly exported in a format suitable for OpenSSL based servers.
 
 
-1.17 Scripts to create a Windows installer
+1.20 Scripts to create a Windows installer
 ──────────────────────────────────────────
 
   GnuPG now comes with the /speedo/ build system which may be used to
 ──────────────────────────────────────────
 
   GnuPG now comes with the /speedo/ build system which may be used to
@@ -686,9 +842,9 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   and GpgEX as a Windows Explorer extension.  GnuPG needs to be unpacked
   and from the top source directory you run this command
 
   and GpgEX as a Windows Explorer extension.  GnuPG needs to be unpacked
   and from the top source directory you run this command
 
-  â\95­────
+  â\94\8c────
   │ make -f build-aux/speedo.mk w32-installer
   │ make -f build-aux/speedo.mk w32-installer
-  â\95°────
+  â\94\94────
 
   This command downloads all direct dependencies, checks the signatures
   using the GnuPG version from the build system (all Linux distros
 
   This command downloads all direct dependencies, checks the signatures
   using the GnuPG version from the build system (all Linux distros
@@ -696,12 +852,14 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   uses NSIS to create the installer.  Although this sounds easy, some
   experience in setting up a development machine is still required.
   Some versions of the toolchain exhibit bugs and thus your mileage may
   uses NSIS to create the installer.  Although this sounds easy, some
   experience in setting up a development machine is still required.
   Some versions of the toolchain exhibit bugs and thus your mileage may
-  vary.  Support for keyserver access over TLS is currently not
-  available but will be added with one of the next point releases.
+  vary.  See the [Wiki] for more info.
+
+  Support for keyserver access over TLS is currently not available but
+  will be added with one of the next point releases.
 
 
 
 
 
 
-  # Copyright 2014 The GnuPG Project.
+  # Copyright 2014--2017 The GnuPG Project.
   # This work is licensed under the Creative Commons
   # Attribution-ShareAlike 4.0 International License.  To view a copy of
   # this license, visit http://creativecommons.org/licenses/by-sa/4.0/
   # This work is licensed under the Creative Commons
   # Attribution-ShareAlike 4.0 International License.  To view a copy of
   # this license, visit http://creativecommons.org/licenses/by-sa/4.0/
@@ -710,3 +868,6 @@ https://gnupg.org/faq/whats-new-in-2.1.html
   #
   # The canonical source for this article can be found in the gnupg-doc
   # git repository as web/faq/whats-new-in-2.1.org.
   #
   # The canonical source for this article can be found in the gnupg-doc
   # git repository as web/faq/whats-new-in-2.1.org.
+
+
+  [Wiki] https://wiki.gnupg.org/Build2.1_Windows