GnuPG is an implementation of public/private key encryption. One of the biggest uses for this is sending/receiving encrypted. digitally signed email to/from others. Most graphical email clients already handle this for you by linking to the GnuPG libraries or calling the program directly, but as always, we'll be doing things from the command line first because we learn more about the process that way.

First, we install GnuPG (on Debian)

apt-get install gpg

Next, we need to create the keys for our user (public and private).

gpg --gen-key
We pretty much can just take the defaults and then confirm the last question, then enter your real name (eg. John Smith) and email address (john.smith@domain.org). While the application is generating the keys, you need to move the mouse, work in another window, etc. to cause some interrupts for the computer. This helps randomize the key generation algorithm.

Now we will verify that we have our key in the list

gpg --list-keys