Encryption is the art of hiding or encrypting data to be sent so that it cannot be read. By encrypting data, you keep the data confidential and you are able to guarantee the integrity of the data and the identification of the sender. In addition, it can ensure that the proper recipient (person, device, system, etc.) receives the data. Encryption therefore helps to prevent that the wrong persons can view the data and ensures that the data remains unchanged in the proces of sending.
The desire to encrypt data has been in existence already more than 4000 years. The ancient Greeks as well as the Egyptians encrypted messages about, for example, war strategies, in order to send them securely. In that time, the emphasis was mainly on keeping the information confidential and guaranteeing that the data did not get into the wrong hands. For this purpose, the use of a secret language was sufficient in order to make the text illegible for unauthorized readers. Later, there was also an additional desire to ensure that the information had not been adjusted during the journey from sender to recipient.
Encryption in digital interaction
Nowadays, encryption has become an integral part of digital traffic. Whether it regards mobile traffic, bitcoins or online banking, Encryption has become an important component of digital interaction.
When we examine encryption, you see that it consists of five parts:
- Keeping the information confidential
- Integrity of the data, have any adjustments been made in the interim?
- Authentication, is the recipient the proper recipient?
- Irrefutability of the source, is this the proper sender?
- Key distribution
In many cases, encryption is not only an important component of the security system from a technical point of view, but also a mandatory component from a legal point of view. Online stores, online banking, online healthcare files, etc. will apply encryption in order to protect themselves technically as well as legally.
A few corresponding examples that you often encounter:
- Digital certificates
- RSA (public-key encryption technology developed by RSA Data Security, Inc.)
- SSL (Secure Sockets Layer)
- SHA (Secure Hash Algorithm)
- PGP (Pretty good privacy)
- SSH (Secure Shell)
In order to be able to understand well how encryption works, you must be familiar with a number of basic concepts:
- Plain text/clear text: the original message
- Cipher text: data or text that has been encrypted using an algorithm
- Algorithms/Encrypt: a formula that describes how encryption must occur
- Keys: determine the outcome of an encryption
There are two types of encryption, symmetric and asymmetric encryption. Symmetric encryption means that you use the same key in order to encrypt the data as well as to make the data legible again, actually the same system as a key and a lock. Everyone who has the same key can open the lock. See the following diagram that shows how symmetric encryption works:
The advantage of this manner of encryption is the quick and relatively simple manner of implementation. The disadvantage is, of course, that you must be very careful with the key, because everyone who has the key can adjust the message and encrypt it again. Therefore, there is no guarantee with this method that the data is always original.
That is the reason for asymmetric encryption
In order to remedy this problem, you could use asymmetric encryption. You use a Public Key as well as a Private Key in this form of encryption. Each user gets his/her own personal private key and the Public Key is requested with Certificate Authorities (CAs) and issued via a certificate.
The sender sends a message to the recipient by encrypting the message with the recipient's public key. The recipient uses his/her private key in order to make the message legible again. If the sender should use his/her private key, there is even the possibility for digital signatures. Since there is just one private key, the person's identity is guaranteed to be correct.
Encryption also does not guarantee 100% security, there are always hackers who try to break the system. Many common methods are:
- Brute force attack on the key (certainly with symmetric)
- Try to figure out the key based on the plain text or the cipher text or both
- Man In The Middle Attack, intercept message and convert to an infected source.