gpg: Allow gpgv to work with a trustedkeys.kbx file.
[gnupg.git] / doc / gpgv.texi
1 @c Copyright (C) 2004 Free Software Foundation, Inc.
2 @c This is part of the GnuPG manual.
3 @c For copying conditions, see the file GnuPG.texi.
4
5 @c
6 @c This is included by tools.texi.
7 @c
8
9 @include defs.inc
10
11 @c Begin GnuPG 1.x specific stuff
12 @ifset gpgone
13 @macro gpgvname
14 gpgv
15 @end macro
16 @manpage gpgv.1
17 @node gpgv
18 @section Verify OpenPGP signatures
19 @ifset manverb
20 .B gpgv
21 \- Verify OpenPGP signatures
22 @end ifset
23
24 @mansect synopsis
25 @ifset manverb
26 .B  gpgv
27 .RI [ options ]
28 .I signed_files
29 @end ifset
30 @end ifset
31 @c End GnuPG 1.x specific stuff
32
33 @c Begin GnuPG 2 specific stuff
34 @ifclear gpgone
35 @macro gpgvname
36 gpgv2
37 @end macro
38 @manpage gpgv2.1
39 @node gpgv
40 @section Verify OpenPGP signatures
41 @ifset manverb
42 .B gpgv2
43 \- Verify OpenPGP signatures
44 @end ifset
45
46 @mansect synopsis
47 @ifset manverb
48 .B  gpgv2
49 .RI [ options ]
50 .I signed_files
51 @end ifset
52 @end ifclear
53 @c End GnuPG 2 specific stuff
54
55
56
57 @mansect description
58 @code{@gpgvname} is an OpenPGP signature verification tool.
59
60 This program is actually a stripped-down version of @code{gpg} which is
61 only able to check signatures. It is somewhat smaller than the fully-blown
62 @code{gpg} and uses a different (and simpler) way to check that
63 the public keys used to make the signature are valid. There are
64 no configuration files and only a few options are implemented.
65
66 @code{@gpgvname} assumes that all keys in the keyring are trustworthy.
67 That does also mean that it does not check for expired or revoked
68 keys.
69
70 By default a keyring named @file{trustedkeys.kbx} is used; if that
71 does not exist a keyring named @file{trustedkeys.gpg} is used.  The
72 default keyring is assumed to be in the home directory of GnuPG,
73 either the default home directory or the one set by an option or an
74 environment variable.  The option @code{--keyring} may be used to
75 specify a different keyring or even multiple keyrings.
76
77
78 @noindent
79 @mansect options
80 @code{@gpgvname} recognizes these options:
81
82 @table @gnupgtabopt
83
84 @item --verbose
85 @itemx -v
86 @opindex verbose
87 Gives more information during processing. If used
88 twice, the input data is listed in detail.
89
90 @item --quiet
91 @itemx -q
92 @opindex quiet
93 Try to be as quiet as possible.
94
95 @item --keyring @var{file}
96 @opindex keyring
97 Add @var{file} to the list of keyrings.
98 If @var{file} begins with a tilde and a slash, these
99 are replaced by the HOME directory. If the filename
100 does not contain a slash, it is assumed to be in the
101 home-directory ("~/.gnupg" if --homedir is not used).
102
103 @item --status-fd @var{n}
104 @opindex status-fd
105 Write special status strings to the file descriptor @var{n}.  See the
106 file DETAILS in the documentation for a listing of them.
107
108 @item --logger-fd @code{n}
109 @opindex logger-fd
110 Write log output to file descriptor @code{n} and not to stderr.
111
112 @item --ignore-time-conflict
113 @opindex ignore-time-conflict
114 GnuPG normally checks that the timestamps associated with keys and
115 signatures have plausible values. However, sometimes a signature seems to
116 be older than the key due to clock problems. This option turns these
117 checks into warnings.
118
119 @include opt-homedir.texi
120
121 @end table
122
123 @mansect return value
124
125 The program returns 0 if everything is fine, 1 if at least
126 one signature was bad, and other error codes for fatal errors.
127
128 @mansect examples
129 @subsection Examples
130
131 @table @asis
132
133 @item @gpgvname @code{pgpfile}
134 @itemx @gpgvname @code{sigfile} [@code{datafile}]
135 Verify the signature of the file. The second form is used for detached
136 signatures, where @code{sigfile} is the detached signature (either
137 ASCII-armored or binary) and @code{datafile} contains the signed data;
138 if @code{datafile} is "-" the signed data is expected on
139 @code{stdin}; if @code{datafile} is not given the name of the file
140 holding the signed data is constructed by cutting off the extension
141 (".asc", ".sig" or ".sign") from @code{sigfile}.
142
143 @end table
144
145 @mansect environment
146 @subsection Environment
147
148 @table @asis
149
150 @item HOME
151 Used to locate the default home directory.
152
153 @item GNUPGHOME
154 If set directory used instead of "~/.gnupg".
155
156 @end table
157
158 @mansect files
159 @subsection FILES
160
161 @table @asis
162
163 @item ~/.gnupg/trustedkeys.gpg
164 The default keyring with the allowed keys.
165
166 @end table
167
168 @mansect see also
169 @command{gpg2}(1)
170 @include see-also-note.texi
171