Mankind has always felt a need to disguise information, even long before the first computers and calculating machines existed.
Since it was created, the Internet has evolved to such a point that it has become an essential communication tool. However, this communication involves an increasing number of strategic problems related to companies' activity on the Web. Transactions that are made through the network can be intercepted, even more so in that it is difficult to establish laws concerning the Internet. The security of this information needs to be guaranteed; this is the role of cryptography.
What is cryptography?
The word cryptography is a generic term that describes all techniques that make it possible to encrypt messages, or to make them unintelligible without specific action. The associated verb is to encrypt.
Cryptology is essentially based on arithmetics: In the case of a text, it involves transforming the letters that make up the message into a series of numbers (in the form of bits in computing because computers use the binary system), and then performing calculations on these numbers to:
- modify them to make them incomprehensible. The result of this modification (the encrypted message) is called ciphertext as opposed to the initial message, called plaintext.
- make sure the recipient will be able to decrypt them.
The act of coding a message to make it secret is called encryption. The reverse method, which involves tracing the original message, is called decryption.
Encryption is usually performed using an encryption key, while decryption requires a decryption key. Keys are generally broken down into two types:
- Symmetric keys: these are keys used for both encryption and decryption. In this case we speak of symmetric encryption or secret-key encryption.
- Asymmetric keys: these are keys used in the case of asymmetric encryption (also called public-key encryption). In this case, a different key is used for encryption and decryption.
In English, decryption also refers to the act of trying to illegitimately decipher the message (whether or not the decryption key is known by the attacker).
When the decryption key is not known by the attacker, we speak of cryptanalysis or cryptoanalysis (the more familiar term code-breaking is also often used).
Cryptology is the science that studies the scientific aspects of these techniques, that is, it encompasses both cryptography and cryptanalysis.
The functions of cryptography
Cryptography is traditionally used to conceal messages from certain users. Today, this function is even more useful in that internet communications circulate on infrastructures whose reliability and confidentiality cannot be guaranteed. Cryptography is currently used not only to protect data confidentiality but also to guarantee their integrity and authenticity.
Cryptanalysis refers to the reconstruction of an encrypted message into plaintext using mathematical methods. As a result, all cryptosystems must necessarily be resistant to cryptanalysis methods. When a cryptanalysis method makes it possible to decrypt an encrypted message using a cryptosystem, we say that the encryption algorithm has been "broken".
Four cryptanalysis methods are generally recognized:
- A ciphertext-only attack involves finding the decryption key using one or more ciphertexts;
- A known-plaintext attack involves finding the decryption key using one or more ciphertexts, while knowing the corresponding plaintext;
- A chosen-plaintext attack involves finding the decryption key using one or more ciphertexts, the attacker having the option of generating them from plaintexts;
- A chosen-ciphertext attack involves finding the decryption key using one or more ciphertexts, the attacker having the option of generating them from plaintexts.