# Where can I get information on PGP?

**URL:** https://boards.straightdope.com/t/where-can-i-get-information-on-pgp/308764
**Category:** Factual Questions
**Created:** [June 17, 2005, 10:34pm UTC](https://boards.straightdope.com/t/where-can-i-get-information-on-pgp/308764 "2005-06-17T22:34:29Z")
**Posts on this page:** 9
**Page:** 1

<div class="post-metadata">

### Author: ![RickQ](https://avatars.discourse-cdn.com/v4/letter/r/35a633/32.png) [@RickQ](https://boards.straightdope.com/u/RickQ)
#### Post date: [June 17, 2005, 10:34pm UTC](https://boards.straightdope.com/t/where-can-i-get-information-on-pgp/308764/1 "2005-06-17T22:34:29Z")

</div>

I have been trying to find a good source to explain what PGP is and how it works. I think I have a basic handle on it but I would like some more information. I would also like to know how to go about implementing it.

If anyone knows of any good links for a beginner, please let me know.

---

<div class="post-metadata">

### Author: ![Jake](https://avatars.discourse-cdn.com/v4/letter/j/f475e1/32.png) [@Jake](https://boards.straightdope.com/u/Jake)
#### Post date: [June 17, 2005, 10:38pm UTC](https://boards.straightdope.com/t/where-can-i-get-information-on-pgp/308764/2 "2005-06-17T22:38:58Z")

</div>

> [@RickQ](#):
>
> I have been trying to find a good source to explain what PGP is and how it works. I think I have a basic handle on it but I would like some more information. I would also like to know how to go about implementing it.
> 
> If anyone knows of any good links for a beginner, please let me know.

Pardon my ignorance but what is PGP?

---

<div class="post-metadata">

### Author: ![Revtim](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/revtim/32/1042_2.png) [@Revtim](https://boards.straightdope.com/u/Revtim)
#### Post date: [June 17, 2005, 10:53pm UTC](https://boards.straightdope.com/t/where-can-i-get-information-on-pgp/308764/3 "2005-06-17T22:53:09Z")

</div>

[http://en.wikipedia.org/wiki/PGP](http://en.wikipedia.org/wiki/PGP)

---

<div class="post-metadata">

### Author: ![groman](https://avatars.discourse-cdn.com/v4/letter/g/73ab20/32.png) [@groman](https://boards.straightdope.com/u/groman)
#### Post date: [June 17, 2005, 11:22pm UTC](https://boards.straightdope.com/t/where-can-i-get-information-on-pgp/308764/4 "2005-06-17T23:22:42Z")

</div>

For those too lazy to read the entire Wikipedia article, but still curious, PGP is basically a system for using a Public Key Infrastructure (PKI) to encrypt e-mails, files, etc.

PKI is a category of assymetric encryption algorithms (such as RSA), where there are two encryption keys, a public and a private key.

A public key can only be used to encrypt data. And the corresponding private key can be used to decrypt(but not encrypt) said data. The keys are always in pairs. This allows me to give you just the public key, and you can securely send messages to me. This allows me to practically broadcast my public key without worrying about anything, since the public key can only be used to encrypt. The private key is typically symmetrically encrypted with a pass phrase for extra security, so that even if somebody gets their hands on your private key file, they would still need your pass phrase to decrypt your messages.

Most PKI’s can also be used for secure digital signatures as well.

I hope I didn’t screw anything up.

---

<div class="post-metadata">

### Author: ![Squink](https://avatars.discourse-cdn.com/v4/letter/s/b5e925/32.png) [@Squink](https://boards.straightdope.com/u/Squink)
#### Post date: [June 17, 2005, 11:27pm UTC](https://boards.straightdope.com/t/where-can-i-get-information-on-pgp/308764/5 "2005-06-17T23:27:43Z")

</div>

For the _truly_ lazy, PGP stands for Pretty **Good Privacy**.

---

<div class="post-metadata">

### Author: ![gazpacho](https://avatars.discourse-cdn.com/v4/letter/g/6f9a4e/32.png) [@gazpacho](https://boards.straightdope.com/u/gazpacho)
#### Post date: [June 17, 2005, 11:33pm UTC](https://boards.straightdope.com/t/where-can-i-get-information-on-pgp/308764/6 "2005-06-17T23:33:10Z")

</div>

The following link shows the rsa algorithm. Which is used for encrypting the symmetric key which encripts the main message.

[http://world.std.com/~franl/crypto/rsa-guts.html](http://world.std.com/~franl/crypto/rsa-guts.html)

A pretty good overview.  
[http://www.pgpi.org/doc/pgpintro/](http://www.pgpi.org/doc/pgpintro/)

---

<div class="post-metadata">

### Author: ![gazpacho](https://avatars.discourse-cdn.com/v4/letter/g/6f9a4e/32.png) [@gazpacho](https://boards.straightdope.com/u/gazpacho)
#### Post date: [June 17, 2005, 11:37pm UTC](https://boards.straightdope.com/t/where-can-i-get-information-on-pgp/308764/7 "2005-06-17T23:37:20Z")

</div>

As far as implemeniting it goes. You need a good library for doing math with really big numbers int and long are not going to cut it.

---

<div class="post-metadata">

### Author: ![Revtim](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/revtim/32/1042_2.png) [@Revtim](https://boards.straightdope.com/u/Revtim)
#### Post date: [June 18, 2005, 11:49pm UTC](https://boards.straightdope.com/t/where-can-i-get-information-on-pgp/308764/8 "2005-06-18T23:49:50Z")

</div>

I forget to mention the most important fact about PGP, which is not in the Wikipedia article.

The creator of PGP, Phil Zimmerman, is the second most famous graduate of my alma mater, FAU.

The most famous? Carrot Top.

---

<div class="post-metadata">

### Author: ![Derleth](https://avatars.discourse-cdn.com/v4/letter/d/b9e5f3/32.png) [@Derleth](https://boards.straightdope.com/u/Derleth)
#### Post date: [June 19, 2005, 12:18am UTC](https://boards.straightdope.com/t/where-can-i-get-information-on-pgp/308764/9 "2005-06-19T00:18:30Z")

</div>

As far as implementing it goes, look at the source code for [GPG](http://www.gnupg.org/), the GNU Privacy Guard. It is a Free Software (under the GNU General Public License) compatible re-implementation of PGP, and since it doesn’t use the patented IDEA algorithm you can learn from the source code without getting into legal trouble.

Aside from that, the book [_Applied Cryptography_](http://www.amazon.com/exec/obidos/tg/detail/-/0471117099/ref=ase_anotherjesse-20/104-8203674-6619963?v=glance&s=books) by Bruce Schneier is the one to buy. It goes into the theory and practice of modern cryptographic systems.
