gpg: Avoid publishing the GnuPG version by default

* g10/gpg.c (main): initialize opt.emit_version to 0
* doc/gpg.texi: document different default for --emit-version

--

The version of GnuPG in use is not particularly helpful.  It is not
cryptographically verifiable, and it doesn't distinguish between
significant version differences like 2.0.x and 2.1.x.

Additionally, it leaks metadata that can be used to distinguish users
from one another, and can potentially be used to target specific
attacks if there are known behaviors that differ between major
versions.

It's probably better to take the more parsimonious approach to
metadata production by default.

(backport of master commit c9387e41db)

Signed-off-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
This commit is contained in:
Daniel Kahn Gillmor 2016-08-05 10:47:51 -04:00 committed by Justus Winter
parent caff669212
commit cbd0308bc7
2 changed files with 3 additions and 3 deletions

View File

@ -2504,9 +2504,9 @@ protected by the signature.
@opindex emit-version
Force inclusion of the version string in ASCII armored output. If
given once only the name of the program and the major number is
emitted (default), given twice the minor is also emitted, given triple
emitted, given twice the minor is also emitted, given triple
the micro is added, and given quad an operating system identification
is also emitted. @option{--no-emit-version} disables the version
is also emitted. @option{--no-emit-version} (default) disables the version
line.
@item --sig-notation @code{name=value}

View File

@ -2018,7 +2018,7 @@ main (int argc, char **argv)
opt.def_cert_expire="0";
set_homedir ( default_homedir () );
opt.passphrase_repeat=1;
opt.emit_version = 1; /* Limit to the major number. */
opt.emit_version = 0;
opt.list_options |= LIST_SHOW_UID_VALIDITY;
opt.verify_options |= LIST_SHOW_UID_VALIDITY;