COURSE 1 - 3.1. PGP: Introduction
QUICK INFO:
Symmetric encryption: single key; must be sent to receiver.
PGP Private/Public key encryption: key pair; no key must be sent to the receiver
https://gnupg.org/ website of GNU Privacy Guard: complete and free implementation of PGP
PGP ("Pretty Good Privacy"), which was invented in 1991 by Phil Zimmermann, is perhaps the most widespread encryption system in the world.
Symmetric encryption is the 'classic' form of encryption that uses a simple password. This means that, for a receiver of an encrypted message to be able to decrypt it, the sender must first send him the password. This is extremely risky and it is the reason why symmetric encryption is not ideal for encrypted communication. It is however ideal for encrypting data (e.g. text, files) for oneself.
PGP Private/Public key encryption (asymmetric encryption): PGP asymmetric encryption solves the problems that symmetric encryption poses for encrypted communications.
Each individual now has two mathematically related keys (a "key pair"): a Private Key and a Public Key. These keys are mathematically related in the sense that the Public key is uniquely associated with the Private key of that key pair in such a way that, if one knows the Private key, it's extremely easy to derive the Public key from it. However, if one knows the Public key, it's 'kind of impossible' to derive the Private key from it.
The Private key is secret (the owner must keep it safe and never share it with anyone). Instead, the Public key is public (the owner can share it with whomever he wants).
In order to be able to decrypt each other's encrypted messages, Alice and Bob must have each other's Public key: that is, Alice must have Bob's Public key and Bob must have Alice's Public key.
The following is a synthetic description of how PGP works (you don't need to understand how it works in order to use it):
If Alice sends a PGP encrypted message to Bob, PGP automatically creates an 'envelope' for the message. This 'envelope' is locked by a randomly-generated Session key. PGP symmetrically encrypts this Session key with Bob's Public key (which Alice has).
When Bob receives the encrypted message,
PGP uses his Private key to decrypt the Session key (which was encrypted by Alice with Bob's Public key);
he then uses the Session key to decrypt the message (i.e. to open the 'envelope').
Practically, to use PGP Private/Public key encrypted communications, it's enough to have the Recipient's Public key and to follow the guides illustrated below.