Terminology
Let us start off with an understanding of some terms that are used in cryptography. As we progress through the chapter, these terms will be repeatedly used, so it is important to become familiar with them before we proceed.
Cryptography: Cryptography is the study and practice of secure communication in an insecure environment and in the presence of adversaries. As our lives become more digitalized and connected, cryptography has gained increasing importance. Cryptography is practised in the form of algorithms and protocols that are designed using mathematical formulae and problems that are computationally hard.
Plaintext: Also called cleartext, plaintext is the message that a sender wants to transmit and that needs to be kept a secret. If Alice wants to send a message "Hello World" to Bob, then "Hello World" is the plaintext.
Ciphertext: Also called codetext, this is the encoded or encrypted message of plaintext that is sent to the receiver. Let us follow the previous example where...