Set up .gnupg directory
Set up a .gnupg directory with the following privs:
161cottrell@pinger:~$fs la .gnupg Access list for .gnupg is Normal rights: system:administrators rlidwka cottrell rlidwka
Make sure the contents of .gnupg/(apart from . and ..) are cleared out, using emacs -nw .gnupg.
Generating a key
Then generate the pair,see below. (After entropy. I hit several spaces and returns to help entropy, however 30 mins later it had not appeared to finish), then it said it was generating the key again, I hit lots more characters and a few minutes later it finished (see below).
[cottrell@pinger ~]$ gpg --gen-key gpg (GnuPG) 2.0.14; Copyright (C) 2009 Free Software Foundation, Inc. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. gpg: keyring `/u/sf/cottrell/.gnupg/secring.gpg' created gpg: keyring `/u/sf/cottrell/.gnupg/pubring.gpg' created Please select what kind of key you want: (1) RSA and RSA (default) (2) DSA and Elgamal (3) DSA (sign only) (4) RSA (sign only) Your selection? RSA keys may be between 1024 and 4096 bits long. What keysize do you want? (2048) Requested keysize is 2048 bits Please specify how long the key should be valid. 0 = key does not expire <n> = key expires in n days <n>w = key expires in n weeks <n>m = key expires in n months <n>y = key expires in n years Key is valid for? (0) Key does not expire at all Is this correct? (y/N) y GnuPG needs to construct a user ID to identify your key. Real name: Roger Cottrell Email address: rlacottrell@gmail.com Comment: Les You selected this USER-ID: "Roger Cottrell (Les) <rlacottrell@gmail.com>" Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O You need a Passphrase to protect your secret key. can't connect to `/u/sf/cottrell/.gnupg/S.gpg-agent': No such file or directory gpg-agent[6645]: directory `/u/sf/cottrell/.gnupg/private-keys-v1.d' created We need to generate a lot of random bytes. It is a good idea to perform some other action (type on the keyboard, move the mouse, utilize the disks) during the prime generation; this gives the random number generator a better chance to gain enough entropy. We need to generate a lot of random bytes. It is a good idea to perform some other action (type on the keyboard, move the mouse, utilize the disks) during the prime generation; this gives the random number generator a better chance to gain enough entropy. ^[[C^[[C^[[C^[[C^[[C^[[C^[[C^[[C^[[C^[[B gjhgjhfhfuiuiouomnmmnnbb /u/sf/cottrell/.gnupg/trustdb.gpg: trustdb created gpg: key 271CF0E9 marked as ultimately trusted public and secret key created and signed. gpg: checking the trustdb gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model gpg: depth: 0 valid: 1 signed: 0 trust: 0-, 0q, 0n, 0m, 0f, 1u pub 2048R/271CF0E9 2013-09-11 Key fingerprint = 0B4F EC8A D1D0 568A 654C BD99 B058 14A9 271C F0E9 uid Roger Cottrell (Les) <rlacottrell@gmail.com> sub 2048R/87C7DB76 2013-09-11 [cottrell@pinger ~]$ [cottrell@pinger ~]$ ls -la .gnupg/ total 62 drwx------ 3 cottrell sf 2048 Sep 10 22:35 ./ drwxr-xr-x 108 cottrell sf 49152 Sep 10 21:50 ../ drwx------ 2 cottrell sf 2048 Sep 10 22:06 private-keys-v1.d/ -rw------- 1 cottrell sf 1203 Sep 10 22:35 pubring.gpg -rw------- 1 cottrell sf 1203 Sep 10 22:35 pubring.gpg~ -rw------- 1 cottrell sf 600 Sep 10 22:35 random_seed -rw------- 1 cottrell sf 2581 Sep 10 22:35 secring.gpg -rw------- 1 cottrell sf 1280 Sep 10 22:35 trustdb.gpg
Exporting the key
208cottrell@pinger:~$gpg --export -a "Roger Cottrell" > public_key 209cottrell@pinger:~$cat public_key -----BEGIN PGP PUBLIC KEY BLOCK----- Version: GnuPG v2.0.14 (GNU/Linux) mQENBFIv+r4BCADn5msooKvPE3S2fuOgB1wCvbqh4JySYrVWJrADn58miEn6a593 6JbnUv22CJsks1EOtPVmgEFIxZiNxYChMLMYJ3/fQDhoTKeITUrcmXVHRQw4zu21 3E11TASuBRKXT4DOj10LgTTDGEcCpwf/LI1+Z1STNm1V976mBK+e/i4L0NVre+u2 vDlpiML8NumNShL6O1JVPDY6ULlooUHgGS4v/cFvn1Z8xrfwRdJIar8vyR+qZcOm 4I2ZGOklKXUILtpvhsq99JASJR9BEz4oec+UPbGv5Ux6GrPt6VF0tEGDGAGlqvMf gxFrJE1R/HC9AwdjLIayZQEp+Kz8l9QcsY7JABEBAAG0LFJvZ2VyIENvdHRyZWxs IChMZXMpIDxybGFjb3R0cmVsbEBnbWFpbC5jb20+iQE4BBMBAgAiBQJSL/q+AhsD BgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRCwWBSpJxzw6S1vCADf7cucsnDR rvdtLZ+GpQlEdqvQ3rW6D6fMShzay0DzLkBpLzNr56Rkxx5ngziWevmGYuBZ7ktT zGGicbhPtU2Zf3X1KfuJC2fOQGcWlUGApxhU39EXgvXN05LfTAFyv/wZaGSMfmVe erHVbjm2MhHd56NSp2XW2gRRu/NPLeX3G+2qch6XfaK4K4ZashWIe07IxB9G6auc RUkSMT/JzPSEdnNbX6/5lMQlSet5YYmUM9fxN4ToQwK1+DtuSqNXm+nqLJHE2K5c 2jt+OFE5+HVpHN7ICGI4YFOHtYp+0NogSFUkpflUWdNDlCl9r5T7F1bx9wj44ovK Gdau4OXSXywYuQENBFIv+r4BCACaGbe4j2G1EyHCLCEmZX+s5BE8oEHFrwjcYwfG ks3y6fZG+5hrxsWMBs1ZsQip4XlJbywzrI+XDuopxVpxKJDJTGSh48bDw0NggKCT unuVwNB6pK22PQqu0JitvNCWaIyi3OwGd5RroeHYq59AHzAgL+N2mfuDGF33Thbk fgR13owzau7yQPPfvyhzpnZ4Bk/k1qRDeklA5YTANn9iI5V/uqfBQMt6gOB+A7JE yfD7GtaaOwqR9RVvtihCt5U2Mi7s++PgRBTzMdPxQG6DUei5MS+Xfz9Lu2BW69Hj cdQANMsLY7hpY+LozHpr7NiO4IPqYFtR5XRYbCrgT9T4/4ONABEBAAGJAR8EGAEC AAkFAlIv+r4CGwwACgkQsFgUqScc8On4IAgAkhsGXjsP+s/SJv+VM0Tljm6e6brO DZ0l/YlhotuMTegwDW4P2EdeNi3zML9n9CB9ZkomjrSrotuJ+VwNA2hTXndnuDjf 7ppXGt/HIHh00nS5olgkqi3jWc6xGsYXJmldK+l7UDXeCvYv6yM8mObxCA72FvER fBbNxLfnreLOCvbgjYrOM2nXY03sXDcXlBgaMmUM242lnYAklnBRn5LesibzY4N3 DXh5QYYLqENMUvzXwaEpH3Uhl+EuMnyUA3pdMoIY9lTn2WMUVmZmNXaS02XetVRm k9EwkXpVyxHSI+9PSsqrWYwaXKk4jUTfek/RyVTp0ChVZSScweruYklzBg== =ryhi -----END PGP PUBLIC KEY BLOCK-----
Make the key publicly available
We use ftp to do this so the key will show up at:
ftp://ftp.slac.stanford.edu/pgp/cottrell/cottrell.publickey
This is done by moving the public_key generated above to the ftp space;
217cottrell@pinger:$mv ~cottrell/public_key /afs/slac.stanford.edu/public/pgp/cottrell/cottrell.publickey