Encryption is the process of encoding information in such a way that only the intended recipient can read it. There are two main types: symmetric key encryption where both sides share the same key, and public key encryption where each side has a public and private key. Popular implementations of public key encryption include SSL/TLS which is used to securely transmit information on the web by encrypting data with a randomly generated symmetric key that is itself encrypted with the recipient's public key.