Blame doc/manual/signatures

2ff057
/*! \page signatures Signature header
2ff057
2ff057
The 2.1 release of RPM had a few improvements in the area of
2ff057
digital package signatures.  The usage of PGP has been cleaned
2ff057
up and extended, the signature section in the RPM file format
2ff057
has been made easily extensible with new signature types, and
2ff057
packages can have multiple signatures.
2ff057
2ff057
\section signatures_pgp PGP
2ff057
2ff057
Legacy usage of PGP in rpm-2.0 was cumbersome, and only supported
2ff057
1024 bit keys.  Both of these problems have been corrected in rpm-2.1.
2ff057
2ff057
Whereas previously you needed many rpmrc entries to clue in
2ff057
RPM about keyring locations and such, RPM now behaves as PGP
2ff057
users would expect.  The PGPPATH environment variable can be
2ff057
used to specify keyring locations.  You can also use a
2ff057
"%_pgpbin" line in your macros file to specify a different value
2ff057
for RPM to use for PGPPATH.  If neither of these are used PGP
2ff057
uses its default ($HOME/.pgp).
2ff057
2ff057
If you just want to verify packages, you need to supply values
2ff057
for the macros
2ff057
\verbatim
2ff057
	%_pgpbin	the path to the pgp executable
2ff057
	%_signature	the type of signature to use
2ff057
\endverbatim
2ff057
2ff057
In order to be able to sign packages, you may also have to
2ff057
supply values for
2ff057
\verbatim
2ff057
	%_pgp_name	the pgp signature to use for signing
2ff057
	%_pgp_path	the path to the key ring
2ff057
\endverbatim
2ff057
2ff057
\section signatures_signing Signing Packages
2ff057
2ff057
Signature creation is the same as previous releases: just add
2ff057
a --sign to your build command line.  You can sign a package
2ff057
after the package is built with:
2ff057
2ff057
\verbatim
2ff057
	rpm --resign <package>
2ff057
\endverbatim
2ff057
2ff057
Using --resign removes any previous signature in the package.
2ff057
To *add* a signature to a package, leaving all existing
2ff057
signatures use:
2ff057
2ff057
\verbatim
2ff057
	rpm --addsign <package>
2ff057
\endverbatim
2ff057
2ff057
RPM always creates MD5 and SIZE signatures when it build
2ff057
packages, which means that packages built without --sign can
2ff057
be "verified" to some extent.  The MD5 signature should catch
2ff057
problems like corrupt packages, faulty downloads, etc.
2ff057
2ff057
\section signatures_verifying Verifying Package Signatures
2ff057
2ff057
Package signature verification is the same as previous releases:
2ff057
2ff057
\verbatim
2ff057
	rpm -K <package>
2ff057
\endverbatim
2ff057
2ff057
RPM will verify every signature in the package, which may include
2ff057
more than one PGP signature.  The output indicates what types of
2ff057
signatures are being checked.  If any checks fail you'll see a
2ff057
"NOT OK" message, and you should be worried.
2ff057
2ff057
If you have a package with PGP signatures, but don't have PGP
2ff057
installed, but still want to verify it as much as possible, you
2ff057
can do:
2ff057
2ff057
\verbatim
2ff057
	rpm -K --nopgp <package>
2ff057
\endverbatim
2ff057
2ff057
That will cause RPM to skip any PGP signatures, but still check
2ff057
any others (currently only MD5 and SIZE).
2ff057
2ff057
*/