Encryption is the process of encoding information so that only certain people can see it. To encrypt data, you use an encryption key. Similar to how a key is used to lock something, you use the encryption key to encode or lock plain text into encrypted text or ciphertext.
There are two main types of encryption:
In symmetric encryption, you use the same key for both encryption and
Symmetric encryption has the advantage of being fast and simple. Common applications include:
AES, DES, IDEA, and Blowfish are some standard symmetric encryption algorithms.
In asymmetric encryption (or Public-key cryptography), we use a key pair that consists of a public key and a private key. The public key is accessible to everyone, while the private key must be kept secret. There are two popular use cases:
Asymmetric encryption is more secure than symmetric encryption and is widely used in HTTPS, email communications, and encrypted messaging.
Standard asymmetric encryption algorithms include RSA, DSA, Diffie-Hellman, and ECC.
Symmetric | Asymmetric |
---|---|
Less secure | More secure |
Older technique | Newer technique |
Single key for both encryption and decryption | Two keys – one for encryption and the other for decryption |
Faster | Slower |
Simpler | More complex |
Although each choice has its own benefits, asymmetric encryption is recommended (from a security perspective).