Historically, Usenet news server administrators have configured their news servers to automatically honor
Usenet control messages based on the originator of the control messages and the hierarchies for which the
control messages applied. For example, in the past, David C Lawrence <tale@uunet.uu.net> always issued
control messages for the "Big 8" hierarchies (comp, humanities, misc, news, rec, sci, soc, talk). Usenet
news administrators would configure their news server software to automatically honor newgroup and
rmgroup control messages that originated from David Lawrence and applied to any of the Big 8 hierarchies.
Unfortunately, Usenet news articles (including control messages) are notoriously easy to forge. Soon,
malicious users realized they could create or remove (at least temporarily) any Big 8 newsgroup they
wanted by simply forging an appropriate control message in David Lawrence's name. As Usenet became more
widely used, forgeries became more common.
The pgpverify program was designed to allow Usenet news administrators to configure their servers to
cryptographically verify control messages before automatically acting on them. Under the pgpverify
system, a Usenet hierarchy maintainer creates a PGP public/private key pair and disseminates the public
key. Whenever the hierarchy maintainer issues a control message, he uses the signcontrol program to sign
the control message with the PGP private key. Usenet news administrators configure their news servers to
run the pgpverify program on the appropriate control messages, and take action based on the PGP key User
ID that signed the control message, not the name and address that appear in the control message's From or
Sender headers.
Thus, using the signcontrol and pgpverifyprograms appropriately essentially eliminates the possibility
of malicious users forging Usenet control messages that sites will act upon, as such users would have to
obtain the PGP private key in order to forge a control message that would pass the cryptographic
verification step. If the hierarchy administrators properly protect their PGP private keys, the only way
a malicious user could forge a validly-signed control message would be by breaking the RSA encryption
algorithm, which (at least at this time) is believed to be an NP-complete problem. If this is indeed the
case, discovering the PGP private key based on the PGP public key is computationally impossible for PGP
keys of a sufficient bit length.
<URL:ftp://ftp.isc.org/pub/pgpcontrol/> is where the most recent versions of signcontrol and pgpverify
live, along with PGP public keys used for hierarchy administration.
pgpverify(8)