2006-08-16 16:54:19 +02:00
|
|
|
@c Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
|
|
|
|
@c 2006 Free Software Foundation, Inc.
|
2004-09-30 10:39:08 +02:00
|
|
|
@c This is part of the GnuPG manual.
|
|
|
|
@c For copying conditions, see the file gnupg.texi.
|
2003-12-09 10:07:09 +01:00
|
|
|
|
2004-09-30 10:39:08 +02:00
|
|
|
@node Invoking GPG
|
|
|
|
@chapter Invoking GPG
|
|
|
|
@cindex GPG command options
|
|
|
|
@cindex command options
|
|
|
|
@cindex options, GPG command
|
2003-12-09 10:07:09 +01:00
|
|
|
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@manpage gpg2.1
|
|
|
|
@ifset manverb
|
|
|
|
.B gpg2
|
2006-08-17 21:58:28 +02:00
|
|
|
\- OpenPGP encryption and signing tool
|
2006-08-17 20:01:25 +02:00
|
|
|
@end ifset
|
|
|
|
|
|
|
|
@mansect synopsis
|
|
|
|
@ifset manverb
|
|
|
|
.B gpg2
|
|
|
|
.RB [ \-\-homedir
|
|
|
|
.IR dir ]
|
|
|
|
.RB [ \-\-options
|
|
|
|
.IR file ]
|
|
|
|
.RI [ options ]
|
|
|
|
.I command
|
|
|
|
.RI [ args ]
|
|
|
|
@end ifset
|
|
|
|
|
|
|
|
@mansect description
|
|
|
|
@command{gpg2} is the OpenPGP part of the GNU Privacy Guard (GnuPG). It
|
|
|
|
is a tool to provide digitla encryption and signing services using the
|
|
|
|
OpenPGP standard. @command{gpg2} features complete key management and
|
|
|
|
all bells and whistles you can expect from a decent OpenPGP
|
|
|
|
implementation.
|
|
|
|
|
|
|
|
In contrast to the standalone version @command{gpg}, which is more
|
2006-08-16 16:54:19 +02:00
|
|
|
suited for server and embedded platforms, this version is installed
|
|
|
|
under the name @command{gpg2} and more targeted to the desktop as it
|
|
|
|
requires several other modules to be installed. The standalone version
|
|
|
|
will be kept maintained and it is possible to install both versions on
|
|
|
|
the same system. If you need to use different configuration files, you
|
|
|
|
should make use of something like @file{gpg.conf-2} instead of just
|
|
|
|
@file{gpg.conf}.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@manpause
|
2006-08-16 16:54:19 +02:00
|
|
|
Documentation for the old standard @command{gpg} is available as man page
|
2004-09-30 10:39:08 +02:00
|
|
|
man page and at @inforef{Top,GnuPG 1,gpg}.
|
2003-12-09 10:07:09 +01:00
|
|
|
|
2006-08-16 16:54:19 +02:00
|
|
|
@xref{Option Index}, for an index to @command{GPG}'s commands and options.
|
2006-08-17 20:01:25 +02:00
|
|
|
@mancont
|
2006-08-16 16:54:19 +02:00
|
|
|
|
|
|
|
@menu
|
|
|
|
* GPG Commands:: List of all commands.
|
|
|
|
* GPG Options:: List of all options.
|
|
|
|
* GPG Configuration:: Configuration files.
|
|
|
|
* GPG Examples:: Some usage examples.
|
|
|
|
|
|
|
|
Developer information:
|
|
|
|
@c * Unattended Usage:: Using @command{gpg} from other programs.
|
|
|
|
@c * GPG Protocol:: The protocol the server mode uses.
|
|
|
|
@end menu
|
|
|
|
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
|
2006-08-16 16:54:19 +02:00
|
|
|
@c *******************************************
|
|
|
|
@c *************** ****************
|
|
|
|
@c *************** COMMANDS ****************
|
|
|
|
@c *************** ****************
|
|
|
|
@c *******************************************
|
2006-08-17 20:01:25 +02:00
|
|
|
@mansect commands
|
2006-08-16 16:54:19 +02:00
|
|
|
@node GPG Commands
|
|
|
|
@section Commands
|
|
|
|
|
|
|
|
Commands are not distinguished from options execpt for the fact that
|
|
|
|
only one command is allowed.
|
|
|
|
|
|
|
|
@code{gpg2} may be run with no commands, in which case it will
|
|
|
|
perform a reasonable action depending on the type of file it is given
|
|
|
|
as input (an encrypted message is decrypted, a signature is verified,
|
|
|
|
a file containing keys is listed).
|
|
|
|
|
|
|
|
Please remember that option as well as command parsing stops as soon as
|
|
|
|
a non-option is encountered, you can explicitly stop parsing by
|
|
|
|
using the special option "--".
|
|
|
|
|
|
|
|
|
|
|
|
@menu
|
|
|
|
* General GPG Commands:: Commands not specific to the functionality.
|
|
|
|
* Operational GPG Commands:: Commands to select the type of operation.
|
|
|
|
* OpenPGP Key Management:: How to manage your keys.
|
|
|
|
@end menu
|
|
|
|
|
|
|
|
|
|
|
|
@c *******************************************
|
|
|
|
@c ********** GENERAL COMMANDS *************
|
|
|
|
@c *******************************************
|
|
|
|
@node General GPG Commands
|
|
|
|
@subsection Commands not specific to the function
|
|
|
|
|
|
|
|
@table @gnupgtabopt
|
|
|
|
@item --version
|
|
|
|
@opindex version
|
|
|
|
Print the program version and licensing information. Note that you
|
|
|
|
cannot abbreviate this command.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --help
|
|
|
|
@itemx -h
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex help
|
|
|
|
Print a usage message summarizing the most useful command line options.
|
|
|
|
Not that you cannot abbreviate this command.
|
|
|
|
|
|
|
|
@item --warranty
|
|
|
|
@opindex warranty
|
|
|
|
Print warranty information.
|
|
|
|
|
|
|
|
@item --dump-options
|
|
|
|
@opindex dump-options
|
|
|
|
Print a list of all available options and commands. Note that you cannot
|
|
|
|
abbreviate this command.
|
|
|
|
@end table
|
|
|
|
|
|
|
|
|
|
|
|
@c *******************************************
|
|
|
|
@c ******** OPERATIONAL COMMANDS ***********
|
|
|
|
@c *******************************************
|
|
|
|
@node Operational GPG Commands
|
|
|
|
@subsection Commands to select the type of operation
|
|
|
|
|
|
|
|
|
|
|
|
@table @gnupgtabopt
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --sign
|
2006-08-16 16:54:19 +02:00
|
|
|
@itemx -s
|
|
|
|
@opindex sign
|
|
|
|
Make a signature. This command may be combined with --encrypt (for a
|
|
|
|
signed and encrypted message), --symmetric (for a signed and
|
|
|
|
symmetrically encrypted message), or --encrypt and --symmetric
|
|
|
|
together (for a signed message that may be decrypted via a secret key
|
|
|
|
or a passphrase).
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --clearsign
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex clearsign
|
|
|
|
Make a clear text signature. The content in a clear text signature is
|
|
|
|
readable without any special software. OpenPGP software is only
|
|
|
|
needed to verify the signature. Clear text signatures may modify
|
|
|
|
end-of-line whitespace for platform independence and are not intended
|
|
|
|
to be reversible.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --detach-sign
|
2006-08-16 16:54:19 +02:00
|
|
|
@itemx -b
|
|
|
|
@opindex detach-sign
|
|
|
|
Make a detached signature.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --encrypt
|
2006-08-16 16:54:19 +02:00
|
|
|
@itemx -e
|
|
|
|
@opindex encrypt
|
|
|
|
Encrypt data. This option may be combined with --sign (for a signed
|
|
|
|
and encrypted message), --symmetric (for a message that may be
|
|
|
|
decrypted via a secret key or a passphrase), or --sign and --symmetric
|
|
|
|
together (for a signed message that may be decrypted via a secret key
|
|
|
|
or a passphrase).
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --symmetric
|
2006-08-16 16:54:19 +02:00
|
|
|
@itemx -c
|
|
|
|
@opindex symmetric
|
|
|
|
Encrypt with a symmetric cipher using a passphrase. The default
|
|
|
|
symmetric cipher used is CAST5, but may be chosen with the
|
|
|
|
--cipher-algo option. This option may be combined with --sign (for a
|
|
|
|
signed and symmetrically encrypted message), --encrypt (for a message
|
|
|
|
that may be decrypted via a secret key or a passphrase), or --sign and
|
|
|
|
--encrypt together (for a signed message that may be decrypted via a
|
|
|
|
secret key or a passphrase).
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --store
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex store
|
|
|
|
Store only (make a simple RFC1991 literal data packet).
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --decrypt
|
2006-08-16 16:54:19 +02:00
|
|
|
@itemx -d
|
|
|
|
@opindex decrypt
|
|
|
|
Decrypt the file given on the command line (or @code{stdin} if no file
|
|
|
|
is specified) and write it to stdout (or the file specified with
|
|
|
|
--output). If the decrypted file is signed, the signature is also
|
|
|
|
verified. This command differs from the default operation, as it never
|
|
|
|
writes to the filename which is included in the file and it rejects
|
|
|
|
files which don't begin with an encrypted message.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --verify
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex verify
|
|
|
|
Assume that the first argument is a signed file or a detached signature
|
|
|
|
and verify it without generating any output. With no arguments, the
|
|
|
|
signature packet is read from stdin. If only a sigfile is given, it may
|
|
|
|
be a complete signature or a detached signature, in which case the
|
|
|
|
signed stuff is expected in a file without the ".sig" or ".asc"
|
|
|
|
extension. With more than 1 argument, the first should be a detached
|
|
|
|
signature and the remaining files are the signed stuff. To read the
|
|
|
|
signed stuff from stdin, use @samp{-} as the second filename. For
|
|
|
|
security reasons a detached signature cannot read the signed material
|
|
|
|
from stdin without denoting it in the above way.
|
|
|
|
|
|
|
|
@item --multifile
|
|
|
|
@opindex multifile
|
|
|
|
This modifies certain other commands to accept multiple files for
|
|
|
|
processing on the command line or read from stdin with each filename on
|
|
|
|
a separate line. This allows for many files to be processed at
|
|
|
|
once. --multifile may currently be used along with --verify, --encrypt,
|
|
|
|
and --decrypt. Note that `--multifile --verify' may not be used with
|
|
|
|
detached signatures.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --verify-files
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex verify-files
|
|
|
|
Identical to `--multifile --verify'.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --encrypt-files
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex encrypt-files
|
|
|
|
Identical to `--multifile --encrypt'.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --decrypt-files
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex decrypt-files
|
|
|
|
Identical to `--multifile --decrypt'.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --list-keys
|
2006-08-16 16:54:19 +02:00
|
|
|
@itemx -k
|
2006-08-17 20:01:25 +02:00
|
|
|
@itemx --list-public-keys
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex list-keys
|
|
|
|
List all keys from the public keyrings, or just the ones given on the
|
|
|
|
command line.
|
|
|
|
|
|
|
|
Avoid using the output of this command in scripts or other programs as
|
|
|
|
it is likely to change as GnuPG changes. See --with-colons for a
|
|
|
|
machine-parseable key listing command that is appropriate for use in
|
|
|
|
scripts and other programs.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --list-secret-keys
|
2006-08-16 16:54:19 +02:00
|
|
|
@itemx -K
|
|
|
|
@opindex list-secret-keys
|
|
|
|
List all keys from the secret keyrings, or just the ones given on the
|
|
|
|
command line. A @code{#} after the letters @code{sec} means that the
|
|
|
|
secret key is not usable (for example, if it was created via
|
|
|
|
--export-secret-subkeys).
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --list-sigs
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex list-sigs
|
|
|
|
Same as --list-keys, but the signatures are listed too.
|
|
|
|
|
|
|
|
For each signature listed, there are several flags in between the "sig"
|
|
|
|
tag and keyid. These flags give additional information about each
|
|
|
|
signature. From left to right, they are the numbers 1-3 for certificate
|
|
|
|
check level (see --ask-cert-level), "L" for a local or non-exportable
|
|
|
|
signature (see --lsign-key), "R" for a nonRevocable signature (see the
|
|
|
|
--edit-key command "nrsign"), "P" for a signature that contains a policy
|
|
|
|
URL (see --cert-policy-url), "N" for a signature that contains a
|
|
|
|
notation (see --cert-notation), "X" for an eXpired signature (see
|
|
|
|
--ask-cert-expire), and the numbers 1-9 or "T" for 10 and above to
|
|
|
|
indicate trust signature levels (see the --edit-key command "tsign").
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --check-sigs
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex check-sigs
|
|
|
|
Same as --list-sigs, but the signatures are verified.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --fingerprint
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex fingerprint
|
|
|
|
List all keys (or the specified ones) along with their
|
|
|
|
fingerprints. This is the same output as --list-keys but with the
|
|
|
|
additional output of a line with the fingerprint. May also be combined
|
|
|
|
with --list-sigs or --check-sigs. If this command is given twice, the
|
|
|
|
fingerprints of all secondary keys are listed too.
|
|
|
|
|
|
|
|
@item --list-packets
|
|
|
|
@opindex list-packets
|
|
|
|
List only the sequence of packets. This is mainly
|
|
|
|
useful for debugging.
|
|
|
|
|
|
|
|
|
|
|
|
@item --card-edit
|
|
|
|
@opindex card-edit
|
|
|
|
Present a menu to work with a smartcard. The subcommand "help" provides
|
|
|
|
an overview on available commands. For a detailed description, please
|
2006-08-17 20:01:25 +02:00
|
|
|
see the Card HOWTO at
|
2006-08-16 16:54:19 +02:00
|
|
|
http://www.gnupg.org/documentation/howtos.html#GnuPG-cardHOWTO .
|
|
|
|
|
|
|
|
@item --card-status
|
|
|
|
@opindex card-status
|
|
|
|
Show the content of the smart card.
|
|
|
|
|
|
|
|
@item --change-pin
|
|
|
|
@opindex change-pin
|
|
|
|
Present a menu to allow changing the PIN of a smartcard. This
|
|
|
|
functionality is also available as the subcommand "passwd" with the
|
|
|
|
--card-edit command.
|
|
|
|
|
|
|
|
@item --delete-key @code{name}
|
|
|
|
@opindex delete-key
|
|
|
|
Remove key from the public keyring. In batch mode either --yes is
|
|
|
|
required or the key must be specified by fingerprint. This is a
|
|
|
|
safeguard against accidental deletion of multiple keys.
|
|
|
|
|
|
|
|
@item --delete-secret-key @code{name}
|
|
|
|
@opindex delete-secret-key
|
|
|
|
Remove key from the secret and public keyring. In batch mode the key
|
|
|
|
must be specified by fingerprint.
|
|
|
|
|
|
|
|
@item --delete-secret-and-public-key @code{name}
|
|
|
|
@opindex delete-secret-and-public-key
|
2006-08-17 20:01:25 +02:00
|
|
|
Same as --delete-key, but if a secret key exists, it will be removed
|
2006-08-16 16:54:19 +02:00
|
|
|
first. In batch mode the key must be specified by fingerprint.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --export
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex export
|
|
|
|
Either export all keys from all keyrings (default keyrings and those
|
|
|
|
registered via option --keyring), or if at least one name is given,
|
|
|
|
those of the given name. The new keyring is written to stdout or to the
|
|
|
|
file given with option "output". Use together with --armor to mail those
|
|
|
|
keys.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --send-keys
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex send-keys
|
|
|
|
Same as --export but sends the keys to a keyserver. Option --keyserver
|
|
|
|
must be used to give the name of this keyserver. Don't send your
|
|
|
|
complete keyring to a keyserver - select only those keys which are new
|
|
|
|
or changed by you.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --export-secret-keys
|
|
|
|
@itemx --export-secret-subkeys
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex export-secret-keys
|
|
|
|
@opindex export-secret-subkeys
|
|
|
|
Same as --export, but exports the secret keys instead. This is normally
|
|
|
|
not very useful and a security risk. The second form of the command has
|
|
|
|
the special property to render the secret part of the primary key
|
|
|
|
useless; this is a GNU extension to OpenPGP and other implementations
|
|
|
|
can not be expected to successfully import such a key. See the option
|
|
|
|
--simple-sk-checksum if you want to import such an exported key with an
|
|
|
|
older OpenPGP implementation.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --import
|
|
|
|
@itemx --fast-import
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex import
|
|
|
|
Import/merge keys. This adds the given keys to the
|
|
|
|
keyring. The fast version is currently just a synonym.
|
|
|
|
|
|
|
|
There are a few other options which control how this command works.
|
|
|
|
Most notable here is the --keyserver-options merge-only option which
|
|
|
|
does not insert new keys but does only the merging of new signatures,
|
|
|
|
user-IDs and subkeys.
|
|
|
|
|
|
|
|
@item --recv-keys @code{key IDs}
|
|
|
|
@opindex recv-keys
|
|
|
|
Import the keys with the given key IDs from a keyserver. Option
|
|
|
|
--keyserver must be used to give the name of this keyserver.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --refresh-keys
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex refresh-keys
|
|
|
|
Request updates from a keyserver for keys that already exist on the
|
|
|
|
local keyring. This is useful for updating a key with the latest
|
|
|
|
signatures, user IDs, etc. Calling this with no arguments will
|
|
|
|
refresh the entire keyring. Option --keyserver must be used to give
|
|
|
|
the name of the keyserver for all keys that do not have preferred
|
|
|
|
keyservers set (see --keyserver-options honor-keyserver-url).
|
|
|
|
|
|
|
|
@item --search-keys @code{names}
|
|
|
|
@opindex search-keys
|
|
|
|
Search the keyserver for the given names. Multiple names given here
|
|
|
|
will be joined together to create the search string for the keyserver.
|
|
|
|
Option --keyserver must be used to give the name of this keyserver.
|
|
|
|
Keyservers that support different search methods allow using the
|
|
|
|
syntax specified in "How to specify a user ID" below. Note that
|
|
|
|
different keyserver types support different search methods. Currently
|
|
|
|
only LDAP supports them all.
|
|
|
|
|
|
|
|
@item --fetch-keys @code{URIs}
|
|
|
|
@opindex fetch-keys
|
|
|
|
Retrieve keys located at the specified URIs. Note that different
|
|
|
|
installations of GnuPG may support different protocols (HTTP, FTP,
|
|
|
|
LDAP, etc.)
|
|
|
|
|
|
|
|
@item --update-trustdb
|
|
|
|
@opindex update-trustdb
|
|
|
|
Do trust database maintenance. This command iterates over all keys and
|
|
|
|
builds the Web of Trust. This is an interactive command because it may
|
|
|
|
have to ask for the "ownertrust" values for keys. The user has to give
|
|
|
|
an estimation of how far she trusts the owner of the displayed key to
|
|
|
|
correctly certify (sign) other keys. GnuPG only asks for the ownertrust
|
|
|
|
value if it has not yet been assigned to a key. Using the --edit-key
|
|
|
|
menu, the assigned value can be changed at any time.
|
|
|
|
|
|
|
|
@item --check-trustdb
|
|
|
|
@opindex check-trustdb
|
|
|
|
Do trust database maintenance without user interaction. From time to
|
|
|
|
time the trust database must be updated so that expired keys or
|
|
|
|
signatures and the resulting changes in the Web of Trust can be
|
|
|
|
tracked. Normally, GnuPG will calculate when this is required and do it
|
|
|
|
automatically unless --no-auto-check-trustdb is set. This command can be
|
|
|
|
used to force a trust database check at any time. The processing is
|
|
|
|
identical to that of --update-trustdb but it skips keys with a not yet
|
|
|
|
defined "ownertrust".
|
|
|
|
|
|
|
|
For use with cron jobs, this command can be used together with --batch
|
|
|
|
in which case the trust database check is done only if a check is
|
|
|
|
needed. To force a run even in batch mode add the option --yes.
|
|
|
|
|
|
|
|
@item --export-ownertrust
|
|
|
|
@opindex export-ownertrust
|
|
|
|
Send the ownertrust values to stdout. This is useful for backup purposes
|
|
|
|
as these values are the only ones which can't be re-created from a
|
|
|
|
corrupted trust DB.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --import-ownertrust
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex import-ownertrust
|
|
|
|
Update the trustdb with the ownertrust values stored in @code{files} (or
|
|
|
|
stdin if not given); existing values will be overwritten.
|
|
|
|
|
|
|
|
@item --rebuild-keydb-caches
|
|
|
|
@opindex rebuild-keydb-caches
|
|
|
|
ThisWhen updating from version 1.0.6 to 1.0.7 this command should be used
|
|
|
|
to create signature caches in the keyring. It might be handy in other
|
|
|
|
situations too.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --print-md @code{algo}
|
|
|
|
@itemx --print-mds
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex print-md
|
|
|
|
Print message digest of algorithm ALGO for all given files or stdin.
|
|
|
|
With the second form (or a deprecated "*" as algo) digests for all
|
|
|
|
available algorithms are printed.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --gen-random @code{0|1|2}
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex gen-random
|
|
|
|
Emit @var{count} random bytes of the given quality level. If count is
|
|
|
|
not given or zero, an endless sequence of random bytes will be emitted.
|
|
|
|
PLEASE, don't use this command unless you know what you are doing; it
|
|
|
|
may remove precious entropy from the system!
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --gen-prime @code{mode} @code{bits}
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex gen-prime
|
|
|
|
Use the source, Luke :-). The output format is still subject to change.
|
|
|
|
|
|
|
|
@end table
|
|
|
|
|
|
|
|
|
|
|
|
@c *******************************************
|
|
|
|
@c ******* KEY MANGEMENT COMMANDS **********
|
|
|
|
@c *******************************************
|
|
|
|
@node OpenPGP Key Management
|
|
|
|
@subsection How to manage your keys
|
|
|
|
|
|
|
|
This section explains the main commands for key management
|
|
|
|
|
|
|
|
@table @gnupgtabopt
|
|
|
|
|
|
|
|
@item --gen-key
|
|
|
|
@opindex gen-key
|
|
|
|
Generate a new key pair. This command is normally only used
|
|
|
|
interactively.
|
|
|
|
|
|
|
|
There is an experimental feature which allows you to create keys in
|
|
|
|
batch mode. See the file @file{doc/DETAILS} in the source distribution
|
|
|
|
on how to use this.
|
|
|
|
|
|
|
|
@item --gen-revoke @code{name}
|
|
|
|
@opindex gen-revoke
|
|
|
|
Generate a revocation certificate for the complete key. To revoke
|
|
|
|
a subkey or a signature, use the --edit command.
|
|
|
|
|
|
|
|
@item --desig-revoke @code{name}
|
|
|
|
@opindex desig-revoke
|
|
|
|
Generate a designated revocation certificate for a key. This allows a
|
|
|
|
user (with the permission of the keyholder) to revoke someone else's
|
|
|
|
key.
|
|
|
|
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --edit-key
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex edit-key
|
|
|
|
Present a menu which enables you to do most of the key management
|
|
|
|
related tasks. It expects the specification of a key on the command
|
|
|
|
line.
|
|
|
|
|
|
|
|
@c ******** Begin Edit-key Options **********
|
|
|
|
@table @asis
|
|
|
|
|
|
|
|
@item sign
|
|
|
|
@opindex keyedit:sign
|
|
|
|
Make a signature on key of user @code{name} If the key is not yet
|
|
|
|
signed by the default user (or the users given with -u), the program
|
|
|
|
displays the information of the key again, together with its
|
|
|
|
fingerprint and asks whether it should be signed. This question is
|
|
|
|
repeated for all users specified with
|
|
|
|
-u.
|
|
|
|
|
|
|
|
@item lsign
|
|
|
|
@opindex keyedit:lsign
|
|
|
|
Same as "sign" but the signature is marked as non-exportable and will
|
|
|
|
therefore never be used by others. This may be used to make keys
|
|
|
|
valid only in the local environment.
|
|
|
|
|
|
|
|
@item nrsign
|
|
|
|
@opindex keyedit:nrsign
|
|
|
|
Same as "sign" but the signature is marked as non-revocable and can
|
|
|
|
therefore never be revoked.
|
|
|
|
|
|
|
|
@item tsign
|
|
|
|
@opindex keyedit:tsign
|
|
|
|
Make a trust signature. This is a signature that combines the notions
|
|
|
|
of certification (like a regular signature), and trust (like the
|
|
|
|
"trust" command). It is generally only useful in distinct communities
|
|
|
|
or groups.
|
|
|
|
@end table
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@c man:.RS
|
2006-08-16 16:54:19 +02:00
|
|
|
Note that "l" (for local / non-exportable), "nr" (for non-revocable,
|
|
|
|
and "t" (for trust) may be freely mixed and prefixed to "sign" to
|
|
|
|
create a signature of any type desired.
|
2006-08-17 20:01:25 +02:00
|
|
|
@c man:.RE
|
2006-08-16 16:54:19 +02:00
|
|
|
|
|
|
|
@table @asis
|
|
|
|
|
|
|
|
@item revsig
|
|
|
|
@opindex keyedit:revsig
|
|
|
|
Revoke a signature. For every signature which has been generated by
|
|
|
|
one of the secret keys, GnuPG asks whether a revocation certificate
|
|
|
|
should be generated.
|
|
|
|
|
|
|
|
@item trust
|
|
|
|
@opindex keyedit:trust
|
|
|
|
Change the owner trust value. This updates the
|
|
|
|
trust-db immediately and no save is required.
|
|
|
|
|
|
|
|
@item disable
|
|
|
|
@itemx enable
|
|
|
|
@opindex keyedit:disable
|
|
|
|
@opindex keyedit:enable
|
|
|
|
Disable or enable an entire key. A disabled key can not normally be
|
|
|
|
used for encryption.
|
|
|
|
|
|
|
|
@item adduid
|
|
|
|
@opindex keyedit:adduid
|
|
|
|
Create an alternate user id.
|
|
|
|
|
|
|
|
@item addphoto
|
|
|
|
@opindex keyedit:addphoto
|
|
|
|
Create a photographic user id. This will prompt for a JPEG file that
|
|
|
|
will be embedded into the user ID. Note that a very large JPEG will make
|
|
|
|
for a very large key. Also note that some programs will display your
|
|
|
|
JPEG unchanged (GnuPG), and some programs will scale it to fit in a
|
|
|
|
dialog box (PGP).
|
|
|
|
|
|
|
|
@item deluid
|
|
|
|
@opindex keyedit:deluid
|
|
|
|
Delete a user id. Note that it is not possible to retract a user id,
|
|
|
|
once it has been send to the public (i.e. to a keyserver). In that case
|
|
|
|
you better use @code{revuid}.
|
|
|
|
|
|
|
|
@item delsig
|
|
|
|
@opindex keyedit:delsig
|
|
|
|
Delete a signature. Note that it is not possible to retract a signature,
|
|
|
|
once it has been send to the public (i.e. to a keyserver). In that case
|
|
|
|
you better use @code{revsig}.
|
|
|
|
|
|
|
|
@item revuid
|
|
|
|
@opindex keyedit:revuid
|
|
|
|
Revoke a user id.
|
|
|
|
|
|
|
|
@item addkey
|
|
|
|
@opindex keyedit:addkey
|
|
|
|
Add a subkey to this key.
|
|
|
|
|
|
|
|
@item addcardkey
|
|
|
|
@opindex keyedit:addcardkey
|
|
|
|
Generate a key on a card and add it to this key.
|
|
|
|
|
|
|
|
@item keytocard
|
|
|
|
@opindex keyedit:keytocard
|
|
|
|
Transfer the selected secret key (or the primary key if no key has been
|
|
|
|
selected) to a smartcard. The secret key in the keyring will be replaced
|
|
|
|
by a stub if the key could be stored successfully on the card and you
|
|
|
|
use the save command later. Only certain key types may be transferred to
|
|
|
|
the card. A sub menu allows you to select on what card to store the
|
|
|
|
key. Note that it is not possible to get that key back from the card -
|
|
|
|
if the card gets broken your secret key will be lost unless you have a
|
|
|
|
backup somewhere.
|
|
|
|
|
|
|
|
@item bkuptocard @code{file}
|
|
|
|
@opindex keyedit:bkuptocard
|
|
|
|
Restore the given file to a card. This command may be used to restore a
|
|
|
|
backup key (as generated during card initialization) to a new card. In
|
|
|
|
almost all cases this will be the encryption key. You should use this
|
|
|
|
command only with the corresponding public key and make sure that the
|
|
|
|
file given as argument is indeed the backup to restore. You should then
|
|
|
|
select 2 to restore as encryption key. You will first be asked to enter
|
|
|
|
the passphrase of the backup key and then for the Admin PIN of the card.
|
|
|
|
|
|
|
|
@item delkey
|
|
|
|
@opindex keyedit:delkey
|
|
|
|
Remove a subkey (secondart key). Note that it is not possible to retract
|
|
|
|
a subkey, once it has been send to the public (i.e. to a keyserver). In
|
|
|
|
that case you better use @code{revkey}.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item addrevoker
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex keyedit:addrevoker
|
|
|
|
Add a designated revoker. This takes one optional argument:
|
|
|
|
"sensitive". If a designated revoker is marked as sensitive, it will not
|
|
|
|
be exported by default (see export-options).
|
|
|
|
|
|
|
|
@item revkey
|
|
|
|
@opindex keyedit:revkey
|
|
|
|
Revoke a subkey.
|
|
|
|
|
|
|
|
@item expire
|
|
|
|
@opindex keyedit:expire
|
|
|
|
Change the key expiration time. If a subkey is selected, the
|
|
|
|
expiration time of this subkey will be changed. With no selection,
|
|
|
|
the key expiration of the primary key is changed.
|
|
|
|
|
|
|
|
@item passwd
|
|
|
|
@opindex keyedit:passwd
|
|
|
|
Change the passphrase of the secret key.
|
|
|
|
|
|
|
|
@item primary
|
|
|
|
@opindex keyedit:primary
|
|
|
|
Flag the current user id as the primary one, removes the primary user
|
|
|
|
id flag from all other user ids and sets the timestamp of all affected
|
|
|
|
self-signatures one second ahead. Note that setting a photo user ID
|
|
|
|
as primary makes it primary over other photo user IDs, and setting a
|
|
|
|
regular user ID as primary makes it primary over other regular user
|
|
|
|
IDs.
|
|
|
|
|
|
|
|
@item uid @code{n}
|
|
|
|
@opindex keyedit:uid
|
|
|
|
Toggle selection of user id with index @code{n}.
|
|
|
|
Use 0 to deselect all.
|
|
|
|
|
|
|
|
@item key @code{n}
|
|
|
|
@opindex keyedit:key
|
|
|
|
Toggle selection of subkey with index @code{n}.
|
|
|
|
Use 0 to deselect all.
|
|
|
|
|
|
|
|
@item check
|
|
|
|
@opindex keyedit:check
|
|
|
|
Check all selected user ids.
|
|
|
|
|
|
|
|
@item showphoto
|
|
|
|
@opindex keyedit:showphoto
|
|
|
|
Display the selected photographic user
|
|
|
|
id.
|
|
|
|
|
|
|
|
@item pref
|
|
|
|
@opindex keyedit:pref
|
|
|
|
List preferences from the selected user ID. This shows the actual
|
|
|
|
preferences, without including any implied preferences.
|
|
|
|
|
|
|
|
@item showpref
|
|
|
|
@opindex keyedit:showpref
|
|
|
|
More verbose preferences listing for the selected user ID. This shows
|
|
|
|
the preferences in effect by including the implied preferences of 3DES
|
|
|
|
(cipher), SHA-1 (digest), and Uncompressed (compression) if they are
|
|
|
|
not already included in the preference list. In addition, the
|
|
|
|
preferred keyserver and signature notations (if any) are shown.
|
|
|
|
|
|
|
|
@item setpref @code{string}
|
|
|
|
@opindex keyedit:setpref
|
|
|
|
Set the list of user ID preferences to @code{string} for all (or just
|
|
|
|
the selected) user IDs. Calling setpref with no arguments sets the
|
|
|
|
preference list to the default (either built-in or set via
|
|
|
|
--default-preference-list), and calling setpref with "none" as the
|
|
|
|
argument sets an empty preference list. Use "gpg --version" to get a
|
|
|
|
list of available algorithms. Note that while you can change the
|
|
|
|
preferences on an attribute user ID (aka "photo ID"), GnuPG does not
|
|
|
|
select keys via attribute user IDs so these preferences will not be
|
|
|
|
used by GnuPG.
|
|
|
|
|
|
|
|
@item keyserver
|
|
|
|
@opindex keyedit:keyserver
|
|
|
|
Set a preferred keyserver for the specified user ID(s). This allows
|
|
|
|
other users to know where you prefer they get your key from. See
|
|
|
|
--keyserver-options honor-keyserver-url for more on how this works.
|
|
|
|
Setting a value of "none" removes an existing preferred keyserver.
|
|
|
|
|
|
|
|
@item notation
|
|
|
|
@opindex keyedit:notation
|
|
|
|
Set a name=value notation for the specified user ID(s). See
|
|
|
|
--cert-notation for more on how this works. Setting a value of "none"
|
|
|
|
removes all notations, setting a notation prefixed with a minus sign
|
|
|
|
(-) removes that notation, and setting a notation name (without the
|
|
|
|
=value) prefixed with a minus sign removes all notations with that
|
|
|
|
name.
|
|
|
|
|
|
|
|
@item toggle
|
|
|
|
@opindex keyedit:toggle
|
|
|
|
Toggle between public and secret key listing.
|
|
|
|
|
|
|
|
@item clean
|
|
|
|
@opindex keyedit:clean
|
|
|
|
Compact (by removing all signatures except the selfsig) any user ID
|
|
|
|
that is no longer usable (e.g. revoked, or expired). Then, remove any
|
|
|
|
signatures that are not usable by the trust calculations.
|
|
|
|
Specifically, this removes any signature that does not validate, any
|
|
|
|
signature that is superseded by a later signature, revoked signatures,
|
|
|
|
and signatures issued by keys that are not present on the keyring.
|
|
|
|
|
|
|
|
@item minimize
|
|
|
|
@opindex keyedit:minimize
|
|
|
|
Make the key as small as possible. This removes all signatures from
|
|
|
|
each user ID except for the most recent self-signature.
|
|
|
|
|
|
|
|
@item cross-certify
|
|
|
|
@opindex keyedit:cross-certify
|
|
|
|
Add cross-certification signatures to signing subkeys that may not
|
|
|
|
currently have them. Cross-certification signatures protect against a
|
|
|
|
subtle attack against signing subkeys. See
|
|
|
|
--require-cross-certification.
|
|
|
|
|
|
|
|
@item save
|
|
|
|
@opindex keyedit:save
|
|
|
|
Save all changes to the key rings and quit.
|
|
|
|
|
|
|
|
@item quit
|
|
|
|
@opindex keyedit:quit
|
|
|
|
Quit the program without updating the
|
|
|
|
key rings.
|
|
|
|
|
|
|
|
@end table
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@c man:.RS
|
2006-08-16 16:54:19 +02:00
|
|
|
The listing shows you the key with its secondary keys and all user
|
|
|
|
ids. Selected keys or user ids are indicated by an asterisk. The trust
|
|
|
|
value is displayed with the primary key: the first is the assigned owner
|
|
|
|
trust and the second is the calculated trust value. Letters are used for
|
|
|
|
the values:
|
2006-08-17 20:01:25 +02:00
|
|
|
@c man:.RE
|
2006-08-16 16:54:19 +02:00
|
|
|
|
|
|
|
@table @asis
|
|
|
|
|
|
|
|
@item -
|
|
|
|
No ownertrust assigned / not yet calculated.
|
|
|
|
|
|
|
|
@item e
|
|
|
|
Trust
|
|
|
|
calculation has failed; probably due to an expired key.
|
|
|
|
|
|
|
|
@item q
|
|
|
|
Not enough information for calculation.
|
|
|
|
|
|
|
|
@item n
|
|
|
|
Never trust this key.
|
|
|
|
|
|
|
|
@item m
|
|
|
|
Marginally trusted.
|
|
|
|
|
|
|
|
@item f
|
|
|
|
Fully trusted.
|
|
|
|
|
|
|
|
@item u
|
|
|
|
Ultimately trusted.
|
|
|
|
@end table
|
|
|
|
@c ******** End Edit-key Options **********
|
|
|
|
|
|
|
|
@item --sign-key @code{name}
|
|
|
|
@opindex sign-key
|
|
|
|
Signs a public key with your secret key. This is a shortcut version of
|
2006-08-17 20:01:25 +02:00
|
|
|
the subcommand "sign" from --edit.
|
2006-08-16 16:54:19 +02:00
|
|
|
|
|
|
|
@item --lsign-key @code{name}
|
2006-08-17 20:01:25 +02:00
|
|
|
@opindex lsign-key
|
2006-08-16 16:54:19 +02:00
|
|
|
Signs a public key with your secret key but marks it as
|
|
|
|
non-exportable. This is a shortcut version of the subcommand "lsign"
|
|
|
|
from --edit.
|
|
|
|
|
|
|
|
|
|
|
|
@end table
|
|
|
|
|
|
|
|
|
|
|
|
@c *******************************************
|
|
|
|
@c *************** ****************
|
|
|
|
@c *************** OPTIONS ****************
|
|
|
|
@c *************** ****************
|
|
|
|
@c *******************************************
|
2006-08-17 20:01:25 +02:00
|
|
|
@mansect options
|
2006-08-16 16:54:19 +02:00
|
|
|
@node GPG Options
|
|
|
|
@section Option Summary
|
|
|
|
|
|
|
|
@command{GPG} comes features a bunch of options to control the exact
|
|
|
|
behaviour and to change the default configuration.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@menu
|
2006-08-16 16:54:19 +02:00
|
|
|
* GPG Configuration Options:: How to change the configuration.
|
|
|
|
* GPG Key related Options:: Key related options.
|
|
|
|
* GPG Input and Output:: Input and Output.
|
|
|
|
* OpenPGP Options:: OpenPGP protocol specific options.
|
|
|
|
* GPG Esoteric Options:: Doing things one usually don't want to do.
|
|
|
|
@end menu
|
|
|
|
|
|
|
|
Long options can be put in an options file (default
|
|
|
|
"~/.gnupg/gpg.conf"). Short option names will not work - for example,
|
|
|
|
"armor" is a valid option for the options file, while "a" is not. Do not
|
|
|
|
write the 2 dashes, but simply the name of the option and any required
|
|
|
|
arguments. Lines with a hash ('#') as the first non-white-space
|
|
|
|
character are ignored. Commands may be put in this file too, but that is
|
|
|
|
not generally useful as the command will execute automatically with
|
|
|
|
every execution of gpg.
|
|
|
|
|
|
|
|
Please remember that option parsing stops as soon as a non-option is
|
|
|
|
encountered, you can explicitly stop parsing by using the special option
|
|
|
|
"--".
|
|
|
|
|
|
|
|
@c *******************************************
|
|
|
|
@c ******** CONFIGURATION OPTIONS **********
|
|
|
|
@c *******************************************
|
|
|
|
@node GPG Configuration Options
|
|
|
|
@subsection How to change the configuration
|
|
|
|
|
|
|
|
These options are used to change the configuraton and are usually found
|
|
|
|
in the option file.
|
|
|
|
|
|
|
|
@table @gnupgtabopt
|
|
|
|
|
|
|
|
@item XXX
|
|
|
|
foo
|
|
|
|
|
|
|
|
@end table
|
|
|
|
|
|
|
|
|
|
|
|
@c *******************************************
|
|
|
|
@c ******** KEY RELATED OPTIONS ************
|
|
|
|
@c *******************************************
|
|
|
|
@node GPG Key related Options
|
|
|
|
@subsection Key related options
|
|
|
|
|
|
|
|
@table @gnupgtabopt
|
|
|
|
|
|
|
|
@item XXX
|
|
|
|
foo
|
|
|
|
|
|
|
|
@end table
|
|
|
|
|
|
|
|
@c *******************************************
|
|
|
|
@c ******** INPUT AND OUTPUT ***************
|
|
|
|
@c *******************************************
|
|
|
|
@node GPG Input and Output
|
|
|
|
@subsection Input and Output
|
|
|
|
|
|
|
|
@table @gnupgtabopt
|
|
|
|
|
|
|
|
@item XXX
|
|
|
|
foo
|
|
|
|
|
|
|
|
@end table
|
|
|
|
|
|
|
|
@c *******************************************
|
|
|
|
@c ******** OPENPGP OPTIONS ****************
|
|
|
|
@c *******************************************
|
|
|
|
@node OpenPGP Options
|
|
|
|
@subsection OpenPGP protocol specific options.
|
|
|
|
|
|
|
|
@table @gnupgtabopt
|
|
|
|
|
|
|
|
@item XXX
|
|
|
|
foo
|
|
|
|
|
|
|
|
@end table
|
|
|
|
|
|
|
|
@c *******************************************
|
|
|
|
@c ******** ESOTERIC OPTIONS ***************
|
|
|
|
@c *******************************************
|
|
|
|
@node GPG Esoteric Options
|
|
|
|
@subsection Doing things one usually don't want to do.
|
|
|
|
|
|
|
|
@table @gnupgtabopt
|
|
|
|
|
|
|
|
@item XXX
|
|
|
|
foo
|
|
|
|
|
|
|
|
|
|
|
|
@item --armor
|
|
|
|
@itemx -a
|
|
|
|
@opindex armor
|
|
|
|
Create ASCII armored output. The default is to create the binary
|
|
|
|
OpenPGP format.
|
|
|
|
|
|
|
|
@item --output @var{file}
|
|
|
|
@itemx -o @var{file}
|
|
|
|
@opindex output
|
|
|
|
Write output to @var{file}.
|
|
|
|
|
|
|
|
@item --max-output @code{n}
|
|
|
|
@opindex max-output
|
|
|
|
This option sets a limit on the number of bytes that will be generated
|
|
|
|
when processing a file. Since OpenPGP supports various levels of
|
|
|
|
compression, it is possible that the plaintext of a given message may be
|
|
|
|
significantly larger than the original OpenPGP message. While GnuPG
|
|
|
|
works properly with such messages, there is often a desire to set a
|
|
|
|
maximum file size that will be generated before processing is forced to
|
|
|
|
stop by the OS limits. Defaults to 0, which means "no limit".
|
|
|
|
|
|
|
|
@item --mangle-dos-filenames
|
|
|
|
@itemx --no-mangle-dos-filenames
|
|
|
|
@opindex mangle-dos-filenames
|
|
|
|
@opindex no-mangle-dos-filenames
|
|
|
|
Older version of Windows cannot handle filenames with more than one
|
|
|
|
dot. --mangle-dos-filenames causes GnuPG to replace (rather than add to)
|
|
|
|
the extension of an output filename to avoid this problem. This option
|
|
|
|
is off by default and has no effect on non-Windows platforms.
|
|
|
|
|
|
|
|
@item --local-user @var{name}
|
|
|
|
@itemx -u
|
|
|
|
@opindex local-user
|
|
|
|
Use @var{name} as the key to sign with. Note that this option overrides
|
|
|
|
--default-key.
|
|
|
|
|
|
|
|
@item --default-key @var{name}
|
|
|
|
@opindex default-key
|
|
|
|
Use @var{name} as the default key to sign with. If this option is not
|
|
|
|
used, the default key is the first key found in the secret keyring.
|
|
|
|
Note that -u or --local-user overrides this option.
|
|
|
|
|
|
|
|
@item --recipient @var{name}
|
|
|
|
@itemx -r
|
|
|
|
@opindex recipient
|
|
|
|
Encrypt for user id @var{name}. If this option or --hidden-recipient is
|
|
|
|
not specified, GnuPG asks for the user-id unless --default-recipient is
|
|
|
|
given.
|
|
|
|
|
|
|
|
@item --hidden-recipient @var{name}
|
|
|
|
@itemx -R
|
|
|
|
@opindex hidden-recipient
|
|
|
|
Encrypt for user ID @var{name}, but hide the key ID of this user's
|
|
|
|
key. This option helps to hide the receiver of the message and is a
|
|
|
|
limited countermeasure against traffic analysis. If this option or
|
|
|
|
--recipient is not specified, GnuPG asks for the user ID unless
|
|
|
|
--default-recipient is given.
|
|
|
|
|
|
|
|
@item --default-recipient @var{name}
|
|
|
|
@opindex default-recipient
|
|
|
|
Use @var{name} as default recipient if option --recipient is not used
|
|
|
|
and don't ask if this is a valid one. @var{name} must be non-empty.
|
|
|
|
|
|
|
|
@item --default-recipient-self
|
|
|
|
@opindex default-recipient-self
|
|
|
|
Use the default key as default recipient if option --recipient is not
|
|
|
|
used and don't ask if this is a valid one. The default key is the first
|
|
|
|
one from the secret keyring or the one set with --default-key.
|
|
|
|
|
|
|
|
@item --no-default-recipient
|
|
|
|
@opindex no-default-recipient
|
|
|
|
Reset --default-recipient and --default-recipient-self.
|
|
|
|
|
|
|
|
@item --encrypt-to @code{name}
|
|
|
|
Same as --recipient but this one is intended for use
|
|
|
|
in the options file and may be used with
|
|
|
|
your own user-id as an "encrypt-to-self". These keys
|
|
|
|
are only used when there are other recipients given
|
|
|
|
either by use of --recipient or by the asked user id.
|
|
|
|
No trust checking is performed for these user ids and
|
|
|
|
even disabled keys can be used.
|
|
|
|
|
|
|
|
@item --hidden-encrypt-to @code{name}
|
|
|
|
Same as --hidden-recipient but this one is intended for use in the
|
|
|
|
options file and may be used with your own user-id as a hidden
|
|
|
|
"encrypt-to-self". These keys are only used when there are other
|
|
|
|
recipients given either by use of --recipient or by the asked user id.
|
|
|
|
No trust checking is performed for these user ids and even disabled
|
|
|
|
keys can be used.
|
|
|
|
|
|
|
|
@item --no-encrypt-to
|
|
|
|
Disable the use of all --encrypt-to and --hidden-encrypt-to keys.
|
|
|
|
|
|
|
|
@item -v, --verbose
|
|
|
|
Give more information during processing. If used
|
|
|
|
twice, the input data is listed in detail.
|
|
|
|
|
|
|
|
@item -q, --quiet
|
|
|
|
Try to be as quiet as possible.
|
|
|
|
|
|
|
|
@item -z @code{n}
|
|
|
|
@itemx --compress-level @code{n}
|
|
|
|
@itemx --bzip2-compress-level @code{n}
|
|
|
|
Set compression level to @code{n} for the ZIP and ZLIB compression
|
|
|
|
algorithms. The default is to use the default compression level of
|
|
|
|
zlib (normally 6). --bzip2-compress-level sets the compression level
|
|
|
|
for the BZIP2 compression algorithm (defaulting to 6 as well). This
|
|
|
|
is a different option from --compress-level since BZIP2 uses a
|
|
|
|
significant amount of memory for each additional compression level.
|
|
|
|
-z sets both. A value of 0 for @code{n} disables compression.
|
|
|
|
|
|
|
|
@item --bzip2-decompress-lowmem
|
|
|
|
Use a different decompression method for BZIP2 compressed files. This
|
|
|
|
alternate method uses a bit more than half the memory, but also runs
|
|
|
|
at half the speed. This is useful under extreme low memory
|
|
|
|
circumstances when the file was originally compressed at a high
|
|
|
|
--bzip2-compress-level.
|
|
|
|
|
|
|
|
@item -t, --textmode
|
|
|
|
@itemx --no-textmode
|
|
|
|
Treat input files as text and store them in the OpenPGP canonical text
|
|
|
|
form with standard "CRLF" line endings. This also sets the necessary
|
|
|
|
flags to inform the recipient that the encrypted or signed data is
|
|
|
|
text and may need its line endings converted back to whatever the
|
|
|
|
local system uses. This option is useful when communicating between
|
|
|
|
two platforms that have different line ending conventions (UNIX-like
|
|
|
|
to Mac, Mac to Windows, etc). --no-textmode disables this option, and
|
|
|
|
is the default.
|
|
|
|
|
|
|
|
If -t (but not --textmode) is used together with armoring and signing,
|
|
|
|
this enables clearsigned messages. This kludge is needed for
|
|
|
|
command-line compatibility with command-line versions of PGP; normally
|
|
|
|
you would use --sign or --clearsign to select the type of the
|
|
|
|
signature.
|
|
|
|
|
|
|
|
@item -n, --dry-run
|
|
|
|
Don't make any changes (this is not completely implemented).
|
|
|
|
|
|
|
|
@item -i, --interactive
|
|
|
|
Prompt before overwriting any files.
|
|
|
|
|
|
|
|
@item --batch
|
|
|
|
@itemx --no-batch
|
|
|
|
Use batch mode. Never ask, do not allow interactive commands.
|
|
|
|
--no-batch disables this option.
|
|
|
|
|
|
|
|
@item --no-tty
|
|
|
|
Make sure that the TTY (terminal) is never used for any output.
|
|
|
|
This option is needed in some cases because GnuPG sometimes prints
|
|
|
|
warnings to the TTY if --batch is used.
|
|
|
|
|
|
|
|
@item --yes
|
|
|
|
Assume "yes" on most questions.
|
|
|
|
|
|
|
|
@item --no
|
|
|
|
Assume "no" on most questions.
|
|
|
|
|
|
|
|
@item --ask-cert-level
|
|
|
|
@itemx --no-ask-cert-level
|
|
|
|
When making a key signature, prompt for a certification level. If
|
|
|
|
this option is not specified, the certification level used is set via
|
|
|
|
--default-cert-level. See --default-cert-level for information on the
|
|
|
|
specific levels and how they are used. --no-ask-cert-level disables
|
|
|
|
this option. This option defaults to no.
|
|
|
|
|
|
|
|
@item --default-cert-level @code{n}
|
|
|
|
The default to use for the check level when signing a key.
|
|
|
|
|
|
|
|
0 means you make no particular claim as to how carefully you verified
|
|
|
|
the key.
|
|
|
|
|
|
|
|
1 means you believe the key is owned by the person who claims to own
|
|
|
|
it but you could not, or did not verify the key at all. This is
|
|
|
|
useful for a "persona" verification, where you sign the key of a
|
|
|
|
pseudonymous user.
|
|
|
|
|
|
|
|
2 means you did casual verification of the key. For example, this
|
|
|
|
could mean that you verified that the key fingerprint and checked the
|
|
|
|
user ID on the key against a photo ID.
|
|
|
|
|
|
|
|
3 means you did extensive verification of the key. For example, this
|
|
|
|
could mean that you verified the key fingerprint with the owner of the
|
|
|
|
key in person, and that you checked, by means of a hard to forge
|
|
|
|
document with a photo ID (such as a passport) that the name of the key
|
|
|
|
owner matches the name in the user ID on the key, and finally that you
|
|
|
|
verified (by exchange of email) that the email address on the key
|
|
|
|
belongs to the key owner.
|
|
|
|
|
|
|
|
Note that the examples given above for levels 2 and 3 are just that:
|
|
|
|
examples. In the end, it is up to you to decide just what "casual"
|
|
|
|
and "extensive" mean to you.
|
|
|
|
|
|
|
|
This option defaults to 0 (no particular claim).
|
|
|
|
|
|
|
|
@item --min-cert-level
|
|
|
|
When building the trust database, treat any signatures with a
|
|
|
|
certification level below this as invalid. Defaults to 2, which
|
|
|
|
disregards level 1 signatures. Note that level 0 "no particular
|
|
|
|
claim" signatures are always accepted.
|
|
|
|
|
|
|
|
@item --trusted-key @code{long key ID}
|
|
|
|
Assume that the specified key (which must be given
|
|
|
|
as a full 8 byte key ID) is as trustworthy as one of
|
|
|
|
your own secret keys. This option is useful if you
|
|
|
|
don't want to keep your secret keys (or one of them)
|
|
|
|
online but still want to be able to check the validity of a given
|
2006-08-17 20:01:25 +02:00
|
|
|
recipient's or signator's key.
|
2006-08-16 16:54:19 +02:00
|
|
|
|
|
|
|
@item --trust-model @code{pgp|classic|direct|always|auto}
|
|
|
|
Set what trust model GnuPG should follow. The models are:
|
|
|
|
|
|
|
|
@table @asis
|
|
|
|
|
|
|
|
@item pgp
|
|
|
|
This is the Web of Trust combined with trust signatures as used in PGP
|
|
|
|
5.x and later. This is the default trust model when creating a new
|
|
|
|
trust database.
|
|
|
|
|
|
|
|
@item classic
|
|
|
|
This is the standard Web of Trust as used in PGP 2.x and earlier.
|
|
|
|
|
|
|
|
@item direct
|
|
|
|
Key validity is set directly by the user and not calculated via the
|
|
|
|
Web of Trust.
|
|
|
|
|
|
|
|
@item always
|
|
|
|
Skip key validation and assume that used keys are always fully
|
|
|
|
trusted. You generally won't use this unless you are using some
|
|
|
|
external validation scheme. This option also suppresses the
|
|
|
|
"[uncertain]" tag printed with signature checks when there is no
|
|
|
|
evidence that the user ID is bound to the key.
|
|
|
|
|
|
|
|
@item auto
|
|
|
|
Select the trust model depending on whatever the internal trust
|
|
|
|
database says. This is the default model if such a database already
|
|
|
|
exists.
|
|
|
|
@end table
|
|
|
|
|
|
|
|
@item --always-trust
|
|
|
|
Identical to `--trust-model always'. This option is deprecated.
|
|
|
|
|
|
|
|
@item --auto-key-locate @code{parameters}
|
|
|
|
@itemx --no-auto-key-locate
|
|
|
|
GnuPG can automatically locate and retrieve keys as needed using this
|
|
|
|
option. This happens when encrypting to an email address (in the
|
|
|
|
"user@@example.com" form), and there are no user@@example.com keys on
|
|
|
|
the local keyring. This option takes any number of the following
|
|
|
|
arguments, in the order they are to be tried:
|
|
|
|
|
|
|
|
@table @asis
|
|
|
|
|
|
|
|
@item cert
|
|
|
|
locate a key using DNS CERT, as specified in 2538bis (currently in
|
|
|
|
draft): http://www.josefsson.org/rfc2538bis/
|
|
|
|
|
|
|
|
@item pka
|
|
|
|
locate a key using DNS PKA.
|
|
|
|
|
|
|
|
@item ldap
|
|
|
|
locate a key using the PGP Universal method of checking
|
|
|
|
"ldap://keys.(thedomain)".
|
|
|
|
|
|
|
|
@item keyserver
|
|
|
|
locate a key using whatever keyserver is defined using the --keyserver
|
|
|
|
option.
|
|
|
|
|
|
|
|
@item (keyserver URL)
|
|
|
|
In addition, a keyserver URL as used in the --keyserver option may be
|
|
|
|
used here to query that particular keyserver.
|
|
|
|
@end table
|
|
|
|
|
|
|
|
@item --keyid-format @code{short|0xshort|long|0xlong}
|
|
|
|
Select how to display key IDs. "short" is the traditional 8-character
|
|
|
|
key ID. "long" is the more accurate (but less convenient)
|
|
|
|
16-character key ID. Add an "0x" to either to include an "0x" at the
|
|
|
|
beginning of the key ID, as in 0x99242560.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --keyserver @code{name}
|
2006-08-16 16:54:19 +02:00
|
|
|
Use @code{name} as your keyserver. This is the server that
|
|
|
|
--recv-keys, --send-keys, and --search-keys will communicate with to
|
|
|
|
receive keys from, send keys to, and search for keys on. The format
|
|
|
|
of the @code{name} is a URI: `scheme:[//]keyservername[:port]' The
|
|
|
|
scheme is the type of keyserver: "hkp" for the HTTP (or compatible)
|
|
|
|
keyservers, "ldap" for the LDAP keyservers, or "mailto" for the Graff
|
|
|
|
email keyserver. Note that your particular installation of GnuPG may
|
|
|
|
have other keyserver types available as well. Keyserver schemes are
|
|
|
|
case-insensitive. After the keyserver name, optional keyserver
|
|
|
|
configuration options may be provided. These are the same as the
|
|
|
|
global --keyserver-options from below, but apply only to this
|
|
|
|
particular keyserver.
|
|
|
|
|
|
|
|
Most keyservers synchronize with each other, so there is generally no
|
|
|
|
need to send keys to more than one server. The keyserver
|
|
|
|
"hkp://subkeys.pgp.net" uses round robin DNS to give a different
|
|
|
|
keyserver each time you use it.
|
|
|
|
|
|
|
|
@item --keyserver-options @code{name=value1 }
|
|
|
|
This is a space or comma delimited string that gives options for the
|
|
|
|
keyserver. Options can be prepended with a `no-' to give the opposite
|
|
|
|
meaning. Valid import-options or export-options may be used here as
|
|
|
|
well to apply to importing (--recv-key) or exporting (--send-key) a
|
|
|
|
key from a keyserver. While not all options are available for all
|
|
|
|
keyserver types, some common options are:
|
|
|
|
|
|
|
|
@table @asis
|
|
|
|
|
|
|
|
@item include-revoked
|
|
|
|
When searching for a key with --search-keys, include keys that are
|
|
|
|
marked on the keyserver as revoked. Note that not all keyservers
|
|
|
|
differentiate between revoked and unrevoked keys, and for such
|
|
|
|
keyservers this option is meaningless. Note also that most keyservers
|
|
|
|
do not have cryptographic verification of key revocations, and so
|
|
|
|
turning this option off may result in skipping keys that are
|
|
|
|
incorrectly marked as revoked.
|
|
|
|
|
|
|
|
@item include-disabled
|
|
|
|
When searching for a key with --search-keys, include keys that are
|
|
|
|
marked on the keyserver as disabled. Note that this option is not
|
|
|
|
used with HKP keyservers.
|
|
|
|
|
|
|
|
@item auto-key-retrieve
|
|
|
|
This option enables the automatic retrieving of keys from a keyserver
|
|
|
|
when verifying signatures made by keys that are not on the local
|
|
|
|
keyring.
|
|
|
|
|
|
|
|
Note that this option makes a "web bug" like behavior possible.
|
|
|
|
Keyserver operators can see which keys you request, so by sending you
|
|
|
|
a message signed by a brand new key (which you naturally will not have
|
|
|
|
on your local keyring), the operator can tell both your IP address and
|
|
|
|
the time when you verified the signature.
|
|
|
|
|
|
|
|
@item honor-keyserver-url
|
|
|
|
When using --refresh-keys, if the key in question has a preferred
|
|
|
|
keyserver URL, then use that preferred keyserver to refresh the key
|
|
|
|
from. In addition, if auto-key-retrieve is set, and the signature
|
|
|
|
being verified has a preferred keyserver URL, then use that preferred
|
|
|
|
keyserver to fetch the key from. Defaults to yes.
|
|
|
|
|
|
|
|
@item honor-pka-record
|
|
|
|
If auto-key-retrieve is set, and the signature being verified has a
|
|
|
|
PKA record, then use the PKA information to fetch the key. Defaults
|
|
|
|
to yes.
|
|
|
|
|
|
|
|
@item include-subkeys
|
|
|
|
When receiving a key, include subkeys as potential targets. Note that
|
|
|
|
this option is not used with HKP keyservers, as they do not support
|
|
|
|
retrieving keys by subkey id.
|
|
|
|
|
|
|
|
@item use-temp-files
|
|
|
|
On most Unix-like platforms, GnuPG communicates with the keyserver
|
|
|
|
helper program via pipes, which is the most efficient method. This
|
|
|
|
option forces GnuPG to use temporary files to communicate. On some
|
|
|
|
platforms (such as Win32 and RISC OS), this option is always enabled.
|
|
|
|
|
|
|
|
@item keep-temp-files
|
|
|
|
If using `use-temp-files', do not delete the temp files after using
|
|
|
|
them. This option is useful to learn the keyserver communication
|
|
|
|
protocol by reading the temporary files.
|
|
|
|
|
|
|
|
@item verbose
|
|
|
|
Tell the keyserver helper program to be more verbose. This option can
|
|
|
|
be repeated multiple times to increase the verbosity level.
|
|
|
|
|
|
|
|
@item timeout
|
|
|
|
Tell the keyserver helper program how long (in seconds) to try and
|
|
|
|
perform a keyserver action before giving up. Note that performing
|
|
|
|
multiple actions at the same time uses this timeout value per action.
|
|
|
|
For example, when retrieving multiple keys via --recv-keys, the
|
|
|
|
timeout applies separately to each key retrieval, and not to the
|
|
|
|
--recv-keys command as a whole. Defaults to 30 seconds.
|
|
|
|
|
|
|
|
@item http-proxy
|
|
|
|
For HTTP-like keyserver schemes that (such as HKP and HTTP itself),
|
|
|
|
try to access the keyserver over a proxy. If a @code{value} is
|
|
|
|
specified, use this as the HTTP proxy. If no @code{value} is
|
|
|
|
specified, the value of the environment variable "http_proxy", if any,
|
|
|
|
will be used.
|
|
|
|
|
|
|
|
@item max-cert-size
|
|
|
|
When retrieving a key via DNS CERT, only accept keys up to this size.
|
|
|
|
Defaults to 16384 bytes.
|
|
|
|
@end table
|
|
|
|
|
|
|
|
@item --import-options @code{parameters}
|
|
|
|
This is a space or comma delimited string that gives options for
|
|
|
|
importing keys. Options can be prepended with a `no-' to give the
|
|
|
|
opposite meaning. The options are:
|
|
|
|
|
|
|
|
@table @asis
|
|
|
|
|
|
|
|
@item import-local-sigs
|
|
|
|
Allow importing key signatures marked as "local". This is not
|
|
|
|
generally useful unless a shared keyring scheme is being used.
|
|
|
|
Defaults to no.
|
|
|
|
|
|
|
|
@item repair-pks-subkey-bug
|
|
|
|
During import, attempt to repair the damage caused by the PKS
|
|
|
|
keyserver bug (pre version 0.9.6) that mangles keys with multiple
|
|
|
|
subkeys. Note that this cannot completely repair the damaged key as
|
|
|
|
some crucial data is removed by the keyserver, but it does at least
|
|
|
|
give you back one subkey. Defaults to no for regular --import and to
|
|
|
|
yes for keyserver --recv-keys.
|
|
|
|
|
|
|
|
@item merge-only
|
|
|
|
During import, allow key updates to existing keys, but do not allow
|
|
|
|
any new keys to be imported. Defaults to no.
|
|
|
|
|
|
|
|
@item import-clean
|
|
|
|
After import, compact (remove all signatures except the
|
|
|
|
self-signature) any user IDs from the new key that are not usable.
|
|
|
|
Then, remove any signatures from the new key that are not usable.
|
|
|
|
This includes signatures that were issued by keys that are not present
|
|
|
|
on the keyring. This option is the same as running the --edit-key
|
|
|
|
command "clean" after import. Defaults to no.
|
|
|
|
|
|
|
|
@item import-minimal
|
|
|
|
Import the smallest key possible. This removes all signatures except
|
|
|
|
the most recent self-signature on each user ID. This option is the
|
|
|
|
same as running the --edit-key command "minimize" after import.
|
|
|
|
Defaults to no.
|
|
|
|
@end table
|
|
|
|
|
|
|
|
@item --export-options @code{parameters}
|
|
|
|
This is a space or comma delimited string that gives options for
|
|
|
|
exporting keys. Options can be prepended with a `no-' to give the
|
|
|
|
opposite meaning. The options are:
|
|
|
|
|
|
|
|
@table @asis
|
|
|
|
|
|
|
|
@item export-local-sigs
|
|
|
|
Allow exporting key signatures marked as "local". This is not
|
|
|
|
generally useful unless a shared keyring scheme is being used.
|
|
|
|
Defaults to no.
|
|
|
|
|
|
|
|
@item export-attributes
|
|
|
|
Include attribute user IDs (photo IDs) while exporting. This is
|
|
|
|
useful to export keys if they are going to be used by an OpenPGP
|
|
|
|
program that does not accept attribute user IDs. Defaults to yes.
|
|
|
|
|
|
|
|
@item export-sensitive-revkeys
|
|
|
|
Include designated revoker information that was marked as
|
|
|
|
"sensitive". Defaults to no.
|
|
|
|
|
|
|
|
@item export-reset-subkey-passwd
|
|
|
|
When using the "--export-secret-subkeys" command, this option resets
|
|
|
|
the passphrases for all exported subkeys to empty. This is useful
|
|
|
|
when the exported subkey is to be used on an unattended machine where
|
|
|
|
a passphrase doesn't necessarily make sense. Defaults to no.
|
|
|
|
|
|
|
|
@item export-clean
|
|
|
|
Compact (remove all signatures from) user IDs on the key being
|
|
|
|
exported if the user IDs are not usable. Also, do not export any
|
|
|
|
signatures that are not usable. This includes signatures that were
|
|
|
|
issued by keys that are not present on the keyring. This option is
|
|
|
|
the same as running the --edit-key command "clean" before export
|
|
|
|
except that the local copy of the key is not modified. Defaults to
|
|
|
|
no.
|
|
|
|
|
|
|
|
@item export-minimal
|
|
|
|
Export the smallest key possible. This removes all signatures except
|
|
|
|
the most recent self-signature on each user ID. This option is the
|
|
|
|
same as running the --edit-key command "minimize" before export except
|
|
|
|
that the local copy of the key is not modified. Defaults to no.
|
|
|
|
@end table
|
|
|
|
|
|
|
|
@item --list-options @code{parameters}
|
|
|
|
This is a space or comma delimited string that gives options used when
|
|
|
|
listing keys and signatures (that is, --list-keys, --list-sigs,
|
|
|
|
--list-public-keys, --list-secret-keys, and the --edit-key functions).
|
|
|
|
Options can be prepended with a `no-' to give the opposite meaning.
|
|
|
|
The options are:
|
|
|
|
|
|
|
|
@table @asis
|
|
|
|
|
|
|
|
@item show-photos
|
|
|
|
Causes --list-keys, --list-sigs, --list-public-keys, and
|
|
|
|
--list-secret-keys to display any photo IDs attached to the key.
|
|
|
|
Defaults to no. See also --photo-viewer.
|
|
|
|
|
|
|
|
@item show-policy-urls
|
|
|
|
Show policy URLs in the --list-sigs or --check-sigs listings.
|
|
|
|
Defaults to no.
|
|
|
|
|
|
|
|
@item show-notations
|
|
|
|
@itemx show-std-notations
|
|
|
|
@itemx show-user-notations
|
|
|
|
Show all, IETF standard, or user-defined signature notations in the
|
|
|
|
--list-sigs or --check-sigs listings. Defaults to no.
|
|
|
|
|
|
|
|
@item show-keyserver-urls
|
|
|
|
Show any preferred keyserver URL in the --list-sigs or --check-sigs
|
|
|
|
listings. Defaults to no.
|
|
|
|
|
|
|
|
@item show-uid-validity
|
|
|
|
Display the calculated validity of user IDs during key listings.
|
|
|
|
Defaults to no.
|
|
|
|
|
|
|
|
@item show-unusable-uids
|
|
|
|
Show revoked and expired user IDs in key listings. Defaults to no.
|
|
|
|
|
|
|
|
@item show-unusable-subkeys
|
|
|
|
Show revoked and expired subkeys in key listings. Defaults to no.
|
|
|
|
|
|
|
|
@item show-keyring
|
|
|
|
Display the keyring name at the head of key listings to show which
|
|
|
|
keyring a given key resides on. Defaults to no.
|
|
|
|
|
|
|
|
@item show-sig-expire
|
|
|
|
Show signature expiration dates (if any) during --list-sigs or
|
|
|
|
--check-sigs listings. Defaults to no.
|
|
|
|
|
|
|
|
@item show-sig-subpackets
|
|
|
|
Include signature subpackets in the key listing. This option can take
|
|
|
|
an optional argument list of the subpackets to list. If no argument
|
|
|
|
is passed, list all subpackets. Defaults to no. This option is only
|
|
|
|
meaningful when using --with-colons along with --list-sigs or
|
|
|
|
--check-sigs.
|
|
|
|
@end table
|
|
|
|
|
|
|
|
@item --verify-options @code{parameters}
|
|
|
|
This is a space or comma delimited string that gives options used when
|
|
|
|
verifying signatures. Options can be prepended with a `no-' to give
|
|
|
|
the opposite meaning. The options are:
|
|
|
|
|
|
|
|
@table @asis
|
|
|
|
|
|
|
|
@item show-photos
|
|
|
|
Display any photo IDs present on the key that issued the signature.
|
|
|
|
Defaults to no. See also --photo-viewer.
|
|
|
|
|
|
|
|
@item show-policy-urls
|
|
|
|
Show policy URLs in the signature being verified. Defaults to no.
|
|
|
|
|
|
|
|
@item show-notations
|
|
|
|
@itemx show-std-notations
|
|
|
|
@itemx show-user-notations
|
|
|
|
Show all, IETF standard, or user-defined signature notations in the
|
|
|
|
signature being verified. Defaults to IETF standard.
|
|
|
|
|
|
|
|
@item show-keyserver-urls
|
|
|
|
Show any preferred keyserver URL in the signature being verified.
|
|
|
|
Defaults to no.
|
|
|
|
|
|
|
|
@item show-uid-validity
|
|
|
|
Display the calculated validity of the user IDs on the key that issued
|
|
|
|
the signature. Defaults to no.
|
|
|
|
|
|
|
|
@item show-unusable-uids
|
|
|
|
Show revoked and expired user IDs during signature verification.
|
|
|
|
Defaults to no.
|
|
|
|
|
|
|
|
@item pka-lookups
|
|
|
|
Enable PKA lookups to verify sender addresses. Note that PKA is based
|
|
|
|
on DNS, and so enabling this option may disclose information on when
|
|
|
|
and what signatures are verified or to whom data is encrypted. This
|
|
|
|
is similar to the "web bug" described for the auto-key-retrieve
|
|
|
|
feature.
|
|
|
|
|
|
|
|
@item pka-trust-increase
|
|
|
|
Raise the trust in a signature to full if the signature passes PKA
|
|
|
|
validation. This option is only meaningful if pka-lookups is set.
|
|
|
|
@end table
|
|
|
|
|
|
|
|
@item --enable-dsa2
|
|
|
|
@itemx --disable-dsa2
|
|
|
|
Enables new-style DSA keys which (unlike the old style) may be larger
|
|
|
|
than 1024 bit and use hashes other than SHA-1 and RIPEMD/160. Note
|
|
|
|
that very few programs currently support these keys and signatures
|
|
|
|
from them.
|
|
|
|
|
|
|
|
@item --show-photos
|
|
|
|
@itemx --no-show-photos
|
|
|
|
Causes --list-keys, --list-sigs, --list-public-keys,
|
|
|
|
--list-secret-keys, and verifying a signature to also display the
|
|
|
|
photo ID attached to the key, if any. See also --photo-viewer. These
|
|
|
|
options are deprecated. Use `--list-options [no-]show-photos' and/or
|
|
|
|
`--verify-options [no-]show-photos' instead.
|
|
|
|
|
|
|
|
@item --photo-viewer @code{string}
|
|
|
|
This is the command line that should be run to view a photo ID. "%i"
|
|
|
|
will be expanded to a filename containing the photo. "%I" does the
|
|
|
|
same, except the file will not be deleted once the viewer exits.
|
|
|
|
Other flags are "%k" for the key ID, "%K" for the long key ID, "%f"
|
|
|
|
for the key fingerprint, "%t" for the extension of the image type
|
|
|
|
(e.g. "jpg"), "%T" for the MIME type of the image (e.g. "image/jpeg"),
|
|
|
|
and "%%" for an actual percent sign. If neither %i or %I are present,
|
|
|
|
then the photo will be supplied to the viewer on standard input.
|
|
|
|
|
|
|
|
The default viewer is "xloadimage -fork -quiet -title 'KeyID 0x%k'
|
|
|
|
stdin". Note that if your image viewer program is not secure, then
|
|
|
|
executing it from GnuPG does not make it secure.
|
|
|
|
|
|
|
|
@item --exec-path @code{string}
|
|
|
|
Sets a list of directories to search for photo viewers and keyserver
|
|
|
|
helpers. If not provided, keyserver helpers use the compiled-in
|
|
|
|
default directory, and photo viewers use the $PATH environment
|
|
|
|
variable.
|
|
|
|
Note, that on W32 system this value is ignored when searching for
|
|
|
|
keyserver helpers.
|
|
|
|
|
|
|
|
@item --show-keyring
|
|
|
|
Display the keyring name at the head of key listings to show which
|
|
|
|
keyring a given key resides on. This option is deprecated: use
|
|
|
|
`--list-options [no-]show-keyring' instead.
|
|
|
|
|
|
|
|
@item --keyring @code{file}
|
|
|
|
Add @code{file} to the current list of keyrings. If @code{file} begins
|
|
|
|
with a tilde and a slash, these are replaced by the $HOME
|
|
|
|
directory. If the filename does not contain a slash, it is assumed to
|
|
|
|
be in the GnuPG home directory ("~/.gnupg" if --homedir or $GNUPGHOME
|
|
|
|
is not used).
|
|
|
|
|
|
|
|
Note that this adds a keyring to the current list. If the intent is
|
|
|
|
to use the specified keyring alone, use --keyring along with
|
|
|
|
--no-default-keyring.
|
|
|
|
|
|
|
|
@item --secret-keyring @code{file}
|
|
|
|
Same as --keyring but for the secret keyrings.
|
|
|
|
|
|
|
|
@item --primary-keyring @code{file}
|
|
|
|
Designate @code{file} as the primary public keyring. This means that
|
|
|
|
newly imported keys (via --import or keyserver --recv-from) will go to
|
|
|
|
this keyring.
|
|
|
|
|
|
|
|
@item --trustdb-name @code{file}
|
|
|
|
Use @code{file} instead of the default trustdb. If @code{file} begins
|
|
|
|
with a tilde and a slash, these are replaced by the $HOME
|
|
|
|
directory. If the filename does not contain a slash, it is assumed to
|
|
|
|
be in the GnuPG home directory ("~/.gnupg" if --homedir or $GNUPGHOME
|
|
|
|
is not used).
|
|
|
|
|
2006-08-18 15:05:39 +02:00
|
|
|
@include opt-homedir.texi
|
|
|
|
|
2006-08-16 16:54:19 +02:00
|
|
|
|
|
|
|
@item --pcsc-driver @code{file}
|
|
|
|
Use @code{file} to access the smartcard reader. The current default is
|
|
|
|
`libpcsclite.so.1' for GLIBC based systems,
|
|
|
|
`/System/Library/Frameworks/PCSC.framework/PCSC' for MAC OS X,
|
|
|
|
`winscard.dll' for Windows and `libpcsclite.so' for other systems.
|
|
|
|
|
|
|
|
@item --ctapi-driver @code{file}
|
|
|
|
Use @code{file} to access the smartcard reader. The current default
|
|
|
|
is `libtowitoko.so'. Note that the use of this interface is
|
|
|
|
deprecated; it may be removed in future releases.
|
|
|
|
|
|
|
|
@item --disable-ccid
|
|
|
|
Disable the integrated support for CCID compliant readers. This
|
|
|
|
allows to fall back to one of the other drivers even if the internal
|
|
|
|
CCID driver can handle the reader. Note, that CCID support is only
|
|
|
|
available if libusb was available at build time.
|
|
|
|
|
|
|
|
@item --reader-port @code{number_or_string}
|
|
|
|
This option may be used to specify the port of the card terminal. A
|
|
|
|
value of 0 refers to the first serial device; add 32768 to access USB
|
|
|
|
devices. The default is 32768 (first USB device). PC/SC or CCID
|
|
|
|
readers might need a string here; run the program in verbose mode to get
|
|
|
|
a list of available readers. The default is then the first reader
|
|
|
|
found.
|
|
|
|
|
|
|
|
@item --display-charset @code{name}
|
|
|
|
Set the name of the native character set. This is used to convert
|
|
|
|
some informational strings like user IDs to the proper UTF-8 encoding.
|
|
|
|
Note that this has nothing to do with the character set of data to be
|
|
|
|
encrypted or signed; GnuPG does not recode user supplied data. If
|
|
|
|
this option is not used, the default character set is determined from
|
|
|
|
the current locale. A verbosity level of 3 shows the chosen set.
|
|
|
|
Valid values for @code{name} are:
|
|
|
|
|
|
|
|
@table @asis
|
|
|
|
|
|
|
|
@item iso-8859-1
|
|
|
|
This is the Latin 1 set.
|
|
|
|
|
|
|
|
@item iso-8859-2
|
|
|
|
The Latin 2 set.
|
|
|
|
|
|
|
|
@item iso-8859-15
|
|
|
|
This is currently an alias for
|
|
|
|
the Latin 1 set.
|
|
|
|
|
|
|
|
@item koi8-r
|
|
|
|
The usual Russian set (rfc1489).
|
|
|
|
|
|
|
|
@item utf-8
|
|
|
|
Bypass all translations and assume
|
|
|
|
that the OS uses native UTF-8 encoding.
|
|
|
|
@end table
|
|
|
|
|
|
|
|
@item --utf8-strings
|
|
|
|
@itemx --no-utf8-strings
|
|
|
|
Assume that command line arguments are given as UTF8 strings. The
|
|
|
|
default (--no-utf8-strings) is to assume that arguments are encoded in
|
|
|
|
the character set as specified by --display-charset. These options
|
|
|
|
affect all following arguments. Both options may be used multiple
|
|
|
|
times.
|
|
|
|
|
|
|
|
@item --options @code{file}
|
|
|
|
Read options from @code{file} and do not try to read
|
|
|
|
them from the default options file in the homedir
|
|
|
|
(see --homedir). This option is ignored if used
|
|
|
|
in an options file.
|
|
|
|
|
|
|
|
@item --no-options
|
|
|
|
Shortcut for "--options /dev/null". This option is
|
|
|
|
detected before an attempt to open an option file.
|
2006-08-17 20:01:25 +02:00
|
|
|
Using this option will also prevent the creation of a
|
2006-08-16 16:54:19 +02:00
|
|
|
"~./gnupg" homedir.
|
|
|
|
|
|
|
|
@item --load-extension @code{name}
|
|
|
|
Load an extension module. If @code{name} does not contain a slash it is
|
|
|
|
searched for in the directory configured when GnuPG was built
|
|
|
|
(generally "/usr/local/lib/gnupg"). Extensions are not generally
|
|
|
|
useful anymore, and the use of this option is deprecated.
|
|
|
|
|
|
|
|
@item --debug @code{flags}
|
|
|
|
Set debugging flags. All flags are or-ed and @code{flags} may
|
|
|
|
be given in C syntax (e.g. 0x0042).
|
|
|
|
|
|
|
|
@item --debug-all
|
|
|
|
Set all useful debugging flags.
|
|
|
|
|
|
|
|
@item --debug-ccid-driver
|
|
|
|
Enable debug output from the included CCID driver for smartcards.
|
|
|
|
Note that this option is only available on some system.
|
|
|
|
|
|
|
|
@item --enable-progress-filter
|
|
|
|
Enable certain PROGRESS status outputs. This option allows frontends
|
|
|
|
to display a progress indicator while gpg is processing larger files.
|
|
|
|
There is a slight performance overhead using it.
|
|
|
|
|
|
|
|
@item --status-fd @code{n}
|
|
|
|
Write special status strings to the file descriptor @code{n}.
|
|
|
|
See the file DETAILS in the documentation for a listing of them.
|
|
|
|
|
|
|
|
@item --status-file @code{file}
|
|
|
|
Same as --status-fd, except the status data is written to file
|
|
|
|
@code{file}.
|
|
|
|
|
|
|
|
@item --logger-fd @code{n}
|
|
|
|
Write log output to file descriptor @code{n} and not to stderr.
|
|
|
|
|
|
|
|
@item --logger-file @code{file}
|
|
|
|
Same as --logger-fd, except the logger data is written to file
|
|
|
|
@code{file}.
|
|
|
|
|
|
|
|
@item --attribute-fd @code{n}
|
|
|
|
Write attribute subpackets to the file descriptor @code{n}. This is
|
|
|
|
most useful for use with --status-fd, since the status messages are
|
|
|
|
needed to separate out the various subpackets from the stream
|
|
|
|
delivered to the file descriptor.
|
|
|
|
|
|
|
|
@item --attribute-file @code{file}
|
|
|
|
Same as --attribute-fd, except the attribute data is written to file
|
|
|
|
@code{file}.
|
|
|
|
|
|
|
|
@item --comment @code{string}
|
|
|
|
@itemx --no-comments
|
|
|
|
Use @code{string} as a comment string in clear text signatures and
|
|
|
|
ASCII armored messages or keys (see --armor). The default behavior is
|
|
|
|
not to use a comment string. --comment may be repeated multiple times
|
|
|
|
to get multiple comment strings. --no-comments removes all comments.
|
|
|
|
It is a good idea to keep the length of a single comment below 60
|
|
|
|
characters to avoid problems with mail programs wrapping such lines.
|
|
|
|
Note that comment lines, like all other header lines, are not
|
|
|
|
protected by the signature.
|
|
|
|
|
|
|
|
@item --emit-version
|
|
|
|
@itemx --no-emit-version
|
|
|
|
Force inclusion of the version string in ASCII armored output.
|
|
|
|
--no-emit-version disables this option.
|
|
|
|
|
|
|
|
@item --sig-notation @code{name=value}
|
|
|
|
@itemx --cert-notation @code{name=value}
|
|
|
|
@itemx -N, --set-notation @code{name=value}
|
|
|
|
Put the name value pair into the signature as notation data.
|
|
|
|
@code{name} must consist only of printable characters or spaces, and
|
|
|
|
must contain a '@@' character in the form keyname@@domain.example.com
|
|
|
|
(substituting the appropriate keyname and domain name, of course).
|
|
|
|
This is to help prevent pollution of the IETF reserved notation
|
|
|
|
namespace. The --expert flag overrides the '@@' check. @code{value}
|
|
|
|
may be any printable string; it will be encoded in UTF8, so you should
|
|
|
|
check that your --display-charset is set correctly. If you prefix
|
|
|
|
@code{name} with an exclamation mark (!), the notation data will be
|
|
|
|
flagged as critical (rfc2440:5.2.3.15). --sig-notation sets a
|
|
|
|
notation for data signatures. --cert-notation sets a notation for key
|
|
|
|
signatures (certifications). --set-notation sets both.
|
|
|
|
|
|
|
|
There are special codes that may be used in notation names. "%k" will
|
|
|
|
be expanded into the key ID of the key being signed, "%K" into the
|
|
|
|
long key ID of the key being signed, "%f" into the fingerprint of the
|
|
|
|
key being signed, "%s" into the key ID of the key making the
|
|
|
|
signature, "%S" into the long key ID of the key making the signature,
|
|
|
|
"%g" into the fingerprint of the key making the signature (which might
|
|
|
|
be a subkey), "%p" into the fingerprint of the primary key of the key
|
|
|
|
making the signature, "%c" into the signature count from the OpenPGP
|
|
|
|
smartcard, and "%%" results in a single "%". %k, %K, and %f are only
|
|
|
|
meaningful when making a key signature (certification), and %c is only
|
|
|
|
meaningful when using the OpenPGP smartcard.
|
|
|
|
|
|
|
|
@item --show-notation
|
|
|
|
@itemx --no-show-notation
|
|
|
|
Show signature notations in the --list-sigs or --check-sigs listings
|
|
|
|
as well as when verifying a signature with a notation in it. These
|
|
|
|
options are deprecated. Use `--list-options [no-]show-notation'
|
|
|
|
and/or `--verify-options [no-]show-notation' instead.
|
|
|
|
|
|
|
|
@item --sig-policy-url @code{string}
|
|
|
|
@itemx --cert-policy-url @code{string}
|
|
|
|
@itemx --set-policy-url @code{string}
|
|
|
|
Use @code{string} as a Policy URL for signatures (rfc2440:5.2.3.19).
|
|
|
|
If you prefix it with an exclamation mark (!), the policy URL packet
|
|
|
|
will be flagged as critical. --sig-policy-url sets a policy url for
|
|
|
|
data signatures. --cert-policy-url sets a policy url for key
|
|
|
|
signatures (certifications). --set-policy-url sets both.
|
|
|
|
|
|
|
|
The same %-expandos used for notation data are available here as well.
|
|
|
|
|
|
|
|
@item --show-policy-url
|
|
|
|
@itemx --no-show-policy-url
|
|
|
|
Show policy URLs in the --list-sigs or --check-sigs listings as well
|
|
|
|
as when verifying a signature with a policy URL in it. These options
|
|
|
|
are deprecated. Use `--list-options [no-]show-policy-url' and/or
|
|
|
|
`--verify-options [no-]show-policy-url' instead.
|
|
|
|
|
|
|
|
@item --sig-keyserver-url @code{string}
|
|
|
|
Use @code{string} as a preferred keyserver URL for data signatures. If
|
|
|
|
you prefix it with an exclamation mark, the keyserver URL packet will
|
2006-08-17 20:01:25 +02:00
|
|
|
be flagged as critical.
|
2006-08-16 16:54:19 +02:00
|
|
|
|
|
|
|
The same %-expandos used for notation data are available here as well.
|
|
|
|
|
|
|
|
@item --set-filename @code{string}
|
|
|
|
Use @code{string} as the filename which is stored inside messages.
|
|
|
|
This overrides the default, which is to use the actual filename of the
|
|
|
|
file being encrypted.
|
|
|
|
|
|
|
|
@item --for-your-eyes-only
|
|
|
|
@itemx --no-for-your-eyes-only
|
|
|
|
Set the `for your eyes only' flag in the message. This causes GnuPG
|
|
|
|
to refuse to save the file unless the --output option is given, and
|
|
|
|
PGP to use the "secure viewer" with a Tempest-resistant font to
|
|
|
|
display the message. This option overrides --set-filename.
|
|
|
|
--no-for-your-eyes-only disables this option.
|
|
|
|
|
|
|
|
@item --use-embedded-filename
|
|
|
|
@itemx --no-use-embedded-filename
|
|
|
|
Try to create a file with a name as embedded in the data. This can be
|
|
|
|
a dangerous option as it allows to overwrite files. Defaults to no.
|
|
|
|
|
|
|
|
@item --completes-needed @code{n}
|
|
|
|
Number of completely trusted users to introduce a new
|
|
|
|
key signer (defaults to 1).
|
|
|
|
|
|
|
|
@item --marginals-needed @code{n}
|
|
|
|
Number of marginally trusted users to introduce a new
|
|
|
|
key signer (defaults to 3)
|
|
|
|
|
|
|
|
@item --max-cert-depth @code{n}
|
|
|
|
Maximum depth of a certification chain (default is 5).
|
|
|
|
|
|
|
|
@item --cipher-algo @code{name}
|
|
|
|
Use @code{name} as cipher algorithm. Running the program with the
|
|
|
|
command --version yields a list of supported algorithms. If this is
|
|
|
|
not used the cipher algorithm is selected from the preferences stored
|
|
|
|
with the key. In general, you do not want to use this option as it
|
|
|
|
allows you to violate the OpenPGP standard.
|
|
|
|
--personal-cipher-preferences is the safe way to accomplish the same
|
|
|
|
thing.
|
|
|
|
|
|
|
|
@item --digest-algo @code{name}
|
|
|
|
Use @code{name} as the message digest algorithm. Running the program
|
|
|
|
with the command --version yields a list of supported algorithms. In
|
|
|
|
general, you do not want to use this option as it allows you to
|
|
|
|
violate the OpenPGP standard. --personal-digest-preferences is the
|
|
|
|
safe way to accomplish the same thing.
|
|
|
|
|
|
|
|
@item --compress-algo @code{name}
|
|
|
|
Use compression algorithm @code{name}. "zlib" is RFC-1950 ZLIB
|
|
|
|
compression. "zip" is RFC-1951 ZIP compression which is used by PGP.
|
|
|
|
"bzip2" is a more modern compression scheme that can compress some
|
|
|
|
things better than zip or zlib, but at the cost of more memory used
|
|
|
|
during compression and decompression. "uncompressed" or "none"
|
|
|
|
disables compression. If this option is not used, the default
|
|
|
|
behavior is to examine the recipient key preferences to see which
|
|
|
|
algorithms the recipient supports. If all else fails, ZIP is used for
|
|
|
|
maximum compatibility.
|
|
|
|
|
|
|
|
ZLIB may give better compression results than ZIP, as the compression
|
|
|
|
window size is not limited to 8k. BZIP2 may give even better
|
|
|
|
compression results than that, but will use a significantly larger
|
|
|
|
amount of memory while compressing and decompressing. This may be
|
|
|
|
significant in low memory situations. Note, however, that PGP (all
|
|
|
|
versions) only supports ZIP compression. Using any algorithm other
|
|
|
|
than ZIP or "none" will make the message unreadable with PGP. In
|
|
|
|
general, you do not want to use this option as it allows you to
|
|
|
|
violate the OpenPGP standard. --personal-compress-preferences is the
|
|
|
|
safe way to accomplish the same thing.
|
|
|
|
|
|
|
|
@item --cert-digest-algo @code{name}
|
|
|
|
Use @code{name} as the message digest algorithm used when signing a
|
|
|
|
key. Running the program with the command --version yields a list of
|
|
|
|
supported algorithms. Be aware that if you choose an algorithm that
|
|
|
|
GnuPG supports but other OpenPGP implementations do not, then some
|
|
|
|
users will not be able to use the key signatures you make, or quite
|
|
|
|
possibly your entire key.
|
|
|
|
|
|
|
|
@item --s2k-cipher-algo @code{name}
|
|
|
|
Use @code{name} as the cipher algorithm used to protect secret keys.
|
|
|
|
The default cipher is CAST5. This cipher is also used for
|
|
|
|
conventional encryption if --personal-cipher-preferences and
|
|
|
|
--cipher-algo is not given.
|
|
|
|
|
|
|
|
@item --s2k-digest-algo @code{name}
|
|
|
|
Use @code{name} as the digest algorithm used to mangle the passphrases.
|
|
|
|
The default algorithm is SHA-1.
|
|
|
|
|
|
|
|
@item --s2k-mode @code{n}
|
|
|
|
Selects how passphrases are mangled. If @code{n} is 0 a plain
|
|
|
|
passphrase (which is not recommended) will be used, a 1 adds a salt to
|
|
|
|
the passphrase and a 3 (the default) iterates the whole process a
|
|
|
|
couple of times. Unless --rfc1991 is used, this mode is also used for
|
|
|
|
conventional encryption.
|
|
|
|
|
|
|
|
@item --simple-sk-checksum
|
|
|
|
Secret keys are integrity protected by using a SHA-1 checksum. This
|
|
|
|
method is part of the upcoming enhanced OpenPGP specification but
|
|
|
|
GnuPG already uses it as a countermeasure against certain attacks.
|
|
|
|
Old applications don't understand this new format, so this option may
|
|
|
|
be used to switch back to the old behaviour. Using this option bears
|
|
|
|
a security risk. Note that using this option only takes effect when
|
|
|
|
the secret key is encrypted - the simplest way to make this happen is
|
|
|
|
to change the passphrase on the key (even changing it to the same
|
|
|
|
value is acceptable).
|
|
|
|
|
|
|
|
@item --disable-cipher-algo @code{name}
|
|
|
|
Never allow the use of @code{name} as cipher algorithm.
|
|
|
|
The given name will not be checked so that a later loaded algorithm
|
|
|
|
will still get disabled.
|
|
|
|
|
|
|
|
@item --disable-pubkey-algo @code{name}
|
|
|
|
Never allow the use of @code{name} as public key algorithm.
|
|
|
|
The given name will not be checked so that a later loaded algorithm
|
|
|
|
will still get disabled.
|
|
|
|
|
|
|
|
@item --no-sig-cache
|
|
|
|
Do not cache the verification status of key signatures.
|
|
|
|
Caching gives a much better performance in key listings. However, if
|
|
|
|
you suspect that your public keyring is not save against write
|
|
|
|
modifications, you can use this option to disable the caching. It
|
|
|
|
probably does not make sense to disable it because all kind of damage
|
|
|
|
can be done if someone else has write access to your public keyring.
|
|
|
|
|
|
|
|
@item --no-sig-create-check
|
|
|
|
GnuPG normally verifies each signature right after creation to protect
|
|
|
|
against bugs and hardware malfunctions which could leak out bits from
|
|
|
|
the secret key. This extra verification needs some time (about 115%
|
|
|
|
for DSA keys), and so this option can be used to disable it.
|
|
|
|
However, due to the fact that the signature creation needs manual
|
|
|
|
interaction, this performance penalty does not matter in most settings.
|
|
|
|
|
|
|
|
@item --auto-check-trustdb
|
|
|
|
@itemx --no-auto-check-trustdb
|
|
|
|
If GnuPG feels that its information about the Web of Trust has to be
|
|
|
|
updated, it automatically runs the --check-trustdb command internally.
|
|
|
|
This may be a time consuming process. --no-auto-check-trustdb
|
|
|
|
disables this option.
|
|
|
|
|
|
|
|
@item --throw-keyids
|
|
|
|
@itemx --no-throw-keyids
|
|
|
|
Do not put the recipient key IDs into encrypted messages. This helps
|
|
|
|
to hide the receivers of the message and is a limited countermeasure
|
|
|
|
against traffic analysis. On the receiving side, it may slow down the
|
|
|
|
decryption process because all available secret keys must be tried.
|
|
|
|
--no-throw-keyids disables this option. This option is essentially
|
|
|
|
the same as using --hidden-recipient for all recipients.
|
|
|
|
|
|
|
|
@item --not-dash-escaped
|
|
|
|
This option changes the behavior of cleartext signatures
|
|
|
|
so that they can be used for patch files. You should not
|
|
|
|
send such an armored file via email because all spaces
|
|
|
|
and line endings are hashed too. You can not use this
|
|
|
|
option for data which has 5 dashes at the beginning of a
|
|
|
|
line, patch files don't have this. A special armor header
|
|
|
|
line tells GnuPG about this cleartext signature option.
|
|
|
|
|
|
|
|
@item --escape-from-lines
|
|
|
|
@itemx --no-escape-from-lines
|
|
|
|
Because some mailers change lines starting with "From " to ">From
|
|
|
|
" it is good to handle such lines in a special way when creating
|
|
|
|
cleartext signatures to prevent the mail system from breaking the
|
|
|
|
signature. Note that all other PGP versions do it this way too.
|
|
|
|
Enabled by default. --no-escape-from-lines disables this option.
|
|
|
|
|
|
|
|
@item --passphrase-fd @code{n}
|
|
|
|
Read the passphrase from file descriptor @code{n}. Only the first line
|
|
|
|
will be read from file descriptor @code{n}. If you use 0 for @code{n},
|
|
|
|
the passphrase will be read from stdin. This can only be used if only
|
|
|
|
one passphrase is supplied.
|
|
|
|
|
|
|
|
@item --passphrase-file @code{file}
|
|
|
|
Read the passphrase from file @code{file}. Only the first line will
|
2006-08-17 20:01:25 +02:00
|
|
|
be read from file @code{file}. This can only be used if only one
|
2006-08-16 16:54:19 +02:00
|
|
|
passphrase is supplied. Obviously, a passphrase stored in a file is
|
|
|
|
of questionable security if other users can read this file. Don't use
|
|
|
|
this option if you can avoid it.
|
|
|
|
|
|
|
|
@item --passphrase @code{string}
|
|
|
|
Use @code{string} as the passphrase. This can only be used if only one
|
|
|
|
passphrase is supplied. Obviously, this is of very questionable
|
|
|
|
security on a multi-user system. Don't use this option if you can
|
|
|
|
avoid it.
|
|
|
|
|
|
|
|
@item --command-fd @code{n}
|
|
|
|
This is a replacement for the deprecated shared-memory IPC mode.
|
|
|
|
If this option is enabled, user input on questions is not expected
|
|
|
|
from the TTY but from the given file descriptor. It should be used
|
|
|
|
together with --status-fd. See the file doc/DETAILS in the source
|
|
|
|
distribution for details on how to use it.
|
|
|
|
|
|
|
|
@item --command-file @code{file}
|
|
|
|
Same as --command-fd, except the commands are read out of file
|
|
|
|
@code{file}
|
|
|
|
|
|
|
|
@item --use-agent
|
|
|
|
@itemx --no-use-agent
|
|
|
|
Try to use the GnuPG-Agent. Please note that this agent is still under
|
|
|
|
development. With this option, GnuPG first tries to connect to the
|
|
|
|
agent before it asks for a passphrase. --no-use-agent disables this
|
|
|
|
option.
|
|
|
|
|
|
|
|
@item --gpg-agent-info
|
|
|
|
Override the value of the environment variable
|
|
|
|
@samp{GPG_AGENT_INFO}. This is only used when --use-agent has been given
|
|
|
|
|
|
|
|
@item Compliance options
|
|
|
|
These options control what GnuPG is compliant to. Only one of these
|
|
|
|
options may be active at a time. Note that the default setting of
|
|
|
|
this is nearly always the correct one. See the INTEROPERABILITY WITH
|
|
|
|
OTHER OPENPGP PROGRAMS section below before using one of these
|
|
|
|
options.
|
|
|
|
|
|
|
|
@table @asis
|
|
|
|
|
|
|
|
@item --gnupg
|
|
|
|
Use standard GnuPG behavior. This is essentially OpenPGP behavior
|
|
|
|
(see --openpgp), but with some additional workarounds for common
|
|
|
|
compatibility problems in different versions of PGP. This is the
|
|
|
|
default option, so it is not generally needed, but it may be useful to
|
|
|
|
override a different compliance option in the gpg.conf file.
|
|
|
|
|
|
|
|
@item --openpgp
|
|
|
|
Reset all packet, cipher and digest options to strict OpenPGP
|
|
|
|
behavior. Use this option to reset all previous options like
|
|
|
|
--rfc1991, --force-v3-sigs, --s2k-*, --cipher-algo, --digest-algo and
|
|
|
|
--compress-algo to OpenPGP compliant values. All PGP workarounds are
|
|
|
|
disabled.
|
|
|
|
|
|
|
|
@item --rfc2440
|
|
|
|
Reset all packet, cipher and digest options to strict RFC-2440
|
|
|
|
behavior. Note that this is currently the same thing as --openpgp.
|
|
|
|
|
|
|
|
@item --rfc1991
|
|
|
|
Try to be more RFC-1991 (PGP 2.x) compliant.
|
|
|
|
|
|
|
|
@item --pgp2
|
|
|
|
Set up all options to be as PGP 2.x compliant as possible, and warn if
|
|
|
|
an action is taken (e.g. encrypting to a non-RSA key) that will create
|
|
|
|
a message that PGP 2.x will not be able to handle. Note that `PGP
|
|
|
|
2.x' here means `MIT PGP 2.6.2'. There are other versions of PGP 2.x
|
|
|
|
available, but the MIT release is a good common baseline.
|
|
|
|
|
|
|
|
This option implies `--rfc1991 --disable-mdc --no-force-v4-certs
|
|
|
|
--no-sk-comment --escape-from-lines --force-v3-sigs
|
|
|
|
--no-ask-sig-expire --no-ask-cert-expire --cipher-algo IDEA
|
|
|
|
--digest-algo MD5 --compress-algo 1'. It also disables --textmode
|
|
|
|
when encrypting.
|
|
|
|
|
|
|
|
@item --pgp6
|
|
|
|
Set up all options to be as PGP 6 compliant as possible. This
|
|
|
|
restricts you to the ciphers IDEA (if the IDEA plugin is installed),
|
|
|
|
3DES, and CAST5, the hashes MD5, SHA1 and RIPEMD160, and the
|
|
|
|
compression algorithms none and ZIP. This also disables
|
|
|
|
--throw-keyids, and making signatures with signing subkeys as PGP 6
|
|
|
|
does not understand signatures made by signing subkeys.
|
|
|
|
|
|
|
|
This option implies `--disable-mdc --no-sk-comment --escape-from-lines
|
|
|
|
--force-v3-sigs --no-ask-sig-expire'
|
|
|
|
|
|
|
|
@item --pgp7
|
|
|
|
Set up all options to be as PGP 7 compliant as possible. This is
|
|
|
|
identical to --pgp6 except that MDCs are not disabled, and the list of
|
|
|
|
allowable ciphers is expanded to add AES128, AES192, AES256, and
|
|
|
|
TWOFISH.
|
|
|
|
|
|
|
|
@item --pgp8
|
|
|
|
Set up all options to be as PGP 8 compliant as possible. PGP 8 is a
|
|
|
|
lot closer to the OpenPGP standard than previous versions of PGP, so
|
|
|
|
all this does is disable --throw-keyids and set --escape-from-lines.
|
|
|
|
All algorithms are allowed except for the SHA224, SHA384, and SHA512
|
|
|
|
digests.
|
|
|
|
@end table
|
|
|
|
|
|
|
|
@item --force-v3-sigs
|
|
|
|
@itemx --no-force-v3-sigs
|
|
|
|
OpenPGP states that an implementation should generate v4 signatures
|
|
|
|
but PGP versions 5 through 7 only recognize v4 signatures on key
|
|
|
|
material. This option forces v3 signatures for signatures on data.
|
|
|
|
Note that this option overrides --ask-sig-expire, as v3 signatures
|
|
|
|
cannot have expiration dates. --no-force-v3-sigs disables this
|
|
|
|
option.
|
|
|
|
|
|
|
|
@item --force-v4-certs
|
|
|
|
@itemx --no-force-v4-certs
|
|
|
|
Always use v4 key signatures even on v3 keys. This option also
|
|
|
|
changes the default hash algorithm for v3 RSA keys from MD5 to SHA-1.
|
|
|
|
--no-force-v4-certs disables this option.
|
|
|
|
|
|
|
|
@item --force-mdc
|
|
|
|
Force the use of encryption with a modification detection code. This
|
|
|
|
is always used with the newer ciphers (those with a blocksize greater
|
|
|
|
than 64 bits), or if all of the recipient keys indicate MDC support in
|
|
|
|
their feature flags.
|
|
|
|
|
|
|
|
@item --disable-mdc
|
|
|
|
Disable the use of the modification detection code. Note that by
|
|
|
|
using this option, the encrypted message becomes vulnerable to a
|
|
|
|
message modification attack.
|
|
|
|
|
|
|
|
@item --allow-non-selfsigned-uid
|
|
|
|
@itemx --no-allow-non-selfsigned-uid
|
|
|
|
Allow the import and use of keys with user IDs which are not
|
|
|
|
self-signed. This is not recommended, as a non self-signed user ID is
|
|
|
|
trivial to forge. --no-allow-non-selfsigned-uid disables.
|
|
|
|
|
|
|
|
@item --allow-freeform-uid
|
|
|
|
Disable all checks on the form of the user ID while generating a new
|
|
|
|
one. This option should only be used in very special environments as
|
|
|
|
it does not ensure the de-facto standard format of user IDs.
|
|
|
|
|
|
|
|
@item --ignore-time-conflict
|
|
|
|
GnuPG normally checks that the timestamps associated with keys and
|
|
|
|
signatures have plausible values. However, sometimes a signature
|
|
|
|
seems to be older than the key due to clock problems. This option
|
|
|
|
makes these checks just a warning. See also --ignore-valid-from for
|
|
|
|
timestamp issues on subkeys.
|
|
|
|
|
|
|
|
@item --ignore-valid-from
|
|
|
|
GnuPG normally does not select and use subkeys created in the future.
|
|
|
|
This option allows the use of such keys and thus exhibits the
|
|
|
|
pre-1.0.7 behaviour. You should not use this option unless you there
|
|
|
|
is some clock problem. See also --ignore-time-conflict for timestamp
|
|
|
|
issues with signatures.
|
|
|
|
|
|
|
|
@item --ignore-crc-error
|
|
|
|
The ASCII armor used by OpenPGP is protected by a CRC checksum against
|
|
|
|
transmission errors. Occasionally the CRC gets mangled somewhere on
|
|
|
|
the transmission channel but the actual content (which is protected by
|
|
|
|
the OpenPGP protocol anyway) is still okay. This option allows GnuPG
|
|
|
|
to ignore CRC errors.
|
|
|
|
|
|
|
|
@item --ignore-mdc-error
|
|
|
|
This option changes a MDC integrity protection failure into a warning.
|
|
|
|
This can be useful if a message is partially corrupt, but it is
|
|
|
|
necessary to get as much data as possible out of the corrupt message.
|
|
|
|
However, be aware that a MDC protection failure may also mean that the
|
|
|
|
message was tampered with intentionally by an attacker.
|
|
|
|
|
|
|
|
@item --lock-once
|
|
|
|
Lock the databases the first time a lock is requested
|
|
|
|
and do not release the lock until the process
|
|
|
|
terminates.
|
|
|
|
|
|
|
|
@item --lock-multiple
|
|
|
|
Release the locks every time a lock is no longer
|
|
|
|
needed. Use this to override a previous --lock-once
|
|
|
|
from a config file.
|
|
|
|
|
|
|
|
@item --lock-never
|
|
|
|
Disable locking entirely. This option should be used only in very
|
|
|
|
special environments, where it can be assured that only one process
|
|
|
|
is accessing those files. A bootable floppy with a stand-alone
|
|
|
|
encryption system will probably use this. Improper usage of this
|
|
|
|
option may lead to data and key corruption.
|
|
|
|
|
|
|
|
@item --exit-on-status-write-error
|
|
|
|
This option will cause write errors on the status FD to immediately
|
|
|
|
terminate the process. That should in fact be the default but it
|
|
|
|
never worked this way and thus we need an option to enable this, so
|
|
|
|
that the change won't break applications which close their end of a
|
|
|
|
status fd connected pipe too early. Using this option along with
|
|
|
|
--enable-progress-filter may be used to cleanly cancel long running
|
|
|
|
gpg operations.
|
|
|
|
|
|
|
|
@item --limit-card-insert-tries @code{n}
|
|
|
|
With @code{n} greater than 0 the number of prompts asking to insert a
|
|
|
|
smartcard gets limited to N-1. Thus with a value of 1 gpg won't at
|
|
|
|
all ask to insert a card if none has been inserted at startup. This
|
|
|
|
option is useful in the configuration file in case an application does
|
|
|
|
not know about the smartcard support and waits ad infinitum for an
|
|
|
|
inserted card.
|
|
|
|
|
|
|
|
@item --no-random-seed-file
|
|
|
|
GnuPG uses a file to store its internal random pool over invocations.
|
|
|
|
This makes random generation faster; however sometimes write operations
|
|
|
|
are not desired. This option can be used to achieve that with the cost of
|
|
|
|
slower random generation.
|
|
|
|
|
|
|
|
@item --no-verbose
|
|
|
|
Reset verbose level to 0.
|
|
|
|
|
|
|
|
@item --no-greeting
|
|
|
|
Suppress the initial copyright message.
|
|
|
|
|
|
|
|
@item --no-secmem-warning
|
|
|
|
Suppress the warning about "using insecure memory".
|
|
|
|
|
|
|
|
@item --no-permission-warning
|
|
|
|
Suppress the warning about unsafe file and home directory (--homedir)
|
|
|
|
permissions. Note that the permission checks that GnuPG performs are
|
|
|
|
not intended to be authoritative, but rather they simply warn about
|
|
|
|
certain common permission problems. Do not assume that the lack of a
|
|
|
|
warning means that your system is secure.
|
|
|
|
|
|
|
|
Note that the warning for unsafe --homedir permissions cannot be
|
|
|
|
suppressed in the gpg.conf file, as this would allow an attacker to
|
|
|
|
place an unsafe gpg.conf file in place, and use this file to suppress
|
|
|
|
warnings about itself. The --homedir permissions warning may only be
|
|
|
|
suppressed on the command line.
|
|
|
|
|
|
|
|
@item --no-mdc-warning
|
|
|
|
Suppress the warning about missing MDC integrity protection.
|
|
|
|
|
|
|
|
@item --require-secmem
|
|
|
|
@itemx --no-require-secmem
|
|
|
|
Refuse to run if GnuPG cannot get secure memory. Defaults to no
|
|
|
|
(i.e. run, but give a warning).
|
|
|
|
|
|
|
|
@item --no-armor
|
|
|
|
Assume the input data is not in ASCII armored format.
|
|
|
|
|
|
|
|
@item --no-default-keyring
|
|
|
|
Do not add the default keyrings to the list of keyrings. Note that
|
|
|
|
GnuPG will not operate without any keyrings, so if you use this option
|
|
|
|
and do not provide alternate keyrings via --keyring or
|
|
|
|
--secret-keyring, then GnuPG will still use the default public or
|
|
|
|
secret keyrings.
|
|
|
|
|
|
|
|
@item --skip-verify
|
|
|
|
Skip the signature verification step. This may be
|
|
|
|
used to make the decryption faster if the signature
|
|
|
|
verification is not needed.
|
|
|
|
|
|
|
|
@item --with-colons
|
|
|
|
Print key listings delimited by colons. Note that the output will be
|
|
|
|
encoded in UTF-8 regardless of any --display-charset setting. This
|
|
|
|
format is useful when GnuPG is called from scripts and other programs
|
|
|
|
as it is easily machine parsed. The details of this format are
|
|
|
|
documented in the file doc/DETAILS, which is included in the GnuPG
|
|
|
|
source distribution.
|
|
|
|
|
|
|
|
@item --with-key-data
|
|
|
|
Print key listings delimited by colons (like --with-colons) and print the public key data.
|
|
|
|
|
|
|
|
@item --with-fingerprint
|
|
|
|
Same as the command --fingerprint but changes only the format of the output
|
|
|
|
and may be used together with another command.
|
|
|
|
|
|
|
|
@item --fast-list-mode
|
|
|
|
Changes the output of the list commands to work faster; this is achieved
|
|
|
|
by leaving some parts empty. Some applications don't need the user ID and
|
|
|
|
the trust information given in the listings. By using this options they
|
|
|
|
can get a faster listing. The exact behaviour of this option may change
|
|
|
|
in future versions.
|
|
|
|
|
|
|
|
@item --fixed-list-mode
|
|
|
|
Do not merge primary user ID and primary key in --with-colon listing
|
|
|
|
mode and print all timestamps as seconds since 1970-01-01.
|
|
|
|
|
|
|
|
@item --list-only
|
|
|
|
Changes the behaviour of some commands. This is like --dry-run but
|
|
|
|
different in some cases. The semantic of this command may be extended in
|
|
|
|
the future. Currently it only skips the actual decryption pass and
|
|
|
|
therefore enables a fast listing of the encryption keys.
|
|
|
|
|
|
|
|
@item --no-literal
|
|
|
|
This is not for normal use. Use the source to see for what it might be useful.
|
|
|
|
|
|
|
|
@item --set-filesize
|
|
|
|
This is not for normal use. Use the source to see for what it might be useful.
|
|
|
|
|
|
|
|
@item --show-session-key
|
|
|
|
Display the session key used for one message. See --override-session-key
|
|
|
|
for the counterpart of this option.
|
|
|
|
|
|
|
|
We think that Key Escrow is a Bad Thing; however the user should have
|
|
|
|
the freedom to decide whether to go to prison or to reveal the content
|
|
|
|
of one specific message without compromising all messages ever
|
|
|
|
encrypted for one secret key. DON'T USE IT UNLESS YOU ARE REALLY
|
|
|
|
FORCED TO DO SO.
|
|
|
|
|
|
|
|
@item --override-session-key @code{string}
|
|
|
|
Don't use the public key but the session key @code{string}. The format of this
|
|
|
|
string is the same as the one printed by --show-session-key. This option
|
|
|
|
is normally not used but comes handy in case someone forces you to reveal the
|
|
|
|
content of an encrypted message; using this option you can do this without
|
|
|
|
handing out the secret key.
|
|
|
|
|
|
|
|
@item --require-cross-certification
|
|
|
|
@itemx --no-require-certification
|
|
|
|
When verifying a signature made from a subkey, ensure that the cross
|
|
|
|
certification "back signature" on the subkey is present and valid.
|
|
|
|
This protects against a subtle attack against subkeys that can sign.
|
|
|
|
Currently defaults to --no-require-cross-certification, but will be
|
|
|
|
changed to --require-cross-certification in the future.
|
|
|
|
|
|
|
|
@item --ask-sig-expire
|
|
|
|
@itemx --no-ask-sig-expire
|
|
|
|
When making a data signature, prompt for an expiration time. If this
|
|
|
|
option is not specified, the expiration time set via
|
|
|
|
--default-sig-expire is used. --no-ask-sig-expire disables this
|
|
|
|
option. Note that by default, --force-v3-sigs is set which also
|
|
|
|
disables this option. If you want signature expiration, you must set
|
|
|
|
--no-force-v3-sigs as well as turning --ask-sig-expire on.
|
|
|
|
|
|
|
|
@item --default-sig-expire
|
|
|
|
The default expiration time to use for signature expiration. Valid
|
|
|
|
values are "0" for no expiration, a number followed by the letter d
|
|
|
|
(for days), w (for weeks), m (for months), or y (for years) (for
|
|
|
|
example "2m" for two months, or "5y" for five years), or an absolute
|
|
|
|
date in the form YYYY-MM-DD. Defaults to "0".
|
|
|
|
|
|
|
|
@item --ask-cert-expire
|
|
|
|
@itemx --no-ask-cert-expire
|
|
|
|
When making a key signature, prompt for an expiration time. If this
|
|
|
|
option is not specified, the expiration time set via
|
|
|
|
--default-cert-expire is used. --no-ask-cert-expire disables this
|
|
|
|
option.
|
|
|
|
|
|
|
|
@item --default-cert-expire
|
|
|
|
The default expiration time to use for key signature expiration.
|
|
|
|
Valid values are "0" for no expiration, a number followed by the
|
|
|
|
letter d (for days), w (for weeks), m (for months), or y (for years)
|
|
|
|
(for example "2m" for two months, or "5y" for five years), or an
|
|
|
|
absolute date in the form YYYY-MM-DD. Defaults to "0".
|
|
|
|
|
|
|
|
@item --expert
|
|
|
|
@itemx --no-expert
|
|
|
|
Allow the user to do certain nonsensical or "silly" things like
|
|
|
|
signing an expired or revoked key, or certain potentially incompatible
|
|
|
|
things like generating unusual key types. This also disables certain
|
|
|
|
warning messages about potentially incompatible actions. As the name
|
|
|
|
implies, this option is for experts only. If you don't fully
|
|
|
|
understand the implications of what it allows you to do, leave this
|
|
|
|
off. --no-expert disables this option.
|
|
|
|
|
|
|
|
@item --allow-secret-key-import
|
|
|
|
This is an obsolete option and is not used anywhere.
|
|
|
|
|
|
|
|
@item --try-all-secrets
|
|
|
|
Don't look at the key ID as stored in the message but try all secret
|
|
|
|
keys in turn to find the right decryption key. This option forces the
|
|
|
|
behaviour as used by anonymous recipients (created by using
|
|
|
|
--throw-keyids) and might come handy in case where an encrypted
|
|
|
|
message contains a bogus key ID.
|
|
|
|
|
|
|
|
@item --allow-multisig-verification
|
|
|
|
Allow verification of concatenated signed messages. This will run a
|
|
|
|
signature verification for each data+signature block. There are some
|
|
|
|
security issues with this option and thus it is off by default. Note
|
|
|
|
that versions of GPG prior to version 1.4.3 implicitly allowed this.
|
|
|
|
|
|
|
|
@item --enable-special-filenames
|
|
|
|
This options enables a mode in which filenames of the form
|
|
|
|
@file{-&n}, where n is a non-negative decimal number,
|
|
|
|
refer to the file descriptor n and not to a file with that name.
|
|
|
|
|
|
|
|
@item --no-expensive-trust-checks
|
|
|
|
Experimental use only.
|
|
|
|
|
|
|
|
@item --group @code{name=value1 }
|
|
|
|
Sets up a named group, which is similar to aliases in email programs.
|
|
|
|
Any time the group name is a recipient (-r or --recipient), it will be
|
|
|
|
expanded to the values specified. Multiple groups with the same name
|
|
|
|
are automatically merged into a single group.
|
|
|
|
|
|
|
|
The values are @code{key IDs} or fingerprints, but any key description
|
|
|
|
is accepted. Note that a value with spaces in it will be treated as
|
|
|
|
two different values. Note also there is only one level of expansion
|
|
|
|
- you cannot make an group that points to another group. When used
|
|
|
|
from the command line, it may be necessary to quote the argument to
|
|
|
|
this option to prevent the shell from treating it as multiple
|
|
|
|
arguments.
|
|
|
|
|
|
|
|
@item --ungroup @code{name}
|
|
|
|
Remove a given entry from the --group list.
|
|
|
|
|
|
|
|
@item --no-groups
|
|
|
|
Remove all entries from the --group list.
|
|
|
|
|
|
|
|
@item --preserve-permissions
|
|
|
|
Don't change the permissions of a secret keyring back to user
|
|
|
|
read/write only. Use this option only if you really know what you are doing.
|
|
|
|
|
|
|
|
@item --personal-cipher-preferences @code{string}
|
|
|
|
Set the list of personal cipher preferences to @code{string}, this list
|
|
|
|
should be a string similar to the one printed by the command "pref" in
|
|
|
|
the edit menu. This allows the user to factor in their own preferred
|
|
|
|
algorithms when algorithms are chosen via recipient key preferences.
|
|
|
|
The most highly ranked cipher in this list is also used for the
|
|
|
|
--symmetric encryption command.
|
|
|
|
|
|
|
|
@item --personal-digest-preferences @code{string}
|
|
|
|
Set the list of personal digest preferences to @code{string}, this list
|
|
|
|
should be a string similar to the one printed by the command "pref" in
|
|
|
|
the edit menu. This allows the user to factor in their own preferred
|
|
|
|
algorithms when algorithms are chosen via recipient key preferences.
|
|
|
|
The most highly ranked digest algorithm in this list is algo used when
|
|
|
|
signing without encryption (e.g. --clearsign or --sign). The default
|
|
|
|
value is SHA-1.
|
|
|
|
|
|
|
|
@item --personal-compress-preferences @code{string}
|
|
|
|
Set the list of personal compression preferences to @code{string}, this
|
|
|
|
list should be a string similar to the one printed by the command
|
|
|
|
"pref" in the edit menu. This allows the user to factor in their own
|
|
|
|
preferred algorithms when algorithms are chosen via recipient key
|
|
|
|
preferences. The most highly ranked algorithm in this list is also
|
|
|
|
used when there are no recipient keys to consider (e.g. --symmetric).
|
|
|
|
|
|
|
|
@item --default-preference-list @code{string}
|
|
|
|
@opindex default-preference-list
|
|
|
|
Set the list of default preferences to @code{string}. This preference
|
|
|
|
list is used for new keys and becomes the default for "setpref" in the
|
|
|
|
edit menu.
|
|
|
|
|
|
|
|
@item --default-keyserver-url @code{name}
|
|
|
|
@opindex default-keyserver-url
|
|
|
|
Set the default keyserver URL to @code{name}. This keyserver will be
|
|
|
|
used as the keyserver URL when writing a new self-signature on a key,
|
|
|
|
which includes key generation and changing preferences.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item --list-config
|
2006-08-16 16:54:19 +02:00
|
|
|
@opindex list-config
|
|
|
|
Display various internal configuration parameters of GnuPG. This
|
|
|
|
option is intended for external programs that call GnuPG to perform
|
|
|
|
tasks, and is thus not generally useful. See the file
|
|
|
|
@file{doc/DETAILS} in the source distribution for the
|
|
|
|
details of which configuration items may be listed. --list-config is
|
|
|
|
only usable with --with-colons set.
|
|
|
|
|
|
|
|
@end table
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@c *******************************************
|
|
|
|
@c *************** ****************
|
|
|
|
@c *************** FILES ****************
|
|
|
|
@c *************** ****************
|
|
|
|
@c *******************************************
|
2006-08-17 20:01:25 +02:00
|
|
|
@mansect files
|
2006-08-16 16:54:19 +02:00
|
|
|
@node GPG Configuration
|
|
|
|
@section Configuration files
|
|
|
|
|
|
|
|
There are a few configuration files to control certain aspects of
|
|
|
|
@command{gpg2}'s operation. Unless noted, they are expected in the
|
|
|
|
current home directory (@pxref{option --homedir}).
|
|
|
|
|
|
|
|
@table @file
|
|
|
|
|
|
|
|
@item gpg.conf
|
|
|
|
@cindex gpgsm.conf
|
|
|
|
This is the standard configuration file read by @command{gpg2} on
|
|
|
|
startup. It may contain any valid long option; the leading two dashes
|
|
|
|
may not be entered and the option may not be abbreviated. This default
|
|
|
|
name may be changed on the command line (@pxref{option
|
|
|
|
--options}).
|
|
|
|
|
|
|
|
@end table
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@c man:.RE
|
2006-08-16 16:54:19 +02:00
|
|
|
Note that on larger installations, it is useful to put predefined files
|
|
|
|
into the directory @file{/etc/skel/.gnupg/} so that newly created users
|
|
|
|
start up with a working configuration. For existing users the a small
|
|
|
|
helper script is provided to create these files (@pxref{addgnupghome}).
|
|
|
|
|
|
|
|
For internal purposes @command{gpg2} creates and maintaines a few other
|
|
|
|
files; They all live in in the current home directory (@pxref{option
|
|
|
|
--homedir}). Only the @command{gpg2} may modify these files.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
|
2006-08-16 16:54:19 +02:00
|
|
|
@table @file
|
2006-08-17 20:01:25 +02:00
|
|
|
@item ~/.gnupg/secring.gpg
|
|
|
|
The secret keyring.
|
|
|
|
|
|
|
|
@item ~/.gnupg/secring.gpg.lock
|
|
|
|
and the lock file
|
|
|
|
|
|
|
|
@item ~/.gnupg/pubring.gpg
|
|
|
|
The public keyring
|
|
|
|
|
|
|
|
@item ~/.gnupg/pubring.gpg.lock
|
|
|
|
and the lock file
|
|
|
|
|
|
|
|
@item ~/.gnupg/trustdb.gpg
|
|
|
|
The trust database
|
|
|
|
|
|
|
|
@item ~/.gnupg/trustdb.gpg.lock
|
|
|
|
and the lock file
|
|
|
|
|
|
|
|
@item ~/.gnupg/random_seed
|
|
|
|
used to preserve the internal random pool
|
|
|
|
|
|
|
|
@item /usr[/local]/share/gnupg/options.skel
|
|
|
|
Skeleton options file
|
|
|
|
|
|
|
|
@item /usr[/local]/lib/gnupg/
|
|
|
|
Default location for extensions
|
|
|
|
|
|
|
|
@end table
|
|
|
|
|
|
|
|
@c man:.RE
|
|
|
|
Operation is further controlled by a few environment variables:
|
|
|
|
|
|
|
|
@table @asis
|
|
|
|
|
|
|
|
@item HOME
|
|
|
|
Used to locate the default home directory.
|
|
|
|
|
|
|
|
@item GNUPGHOME
|
|
|
|
If set directory used instead of "~/.gnupg".
|
|
|
|
|
|
|
|
@item GPG_AGENT_INFO
|
|
|
|
Used to locate the gpg-agent; only honored when
|
|
|
|
--use-agent is set. The value consists of 3 colon delimited fields:
|
|
|
|
The first is the path to the Unix Domain Socket, the second the PID of
|
|
|
|
the gpg-agent and the protocol version which should be set to 1. When
|
|
|
|
starting the gpg-agent as described in its documentation, this
|
|
|
|
variable is set to the correct value. The option --gpg-agent-info can
|
|
|
|
be used to override it.
|
|
|
|
|
|
|
|
@item COLUMNS
|
|
|
|
@itemx LINES
|
|
|
|
Used to size some displays to the full size of the screen.
|
2006-08-16 16:54:19 +02:00
|
|
|
|
|
|
|
@end table
|
|
|
|
|
|
|
|
|
|
|
|
@c *******************************************
|
|
|
|
@c *************** ****************
|
|
|
|
@c *************** EXAMPLES ****************
|
|
|
|
@c *************** ****************
|
|
|
|
@c *******************************************
|
2006-08-17 20:01:25 +02:00
|
|
|
@mansect examples
|
2006-08-16 16:54:19 +02:00
|
|
|
@node GPG Examples
|
|
|
|
@section Examples
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@table @asis
|
2006-08-16 16:54:19 +02:00
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item gpg -se -r @code{Bob} @code{file}
|
|
|
|
sign and encrypt for user Bob
|
2006-08-16 16:54:19 +02:00
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item gpg --clearsign @code{file}
|
|
|
|
make a clear text signature
|
2006-08-16 16:54:19 +02:00
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item gpg -sb @code{file}
|
|
|
|
make a detached signature
|
2006-08-16 16:54:19 +02:00
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item gpg --list-keys @code{user_ID}
|
|
|
|
show keys
|
2006-08-16 16:54:19 +02:00
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item gpg --fingerprint @code{user_ID}
|
|
|
|
show fingerprint
|
2006-08-16 16:54:19 +02:00
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item gpg --verify @code{pgpfile}
|
|
|
|
@itemx gpg --verify @code{sigfile}
|
|
|
|
Verify the signature of the file but do not output the data. The
|
|
|
|
second form is used for detached signatures, where @code{sigfile}
|
|
|
|
is the detached signature (either ASCII armored or binary) and
|
|
|
|
are the signed data; if this is not given, the name of
|
|
|
|
the file holding the signed data is constructed by cutting off the
|
|
|
|
extension (".asc" or ".sig") of @code{sigfile} or by asking the
|
|
|
|
user for the filename.
|
|
|
|
@end table
|
2006-08-16 16:54:19 +02:00
|
|
|
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@mansect how to specify a user id
|
|
|
|
@chapheading How to specify a user ID
|
2006-08-16 16:54:19 +02:00
|
|
|
|
|
|
|
There are different ways to specify a user ID to GnuPG; here are some
|
|
|
|
examples:
|
|
|
|
|
|
|
|
@table @asis
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@item
|
2006-08-16 16:54:19 +02:00
|
|
|
|
|
|
|
@item 234567C4
|
|
|
|
@itemx 0F34E556E
|
|
|
|
@itemx 01347A56A
|
|
|
|
@itemx 0xAB123456
|
|
|
|
Here the key ID is given in the usual short form.
|
|
|
|
|
|
|
|
@item 234AABBCC34567C4
|
|
|
|
@itemx 0F323456784E56EAB
|
|
|
|
@itemx 01AB3FED1347A5612
|
|
|
|
@itemx 0x234AABBCC34567C4
|
|
|
|
Here the key ID is given in the long form as used by OpenPGP
|
|
|
|
(you can get the long key ID using the option --with-colons).
|
|
|
|
|
|
|
|
@item 1234343434343434C434343434343434
|
|
|
|
@itemx 123434343434343C3434343434343734349A3434
|
|
|
|
@itemx 0E12343434343434343434EAB3484343434343434
|
|
|
|
@itemx 0xE12343434343434343434EAB3484343434343434
|
|
|
|
The best way to specify a key ID is by using the fingerprint of
|
|
|
|
the key. This avoids any ambiguities in case that there are duplicated
|
|
|
|
key IDs (which are really rare for the long key IDs).
|
|
|
|
|
|
|
|
@item =Heinrich Heine <heinrichh@@uni-duesseldorf.de>
|
|
|
|
Using an exact to match string. The equal sign indicates this.
|
|
|
|
|
|
|
|
@item <heinrichh@@uni-duesseldorf.de>
|
|
|
|
Using the email address part which must match exactly. The left angle bracket
|
|
|
|
indicates this email address mode.
|
|
|
|
|
|
|
|
@item @@heinrichh
|
|
|
|
Match within the <email.address> part of a user ID. The at sign
|
|
|
|
indicates this email address mode.
|
|
|
|
|
|
|
|
@item Heine
|
|
|
|
@itemx *Heine
|
|
|
|
By case insensitive substring matching. This is the default mode but
|
|
|
|
applications may want to explicitly indicate this by putting the asterisk
|
|
|
|
in front.
|
|
|
|
@end table
|
|
|
|
|
|
|
|
Note that you can append an exclamation mark (!) to key IDs or
|
|
|
|
fingerprints. This flag tells GnuPG to use the specified primary or
|
|
|
|
secondary key and not to try and calculate which primary or secondary
|
|
|
|
key to use.
|
2006-08-17 20:01:25 +02:00
|
|
|
|
|
|
|
@mansect return vaue
|
2006-08-16 16:54:19 +02:00
|
|
|
@chapheading RETURN VALUE
|
|
|
|
|
|
|
|
The program returns 0 if everything was fine, 1 if at least
|
|
|
|
a signature was bad, and other error codes for fatal errors.
|
|
|
|
|
2006-08-17 20:01:25 +02:00
|
|
|
@mansect warnings
|
|
|
|
@chapheading WARNINGS
|
2006-08-16 16:54:19 +02:00
|
|
|
|
|
|
|
Use a *good* password for your user account and a *good* passphrase
|
|
|
|
to protect your secret key. This passphrase is the weakest part of the
|
|
|
|
whole system. Programs to do dictionary attacks on your secret keyring
|
|
|
|
are very easy to write and so you should protect your "~/.gnupg/"
|
|
|
|
directory very well.
|
|
|
|
|
|
|
|
Keep in mind that, if this program is used over a network (telnet), it
|
|
|
|
is *very* easy to spy out your passphrase!
|
|
|
|
|
|
|
|
If you are going to verify detached signatures, make sure that the
|
|
|
|
program knows about it; either give both filenames on the command line
|
|
|
|
or use @samp{-} to specify stdin.
|
2006-08-17 20:01:25 +02:00
|
|
|
|
|
|
|
@mansect interoperability
|
2006-08-16 16:54:19 +02:00
|
|
|
@chapheading INTEROPERABILITY WITH OTHER OPENPGP PROGRAMS
|
|
|
|
|
|
|
|
GnuPG tries to be a very flexible implementation of the OpenPGP
|
|
|
|
standard. In particular, GnuPG implements many of the optional parts
|
|
|
|
of the standard, such as the SHA-512 hash, and the ZLIB and BZIP2
|
|
|
|
compression algorithms. It is important to be aware that not all
|
|
|
|
OpenPGP programs implement these optional algorithms and that by
|
|
|
|
forcing their use via the --cipher-algo, --digest-algo,
|
|
|
|
--cert-digest-algo, or --compress-algo options in GnuPG, it is
|
|
|
|
possible to create a perfectly valid OpenPGP message, but one that
|
|
|
|
cannot be read by the intended recipient.
|
|
|
|
|
|
|
|
There are dozens of variations of OpenPGP programs available, and each
|
|
|
|
supports a slightly different subset of these optional algorithms.
|
|
|
|
For example, until recently, no (unhacked) version of PGP supported
|
|
|
|
the BLOWFISH cipher algorithm. A message using BLOWFISH simply could
|
|
|
|
not be read by a PGP user. By default, GnuPG uses the standard
|
|
|
|
OpenPGP preferences system that will always do the right thing and
|
|
|
|
create messages that are usable by all recipients, regardless of which
|
|
|
|
OpenPGP program they use. Only override this safe default if you
|
|
|
|
really know what you are doing.
|
|
|
|
|
|
|
|
If you absolutely must override the safe default, or if the
|
|
|
|
preferences on a given key are invalid for some reason, you are far
|
|
|
|
better off using the --pgp6, --pgp7, or --pgp8 options. These options
|
|
|
|
are safe as they do not force any particular algorithms in violation
|
|
|
|
of OpenPGP, but rather reduce the available algorithms to a "PGP-safe"
|
|
|
|
list.
|
2006-08-17 20:01:25 +02:00
|
|
|
|
|
|
|
@mansect bugs
|
2006-08-16 16:54:19 +02:00
|
|
|
@chapheading BUGS
|
|
|
|
|
|
|
|
On many systems this program should be installed as setuid(root). This
|
|
|
|
is necessary to lock memory pages. Locking memory pages prevents the
|
|
|
|
operating system from writing memory pages (which may contain
|
|
|
|
passphrases or other sensitive material) to disk. If you get no
|
|
|
|
warning message about insecure memory your operating system supports
|
|
|
|
locking without being root. The program drops root privileges as soon
|
|
|
|
as locked memory is allocated.
|
|
|
|
|