This article explains how to get started using PGP on the WPI Unix systems. PGP provides two major services.
1) Authentication. When you PGP-sign an email message or post, its recipients can be sure it comes from you and not an imposter (an all-too-real threat nowadays).
2) Facilitating private communication between two people over the Internet. When you send out unencrypted email, it can be read and searched by many different people along the way to its destination. Electronic surveillance by the government and other organizations is very real, and many people wish to assert their right to privacy by using PGP.
First you'll need to create your own public and secret key pair. Make a directory called ".pgp" in your home; then run "pgp -kg". This will make a secret key-ring file, which stores your secret key, and a public key-ring file, which stores the public keys of yourself and your friends. You'll need to think of a pass phrase to access your secret key with. You should choose this carefully, since one of the only vulnerabilities of PGP is to the "dictionary attack"; i.e., obvious pass phrases can be guessed by trying common words in a dictionary. The recommended technique for inventing a phrase which is hard to guess but easy to remember is to invent "shocking nonsense" - something which involves juxtaposing ridiculous and obscene ideas. Don't worry; no one else will ever even see it. Something like ELEPHANT WAN... uh, I'm sure you can come up with your own examples... (hey, I'm not making this stuff up; this is real cognitive-psychology at work).
Next you will want to sign your public key. This will prevent other people from tampering with your public key block in order to misdirect email sent to you. "pgp -ks" does this for you. Later, you may wish to have someone else sign your key, to increase other people's confidence that you are who you claim to be.
After that, you can distribute your public key so that people can send encrypted email to you. One common way to do this is to extract your public key in an ASCII-encoded format, and insert it into your ~/.plan. This is the reason for those "Finger for PGP key" addenda you see on the Net. Use "pgp -kxa" to generate the public key block; the "-a" part is always used in pgp commands when you want to create ASCII files instead of the default binary ones.
You will now be able to PGP-sign messages you send in such a way that the recipient can be sure it originated from you, and no one else. Type "pgp -sa
In order to encrypt messages so that they can only be read by one individual, or to read messages PGP-signed by someone else, you will need to put other people's public keys in your public key-ring. Often these keys can be found by fingering them, or at the end of their posts and email messages. Once you have somebody's PGP public key block in a file, run "pgp -ka
I don't want to name names, but there happens to be a _certain_ text editor which has all this cool PGP stuff integrated right in with its built-in mail program. Just put the expression (require 'mailcrypt) in your ~/.vm file to make use of it. For more information on using PGP, there is a great Web page you should check out -
http://draco.centerline.com:8080/~franl/pgp/
This also has more info on integrating pgp with your other mail agents. The newsgroup _alt.security.pgp_ may be of interest as well, particularly the FAQ.
When using PGP on our Unix systems or any other multi-user environment, be aware that your key and pass phrase will not be completely and totally secure. (Of course, our own administrators would never dream of poking through their users' email and files... *cough*). If you need maximum privacy for your transactions, download PGP 2.6.2 for DOS and run it on your own machine; it's availble from lots of sites, including ftp.csua.berkeley.edu in /pub/cypherpunks/pgp/. My advice: get it while it's still legal; the author of PGP is now facing up to 51 months in jail for making the program available on the Net.
And look into Tempest shielding while you're at it.
Give feedback: newspeak@wpi.wpi.edu
Maintained by: Troy Thompson