GPGV(1)

gpgv(1) โ€” Verify OpenPGP Signatures

Okay so bestie, welcome to the gpgv page of the GNU Privacy Guard 2.4 manual โ€” and ngl, this one's kind of a vibe. ๐Ÿ’…


NAME

gpgv โ€” verify OpenPGP signatures โœจ


SYNOPSIS

gpgv [options] signed_files

DESCRIPTION

So gpgv is literally an OpenPGP signature verification tool. That's the whole gig. ๐ŸŽ€

Here's the tea: it's actually a stripped-down version of gpg that's ONLY able to check signatures. It's somewhat smaller than the fully-blown gpg and uses a different (and simpler) way to check that the public keys used to make the signature are valid. There are no configuration files and only a few options are implemented. Iconic minimalism, fr fr.

โš ๏ธ gpgv assumes that all keys in the keyring are trustworthy. That does also mean that it does not check for expired or revoked keys. So bestie, please know what's in your keyring โ€” this tool is trusting you completely. ๐Ÿ™ˆ

If no --keyring option is given, gpgv looks for a "default" keyring named โ€˜trustedkeys.kbxโ€™ (preferred) or โ€˜trustedkeys.gpgโ€™ in the home directory of GnuPG โ€” either the default home directory or the one set by the --homedir option or the GNUPGHOME environment variable. If any --keyring option is used, gpgv will not look for the default keyring. The --keyring option may be used multiple times and all specified keyrings will be used together. So you can stack 'em like your fave accessories. ๐ŸŒธ


RETURN VALUE

The program returns 0 if everything is fine, 1 if at least one signature was bad, and other error codes for fatal errors. Zero means slay; one means something's sus. ๐Ÿ’€


โœจ OPTIONS โœจ

gpgv recognizes these options:

  • --verbose, -v โ€” Gives more information during processing. If used twice, the input data is listed in detail. Double it up if you want the FULL tea. ๐Ÿ“
  • --quiet, -q โ€” Try to be as quiet as possible. The introvert mode option, honestly. ๐Ÿฆ‹
  • --keyring file โ€” Add file to the list of keyrings. If 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 home-directory ("~/.gnupg" if --homedir is not used). Okay so if it's tilde-plus-slash, swap that out for your HOME dir, and if there's no slash in the filename at all, it's chilling in the home-directory โ€” "~/.gnupg" if --homedir isn't used. ๐ŸŒˆ
  • --output file, -o file โ€” Write output to file; to write to stdout use -. This option can be used to get the signed text from a cleartext or binary signature; it also works for detached signatures, but in that case this option is in general not useful. Note that an existing file will be overwritten. โš ๏ธ Overwritten bestie, like no warning, no mercy. ๐Ÿ’…
  • --status-fd n โ€” Write special status strings to the file descriptor n. See the file DETAILS in the documentation for a listing of them. For the girlies who like their data structured. ๐Ÿ“Š
  • --logger-fd n โ€” Write log output to file descriptor n and not to stderr. Logs, but make it custom. โœจ
  • --log-file file โ€” Same as --logger-fd, except the logger data is written to file file. Use โ€˜socket://โ€™ to log to socket. Fancy.
  • --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 turns these checks into warnings. So if your clocks are acting up and everything looks older than it should, this downgrades the drama to a lil warning. โฐ
  • --homedir dir โ€” Set the name of the home directory to dir. If this option is not used, the home directory defaults to โ€˜~/.gnupgโ€™. It is only recognized when given on the command line. It also overrides any home directory stated through the environment variable โ€˜GNUPGHOMEโ€™ or (on Windows systems) by means of the Registry entry HKCU\Software\GNU\GnuPG:HomeDir. On Windows systems it is possible to install GnuPG as a portable application. In this case only this command line option is considered, all other ways to set a home directory are ignored. So on Windows portable mode, command line is the only main character. ๐Ÿ‘‘
  • --weak-digest name โ€” Treat the specified digest algorithm as weak. Signatures made over weak digests algorithms are normally rejected. This option can be supplied multiple times if multiple algorithms should be considered weak. MD5 is always considered weak, and does not need to be listed explicitly. MD5 stays in the flop era, no need to even mention it. ๐Ÿ’€
  • --enable-special-filenames โ€” This option enables a mode in which filenames of the form โ€˜-&nโ€™, where n is a non-negative decimal number, refer to the file descriptor n and not to a file with that name. Filename magic, but make it file descriptors. ๐Ÿงš
  • --assert-pubkey-algo algolist โ€” This option works in the same way as described for gpg. (Go read gpg(1) for the lore, iykyk.) ๐Ÿ“–

๐ŸŒธ EXAMPLES ๐ŸŒธ

gpgv pgpfile
gpgv sigfile [datafile]

Verify the signature of the file. The second form is used for detached signatures, where sigfile is the detached signature (either ASCII-armored or binary) and datafile contains the signed data; if datafile is "-" the signed data is expected on stdin; if datafile is not given the name of the file holding the signed data is constructed by cutting off the extension (".asc", ".sig" or ".sign") from sigfile. So it's like "here's the sig, here's the data, or figure the data out from the sig's name." Easy peasy. ๐Ÿซถ


FILES

  • ~/.gnupg/trustedkeys.gpg โ€” The default keyring with the allowed keys. This is the VIP list. ๐Ÿ‘‘

ENVIRONMENT

  • HOME โ€” Used to locate the default home directory.
  • GNUPGHOME โ€” If set directory used instead of "~/.gnupg". Set it and it's the new home base. ๐Ÿ 

SEE ALSO

gpg(1)

The full documentation for this tool is maintained as a Texinfo manual. If GnuPG and the info program are properly installed at your site, the command

info gnupg

should give you access to the complete manual including a menu structure and an index. Go get that deep lore if you want it. ๐Ÿ“š


That's the whole page bestie โ€” no cap, every flag, every path, every vibe preserved. ๐Ÿ’–

GnuPG 2.4.9 โ€” dated 2025-02-19 โ€” that's the version and date, and you're all caught up! โœจ๐ŸŽ€๐Ÿ’…

๐Ÿ“ฆ where this page comes from