Cryptography is the study and practice of techniques for secure communication in the presence of third parties called adversaries. It deals with developing and analyzing protocols which prevents malicious third parties from retrieving information being shared between two entities thereby following the various aspects of information security.
Secure Communication refers to the scenario where the message or data shared between two parties can’t be accessed by an adversary. In Cryptography, an Adversary is a malicious entity, which aims to retrieve precious information or data thereby undermining the principles of information security.
Data Confidentiality, Data Integrity, Authentication and Non-repudiation are core principles of modern-day cryptography.
- Confidentiality refers to certain rules and guidelines usually executed under confidentiality agreements which ensure that the information is restricted to certain people or places.
- Data integrity refers to maintaining and making sure that the data stays accurate and consistent over its entire life cycle.
- Authentication is the process of making sure that the piece of data being claimed by the user belongs to it.
- Non-repudiation refers to ability to make sure that a person or a party associated with a contract or a communication cannot deny the authenticity of their signature over their document or the sending of a message.
Consider two parties Alice and Bob. Now, Alice wants to send a message m to Bob over a secure channel.
So, what happens is as follows.
The sender’s message or sometimes called the Plaintext, is converted into an unreadable form using a Key k. The resultant text obtained is called the Ciphertext. This process is known as Encryption. At the time of receival, the Ciphertext is converted back into the plaintext using the same Key k, so that it can be read by the receiver. This process is known as Decryption.
Alice (Sender) Bob (Receiver) C = E (m, k) ----> m = D (C, k)
Here, C refers to the Ciphertext while E and D are the Encryption and Decryption algorithms respectively.
Let’s consider the case of Caesar Cipher or Shift Cipher as an example.
As the name suggests, in Caesar Cipher each character in a word is replaced by another character under some defined rules. Thus, if A is replaced by D, B by E and so on. Then, each character in the word would be shifted by a position of 3. For example:
Plaintext : Geeksforgeeks Ciphertext : Jhhnvirujhhnv
Note that even if the adversary knows that the cipher is based on Caesar Cipher, it cannot predict the plaintext as it doesn’t have the key in this case which is to shift the characters back by three places.
Refer for Introduction to Crypto-terminologies.
Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.
- Custom Building Cryptography Algorithms (Hybrid Cryptography)
- Classical Cryptography and Quantum Cryptography
- Caesar Cipher in Cryptography
- RSA Algorithm in Cryptography
- The CIA triad in Cryptography
- Image Steganography in Cryptography
- DNA Cryptography
- Birthday attack in Cryptography
- Development of Cryptography
- Quantum Cryptography
- One Time Password (OTP) algorithm in Cryptography
- Easy Key Management in Cryptography
- Differences between Classical and Quantum Cryptography
- Difference between Steganography and Cryptography
- Cryptography and its Types
- Bifid Cipher in Cryptography
- Avalanche Effect in Cryptography
- Cryptography and Network Security Principles
- Shamir's Secret Sharing Algorithm | Cryptography
- Difference between Cryptography and Cryptology
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.